Vader SentimentIntensityAnalyzer是多语言的吗?

时间:2017-07-24 08:01:32

标签: python machine-learning sentiment-analysis vader

我陷入了情绪分析,我找到了迄今为​​止我能找到的最好的Vader解决方案。我的问题是,我找不到任何关于如何用英语以外的语言提供的文档。

2 个答案:

答案 0 :(得分:6)

简短的回答是“不”。

github页面上的README文件说明

  

如果您可以访问互联网,该演示中有一个示例,说明VADER如何处理其他语言的文本情感(非英语文本句子)。

但是如果你看一下这个演示的实际内容(从current version of vaderSentiment.py的第552行开始),这完全基于使用机器翻译网络服务自动将文本翻译成英文。因此,结果不仅依赖于情感分析工具的准确性,还依赖于您用于创建输入的英文版本的任何翻译工具的准确性。

维达只对英文文本进行情绪分析,但这种解决方法(自动翻译)可能是一个可行的选择。与其他用法*相比,情感分析对常见的机器翻译问题不太敏感,但如果您选择使用该解决方法,您仍然必须牢记这些限制。

*举个例子,演示中使用的服务翻译了“Das Internet funktioniert heute nicht.IsteineStörungbekannt?” “互联网今天不起作用。是一种已知疾病吗?”,这将更准确地翻译为“互联网今天不起作用。是否已知中断?”。它在第一句中有严重的错误,虽然在这种情况下有几个合法的“Störung”翻译,但“无序”充其量只是一个尴尬的选择。尽管如此,虽然这通常会使翻译变得非常糟糕,但错误不太可能显着影响情绪分析。

答案 1 :(得分:1)

我尝试了另一种语言的NLTK Vader。与德语配合使用效果很好-毕竟,两种语言之间的距离不太远。

涉及到一些工作-我们不能只翻译词典:

  • 更改vader_lexicon.txt
  • 更改代码中的否定词
  • 更改代码中的BOOSTER单词
  • 在代码中更改SPECIAL_CASE_IDIOMS

通常,否定是有效的,但是有些情况下还涉及一些我还没有想到的其他工作。