# 論文筆記---Techniques and Applications for Sentiment Analysis
本論文主要圍繞在講解實用層面的情感分析,對於線上評論,到處都是可以抒發的管道,能夠從中獲得使用者心得來輔助產品開發再適合不過。將分為五大種類介紹,在那之前先回顧情感分析系統的架構...還是算了

### 文本級情感分析
情感分析的最基本形式,分為監督式和非監督式學習。
#### 監督式
- 會假設有分類的種類上限,且每類都有可用資料,最簡單可以用二分來分類,當然也可以加入中立、程度劃分(ex. 五星評分)或在這之上進行細分。
- 常見分類演算法有SVM(支援向量機)、單純貝氏分類器、邏輯回歸或KNN(鄰近演算法)。
- 若要表示文檔主題,TFIDF、POS tagging、情感字典和結構解析等屬於較高階表示法
- TFIDF是用於評估單字對於整個文本的重要性的加權演算,當單字在單一文本出現的次數越多則權重越大,另一方面如果在整個語料庫頻繁出現,權重也會降低。
#### 非監督式
- 基於文本中特定片語的semantic orientation(語義指向),加上預定義的閥值來決定正負面。
- 特定片語的方法有兩種
- 設定POS組合偵測
- 情感詞、片語字典
- 判定semantic orientation的經典方法是計算兩片語的Pointwise Mutual Information(PMI),PMI表達了兩片語間的關聯性
- 有些缺乏樣本的語言會通過機器翻譯成主流語言後再進行情感分析
### 文句級情感分析
文本中可以包含對於同一命名實體的多項意見,想要細緻分析每個意見的話就得拆解成句子個別研究。在每個句子都只對一項主題進行一種評價的預設情況下,先得確定句中有主觀意見才能進行分析(廢話)。大多數研究者都採用監督式方法進行分類:
- 一是使用Bootstrap Method(自助抽樣法、拔靴法),屬於重複抽樣方法,來減少準備訓練資料的成本。
- 二是用Minimum Cut(最小切割)方法,前提是相鄰句子擁有相同主觀意見分類,原本用於將graph切割成不同群體,在這應該是針對不同意見切割分類。
分類出句子的正反面類別後,同樣是用監督式與非監督式學習。而有研究推薦要對不同句子採取不同策略,包括條件句、疑問句、和諷刺句。
### 基於方面(屬性)(特徵)的情感分析
前兩種對於針對一種命名實體的主觀分析都能順利應付,但是多種的情況呢?甚至對這數種方面都有不同見解
==“As a long-time Kindle fan I was eager to get my hands on a Fire. There are some great aspects; the device is quick and for the most part dead-simple to use. The screen is fantastic with good brightness and excellent color, and a very wide viewing angle. But there are some downsides too; the small bezel size makes holding it without inadvertent page-turns difficult, the lack of buttons makes controls harder, the accessible storage memory is limited to just 5GB.”==
像這樣同時對一項商品有正反面評價的情況並不罕見,而且也無法輕易將這段評論歸類為正或負面任何一種,基於方面的情感分析就是為了一次處理多種情感表現而生。
- 不少企業在使用的方法是,提取所有名詞片語,並只保留出現頻率高於經過實驗找到的閥值的名詞。
- 另一種方式是對名詞「降噪」,只保留PMI高於閥值的名詞片語,通常結果會與產品密切相關。
- 還有一種是利用已知的情感表達當作片語字典來查找方面。
**當面對沒有明說的敘述時該怎麼處理?** 比如“this phone is too heavy”雖然沒有講到weight,但很明顯就是在說重量的方面。有論文提出了使用兩階端共現關聯規則(two-phase cooccurrence association rule)方法將隱含意義推敲出來。基於上述方法,搭配情感字典、情感位移器、和針對反意連接詞的特殊處理,確定情感表達的極性。
補充---共現關係:計算名詞間同時出現的場合,可以找出他們的相依關係及權重。
### 比較的情感分析
使用者評論不會一直都用直述句來評價物品,有時也會用其他產品進行比較。概念比較簡單,就是比較級和最高級的形容詞、複詞,還有額外的word tags如‘favor’‘exceed’‘prefer’‘than’等等,並以貝式分類器過濾不含比較情感的句子,它用class sequential rule(CSR,類別順序規則)演算法找出順序模式的特徵。
### 情感字典獲得
情感字典的重要性不容小覷,論文介紹三種建立方式
- 人工建立
- 利用現存字典好比WordNet
- WordNet不同於一般的字典或辭典,名詞、動詞、形容詞和副詞都被歸類、定義它們的近義、反義詞,且支援自動文本分析
- 基於語料庫的演算法納入單一專業領域的大量文本
想當然爾,人工建立不是好選項,我相信也沒人想這麼做。
#### 利用現存字典方法
- 先從小集合的起始情感詞開始,以WordNet查詢擴充它們的近義詞和反義詞
- 有篇論文也使用了semantic orientation方式搭配WordNet內對文字的距離定義
- $d(t_1,t_2)$代表兩字之間的距離
- $SO(t) = (d(t, bad) − d(t, good))/d(good, bad)$一式定義了,若結果大於0則該詞為正面,反之為負面。
- 缺點是這些字詞只有正負面關係,缺乏特定領域的相關關聯性
#### 基於語料庫的演算法
- 能夠因應特定領域的字詞關聯需求
- 其中一種使用了sentiment consistency(情感一致性)的觀念,
- 將同義詞一併視作原始詞語
- 除此之外可以靠著"and","or","neither-nor","either-or"等用語推敲同義詞
- 將獲得的詞語連接起來獲得graph,就能建立正負關係
- 有一種方法叫做double propagation
- 能夠同時獲得特定領域的情感詞和一系列方面
- 使用名為minipar parser的分析工具分析句子,並找到方面和情感表達
- [史丹佛minipar parser](http://ai.stanford.edu/~rion/parsing/minipar_viz.html)
- 從一系列的起始情感詞開始,使用預設好的依賴規則進行minipar parser的查找,緊接著用找到的詞語繼續同樣步驟直到沒有新的詞語匯入
- 示例:“Kindle Fire has an amazing display”一句,因為"amazing"用來形容"display",我們可以假設"amazing"是一種情感詞。又根據minipar parser的規則,當名詞被形容詞形容時,名詞會是一種方面,因此"display"被歸類為一種方面。
### 常見用途
- Google商品搜尋
- Twitter、Facebook等社群軟體,有個叫做TweetFeel的應用程式專門即時分析牽涉給定的關鍵字的推文(這網站中暑了)
- 當然也跟選舉脫不了關係,名為[The New York Times](https://www.nytimes.com/?action=click&contentCollection=undefined®ion=TopBar&module=HomePage-Title&pgtype=undefined)的網站專門分析民眾對於選舉人的評價
- 金融市場,部落格、社群貼文都找的到用戶對它們的感受(The Stock Sonar)(它也中暑了)
- 針對股票的分析網站也大有人在[StockTwits](https://stocktwits.com/),會對各家上市公司的股票進行走勢預測分析
- 甚至醫學領域也可以應用,他對四門轎車和糖尿病藥物市場的關係進行分析
### 留給我們的問題
1. 對各種不同情感完成更好的建模,要更精準計算、找出情感詞語、情感轉移、句法結構等
2. 一個物品擁有多個命名實體、回指分析等問題,實際例子就是“battery life” 和“power usage”是指同樣一件事的問題。
3. 同時提及多個命名實體時,找出跟文本最相關的實體
4. 缺乏完整or整合的諷刺自動偵測系統
5. 充滿雜訊的文本,諸如拼寫錯誤、語法錯誤、缺乏或錯誤標點、帶有俚語或網路用語等都難以正確的被辨識
6. 客觀描述帶有情感的可能性,目前缺乏能在客觀陳述句中取得情感狀態的演算法
###### tags: `論文`