彭紀奔 吳 林 陳 賢 黃雷君
1(溫州大學物理與電子信息工程學院 浙江 溫州 325035)2(溫州大學教師教育學院 浙江 溫州 325035)3(溫州大學機電工程學院 浙江 溫州 325035)4(浙江農林大學信息工程學院 浙江 臨安 311300)
?
基于爬蟲技術的網絡負面情緒挖掘系統(tǒng)設計與實現(xiàn)
彭紀奔1吳林2陳賢3黃雷君4
1(溫州大學物理與電子信息工程學院浙江 溫州 325035)2(溫州大學教師教育學院浙江 溫州 325035)3(溫州大學機電工程學院浙江 溫州 325035)4(浙江農林大學信息工程學院浙江 臨安 311300)
社交網絡的興起為人們提供了一個新的情感空間,但是在網絡中出現(xiàn)心理健康問題的人們通常得不到應有的關注和幫助,甚至受到其他網民的惡意攻擊。為便于在網絡空間向需要的人群提供及時有效的心理輔導和救助,提出一個基于爬蟲技術的網絡負面情緒挖掘系統(tǒng)CyberCare。在Scrapy爬蟲框架下,對目標網絡進行周期性的自動抓取,對網頁內容的負面情緒進行度量,并為心理工作者的及時介入提供接口。針對國內數(shù)個知名網站的實驗結果顯示,CyberCare能夠將心理工作者的關注范圍縮小到網站新帖的千分之一左右,顯著提高了工作效率。對于情感類特定版塊,實驗結果的精度和召回率分別達到60%和80%,顯示了該系統(tǒng)的有效性。
網絡爬蟲情緒挖掘負面情緒正則表達式
隨著計算機網絡的發(fā)展和社交網絡的大規(guī)模推廣,越來越多的人傾向于在社交網絡中展示自己的生活狀態(tài)或者抒發(fā)自己的情感。據2012年10月4日的《華爾街日報》報道,F(xiàn)acebook的活躍用戶數(shù)在2012年9月已達到10億。在中國,作為中國最大的社交網絡平臺,QQ空間的活躍用戶數(shù)在2011年就已超過5億。社交網絡作為一種新生事物,為人們提供了一個自由發(fā)表言論和抒發(fā)情感的平臺。而另一方面,網絡上也不乏冷漠甚至人身攻擊的現(xiàn)象。比如,2013年8月2日,英國萊斯特郡一位14歲的女孩,不堪網民的辱罵而自殺身亡。類似的悲劇在中國也屢有發(fā)生。針對這種網絡暴力,社會各界呼吁加強法律監(jiān)管。然而由于網絡的跨地域性和匿名性,法律監(jiān)管并不一定能夠及時有效地實施。另一方面,對于心理健康出現(xiàn)問題的人,那些有愛心的網民往往也由于缺乏專業(yè)的訓練而無法提供有效的救助。
網絡空間作為物理空間的延伸,在其中呈現(xiàn)心理健康問題的人,同樣需要得到專業(yè)心理醫(yī)生的救助。本文通過對常用社交網絡的結構及其內容的分析,設計了一個面向社交網絡的負面情緒挖掘系統(tǒng)CyberCare。借助于網絡爬蟲技術。CyberCare周期性地自動搜索指定網站,尋找具有負面情緒的帖子;另一方面,注冊于該系統(tǒng)的專業(yè)心理醫(yī)生根據搜索的結果,通過回復的形式向這類帖子的作者提供心理輔導,以幫助對方走出心理困境。
CyberCare可用于對多個社交網絡這樣大范圍內的網民進行心理關注和救助,也可為面向特定人群如高校學生的思想工作者提供實時有效的信息,以便給存在心理問題的人提供及時的幫助。本文分析了針對國內數(shù)個主要社交網絡的實驗結果。結果表明,CyberCare能夠及時有效地發(fā)現(xiàn)網絡中具有負面、偏激情緒的帖子,為心理醫(yī)生的介入提供重要依據。
隨著互聯(lián)網技術的發(fā)展和Web 2.0的興起,網絡用戶發(fā)布的內容和形式越來越多,網絡數(shù)據挖掘成為一個研究熱點。對網絡的挖掘,包括對網絡結構的挖掘、網絡內容的挖掘和網絡使用情況的挖掘[1]。其中,基于網絡文本內容的情感分析作為網絡內容挖掘的一個研究方向,得到研究人員的廣泛研究[2,3]。
1.1情感分析
情感分析通過對文本內容的研究來了解和衡量人們的觀點、態(tài)度、情緒等主觀屬性。觀點挖掘是情感分析最常見的任務,即研究如何從文本中獲取人們對某一事物的正反情感或觀點。比如對某一商品的好評或差評[4-7],對某一政策的支持或反對[8]或者對某一觀點的認同與否[9,10]。目前,觀點挖掘采用的方法可分為兩大類:基于詞典的方法和基于分類的方法?;谠~典的方法通過比對主觀情感詞詞典來確定一篇評論的極性為褒義、貶義或者中性;基于分類的方法則采用支持向量機或者樸素貝葉斯等技術對評論的極性進行分類[5]。觀點挖掘具有兩個特征:一是有明顯的評價對象,如產品、政策等;二是挖掘的結果往往只關注極性,而不關注強度。
近年來,隨著社交網絡的興起,對網絡上個人情緒的挖掘分析逐漸增多。與觀點挖掘對象不同的是,個人情緒的表達往往沒有明顯的評價對象,而且其強度與正負極性同樣重要。個人情緒的挖掘大多采用基于詞典的方法。詞典包含了反映各種情緒的詞語以及相應的強度,根據這些詞語在目標文本中的出現(xiàn)情況,可計算目標文本的情緒極性、類型和強度。如Bollen等人[11]采用經典的心理測量學方法POMS,根據Twitter上每一篇tweet中包含的情感詞與POMS詞典的匹配情況,計算該tweet的六維心情矢量,分別表示緊張、沮喪、生氣、活躍、疲憊和困惑六類心情的強度。Thelwall等人開發(fā)的SentiStrength軟件[12,13]也采用基于詞典的方法計算社交網絡上一篇短文的正面情緒強度和負面情緒強度(該作者假設一篇短文可同時含有正面情緒和負面情緒)。而Taboada[14]和Shen等人[15]則只用一個數(shù)綜合表示文本所表達的情緒,負數(shù)表示負面情緒,正數(shù)表示正面情緒;數(shù)字的絕對值越大,表示該文本所表達的情緒越強烈。其中Shen等人的研究對象為中文微博的內容,其構造的詞典包含了中、英文情感詞,不同程度的情感詞被賦予不同的權重,從而可以計算出一條微博的綜合情緒指數(shù)。在此研究基礎上,Shen等人開發(fā)了一個用于分析各種文本內容的軟件系統(tǒng),即ROST內容挖掘系統(tǒng)[16]。該系統(tǒng)的情感分析功能可用于度量給定文本所表達的情緒。謝麗星等人則結合中文微博中的表情符號及內容與主題的相關性,以提高情感分析的準確性[17]。
本文采用與Shen等人[16,17]類似的方法,但著重于負面情緒的分析,因負面情緒比正面或者中性情緒更應引起人們的關注。同時,采用爬蟲技術,以實現(xiàn)負面情緒挖掘和分析的自動化,使得設計的系統(tǒng)更具有實用意義。
1.2網絡爬蟲框架Scrapy
CyberCare系統(tǒng)的設計基于用Python語言編寫的開源網絡爬蟲框架Scrapy (http://scrapy.org)。Scrapy的體系結構如圖 1所示,其主要組件包括Scrapy Engine、Scheduler、Downloader、Spider和Item Pipeline。Scheduler將Spider產生的HTTP請求報文放入隊列,并在適當?shù)臅r候發(fā)給Downloader。Downloader將HTTP請求報文發(fā)往Internet并接收相應的HTTP響應報文。Downloader將響應報文發(fā)給Spider進行處理。Spider提取報文中的有用信息,生成Item,并將后者輸入給Item Pipeline進行諸如評估和存儲等的處理。Spider也會從報文中提取URL生成新的HTTP請求報文,以對網站內容進行進一步的挖掘。Scrapy Engine是該框架的中樞,實現(xiàn)HTTP請求報文、響應報文和Item在整個系統(tǒng)中的傳遞。Scrapy框架中的大部分組件是可擴展的。在大多數(shù)應用場合,包括CyberCare系統(tǒng),只需要對Spider和Item Pipeline進行擴展。
圖1 Scrapy體系結構
CyberCare通過擴展Scrapy組件,對指定網站進行網頁抓取,并對抓取到的網頁內容進行情緒評估。對于負面情緒強烈的帖子,將其相關信息存入數(shù)據庫,以供專業(yè)心理工作者針對性地提供及時準確的心理輔導和救助。
2.1CyberCare軟件設計
CyberCare體系結構如圖 2所示。該系統(tǒng)包含一個或多個挖掘線程、一個中央數(shù)據庫和一個服務器(為簡單起見,圖中只顯示了兩個挖掘線程)。每一個挖掘線程的設計均基于Scrapy框架,包含一個為特定網站設計的Spider,對該網站進行周期性的挖掘。在挖掘過程中,從網頁中提取的Item(比如,某個論壇中的一個帖子)被送到NemoPipeline進行負面情緒nemo的計算;nemo值超過預設閾值的Item被傳輸給StorePipeline,后者將該Item的相關信息存入中央數(shù)據庫中。CyberCare的中央服務器(圖中的CC_Server)提供兩個功能:一方面為心理醫(yī)生提供注冊服務,并將最新挖掘結果推送到他們的終端;另一方面為心理醫(yī)生和相關工作人員提供歷史瀏覽功能。挖掘線程、中央數(shù)據庫和服務器可運行于同一臺主機上,也可運行于多臺主機。為提高性能,每一個挖掘線程可獨立運行于不同主機。已在系統(tǒng)中注冊的心理醫(yī)生將根據nemo值所反映的緊急程度在相應的網頁中進行回復,提供實質性的心理輔導和救助。
圖2 CyberCare體系結構
2.1.1CC_Spiders
CC_Spiders是CyberCare爬蟲的統(tǒng)稱,每一個Spider都是對Scrapy框架中的CrawlSpider或BaseSpider的擴展,并根據指定目標網站的結構而設計,以準確、完整地抓取網站的內容。使用CrawlSpider,首先要制定URL鏈接的規(guī)則,只有URL符合給定正則表達式的網頁才會被處理,以提取其中的內容。由于網頁中往往含有通往其他各個頁面的超鏈接,使用CrawlSpider并不能指定抓取的順序,因此適合于針對全站或者網站結構中一部分(比如每一個版塊的第一頁)進行抓取。對于增量式抓取,即每次只抓取新發(fā)布的內容,則使用更基本的BaseSpider進行更精準的控制。
以CyberCare系統(tǒng)中抓取天涯論壇的TianyaCrawler為例。TianyaCrawler繼承了Scrapy框架中的CrawlSpider類。其start_urls初始化為[′http://bbs.tianya.cn′],即爬蟲進行自動抓取的初始網頁。當運行Scrapy框架所提供的scrapy crawl命令啟動TianyaCrawler時,該爬蟲就會抓取http://bbs.tianya.cn網頁內容,提取該網頁中的超鏈接,并抓取這些超鏈接所對應的網頁內容,以此類推。爬蟲的開發(fā)者可以制訂規(guī)則,使爬蟲選擇性地只抓取部分超鏈接的網頁內容。比如,TianyaCrawler的以下兩條規(guī)則表示,該爬蟲抓取到每一個版面的首頁后,將進一步抓取其中的超鏈接內容(follow=True),這條規(guī)則的目的是為了從版面找到其中的帖子;而在抓取到每一個帖子的首頁后,調用回調函數(shù)parse_thread_page對網頁內容進行分析,而對帖子中的超鏈接不再進一步抓取(follow=False)。
rules = (
Rule(SgmlLinkExtractor(allow=(′/list-[a-z0-9]+-1.shtml′,)), follow=True),
Rule(SgmlLinkExtractor(allow=(′/post-[a-z0-9]+-d+-1.shtml′,)), callback=′parse_thread_page′, follow=False),
)
回調函數(shù)parse_thread_page的作用是提取HTML文本中的作者、日期以及帖子的文本內容,并生成包含這些信息的一個Item對象。根據CyberCare系統(tǒng)的配置,這個Item對象在Scrapy Engine的驅動下,被依次傳遞給系統(tǒng)中的各個Pipeline進行處理。
2.1.2NemoPipeline
NemoPipeline是CyberCare系統(tǒng)的第一個Pipeline,用于計算Item對象的負面情緒值。在初始化階段,NemoPipeline將情感詞詞典及否定詞詞典從文件讀入內存,保存在Python dict數(shù)據結構中。在爬蟲運行過程中,NemoPipeline的process_item函數(shù)處理來自爬蟲的Item對象。該函數(shù)的主要功能是利用正則表達式匹配方法計算Item對象的負面情緒值(具體算法見2.2節(jié))。負面情緒值超過預定閾值的Item對象,被傳遞給下一個Pipeline;未超過預定閾值的Item對象被拋棄,以節(jié)約后續(xù)Pipeline的處理時間。
2.1.3StorePipeline
StorePipeline負責將負面情緒值超過預定閾值的Item對象存儲于數(shù)據庫中。并在相應爬蟲的本次運行結束之后,結合數(shù)據庫中的歷史數(shù)據,生成以作者為線索和以主題為線索的報告,發(fā)送給中心服務器CC_Server,由后者進一步推送給相關人員。以作者為線索的報告,反映了該作者在時間維度上的負面情緒波動,可比較全面地考察該作者的心理狀態(tài)變化。而以主題為線索的報告,反映了不同人在同一主題下所呈現(xiàn)的負面情緒,可用于考察人與人之間情緒的影響。
CyberCare系統(tǒng)包含一個中央數(shù)據庫系統(tǒng)。在初始化階段,StorePipeline建立與中央數(shù)據庫的連接。在爬蟲運行過程中,StorePipeline的process_item函數(shù)接收上游Pipeline(即Nemo Pipeline)返回的Item對象,根據其nemo值,選擇性地將Item對象存儲于數(shù)據庫中。在爬蟲運行結束后,StorePipeline的close_spider函數(shù)生成并發(fā)送相應的報告。
2.2負面情緒評估方法
CyberCare對網絡帖子內容的情緒評估采用正則表達式匹配的方式。將中文網絡上常用的表達負面情緒的詞句組織成由多個正則表達式組成的詞典,每個正則表達式根據其表達的情緒強烈程度賦予一定的權重。對于CyberCare通過網絡爬蟲抓取到的網頁內容,其負面情緒的度量基于該網頁內容所匹配的正則表達式及其權重。
正則表達式詞典的構造采用知網[18]2007年發(fā)布的“情感分析用詞語集(beta版)”,對其中表達負面情感的1254條詞語,由7名研究人員獨立根據所表達情感的強弱程度逐一進行打分,情感最強烈的詞語為10分,最弱的為0分。將每一條詞語的7個分數(shù)的平均值作為該詞語的權重。圖 3顯示了這些詞語的權重分布。從圖中可以看出,該詞語集表達情感較弱的詞語遠多于情感較強的詞語,其中情感最弱的詞語(權重為0)占據了該詞語集的近25%。因為本研究針對的是表達強烈負面情緒的網絡內容,因此從該詞語集中剔除這些情感最弱的詞語,以縮減正則表達式詞典的規(guī)模,提高對網絡內容的負面情緒評估速率。而且根據網絡自身特點,進一步剔除一些網絡上罕見的生僻詞。在根據正則表達式的語法整合后,得到492條正則表達式。最后根據網絡用語的特點,補充了28條網絡上常見的表達負面情緒的正則表達式,構造了由520條正則表達式組成的負面情緒詞典。
圖3 “情感分析用詞語集(beta版)”權重分布
否定詞的存在會消除或減弱詞語所帶來的負面情緒,比如“我心里難過”表達了一定程度的負面情緒,而“我心里不難過”就基本沒有負面情緒了。另外還需考慮的是,中文的雙重否定表示肯定的意思。為此,CyberCare構建了一個否定詞正則表達式REX。當負面情緒詞典中的一條正則表達式REi匹配網頁內容中的某處(假設位置為Pj)時,在該處前面一定范圍內(比如5個漢字)檢查否定詞正則表達式REX匹配的數(shù)目。如果該數(shù)目為奇數(shù),則Pj處REi的匹配不計入負面情緒的統(tǒng)計。
一個網絡帖子的負面情緒用式(1)計算。其中,Oi表示負面情緒詞典中一條正則表達式REi的有效匹配次數(shù)(即未被否定的匹配次數(shù)),Wi表示REi的權重,K為負面情緒詞典中正則表達式的數(shù)目(即詞典的大小)。計算結果η即為該網絡帖子的nemo值。
(1)
計算一個帖子nemo值的過程如算法1所示。對于目標文本,該算法考察負面情緒詞典中每一條正則表達式REi與該文本的匹配情況。對于每一個匹配之處,檢查目標文本中該處之前5個漢字范圍內否定正則表達式REX匹配的次數(shù)。如果次數(shù)為偶數(shù),則根據REi的權重增加目標文本的nemo值(REX匹配的過程與REi的匹配過程相似,為保持算法的簡潔,在算法1中用一個步驟表示)。算法1的復雜度為O(MK),其中M為帖子的長度。采用正則表達式匹配的方式進行情感分析,可以避免分詞等開銷。而且目前已有成熟的硬件加速技術實現(xiàn)正則表達式匹配,從而提高情感分析的處理速率。例如采用DFA或NFA硬件引擎,可使nemo值的計算復雜度降為O(M),即計算的時間成本只與帖子的長度有關,而與負面情緒詞典的大小無關。
算法1負面情緒度量算法
輸入:
Dict:負面情緒詞典
REX:否定詞正則表達式
Msg:網絡帖子內容,長度為len
輸出:Msg的負面情緒
過程:
nemo = 0
for Dict中的每一個正則表達式REi
offset=0
while (offset< len)
在Msg[offset..len-1]中匹配REi
if 匹配成功
設startp為當前匹配的起始位置
設endp為當前匹配的結束位置
設Wi為REi的權重
在Msg[startp-5..startp]中匹配REx
if 匹配的數(shù)目為奇數(shù)
//負面情緒前有否定詞
continue
else
nemo = nemo + Wi
offset = endp
continue
else
break
輸出nemo
本文基本實現(xiàn)了CyberCare系統(tǒng),并針對國內幾個主要的社交網絡,包括天涯論壇(bbs.tianya.cn)和百度貼吧(tieba.baidu.com)等,開發(fā)了爬蟲并進行了多次實驗。
為考察CyberCare系統(tǒng)的有效性,對天涯論壇上負面情緒比較強烈的“心靈熱線”版塊進行了多次抓取和分析,并與ROST情感分析工具和人工方式進行比較。例如,在2015年5月12日的一次運行中,抓取了該版塊最新91個主題中的首個帖子。CyberCare對所有91個帖子的負面情緒進行了計算,結果顯示有55個帖子的nemo值大于0,最大值為173。對于抓取到的所有帖子內容,再用ROST情感分析工具逐個進行分析。由于ROST計算的結果可為正面情緒、中性情緒和負面情緒(分別為正數(shù)、0和負數(shù)),為便于比較,將其結果中的正面情緒帖子的分數(shù)置為0,而對負面情緒的分數(shù)取其絕對值。同時,由7名研究人員對91個帖子根據各自感受到的負面情緒強烈程度以百分制打分,均值作為每個帖子的人工負面情緒值。將三組數(shù)據分別歸一化后,得到{NCi}、{NRi}、{NMi},分別表示用三種方法計算出來的每個帖子的歸一化負面情緒值。以人工方法得到的結果為參考值,按式(2)計算CyberCare與人工方法的均方誤差EC,M。以同樣的方法計算ROST與人工方法的均方誤差ER,M。計算結果為EC,M=0.058,ER,M=0.075??梢奀yberCare計算帖子負面情緒的準確性,與ROST情感分析工具相當。
(2)
CyberCare與人工和ROST方法對每一個帖子的計算結果的差異分布如圖 4所示(差異用兩種方法得出的歸一化負面情緒值的差的絕對值表示)。從圖中可以看出,CyberCare與人工方法計算結果中,大部分帖子的計算結果差異很小,差異小于0.1的占60%,差異在0.1~0.2之間的占15%左右。而CyberCare與ROST方法的計算結果更加相近。多次實驗得到相似的結果。
圖4 CyberCare與人工和ROST方法計算結果差異分布
將CyberCare的結果與人工方法的結果進行比較,并作如下定義:
True Positive (TP): 兩者得出的負面情緒值均大于0;
True Negative (TN): 兩者得出的負面情緒值均等于0;
False Positive (FP): CyberCare計算的負面情緒值大于0,人工方法得出的負面情緒值等于0;
False Negative (FN): CyberCare計算的負面情緒值等于0,人工方法得出的負面情緒值大于0;
則對前述CyberCare運行結果的匯總如表1所示。作為比較,表中也列出了ROST方法的結果。從表中可以看出,以人工方法得出的結果為參照,CyberCare的精度(Precision,即TP/(TP+FP))為67%,召回率(Recall,即TP/(TP+FN))為80%。
表1 CyberCare和ROST相對于人工方法的準確性
CyberCare對天涯論壇進行了多次全站范圍內的抓取(每個版塊首頁每個主題的第一個帖子)。根據其中2015年5月23日的一次運行記錄,共抓取和分析了226 304個帖子,其中nemo值大于0的帖子2316個,占總數(shù)的1%。這2316個帖子的nemo值分布如圖5所示?;谔拥凝嫶髷?shù)量,無法計算該結果的召回率。對于nemo值大于20的共322個帖子(帖子總數(shù)的0.14%,nemo值大于0的帖子數(shù)的14%),采用人工方法認定共有65個帖子真正表達了負面情緒,即CyberCare該次運行結果相對于人工方法的精度為20%。
圖5 天涯論壇nemo值分布
多次實驗結果表明,CyberCare系統(tǒng)能夠從目標網站的大量帖子中有效抓取包含負面情緒的帖子,給心理工作者的及時介入提供了依據,提高了心理工作者的工作效率。系統(tǒng)在精度和召回率方面尚有提高的空間,其原因主要有以下幾點:
(1) 知網發(fā)布的負面情感詞典包含了中文文獻中含有負面情緒的詞語,覆蓋面廣。據此發(fā)現(xiàn)的很多帖子雖然含有一定的負面情緒,但是并不都需要引起心理工作者的關注。
(2) 網絡上心靈雞湯類的帖子包含了大量的負面情緒詞語,但是帖子本身并不表達任何負面情緒。因此需要分析帖子的語境,區(qū)分個人情緒的表述和諸如心靈雞湯之類第三人稱的表述。
(3) 有些帖子雖然表達強烈的負面情緒,但是由于用詞婉轉,沒有被CyberCare系統(tǒng)發(fā)現(xiàn)。因此需要考慮中性詞語之間的關聯(lián)。雖然單個詞語不表達負面情緒,但是當多個詞語以一定方式關聯(lián)在一起的時候,卻能表達比較強烈的負面情緒。
本文描述了一個基于爬蟲技術的網絡負面情緒挖掘系統(tǒng)CyberCare的設計。在Scrapy爬蟲框架下,CyberCare對目標網絡進行周期性的自動抓取,對網頁內容的負面情緒進行度量,并將負面情緒強烈的帖子存儲于數(shù)據庫。同時,該系統(tǒng)為心理工作者的介入提供了接口,使得網絡空間存在心理健康問題的人得到及時的專業(yè)心理救助成為可能。針對天涯論壇和百度貼吧等知名網站的實驗證實了該系統(tǒng)的有效性。
下一階段的工作將從兩方面展開:一方面將改進負面情緒詞典及度量算法,提高其準確性;另一方面將擴充CyberCare系統(tǒng)的爬蟲,改善運行性能,使其在保證實時性的同時能夠覆蓋更大范圍的目標網絡。
[1] Liu B.Web data mining[M].2nd ed.Berlin:Springer,2011.
[2] 周立柱,賀宇凱,王建勇.情感分析研究綜述[J].計算機應用,2008,28(11):2725-2728.
[3] 趙妍妍,秦兵,劉挺.文本情感分析[J].軟件學報,2010,21(8):1834-1848.
[4] Pang B,Lee L.Opinion mining and sentiment analysis[J].Foundations and Trends in Information Retrieval,2008,2(1-2):1-135.
[5] Liu B.Sentiment analysis and opinion mining[M].California:Morgan & Claypool Publishers,2012.
[6] 葉強,張紫瓊,羅振雄.面向互聯(lián)網評論情感分析的中文主觀性自動判別方法研究[J].信息系統(tǒng)學報,2007,1(1):79-91.
[7] 李實,葉強,李一軍,等.挖掘中文網絡客戶評論的產品特征及情感傾向[J].計算機應用研究,2010,27(8):3016-3019.
[8] 楊超,馮時,王大玲,等.基于情感詞典擴展技術的網絡輿情傾向性分析[J].小型微型計算機系統(tǒng),2010,31(4):691-695.
[9] Thelwall M,Wilkinson D,Uppal S.Data mining emotion in social network communication: gender differences in MySpace[J].Journal of the American Society for Information Science and Technology,2010,61(1):190-199.
[10] Rao Y H,Li Q,Mao X D,et al.Sentiment topic models for social emotion mining[J].Information Sciences,2014,266:90-100.
[11] Bollen J,Mao H,Pepe A.Modeling public mood and emotion:Twitter sentiment and socio-economic phenomena[C]//Proceedings of the 5th International AAAI Conference on Weblogs and Social Media (ICWSM),July 17-21,2011,Barcelona,Spain.Menlo Park,CA:The AAAI Press,2011:450-453.
[12] Thelwall M,Buckley K,Paltoglou G,et al.Sentiment strength detection in short informal text[J].Journal of the American Society for Information Science and Technology,2010,61(12):2544-2558.
[13] Thelwall M,Buckley K,Paltoglou G.Sentiment strength detection for the social web[J].Journal of the American Society for Information Science and Technology,2012,63(1):163-173.
[14] Taboada M,Brooke J,Tofiloski M,et al.Lexicon-based methods for sentiment analysis[J].Computational Linguistics,2011,37(2):267-307.[15]ShenY,LiSC,ZhengL,etal.Emotionminingresearchonmicro-blog[C]//Proceedingsofthe1stIEEESymposiumonWebSociety(SWS),August23-24,2009,Lanzhou,China.Piscataway,NJ:IEEE,2009:71-75.
[16]ShenY.ROSTcontentminingsystem:softwareforcontentminingandanalysis[R].Wuhan:WuhanUniversity,2008.
[17] 謝麗星,周明,孫茂松.基于層次結構的多策略中文微博情感分析和特征抽取[J].中文信息學報,2012,26(1):73-83.
[18]DongZ,DongQ.HowNetknowledgedatabase[EB/OL].(2007-10-23).[2015-4-1].http://www.keenage.com/html/c_bulletin_2007.htm.
DESIGN AND IMPLEMENTATION OF A WEB CRAWLING-BASED NEGATIVE EMOTION MINING SYSTEM
Peng Jiben1Wu Lin2Chen Xian3Huang Leijun4
1(CollegeofPhysicsandElectronicInformationEngineering,WenzhouUniversity,Wenzhou325035,Zhejiang,China)2(CollegeofTeacherEducation,WenzhouUniversity,Wenzhou325035,Zhejiang,China)3(CollegeofMechanicalandElectricalEngineering,WenzhouUniversity,Wenzhou325035,Zhejiang,China)4(SchoolofInformationEngineering,ZhejiangA&FUniversity,Linan311300,Zhejiang,China)
The rise of social networks provides people a new emotional space, but those who show psychological health problems online are usually lack of due attention and help, and sometimes even become the victims of Internet violence. To facilitate offering psychological counselling and assistance to those people in need in cyberspace timely and effectively, we propose a crawling-based web negative emotion mining system called CyberCare. Adopting the Scrapy open-source crawling framework, CyberCare periodically and automatically crawls target websites and measures the negative emotion of crawled web pages. The system also provides an interface to voluntary psychologists for timely intervention. Results of experiments targeted at several known social network websites show that CyberCare can narrow the concerning range of psychologists to one thousandth of all the new posts on websites, thus significantly improves work efficiency. For specific section of emotional class, the precision and recall of experimental results reach approximately 60% and 80% respectively, this shows the effectiveness of the system.
Web crawlerEmotion miningNegative emotionRegular expression
2015-05-26。浙江省新苗人才計劃項目(2014R4240 18)。彭紀奔,本科生,主研領域:網絡數(shù)據挖掘。吳林,本科生。陳賢,講師。黃雷君,講師。
TP3
A
10.3969/j.issn.1000-386x.2016.10.003