我目前正在研究一个关于 NLIDB(数据库的自然语言接口)的项目。为了处理自然语言问题,我需要某种问题分析器模块,它由 OpenEphyra 提供。我一直在努力使用 OpenEphyra API 几个星期,但没有运气。源代码中存在错误,我不知道如何修复错误并构建源代码。
有人知道如何使用 OpenEphyra API 吗?或者除了 OpenEphyra 还有其他自然语言问题分析工具吗?
谢谢。
OpenEphyra 在自然语言上运行得最好,这意味着它需要大量的文本才能找到任何答案。您在本地插入到机器的数据的默认知识挖掘器 Indri 是用 C 和 C++ 编写的,具有 OpenEphyra 的接口,我发现它有时不稳定且容易出错。当我编写一个使用 Apache Lucene 为 OpenEphyra 索引和检索文档的 KnowledgeMiner 类时,这大大改善了。因此,如果您决定坚持使用 OpenEphyra,最好编写一个类似的 KnowledgeMiner,通过数据库访问数据。
话虽如此,您可能应该考虑 IBM Watson 用于 Jeopardy 的一些技术;开源 UIMA 是一个好的开始,但 Tony Pearson 的博客 (ibm.co/Pearson) 提供了一个非常好的教程,教您如何构建您自己的由数据库支持的问答系统。