4

我开始使用NLTK 库,我想检查一个英文句子是否正确。

例子:

“他看到鲍勃” - 不正确

“他看到了鲍勃”——正确

我读了这个,但这对我来说很难。我需要一个更简单的例子。

4

1 回答 1

11

语法检查是 NLP 研究的一个活跃领域,因此目前还没有 100% 的答案(甚至可能没有 80% 的答案)。最简单的方法(或至少是一个合理的基线)将是一个 n-gram 语言模型(标准化话语长度的 LM 概率并为“语法”或“不语法”设置启发式阈值。

您可以使用 Google 的 n-gram 语料库,或者在域内数据上训练您自己的语料库。你也许可以用 NLTK 做到这一点;您绝对可以使用 LingPipe、SRI 语言建模工具包或 OpenGRM。

也就是说,n-gram 模型不会表现得那么好。如果它满足你的需求,很好,但如果你想做得更好,你就必须训练一个机器学习分类器。语法分类器通常会使用来自句法和/或语义处理的特征(例如 POS 标签、依赖和选区解析等)。您可以查看 Joel Tetrault 和他在 ETS 工作的团队或 Jennifer 的一些工作福斯特和她在都柏林的团队。

抱歉,没有简单直接的答案...

于 2013-04-10T16:16:35.603 回答