我在实践中对ML和训练分类器很陌生,所以我想知道NLTK和TextBlob等包的内置情感工具与手动创建分类器(培训、测试等)有什么不同。我想我在某个地方读到了这样的评论:Textblob/NLTK现有的情感分析工具基本上只是标记文本,并计算肯定/否定的单词数,以确定总体情绪评级(不确定这有多准确)。有没有人知道,一般来说,使用自定义分类器可以更好地对文本进行情感分析(我正在分析酒店评论中表达的情感)?
发布于 2019-12-08 00:11:09
我想说,情感分类方法的有意义的区别在于基于知识的方法和统计的方法。
正如你所提到的,基于知识的词汇通常使用极性词汇,其中包含有情感值的单词,然后通过总结单词的值来计算文本的情感。
统计训练是基于有标记的训练集(即在监督环境下)来训练模型的。用于不同的模型,例如,您可以使用朴素贝叶斯分类器或支持向量机或任何类型的神经网络。
关于您提到的包,据我所知,Textblob确实使用了一个词汇。NLTK提供了一种基于词典的情感分类,但它也允许您训练自己的统计模型。
如果基于知识或统计的方法对您更好,用例实际上取决于您的数据。对于现成的和自定义的训练之间的区别也是一样的。但这也取决于你能够花在创建你自己的模型上的时间和你可以建立的专业知识。
如果你的领域是相当有限的,我认为酒店的评论是相当有限的,微调一种基于知识的方法(通过调整潜在的词汇)可能会给你带来好的结果。
无论如何,我强烈建议您在创建或微调模型或比较不同模型时,设置一个测试集来评估您的性能。
发布于 2019-12-07 13:01:27
一般来说,训练自己的分类器可能会表现得更好,但这需要更多的时间和精力:
因此,这是在质量水平和您准备用于注释自己的数据和调优自己的分类器的时间之间的权衡。
https://datascience.stackexchange.com/questions/64355
复制相似问题