【问题标题】:Use pos tagging in bag of words在词袋中使用 pos 标记
【发布时间】:2017-03-08 00:31:44
【问题描述】:

我正在使用词袋进行文本分类。 结果不够好,测试集准确率低于 70%。

我正在考虑的一件事是使用词性标注来区分单词的功能。怎么做?

我正在考虑将标签附加到单词上,例如“爱”这个词,如果它用作名词的话:

love_noun

如果是动词使用:

love_verb

【问题讨论】:

    标签: machine-learning text-classification


    【解决方案1】:

    如果您有数百个类别,那么接近 70% 的测试集准确度还不错。您可能想要衡量整体精度和召回率而不是准确率。

    您提出的建议听起来不错,这是一种将特征连词添加为附加特征的方法。以下是一些建议:

    仍保留原有功能。也就是说,不要将love替换为love_noun或love_verb。相反,您有两个来自love 的功能:

     love, love_noun (or)
     love, love_verb
    

    如果需要一些示例代码,可以从nltkpython包开始。

    >>> from nltk import pos_tag, word_tokenize
    >>> pos_tag(word_tokenize("Love is a lovely thing"))
    [('Love', 'NNP'), ('is', 'VBZ'), ('a', 'DT'), ('lovely', 'JJ'), ('thing', 'NN')]
    

    考虑使用 n-gram,可能从添加 2-gram 开始。例如,您可能有“in”和“stock”,您可能只删除“in”,因为它是一个停用词。如果你考虑 2-gram,你会得到一个新特性:

    in-stock
    

    与“库存”有不同的含义。在某些情况下可能会有很大帮助,例如,区分“金融”和“购物”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-06-06
      • 1970-01-01
      • 2014-01-12
      • 1970-01-01
      • 2017-01-21
      • 1970-01-01
      • 2018-07-06
      相关资源
      最近更新 更多