李效偉
山東女子學院 信息技術學院,山東 濟南 250300
摘要:學生評教留言經過逐年累積,已經形成一個巨量的信息資源,如何進行挖掘和分析這些資源已經成為一項緊迫的任務。本文采用頻率、信息增益、條件概率比、期望值差異等四種特征選取方法對留言進行分析,采用ICTCLAS分詞軟件進行分詞,利用MATLAB軟件進行矩陣奇異值分解和降維,使用支持向量機進行訓練和預測數據,從而能夠對學生留言的情感傾向性給出很好的預測結果。最后通過實例說明了文中算法的有效性。
0引言
全國統計科學研究計劃(2012LY022);山東省自然科學基金(ZR2011FL005)學生評教留言經過逐年累積,已經形成一個巨量的信息資源,對其進行數據挖掘已經成為刻不容緩的工作,如何更好地利用大量的留言體現了一個學校對其教學水平和方法進行提升和改進的能力,一個高水平的學校應積極發展對學生留言的挖掘,對其進行分析、處理并最后得出結論,及時了解和分析教師的教學現狀和學生們的聽課反饋。
國內外相關學者對文本傾向性分析進行了大量研究[15],雖然英文的傾向性研究已經很成熟并得到了豐碩成果[617],但是中文文本的傾向性研究還處在發展階段,有著廣闊的發展空間。柴玉梅等[1]通過分析中文文本內容褒貶色彩的客觀性和褒貶傾向性分類的可行性,將特征選擇方法和褒貶特征提取技術結合起來,實現了名人網頁的褒貶傾向性分類;唐慧豐等[2]通過對中文文本不同分類方法的對比分析,提出采用BiGrams特征表示方法、信息增益特征選擇方法和SVM分類方法,在足夠大訓練集和選擇適當數量特征的情況下,在情感分類方面取得較好的效果;Tan等[6]針對中文文本,通過對四種特征選擇方法和五種學習方法進行實驗,提出信息增益特征選擇方法與SVM進行組合,能夠得到較好的預測結果;Prabowo等[7]提出一種規則分類、監督學習和機器學習相結合的方法,能夠對電影評論、產品評論和MySpace留言進行傾向性分析;Li等[8]提出結合Kmeans聚類算法和SVM來實現無監督學習的方法,并利用此算法進行在線論壇熱點的偵探和預測。
Tan等[6]針對中文文本,通過使用MI(Mutual Information)、IG(Information Gain)、CHI(CHI Statistics)和DF(Document Frequency)四種特征選擇方法和質心分類、K近鄰、Window分類、貝葉斯分類、支持向量機五種分類方法進行實驗,提出信息增益特征選擇方法與SVM進行組合,得到較好的預測結果,但是其只是針對1 021個文本數據進行實驗,并未能夠將其應用到學生評教留言中,學生評教留言具有一定的特殊性,它是對教師教學活動的評價,其中含有對教師豐富的情感,并非只是對一件物品的評價。針對學生評教留言,本文提出了一個學生評教留言的傾向性分析算法。首先,利用ICTCLAS對2 500條留言文本進行分詞,其次,進行詞性過濾,保留名詞、動詞、形容詞和副詞四類詞語,再次,進行詞語過濾,使用基于頻率、信息增益、條件概率比和期望值差異四種方法進行實驗,然后,生成詞頻矩陣,并將矩陣進行奇異值分解、降維、去除冗余數據操作,最后,利用SVM將生成的矩陣進行訓練和預測。本文特別針對學生評教留言,為實際的教學評價活動提供一定的決策支持,能夠生成較好的預測結果,使得此算法能夠更好地應用于實際的教務系統和教學活動中。
1算法流程
本文特別針對學生評教留言,提出一種基于期望值差異的詞語過濾方法與支持向量機相結合的傾向性分析算法,算法流程如圖1所示。
算法流程如下:
輸入: 500條留言作為訓練數據, 2 060條留言作為預測數據。
輸出:2 060條預測數據的傾向性結果,以及本算法的正確率和拒識率。
(1)分詞。用ICTCLAS50分別對訓練數據和預測數據進行分詞。
(2)詞性過濾。保留名詞、動詞、形容詞和副詞四類詞性詞語。
(3)詞語過濾。利用基于頻率、信息增益、條件概率比和期望值差異的過濾方法對詞語進行過濾。
(4)生成詞頻矩陣。以“詞項×文檔矩陣”的格式生成詞頻矩陣。
(5)矩陣處理。獲得訓練文件,對矩陣進行奇異值分解、降維、去除冗余數據后生成訓練文件。
(6)訓練。用LIBSVM對訓練集進行訓練,獲得訓練模型。
(7)預測。將預測集導入LIBSVM,利用上一步獲得的訓練模型進行預測。獲得傾向性結果,計算本算法的正確率和拒識率。
2學生留言的傾向性分析
2.1學生留言的預處理
2.1.1訓練數據的選取
訓練數據的質量直接決定預測的效果,訓練數據是需要精挑細選的一些留言數據,必須具有良好的分類代表性,選取遵循以下原則:
(1)需要過濾掉所有空留言、只含有標點符號的留言以及不包含任何詞語的文本。
(2)重復性留方過濾。完全重復的留言,以及留言文字相同但是有標點符號不同的文本需要刪除,因為它們的向量基本相同。向量相同的留言放到libsvm中處理只會增加計算量。
(3)訓練數據中各類的數目要大體相當。
(4)刪除部分表達意思相近的留言。
(5)訓練數據不宜選取過多,也不宜過少,如果過多就會存在很多重復性的向量,如果過少,訓練集太小,不能很好地進行預測。訓練集的大小在500條左右即可。
基于以上選取數據的原則,本文從數據庫中抽取了500條數量相當的差評留言和好評留言。
2.1.2雙重否定短語的確定
一般情況下,一條留言中出現否定詞就會被判定為差評。例如:“講課太過于粗糙,條例不太清晰”,這樣的留言中含有“不”,會被判定為差評,這樣進行判定看似是理所當然的,實則不然,例如留言“注意啟發學生課外閱讀,不拘泥于課本,能調動學生積極性,活躍課堂氣氛”,其中含有“不”,但是“不”后面跟的是“拘泥”,在語言中,雙重否定表達的是肯定意思,根據語義分析這是好評,但是訓練器把它標記成差評了,這樣不符合客觀事實。為了解決這個問題,本文把兩個表達否定意義的詞語組合成一個短語,形成一個表示肯定意義的短語,優先對這些組合起來的二元詞語匹配,并在后續處理過程中把這些短語當做一個詞語對待。
在留言中經常出現的雙重否定詞語包括:不拘泥、不單純、不忘、不脫離、不失、不死、不死板、不拘于、不枯燥、不只、不少、不錯、不容易等等。
2.2特征詞的四種選擇標準
2.2.1基于頻率的過濾方法
基于頻率的過濾方法中,一條留言中一個詞語出現一次以上都是按照一次計算。本文采用了長匹配優先的方式對其進行匹配。如果一個詞語包含另一個詞語,則被包含的詞語的次數不能加一,例如第一條留言中出現“清楚”,包含“清”,第二條留言中包含“清”,則“清”出現的次數只能是一次,而不是兩次,還有一種特殊情況是“松”被分作了兩個詞性,“松/a”和“松/ng”,對于這種情況需把所有詞語的詞性去掉之后再統計這個詞語出現的次數。去掉出現頻率低于二次的留言之后,還剩下407個詞語。
2.2.2基于信息增益的過濾方法
基于信息增益的過濾方法中,根據IG計算公式計算需要留下的IG值:
c表示類別,屬于此類或者不屬于;τ表示此特征出現與否,布爾型。若特征與類別無關,則IG=0。按照IG值的大小排序,獲取IG值較大的407個詞語。
2.2.3基于條件概率比的過濾方法
基于條件概率比的過濾方法,根據下面公式計算P(word),P1=P(word|C1),P2=P(word|C2):
在這里P(word)越小越有意義,說明word在不同類別中出現的概率差異大。若P1/P2=1或者P2/P1=1,則說明word的出現與類別判斷無關,可去掉;若P1/P2=0或者P2/P1=0,則說明word的出現與類別高度有關,此類詞語需保留。
2.2.4基于期望值差異的過濾方法
基于期望值差異的過濾方法,其具體計算方法是:一個詞項word在類i中出現的期望值ei=word在所有數據表中出現的總次數×P(Ci),令fi表示word在類i中出現的實際次數,則
其中E的值越大越有意義。
3實驗結果分析
在Intel雙核CPU、主頻3.06 GHz、內存2 GB的臺式機上實現一個實例,來驗證本文算法的有效性。
3.1數據集
本文使用山東女子學院教務系統2011年評教數據作為數據來源,原始數據來源于教務系統中的學生留言,共計3 000條。由于這些數據包含無意義數據,經過篩選,從前1 000條數據中選出500條作為訓練數據集,預測數據集為從后2 000條中篩選出的1 309條數據。
3.2訓練
本文基于真實數據集,利用四種詞語過濾算法,使用SVM進行訓練。訓練結果如表1和圖2所示,表1中標記為“0”的訓練結果為負面評價,標記為“1”的訓練結果表示為正面評價,每個單元格中的三個數字分別表示正確率、錯誤率和拒識率。表1訓練集實驗結果標記頻率IG概率比期望值差異0155/52/3167/41/227/101/82167/41/21252/44/1239/41/10182/0/108239/41/10圖2訓練集實驗結果統計
從表1和圖2可以看出,基于頻率的過濾方法、基于信息增益的過濾方法、基于期望值差異的過濾方法訓練數據的正確率達到了80%以上,錯誤率都低于20%,但是基于條件概率比的過濾方法正確率不到50%。從這些數據來看,針對學生評教留言文本,選擇基于頻率、信息增益、期望值差異的詞語過濾方法能夠達到較好的效果。
3.3預測
預測結果如表2和圖3所示,表2中標記為“0”的訓練結果表示為負面評價,標記為“1”的訓練結果表示為正面評價,每個單元格中的三個數字分別表示正確率、錯誤率和拒識率。表2預測集實驗結果統計標記頻率IG概率比期望值差異
從表2和圖3可以看出,基于頻率的過濾方法、基于信息增益的過濾方法、基于期望值差異的過濾方法預測數據的正確率達到了70%以上,錯誤率都低于30%,基于期望值差異的過濾方法錯誤率低于20%,與其他三種算法相比,基于期望值差異的詞語過濾算法效果最好。從這些數據來看,針對學生評教留言文本,基于期望值差異的詞語過濾算法與SVM結合能夠達到較好的效果。
4結論
本文特別針對高等學校學生評教留言,通過實驗研究了基于頻率、信息增益、條件概率比、期望值差異的四種詞語過濾方法與支持向量機結合,最終給出文本傾向性結果的效果,通過對比分析,得出基于期望值差異的詞語過濾方法與支持向量機結合的算法,能夠對學生評教留言的傾向性給出較優的預測結果。
參考文獻
[1] 唐慧豐. 基于監督學習的中文情感分類技術比較研究[J].中文信息學報, 2007,21(6):8894.
[2] 柴玉梅,熊德蘭,昝紅英. Web文本褒貶傾向性分類研究[J].計算機工程, 2006,12(9):8991.
[3] 楊超,馮時,王大玲,等.基于情感詞典擴展技術的網絡輿情傾向性分析[J].小型微型計算機系統, 2010,31(4):691695.
[4] 何鳳英.基于語義理解的中文博文傾向性分析[J].計算機應用, 2011,31(8):21302137.
[5] 李艷紅,程翔.基于網絡論壇文本挖掘的筆記本電腦滿意度研究[J].微型機與應用,2014,33(18):6165.
[6] TAN S,ZHANG J.An empirical study of sentiment analysis for Chinese documents[J].Expert Systems with Applications, 2008,34(4):26222629.
[7] PRABOWO R, THELWALL M. Sentiment analysis: a combined approach[J]. Journal of Informetrics, 2009,3(2):143157.
[8] LI N, WU D D. Using text mining and sentiment analysis for online forums hotspot detection and forecast[J]. Decision Support Systems, 2010,48(2):354368.
[9] STEFANO B,ANDREA E, FABRIZIO S.SentiWordNet 3.0: an enhanced lexical resource for sentiment analysis and opinion mining[C]. Proceedings of the Seventh Conference on International Language Resources and Evaluation. Malta:European Language Resources Association ,2010:22002204.
[10] PANG B,LEE L.Opinion mining and sentiment analysis[J]. Foundations and Trends in Information Retrieval, 2008,2(12):131135.
[11] ERIK C,BJORN S, YUNQING X, et al. New avenues in opinion mining and sentiment analysis[J]. IEEE Intelligent Systems, 2013,2(28):1521.
[12] LIU B,ZHANG L. A survey of opinion mining and sentiment analysis[M].New York:Springer US, 2012.
[13] THERESA W,JANYCE W, PAUL H. Recognizing contextual polarity in phraselevel sentiment analysis[C]. Proceedings of the conference on Human Language Technology and Empirical Methods in Natural Language Processing. Stroudsburg:Association for Computational Linguistics, 2005:347354.