NLTK文本分类信心朴素贝叶斯

问题描述 投票:0回答:1

我开发了一个文本分类脚本,非常类似于nltk书的第6章中的示例。我想将客户的回复分类到诸如“订购”,“结算”等的存储桶中。

我有回复标记用作训练集。为简单起见,我只举两个训练数据的例子:

'订购新产品很容易':'订购'

'我的帐单不正确':'结算'

在对NB分类器进行训练之后,假设我将以下文档分类:“该区域的服务很臭”。

分类器会给它一个标签,无论是订购还是计费,虽然它没有出现在训练数据中的任何一个,所以我需要知道是否接受结果,如果这是有意义的。

我查看了_proba_dict,并认为我可以使用它来确定它是否是一个很好的匹配,但我还没有找到一个可靠的方法来使用它。例如,有时它会为两个标签显示非常低的数字,这是您在此示例中所期望的,但有时则不会。

更进一步,我们可能希望为单个文档分配多个标签。考虑一下:'订购很简单,但计费是一场噩梦'。在这种情况下,我可能希望将其标记为订购和计费。同样,我认为我可以使用概率来确定是否有多个标签是合适的,但我仍然没有看到如何做到这一点。

任何建议将不胜感激!

谢谢,

乔恩

nltk
1个回答
0
投票

我认为最简单的方法是添加第三类NONE,即代表不计费或排序,并在此类上添加一些句子。然后,您将遇到三类问题,您的系统将能够确定文档是否与计费或订购无关。

如果要允许多标签,第一种方法可以是使用三类分类器,并将阈值放在计费和排序的概率上。然而,这并非接近最佳状态。

如果你想做真正的多标签预测,你有一篇文章描述了一个完整的NLP管道here

© www.soinside.com 2019 - 2024. All rights reserved.