電影影評的自然語言處理方法介紹
在人工智慧行業範圍內,自然語言處理(NLP)算是比較熱門的一個領域。關於自然語言處理的方法也有很多種。例如,非常熱門的字詞向量化、分詞、命名實體識別、詞袋子演算法、TF-IDF演算法等,也有基於神經網路(RNN和CNN)進行NLP工作。
本文中,我基於NLTK 為大家簡單介紹下自然語言處理如何在電影影評中應用。最主要的目的是從實戰的角度講解項目構建過程。當然,NLTK是以英文為詞庫,因此,下述介紹中處理的電影影評是英文字元。
自然語言處理,即將我們日常交流的語言轉換為機器可以進行處理的符號。在演算法中,慣常使用的思路是Word 2 Vectors,即將字、詞等向量化。這個思想很重要。一般來說,機器只能識別符號。在人工智慧目前階段,機器處理數據的本質是進行矩陣運算。等同的說,機器是在數學計算。因此,只有將字、詞等向量化,機器才能進行計算。
一、構建數據
我們首先從依賴包中導入數據,接著對我們即將處理的數據進行詳細的了解。
二、定義標籤
我們了解數據的方法有很多種,上述方法是針對文本類數據。掌握了數據的基本情況,我們需要對數據進行標記,也就是打標籤。本例子中,我們需要對電影影評數據打兩個標籤,一個是積極評論,一個是消極評論。
三、模型構建
本文中,我們主要使用詞袋子(Bag-of-Words)演算法模型。
詞袋子模型。詞袋子模型是基於統計。簡言之,就是計算機會統計樣本數據中各個詞出現的頻率。當然,從直觀上理解,這樣理解人類語言有點不符合人類思維方式,但是,從另一個角度講,在一個大的文本中,某個詞出現的頻率越高,那麼這個詞的意義對整個文本有很重要的影響。當然,這需要除了一些經常出現卻沒有實際意義的詞。例如,你,他,這等等。
我們在對詞語進行預處理的階段,需要構建關於字詞的特徵圖。即需要將我們認為重要或者機器能夠理解我們的欲加之意能夠清晰的體現出來。因此,從語言學角度講。符號語言學更適合當前的自然語言智能化處理。
需要注意的是,在這個過程中,我們要人為的去除那些不對認知結果產生影響的特徵。例如,標點符號,無意義的詞語等。
四、可視化
在處理機器學習問題過程中,適當的引入可視化工具,能夠增強整個問題的可解釋性。
本文中,我們可以通過可視化直觀的查看特徵詞的分布圖。例如:
五、語義理解
對語言的理解需要從語型(句型式子)、語義、語境三個層面展開。在目前階段,機器理解自然語言還不能夠從深層次的語義出發,但是,也可以做到初步的從語義特徵出發。這就需要我們人為的構建語義特徵。本文中,我們構建積極語義和消極語義的特徵。
六、模型預測
在進行了前期工作後,我么最終需要找到合適的模型,對我們的新數據進行預測。也就是說,我們優化好模型,當產生新的電影評論數據,就可以大概知道這個電影的市場反響度如何。當然,後續隨著新的熱詞的出現,我們需要不斷的重新構建詞特徵,以完成分析。
本篇完
「歡迎關注,後台留言,獲取源碼」


TAG:TiBeing |