5

有没有软件可以做到以下几点?

给定一个英文句子,如

“他喜欢烤豆”,

我将“他”改为“我”,句子变为

“我喜欢烤豆”

(注意 S)

或者

“她的头发扎成马尾辫”

我将“她”改为“他”,句子变为

“他的头发扎成马尾辫”。

同样,可以把句子变成过去式,

“她的头发扎成马尾辫”。

这样的软件是否存在?

4

2 回答 2

2

我一个都不知道。

但是,您可能想查看nltk.org(自然语言工具包),它是一个用于自然语言处理的 Python 库,具有许多可能非常有用的功能,例如 POS(词性)标记。

当然,如果您自己编写这样的软件没问题,如果它与您想要做的事情无关,请见谅。

于 2010-06-20T02:12:18.090 回答
1

我也不知道,但我会尽力提供一些建议。

  • Snowball可以使用搬运工词干系统规范化许多单词,但结尾通常是不正确的。可能的方法是使用例如 Moby CROSSWD.TXT中的单词列表,使用雪球来查找共同词根并从结尾猜测时态(例如,以edd可能是过去时等结尾)如果是的话, PyStemmer有 python 包装器您使用什么,但我找不到任何 Windows 二进制文件,因此出于我的目的,我必须自己构建它。

    请记住,此方法容易出错,并且它会规范化 egtries并将其try规范化为tri,并且有许多例外情况不起作用。一些实现(我相信 houbysoft 提到的 nltk 中有一个)有许多预编程的异常,但问题是英语是一种非常不规则的语言,它修复了某些单词的变形但破坏了其他单词。

  • 另一种方法是解析WordNet数据,我认为这些数据通过屈折变化具有单词“类别”,以及单词不符合规则的例外情况。虽然这是一项相当繁重的任务,但我尝试使用各种man页面解析它,但我自己还没有成功(有关解析变形的信息,请参见http://wordnet.princeton.edu/man/morphy.7WN.html .)

  • 您可以尝试从OpenOffice或类似的东西解析拼写数据,因为它们通常将单词组合成“类”,这对于区域性(例如澳大利亚/英国英语等)特别有吸引力,尽管它不会告诉您每个单词在哪个变形等.

无论如何,我希望这会有所帮助,我认为该nltk库是一个很好的起点,因为它有一个porter(以及各种其他的词干实现)和大量的示例代码。

另请参阅如何进行词干提取或词形还原?.

于 2010-06-20T02:56:55.410 回答