情緒分析(Sentiment Analysis)是繼文字探勘(Text Mining)之後,近年被熱烈討論的議題。過去學者普遍探討的是如何把一句話非結構化轉結構化的方法,像是各式演算方法,包含監督式學習(Supervised learning)、半監督式學習(Semi-supervised learning)、非監督式學習(Unsupervised learning)方法都有大量討論,各種文字探勘工具也應運而生,現在透過R、Python也都能很快做到這些事情。
我們隨著學者的腳步,可以發現隨著時代演進,解析文字的科技發展,在20年間有很快速的變動。從最早的網頁資料探勘(Web Data Mining)、文字探勘(Text Mining),慢慢的演進到近10年討論的情緒探勘(Sentiment Analysis)與意見探勘(Opinion Mining),再到這2年的情緒分析系統(Sentiment Analysis System)這樣的議題,都是為了要解決我們大量文字的閱讀需求,因為人類每一天不斷產生文字與內容已經超乎我們想像。
要如何從大量文字裡面掏金,有幾個步驟非常重要,筆者整理如下:
- 選定目標
- 爬文解析
- 斷字斷句(非結構化轉結構化)
- 情緒分析
- 資料視覺化
粗略上面的步驟,都有個別的議題需要討論。從1、2、3、5步驟都有現成工具可以使用,最難的反而是第4的步驟「情緒分析」。
針對「情緒分析」筆者在有限的時間下,整理這10年大部分學者所做的幾個方法
,供有興趣的朋友參考:
- 基於文件為基礎的情緒分類(Document-based sentiment classification)
- 以主觀的概念做情緒分析(Subjectivity and sentiment classification)
- 以外觀(屬性)為基礎的情緒分析(Aspect‐based sentiment analysis)
- 建立情緒字彙的情緒分析(Lexicon‐based sentiment analysis)
還有其他關於情緒分析有趣的議題,包含從2005年開始有學者針對線上評論的評等預測(Review rating prediction)、2006年有學者開始研究意見比較(Comparative opinions)、以及2007年開始有學者研究意見垃圾偵測(Opinion spam detection)等。
這些方法的重點都是要嘗試從大量的文字中,辨識出正面與負面等情緒,好讓這些結果產生出商業價值,但事實上還是有許多問題需要被解決,包含像是特殊的嘲諷句子,如:「這手機很棒,我從來都無法開機。」以及像是中文文法、日文文法等等問題,因此做的精準做得好,還需要投入大量的資源與成本,更重要的是要跨領域,包含找中文系、英文系等熟稔語言的專家,加入一些修辭學的概念等等,甚至是筆者同事建議的語音、圖像辨識專家,因為在大數據的時代講究的是跨領域的整合,單從文字上解析的變數還不夠,還需要更多元的資料,才能做得更好。
綜觀來說,情緒分析的商業價值,除了可以提早了解顧客對於產品或公司的觀感,進而調整營運策略方向。在產品銷售的途中,也可以捕捉顧客對於產品的體驗。筆者也曾使用類似的方法協助某企業了解他們顧客對於產品的評價狀況。筆者同事也曾上述方法進行服貿事件的文字解析。不管在銷售前、銷售後,企業在了解市場的方法上,除了問卷,透過情緒分析我們有值得參考的新選擇。
參考資料: