我是一名正在从事NLP暑期项目的学生。我对这个领域很新,所以如果有一个非常明显的解决方案我会道歉。该项目在C中,由于我对它的熟悉,以及项目的计算密集性(我的语料库是维基百科的明文转储)。
我正在研究一种关系提取方法,利用一致性原则来尝试学习(在一些错误阈值内)一组规则,规定哪些语法对象集群意味着这些对象之间的连接。
该算法的第一步涉及找到给定单词可以参考的所有可能语法对象的集合(POS消歧是由算法在稍后的步骤中隐式完成的)。我看过几个解析器,但它们似乎都在自己做消歧步骤,这(从我的角度来看)会适得其反。我正在寻找现成的东西(理想情况下)给我一个单一命令的方式来显示这些信息。
这样的事情存在吗?如果没有,是否存在包含这些信息的现有字典,这些信息通常是机器可解析的?
感谢您的帮助。
答案 0 :(得分:0)
看看CMU Sphinx。一个开源的NLP项目。我认为它在C ++中可以集成它,或者至少可以了解如何处理事情。
答案 1 :(得分:0)
如果你觉得活泼,那么将外部POS标记器作为shell脚本调用或将其包装在http服务中怎么样?
Java和Python拥有绝大多数NLP库,因此利用它是有意义的。如果您可以在脚本中使用NLTK标记内容,请从C调用此脚本,这样可以更轻松。