文本分类--情感分析
生活随笔
收集整理的這篇文章主要介紹了
文本分类--情感分析
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
(純屬為了記錄自己學習的點滴過程,引用資料都附在參考列表)
1 基本概念
情感分析
對于情感分析而言,只需要準備標注了正負情感的大量文檔,就能將其視作普通的文本分類任務來解決。此外,一些帶有評分的電影、商品評論也可以作為“天然”的標注語料庫。
2 問題
給出某酒店評論數據,正負評論各2000條組成,訓練情感分類模型,并對測試數據預測;
3 解決思路
化歸為文本分類問題,使用文本分類的一般步驟,算法使用Naive Bayesian Model;
4 實現
# -*- coding:utf-8 -*-from pyhanlp import * from tests.test_utility import ensure_dataIClassifier = JClass('com.hankcs.hanlp.classification.classifiers.IClassifier') NaiveBayesClassifier = JClass('com.hankcs.hanlp.classification.classifiers.NaiveBayesClassifier') # 中文情感挖掘語料-ChnSentiCorp 譚松波 chn_senti_corp = ensure_data("ChnSentiCorp情感分析酒店評論", "http://file.hankcs.com/corpus/ChnSentiCorp.zip")def predict(classifier, text):print("《%s》 情感極性是 【%s】" % (text, classifier.classify(text)))if __name__ == '__main__':classifier = NaiveBayesClassifier()# 創建分類器,更高級的功能請參考IClassifier的接口定義classifier.train(chn_senti_corp)# 訓練后的模型支持持久化,下次就不必訓練了predict(classifier, "前臺客房服務態度非常好!早餐很豐富,房價很干凈。再接再厲!")predict(classifier, "結果大失所望,燈光昏暗,空間極其狹小,床墊質量惡劣,房間還伴著一股霉味。")predict(classifier, "可利用文本分類實現情感分析,效果不是不行")運行結果:
[正面]...100.00% 2000 篇文檔 [負面]...100.00% 2000 篇文檔 耗時 1477 ms 加載了 2 個類目,共 4000 篇文檔 原始數據集大小:4000 使用卡方檢測選擇特征中...耗時 17 ms,選中特征數:486 / 15034 = 3.23% 貝葉斯統計結束 《前臺客房服務態度非常好!早餐很豐富,房價很干凈。再接再厲!》 情感極性是 【正面】 《結果大失所望,燈光昏暗,空間極其狹小,床墊質量惡劣,房間還伴著一股霉味。》 情感極性是 【負面】 《可利用文本分類實現情感分析,效果不是不行》 情感極性是 【負面】- 值得注意的是,最后一個測試案例“可利用文本分類實現情感分析,效果不是不行”雖然不屬于酒店評論,但結果依然是正確地,這說明該統計模型有一定的泛化能力,能處理一些其他行業的文本。
5 參考文獻
總結
以上是生活随笔為你收集整理的文本分类--情感分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 组态软件与PLC远程控制的配置
- 下一篇: java字符串颠倒位置_java字符串第