2

C# 中是否有任何用于自然语言处理的库?给出一个像“什么是<xyz>?”这样的问题。“什么时候<xyz>到期?” 我想提取有助于我搜索某些数据源并返回有意义的结果的属性。

例如,问题中的“什么”给了我“定义”这个词,“何时”给了我“时间线”。我可以使用一个有限的单词数据库来简单地编写这个程序,这个数据库是指问题并将它们映射到这些类别,但是 NLP 会更好地处理这个问题吗?

另外,我有各种数据源,比如一、二、三,我需要一长串关键字来帮助我确定数据源,

例如。xyz 将映射到“一”,而 abc 将映射到“二”。

如何使用自然语言处理来理解哪个单词属于哪个类别?还是有更好的方法来做同样的事情?这里有全文搜索的应用吗?

4

2 回答 2

2

您可以尝试使用来自 Proxem 的 Antelope 和用 c# 制作的SharpNLP第三方库进行自然语言处理,不幸的是,微软制作的库目前在 NLP 中不存在。但是您可以使用 SQL Server 检查语义搜索可能对您的问题有所帮助。

于 2013-05-29T13:00:37.880 回答
1

看看OpenNLP。我用它从文本中提取名词、动词等。但它还有其他功能。您可以使用IKVM将其移植到 C# 。

另外,请查看Mallet,尽管它是基于 JAVA 的。

于 2013-05-29T11:47:06.763 回答