12

我正在寻找可能存在或不存在的东西。Windows 平台上是否有“英语语法规则引擎”之类的东西(特别适用于 .NET 或 C# 之类的东西)?

具体来说,我正在寻找能够以“将来时”取一个句子并将其更改为“过去时”(基于英语语法规则)的东西......比如:

开发小部件软件,然后与里卡多会面

对此:

从事小部件软件工作,然后与里卡多会面

是否已经有一个规则引擎可以做到这一点?

4

4 回答 4

9

和这个人谈谈,他可能对你有一些想法。一般来说,英语对于这类事情来说太模棱两可了。例如:

把纸剪成两半。

这是命令式命令,还是过去时的句子片段?还有我个人最喜欢的:

时光如箭,飞逝;果蝇像香蕉一样。

任何人都可以解析它,但这仅仅是因为大量的语义知识。

话虽如此,有些事情可能值得研究,例如SharpNLP

于 2009-03-04T23:30:27.210 回答
5

正如其他人所说,这是一个非常困难的问题,在一般情况下尚未解决。但是,有些系统做得很好。普林斯顿的WordNet就是其中之一。它可以在一定程度上准确识别词性、同义词等(可能包括时态)。我认为您可能对这些功能感兴趣,它们似乎可以在给定特定变位的情况下找到单词的词根,并且还可以在给定词根的情况下找到特定的变位(但该页面未提供示例,因此我可以)不确定我是否正确解释了文档)。

于 2009-03-05T00:02:09.023 回答
2

简短的回答是否定的,一般的 NLP 解析引擎不存在。

长答案是“有点”,但 50 年的研究表明,在一般情况下,这是一个非常困难的问题。可能有一个人在做特定的时态转换。无论如何,C# 可能不会有一个。

于 2009-03-04T23:33:11.697 回答
2

看看这个,它叫做 Grammatica。它可能不是您所追求的,但它绝对是在 C# 中解析英语语法规则的良好开端。

于 2009-03-05T00:40:38.213 回答