【问题标题】:Checking English Grammar with NLTK [closed]用 NLTK 检查英语语法 [关闭]
【发布时间】:2023-03-06 17:48:01
【问题描述】:

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

例子:

“他看到鲍勃” - 不正确

“他看到 Bob” - 正确

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

【问题讨论】:

  • 正确的英语到底是什么意思?你只是在考虑动词的形式——比如在你的例子中纠正第三人称单数吗?

标签: nlp grammar nltk context-free-grammar


【解决方案1】:

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

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

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

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

【讨论】:

  • 这是 8 年前的一个很好的答案。今天的最佳答案是什么?
猜你喜欢
  • 2011-09-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多