1、文本挖掘 git
文本挖掘則是對文本進行處理,從中挖掘出來文本中有用的信息和關鍵的規則,在文本挖掘領域應用最往普遍的是對文本進行分類和聚類,其挖掘的方法分爲無監督學習和監督學習。文本挖掘還能夠劃分爲7大類:關鍵詞提取、文本摘要、文本主題模型、文本聚類、文本分類、觀點提取、情感分析。github
關鍵詞提取:對長文本的內容進行分析,輸出可以反映文本關鍵信息的關鍵詞。web
文本摘要:許多文本挖掘應用程序須要總結文本文檔,以便對大型文檔或某一主題的文檔集合作出簡要概述。算法
文本聚類:主要是對未標註的文本進行標註,常見的有 K均值聚類和層次聚類。網絡
文本分類:文本分類使用監督學習的方法,以對未知數據的分類進行預測的機器學習方法。app
文本主題模型 LDA:LDA(Latent Dirichlet Allocation)是一種文檔主題生成模型,也稱爲一個三層貝葉斯機率模型,包含詞、主題和文檔三層結構,該模型能夠用於獲取語料的主題提取和對不一樣類別的文檔進行分類。機器學習
觀點抽取:對文本(主要針對評論)進行分析,抽取出核心觀點,並判斷極性(正負面),主要用於電商、美食、酒店、汽車等評論進行分析。學習
情感分析:對文本進行情感傾向判斷,將文本情感分爲正向、負向、中性。用於口碑分析、話題監控、輿情分析。網站
由於本身的論文寫的是關於情感分析方面的內容,所以打算接下來主要寫情感分析系列的內容,今天主要寫關於情感分析的介紹以及發展史。ui
2、情感分析
1. 含義
情感分析主要是經過分析人們對於服務、產品、事件、話題來挖掘出說話人/做者觀點、情感、情緒等的研究。情感分析按照研究內容的不一樣,能夠分爲:意見挖掘 / 意見提取 / 主觀性分析 / 情感傾向分析、情感情緒分析、情感打分等。情感傾向問題,便是指挖掘出一段語料中說話人/做者對於某一話題/事件所持有的態度,如褒義、貶義、中性、二者兼有。情感情緒,則是將情感傾向進行更進一步的細化,依據「大連理工大學的情感詞彙本體庫」可知,能夠將情感傾向能夠細化爲:「喜歡」、「憤怒」、「討厭」等具體的7個大類——21個小類別。情感打分,即根據情感態度對於某一事物進行評分,如淘寶系統的1-5分。 文本中的情感分析還能夠分爲:顯式情感、隱式情感,顯式情感是指包含明顯的情感詞語(如:高興、漂亮、討厭等),隱式情感則是指不包含情感詞語的情感文本,如:「這個杯子上面有一層灰」。因爲隱式情感分析難度較大,所以目前的工做多集中在顯式情感分析領域。
情感分析按照不一樣的分析對象,能夠分爲:文章級別的情感分析、句子級別的情感分析、詞彙級別的情感分析。按照不一樣的研究內容以及研究的粒度的不一樣,其研究情感分析的方法也有很大的變化。
目前的情感分析研究可概括爲:情感資源構建、情感元素抽取、情感分類及情感分析應用系統;
情感資源構建:情感資源通常來講有:情感詞典、情感語料庫。情感詞典的構建便是將現有的、整理好的情感詞典資源進行整合,好比中文情感詞典有:大連理工大學的情感詞彙本體庫、知網Hownet情感詞典、臺灣大學的NTUSD簡體中文情感詞典等,根據不一樣的需求,應用這些情感詞典。情感語料庫,則是咱們要分析的文本,如關於新聞的文本、微博評論文本、商品評論文本、電影評論文本等,這些語料的獲取能夠是尋找已經整理好的數據,或者本身爬蟲獲取。推薦一個比較全的中文語料庫網站:中文NLP語料庫。
情感元素抽取:情感元素抽取則是從語料中抽取出來可以表明說話人/做者情感態度問題的詞彙,也稱爲細粒度情感分析。語料中的評價對象和表達抽取是情感元素抽取的核心內容。評價對象是指語料中被討論的主題,好比對於商品評論來講,用戶常提起的「外觀」、「快遞」、「包裝」等方面;表達抽取主要針對顯式情感表達的文本,是指文本抽取出來可以表明說話人/做者情感、情緒、意見等的詞彙,好比「漂亮」、「贊同」、「不贊同」等。通常來講,評價對象和表達抽取也能夠做爲相互獨立的兩個任務。通常來講,分析這二者的方法有:基於規則、基於機器學習。對於評價對象來講,現現在使用最多的方法是利用主題模型中的LDA(Latent Dirichlet Allocation)模型進行分析;對於表達抽取則有:深度學習的方法、基於JST (Joint Sentiment/Topic )模型的方法等。
情感分類:情感分類則是將文本分爲一個具體的類別,好比情感傾向分析,則是將文檔分爲:褒義、貶義、中性等。通常來講,進行情感分類的方法有,基於情感詞典、基於機器學習。基於情感詞典,最典型的方法則是基於知網Hownet情感詞典的So-Hownet指標進行情感分類,基於機器學習的方法則有監督學習方法、半監督學習方法等。
針對於情感分析,現已經存在一些專有平臺,如:基於Boson 數據的情感分析平臺,基於產品評論的平臺Google Shopping。情感分析除了在電商平臺應用普遍以外,情感分析技術還被引入到對話機器人領域。例如,微軟的「小冰」機器人 能夠經過分析用戶的文本輸入和表情貼圖,理解用戶當前的情緒情況,並據此回覆文本或者語音等情感迴應。部分研究機構還將情感分析技術融入實體機器人中。
2. 發展史
V. H. 和 K. R. McKeown 於 1997 年發表的論文 [1],該論文使用對數線性迴歸模型從大量語料庫中識別形容詞的正面或負面語義,同時藉助該模型對語料中出現的形容詞進行分類預測。
Peter Turney在 2002年在論文 [2] 提出了一種無監督學習的算法,其能夠很好的將語料中的詞語分類成正面情感詞和負面情感詞。
2002 年 Bo Pang 等人在論文 [3] 中使用了傳統的機器學習方法對電影評論數據進行分類,同時也驗證了機器學習的方法的確要比以前基於規則的方法要優。
2003 年 Blei 等人在論文 [4] 中提出了 LDA(Latent Dirichlet Allocation)模型,在以後的情感分析領域的工做中,不少學者/研究人員都使用主題模型來進行情感分析,固然也不僅是基於主題模型來進行情感分析研究,還有不少利用深度學習方法來進行情感分析的研究。
Lin 和 He在 2009 年的論文 [5] 提出了一種基於主題模型的模型 —JST(Joint Sentiment/Topic),其有效的將情感加入到了經典的主題模型當中,所以利用該模型能夠獲取到不一樣情感極性標籤下不一樣主題的分佈狀況。傳統的主題模型獲取文檔的主題以及詞的分佈狀況,但並無關注到情感的存在,所以基於該模型能夠對文檔的情感傾向進行分析。利用 JST 模型能夠有效的直接將語料的主題、情感信息挖掘出來,同時 JST 模型還考慮到了主題、文檔、情感、詞之間的聯繫。
基於對於語義和句法的考慮,Jo 和 H.OH 在 2011 年提出了 ASUM(Aspect and Sentiment Unification Model)模型,該模型和 JST 模型很類似都是四層的貝葉斯網絡結構 [6] 。
基於神經網絡的語義組合算法被驗證是一種很是有效的特徵學習手段,2013年,Richard Socher和Christopher Potts等人提出多個基於樹結構的Recursive Neural Network,該方法經過迭代運算的方式學習變量長度的句子或短語的語義表示,在斯坦福情感分析樹庫(Stanford Sentiment Treebank)上驗證了該方法的有效性 [7]。Nal Kalchbrenner等人描述了一個卷積體系結構,稱爲動態卷積神經網絡(DCNN),他們採用它來進行句子的語義建模。 該網絡使用動態k-Max池,這是一種線性序列的全局池操做。 該網絡處理不一樣長度的輸入句子,並在句子上引入可以明確捕獲短程和長程關係的特徵圖。 網絡不依賴於解析樹,而且很容易適用於任何語言。該模型在句子級情感分類任務上取得了很是出色的效果[8]。2015年,Kai Sheng Tai,Richard Socher, Christopher D. Manning在序列化的LSTM (Long Short-Term Memory)模型的基礎上加入了句法結構的因素,該方法在句法分析的結果上進行語義組合,在句子級情感分類和文本蘊含任務(text entailment)上都取得了很好的效果[9]。
2016年,Qiao Qian, Xiaoyan Zhu等人在LSTM和Bi-LSTM模型的基礎上加入四種規則約束,這四種規則分別是: Non-Sentiment Regularizer,Sentiment Regularizer, Negation Regularizer, Intensity Regularizer,利用語言資源和神經網絡相結合來提高情感分類問題的精度。
除了上面的一些研究,關於情感分析領域的應用仍然有不少,好比:2015 年鄭祥雲等人經過主題模型提取出來圖書館用戶的主題信息,最後利用這些信息來進行個性化圖書的有效推薦。將 JST 模型中直接引入了情感詞典做爲外部先驗知識來對新聞文本進行分析,獲取其中的主旨句,並對主旨句進行情感打分,同時利用情感主旨句來代替全文,這樣可以使得用戶更有效、更快速的閱讀文章。
總的來講,情感分析在不少的領域被應用,固然情感分析也有不少的侷限性,就是過多的依賴於語料庫信息,同時還須要使用天然語言、人工智能的方法來可以最大化的挖掘出來其中的信息。
參考文獻:
[1] :Predicting the semantic orientation of adjectives
[2]: Thumbs up or thumbs down? Semantic orientation applied to unsupervised classification of reviews
[3] : Thumbs up? Sentiment Classification using Machine Learning Techniques
[4] : Latent Dirichlet Allocation
[5] : Joint sentiment/topic model for sentiment analysis
[6] : Aspect and sentiment unification model for online review analysis
[7] : Recursive Deep Models for Semantic Compositionality Over a Sentiment Treebank
[8]: A Convolutional Neural Network for Modelling Sentences
[9]: Improved Semantic Representations From Tree-Structured Long Short-Term Memory Networks
[10] : Linguistically Regularized LSTMs for Sentiment Classification