社群大數據的情緒分析(精華版)

 
2018/06/19 陳宜欣 | 清華大學資訊工程系副教授     185
 
活動(演講)時間: 2018/03/11
 

情緒反應了我們的心理狀態,如果處理不好,很可能會造成心理疾病或社會問題,所以許多專家便試圖利用機器學習的技術,從社群的大數據中找出各種情緒表現,希望能及早避免憾事發生。清華大學資訊工程系副教授陳宜欣想出了一種用機器學習來分析情緒的新方法。

 

情緒如何表達?

 

由於陳宜欣是三個小孩的媽媽,她發現小孩的情緒表達方式其實與傳統研究方法不太一樣。傳統方法需要一個詞庫,告訴你什麼是開心,什麼是不開心,但是陳宜欣說:「情緒的表達其實是小細節與創意的累積。」

 

例如小孩對媽媽說「你總是叫我收玩具」,「總是」這個小細節不在詞庫裡,很容易被忽略。表達情緒時,還常常有錯別字或是奇怪的結構,像是「我永遠不能電視看了」這樣的結構。另外,語言的表達非常有創意和想像力,例如「對你的回憶,一切都顯得蒼白無力」,從機器人的觀點來看,回憶、蒼白、無力之間是沒有邏輯關係的。

 

反之,小孩一樣能夠從細節中理解大人的情緒,但是他不懂語法,也沒背過詞典,既然小孩做得到,理論上應該可以找出一個分析方法,讓機器認識情緒。

 

取之於社會

 

雖然沒有詞庫,但陳宜欣團隊借用了「群眾潛意識智慧」。所謂的群眾潛意識智慧,是指從毫無意義的日常生活中擷取背後潛在的意義。在這裡就是指蒐集社群網站上看似無聊的發言,從中分析出重要的情緒特徵。

 

以Twitter為例,使用者經常在發文時用Hashtag加上情緒,例如:#angry,正好可以做為該段文字情緒的標準答案。團隊把這些發言收集起來做為情緒資料(實驗組),輔以新聞做為非情緒資料(對照組)。分析前,把Hashtag的標準答案移除,避免機器偷看。

 

接著分析詞頻、字詞共伴率、字詞的關係度等特性,找出兩組資料的異同處,再將這些資料交由人工智慧系統分析,讓機器幫忙找出重要的情緒字詞,然後把情緒字詞依特性重組成「情緒特徵」,最後比對標準答案排序後得到結果。

 

從分析結果可以看到,「my***always」大致是表達生氣,符合之前所說的「你總是***」;「Finally***my」多表達快樂,語氣就好像中文的「我終於***」。

 

分析中文的Facebook資料,也可以得到中文的情緒特徵,從中還可以發現,情緒用詞隨著時間可能有不同意義。例如2016年5月是台灣政黨輪替之時,在這之前所做的分析中,「國民黨」歸類在「生氣」裡,「民進黨」則屬於「希望」;但是之後的分析中,「國民黨」變成「哈哈」,「民進黨」則變成「生氣」。

 

以目前的測試結果而言,陳宜欣認為新方法值得期待。

 

用之於社會

 

這個分析方法也可以應用在偵測心理疾病上。以躁鬱症為例,病患資料為實驗組,正常人資料為對照組,然後找出兩組資料的異同處,除了分析詞頻外,還可以分析情緒變化、人際互動、生活習慣等之間的異同,最後獲得躁鬱症患者的情緒特徵。

 

這個方法集合了群眾智慧來偵測、預防心理疾病的發生,基於對社會的關懷,陳宜欣讓大數據「取之於社會,用之於社會」。

 
【整理|科學人】