2016-03-14 44 views
0

我正在为正面和负面的单词测试textblob模块。 但有些结果不好。 例如:TextBlob Python3 - “Negative Tag for Positive words”

代码:

from textblob.sentiments import NaiveBayesAnalyzer 
from textblob import TextBlob 

message = "Fraud" 
blob = TextBlob(message, analyzer=NaiveBayesAnalyzer()) 
a = (blob.sentiment) 
print(a) 

结果

Sentiment(classification='pos', p_pos=0.6428571428571429, p_neg=0.3571428571428571) 

它给了90%的正确答案,但由于某种也就是说它返回false结果!

像: 消息= “像这样” 情感(分类= '负',p_pos = 0.4794333489299875,p_neg = 0.5205666510700125)

message = "good habits" 
Sentiment(classification='neg', p_pos=0.41318402216578204, p_neg=0.5868159778342183) 

============= ========================

"fraud" = pos 
"like this" = neg 
"good habits" = neg 
+0

的TextBlob朴素贝叶斯情感分析工具是为句子,而不是单个的词或短语,所以你可能会得到不可预知的结果。你可以试试TextBlob的模式分析情感分析方法,这是默认的,因为它仅仅通过识别正面和负面的单词来工作。 – EmmetOT

回答

0

你的代码编写,你训练的NaiveBayesAnalyzer而不是使用已经训练过的分类方式。我会建议尝试使用默认分类器,或者查看有关如何训练和应用NaiveBayesAnalyzer进行分类的文档。

试试这个: BLOB = TextBlob(消息)