15

我的目标是[半]自动将文本分配给不同的类别。有一组用户定义的类别和每个类别的一组文本。理想的算法应该能够从人为定义的分类中学习,然后自动对新文本进行分类。任何人都可以建议这样的算法,也许是实现ше的.NET库?

4

7 回答 7

19

这样做并非易事。显然,您可以构建一个将某些关键字映射到类别的字典。只需找到一个关键字就会建议某个类别。

然而,在自然语言文本中,关键字通常不会采用词干形式。您将需要一些形态学工具来查找词干形式并将其用于字典。

但是有人可能会写出类似的东西:“这篇文章不是关于……”。这将引入对语法和语义分析的需求。

然后您会发现某些关键字可以用于多个类别:“乐队”可以用于音乐,技术甚至手工艺品。因此,如果不确定,您将需要一个本体和统计或其他方法来权衡要选择的类别的概率。

有些关键词甚至可能不容易融入本体:数学家更接近程序员还是园丁?但是您在问题中说类别是由男性构建的,因此他们也可以帮助构建本体。

在此处和Wikipedia中查看计算语言学以进行进一步研究。

现在,您的文本来自的领域越窄,它们就越结构化,词汇量越小,问题就越容易。

还有一些进一步研究的关键词:形态学、句法分析、语义学、本体论、计算语言学、索引、关键词

于 2010-08-27T13:28:39.723 回答
7

自动文本分类有多种方法。朴素贝叶斯分类器可能是其中最简单的一个。另一个是您可以使用的 K-最近邻。这个关于文本分类的谷歌答案可能会对您有所帮助。

于 2010-08-27T13:29:37.317 回答
5

观看我关于这个主题的视频系列。

http://vancouverdata.blogspot.com/2010/11/text-analytics-with-rapidminer-loading.html

分类在视频 5 中,但其他视频可能会帮助您快速上手。

这一切都基于 FOSS 程序 RapidMiner。

于 2010-12-11T21:20:36.927 回答
3

从 scikit learn中查看这个示例。示例中应用了一大堆不同的算法,因此您可以比较结果。

于 2015-11-18T08:11:18.193 回答
2

支持向量机。每个人都喜欢支持向量机。你需要做很多阅读,甚至可能买一本书。但是你可以先阅读一篇论文,看看你是否喜欢这个想法。

于 2010-08-27T16:59:54.707 回答
1

这些方法的总称是“多变量方法”。通过搜索“文本分类”或“文本分类”应该会带来一些有用的线索。祝你好运 !

于 2010-08-27T16:08:42.520 回答
1

很长一段时间以来,我一直在寻找这个问题的答案。今天我找到了我的答案。

有一个名为“dbacl”的开源程序可以做到这一点。它将文档分类为您喜欢的多个类别(最多为某个最大值)。

其他说“不是微不足道”之类的答案都是正确的,但是拥有一个易于使用的包来完成困难的工作有助于使其易于管理。

于 2014-09-22T11:06:38.910 回答