哪种技术最适合使用python识别同一文本中的各种情感?

时间:2018-10-29 20:50:59

标签: python scikit-learn deep-learning nlp supervised-learning

我正在研究NLP,例如,我试图确定在线课程平台中客户反馈中的感受。

我仅用简单的句子就可以识别学生的感受,例如“课程非常好,我从中学到了很多东西”,“教学平台很完整,我真的很喜欢使用它”,“我可以有更多与海洋生物学有关的课程”,等等。

我的疑问是如何正确地识别一个句子或几个句子中的各种情感。例如:

  1. 每句话的情绪:

    • “课程非常好!在网站上创建部分问题可能很酷。”
  2. 每个句子不止一种情感:

    • “课程非常好,但是网站不是。”
  3. 涉及到两者:

    • “课程很好,但是教学平台很慢。课程中可能会有更多的任务和示例,例如在论坛上通过视频或麦克风进行交互。”

我曾考虑过将句子中的文本分割开来,但是对于示例2来说并不是很好。

2 个答案:

答案 0 :(得分:1)

您可以认为昏迷,其他标点符号以及某些连词和介词实际上是在拆分句子。实际上,这超出了代码的范围,进入了语言学领域,因为它们有时(但不总是)是单独的句子。

在第二种情况下,您实际上有两个句子:“课程非常好”-但是,“网站不是[非常好]”。

我相信有NPL软件包可以拆分句子(可能是通过了解大多数句子遵循主语/谓语/宾语结构,因此,如果您缠绕多个动词,那么很可能会找到相同数量的句子),您可以使用它们首先解析您的文本。看一下图书馆为您选择的语言所做的事情。

答案 1 :(得分:0)

有一个针对多标签分类的库:

scikit-multilearn

训练模型时,必须将类拆分为二进制列。