我正在使用Stanford CoreNLP对我收集的一些推文进行情绪分析。我创建了一个带有一个句子的模拟训练模型,评分如下: (0(2熊)(2(2油)(2市场)))。
我的评分为0到4,0表示非常负,2表示中性,4表示非常正面。 我正在测试以下两条推文:
熊油市场 熊市石油市场它将第一个句子指定为0,这是正确的,第二个句子被评为2,这是不正确的,因为这句话也应该是否定的。这两句话的唯一区别在于第二句中的市场。
我的问题是:有没有办法解决这样一个事实:任何一个词的任何变化导致两个句子得分不同?
答案 0 :(得分:2)
我认为简短的回答是“不” - 措辞上的差异总是有可能改变句子的情绪。您可以尝试通过重新培训新数据来缓解问题。
真的,如果你正在运行任何除了电影评论之外的任何东西,你应该期望该模型的性能至少会降低一些,偶尔会有很多。如果您有训练数据,则值得重新训练。
答案 1 :(得分:1)
实际上,您可以通过语言方法来解决这个问题,即用它的根或" stem"替换每个单词。形成。你过滤每个句子并减少每个单词,删除复数,动词结尾,形容词变形等。然后你训练。
您以相同的方式过滤输入。你仍然会对你的词汇做出一些决定,例如是否减少" best"到"好"。