我有一些与自然语言处理有关的想法.我需要一些语法
S -> NP VP
Run Code Online (Sandbox Code Playgroud)
多样性,以便与他们一起玩.
如果我自己尝试编写这些规则,那将是一项单调乏味且容易出错的业务.有没有人为英语和其他自然语言输入并发布了全面的规则集?理想情况下用BNF,Prolog或类似语法编写.
我的项目只涉及无上下文的语法,我对统计方法或机器学习不感兴趣 - 我需要系统地生成类似Engligh和Foobarian的句子.
如果你知道在哪里找到这样的物资,我会非常感激.
您可能希望查看Attempto Controlled English及其基于Prolog的工具.
由于统计解析在90年代早期流行,语法通常不会被分发,除了特定的问题域,而是派生自分布式语料库,如宾夕法尼亚大学银行.如果你能掌握它(我相信样本是用NLTK分发的),你可以通过查看所有树片段并将它们翻译成规则来"滚动你自己的"语法.(例如,如果你发现标有S的节点标有NP和VP的子节点,你知道应该有一个规则S - > NP VP.修剪不经常发生的规则是个好主意.)
据我所知,最全面的英语上下文无关语法如下:
加兹达尔,杰拉德;伊万·克莱因 (Ewan H. Klein)、杰弗里·K·普鲁姆 (Geoffrey K. Pullum)、伊万·A·萨格 (Ivan A. Sag)。1985.广义短语结构语法。牛津:布莱克威尔。
还有一些基于规则但非上下文无关的语法可以在线免费获得,例如 Penn XTAG 语法或 HPSG English Resource Grammar。