使用示例生成语法的工具?

这个答案显示了一个很好的例子,使用解析器生成器来查看一些感兴趣的模式。在那个例子中,它是产品价格。 有没有人知道生成语法的工具给出训练样例(文档+我想要的信息)?我发现了几篇论文,但没有工具。我查看了ANTLR文档,但它处理语法; “识别器”将语法作为输入,而非训练示例。     
已邀请:
这是一个机器学习问题。你最多可以得到一个近似值。但我认为没有人做得这么好,更不用说发布了一个工具。 (我主动跟踪人们为计算机语言构建语法的行为,这个想法已被多次提出,但我还没有看到有用的实现)。 问题是,对于任何固定的示例集,都有大量可能的语法。构建一个简单的例子很容易:对于固定的一组例子,只需提出一个语法,该语法有一个规则来识别每个例子。这有效,但几乎没有帮助。现在的问题是,你能用多少种方法来概括这一点,哪一种最好?事实上你无法知道,因为你的下一个新例子在结构方面可能是一个惊喜。 (理论定义:语言是构成它的句子集)。 我们甚至没有谈到学习语言词汇的简单问题。您如何建议了解浮点数的合法字符串是什么?     
这样做的一个工具是NLTK。我强烈推荐它,并且可以在线免费获得涵盖它的O'Reilly书籍。有解析,学习语法等工具......唯一的缺点是它主要是研究而不是生产工具,所以重点不在于性能。 NLTK能够从标记的训练样本中构建语法,这正是您所要求的。看看伟大的文档和书。 (我之前的经验也让它通过Jython在JVM上工作而没有任何问题。)     

要回复问题请先登录注册