python - python 中的文本分类 - (基于 NLTK 句子)

标签 python python-3.x machine-learning classification bayesian

我需要对文本进行分类,我正在使用 Text blob python 模块来实现它。我可以使用朴素贝叶斯分类器/决策树。我担心以下几点。

1) 我需要将句子分类为论点/不是论点。我正在使用两个分类器并使用 apt 数据集训练模型。我的问题是我是否需要仅使用关键字来训练模型?或者我可以用所有可能的参数和非参数例句训练数据集?就文本分类准确性和检索时间而言,哪种方法最好?

2) 由于分类要么是参数,要么不是参数,哪个分类器会获取准确的结果?是朴素贝叶斯/决策树/正朴素贝叶斯?

提前致谢。

最佳答案

理想情况下,据说你训练的数据越多,你的结果就越好,但这实际上取决于你测试它并将它与你的真实结果进行比较之后准备好了。

因此,为了回答您的问题,使用关键字训练模型可能会给您带来过于宽泛的结果,而这些结果可能不是论据。但实际上,你必须将它与某些东西进行比较,所以我建议你可能还想用一些论据似乎遵循的句子结构(某种模式)来训练你的模型,它可能会消除那些不是论据的句子。再次执行此操作,然后对其进行测试,看看是否获得比之前模型更高的准确度。

回答您的下一个问题:就文本分类准确性和检索时间而言,哪种方法最好?这真的取决于你使用的数据,我不能真正回答这个问题,因为你必须执行交叉验证来查看你的模型是否达到高精度。显然,你寻找的特征越多,你的学习算法的性能就越差。如果您要处理千兆字节的文本进行分析,我建议使用 Mapreduce 来执行这项工作。

您可能想将支持向量机作为您的学习模型,使用学习模型(朴素贝叶斯、正朴素贝叶斯和决策树)对其进行测试,看看哪个表现更好。

希望这对您有所帮助。

关于python - python 中的文本分类 - (基于 NLTK 句子),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23178275/

相关文章:

python - 在 Beam 中读取和写入序列化的 protobuf

Python:使用参数取多个值评估函数

Python 浏览器问题

python-3.x - Python 内核死掉,重新启动

python - scikit-learn 添加训练数据

python - 使用 Python 驱动程序连接到 Dockerized Clickhouse Server 时出现问题

python - 如何删除数据框中冒号之前的所有内容

python - 为什么 python 的 monkeypatch 在导入类而不是模块时不起作用?

Python Tesseract : int() argument must be a string, 类似字节的对象或数字,而不是 'tuple`

git - 如何使用 dvc 工作流程添加/更新数据?