使用NLTK进行情感分析

时间:2016-04-08 12:01:55

标签: nlp nltk stanford-nlp opennlp

如果您要在python中使用NLTK对评论文本进行情绪分析,那将是要遵循的高级步骤。在NLTK中有很多术语,比如词干,词性等等,但我想知道处理文本的高级方法。

2 个答案:

答案 0 :(得分:0)

这里是进行情绪分析的“标准”步骤(这实际上只是文本分类的一种形式),这是我的观点,基于我的经验,并非详尽无遗,但它会给你一些流行语以及作为深入研究出发点的基本流程:

  1. 不知何故,您需要生成一些标记的文本样本。这可以手工完成(例如,带有两列的电子表格,“LABEL”和“THE_TEXT”。样本通常可以根据您的数据自动生成。每个类别标签通常至少需要数百个样本。< / LI>
  2. 您需要选择对您的数据有意义的“特征提取”或“特征工程”方法。一个简单的方法是使用“Bag of words”......这意味着只需将原始文本提供给训练api。通常情况下,您很快就会看到这种情况真的不够好,并且您会修补诸如词干化,词形还原和NGrams之类的事情,以便捕获更多上下文并在数据中获得更好的自然分组。如果您使用多语言语料库,这部分可能会变得非常复杂。
  3. 训练模型。我不熟悉NLTK,但通常您会使用标签传递文本样本,并且特征提取通常是训练例程的一部分。在此步骤结束时,您将拥有一个文件形式的模型,您可以将其加载到分类器的实例中。
  4. 使用分类器(使用闪亮的新模型)对数据进行分类。关键在于您必须使用与分类时在数据上训练模型的EXACT相同的特征提取技术,或者您将苹果与橙子进行比较。
  5. 分类器可能会以某种分数返回您的类别(标签)的分布。然后,您可以随意使用此数据。这可能是强大而令人兴奋的。
  6. 希望这有帮助......文本分类有很多细微差别,因此上面的每一步都可以根据您的数据以及您想要从中获取的内容进行变异。

答案 1 :(得分:0)

要对评论文本(任何与此相关的文本)进行情感分析,我们需要首先提取特征。这取决于用户提取功能所需的级别。 达到这个目的的著名模型是“言语之袋”。

在高级文本处理上有一些步骤。

  1. 标记化:这是将文章缩短或拆分为较小形式的过程,可能是较小的段落或句子,单词或字母。

    例如:您看起来很高兴。 →[[您”,“表情”,“非常”,“快乐”]

  2. 停用词:不对文章中的任何信息有所帮助的词称为停用词。这些主要是介词,冠词,连词等,

    例如:书放在桌子上。停用词= ['is','on','the']

  3. 加词法:这是通过删除前缀和后缀来将单词词根化为词根形式的过程。

    例如:慢→慢

通过这些方法处理了文本后,您可以计算出文本的情感了。尽管这些是处理文本的高级方法,但并非详尽无遗。 有很多可用的资源可能会建议您使用特征提取NLP中的更多方法。