Python文字處理入門



文字處理與自然語言處理(NLP)有著直接的應用關係。NLP旨在處理人們在交流時使用口語或書面語。這不同於計算機與人之間的交流,後者要麼是人編寫的計算機程式,要麼是人的一些手勢,例如在某個位置單擊滑鼠。NLP試圖理解人們使用的自然語言,對其進行分類,並在需要時對其進行分析並做出回應。Python擁有豐富的庫,可以滿足NLP的需求。自然語言工具包(NLTK)就是這樣一套庫,它提供了NLP所需的功能。

以下是一些使用NLP並間接使用Python的NLTK的應用程式。

摘要

很多時候,我們需要獲取新聞文章、電影情節或大型故事的摘要。它們都是用人類語言寫成的,如果沒有NLP,我們就必須依靠他人的解釋和呈現這樣的摘要。但藉助NLP,我們可以編寫程式來使用NLTK並根據各種引數對長文字進行摘要,例如最終輸出中我們想要多少百分比的文字,為摘要選擇正面和負面詞語等等。線上新聞源依靠這種摘要技術來呈現新聞見解。

基於語音的工具

像蘋果Siri或亞馬遜Alexa這樣的基於語音的工具依賴於NLP來理解與人類的互動。它們擁有大量單詞、句子和語法的訓練資料集來解釋來自人類的問題或命令並進行處理。雖然它是關於語音的,但它也會間接地翻譯成文字,並且來自語音的生成的文字會透過NLP系統來產生結果。

資訊提取

網頁抓取是使用Python程式碼從網頁提取資料的常見示例。這裡可能並非嚴格基於NLP,但它確實涉及文字處理。例如,如果我們需要僅提取HTML頁面中存在的標題,那麼我們會在頁面結構中查詢h1標籤,並找到一種方法來僅提取這些標籤之間的文字。這需要Python的文字處理程式。

垃圾郵件過濾

可以透過分析郵件主題行以及郵件內容中的文字識別和消除垃圾郵件。由於垃圾郵件通常批次傳送給許多收件人,即使它們的主題和內容略有不同,也可以進行匹配和標記以將其標記為垃圾郵件。這同樣需要使用NLTK庫。

語言翻譯

計算機語言翻譯嚴重依賴於NLP。隨著越來越多的語言在線上平臺上使用,將一種人類語言自動翻譯成另一種語言成為必要。這將涉及程式設計以處理參與翻譯的語言的詞彙、語法和上下文標記。同樣,NLTK用於處理此類需求。

情感分析

為了找出觀眾對電影演出的總體反應,我們可能需要閱讀數千條觀眾的反饋帖子。但這也可以透過使用透過單詞和句子分析對正面和負面反饋進行分類來自動化。然後衡量正面和負面評論的頻率,以找到觀眾的整體情緒。這顯然需要分析觀眾用人類語言寫的文字,而NLTK在這裡被大量用於處理文字。

廣告
© . All rights reserved.