python - NLTK CCG 中的 Lambda 演算表示

标签 python nltk lambda-calculus combinatory-logic

我正在尝试实现具有 lambda 演算功能的概率 ccg。

基本上我想执行以下代码:

>> lex = parseLexicon(r'''
 :- S,NP
 He => NP {sem=\x.he(x)} [1.0]
 Walks => S\NP {sem=\X. walk(X)} [1.0]
 There => S\S {sem=\x . there(x)} [1.0]
 ''')
>> parser = CCGChartParser(lex)
>> all_parses = parser.nbest_parse(“He walks 
there”.split(),n=100)
>> for parse in all_parses: 
 printCCGDerivation(parse)

但 NLTK 的现有 CCG 实现不支持词典中的 {sem=\x.he(x)} [1.0] 种语义部分。

是否有任何其他 CCG 实现可以处理此问题? 或者我可以在 NLTK 中表示这个吗?

最佳答案

很遗憾,目前还不存在。我也一直在关注这个空间。 它似乎在他们的 wiki 上提到的作品中 - 语义解析

如果您对其他语言/框架感兴趣,请查看 Semantic Parsing with Execution, StanfordThe University of Washington Semantic Parsing Framework .

如果您想从头开始构建一些东西,您可能需要获取 CCGBank 或恢复 C&C 工具。

上面大部分都是Java的,不过我看过attempts to parse the C&C Marked file in Python .

我个人希望看到 CCG 加入 Node.js。

关于python - NLTK CCG 中的 Lambda 演算表示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26829904/

相关文章:

python - 用于在所有空格处拆分的正则表达式 Python

python - 快速 NLTK 解析成语法树

functional-programming - 类型检查与类型推断

haskell - monad 声明中带有 lambda 符号 "m >> n = m >>=\_ -> n "的等式是什么?

python - Django 上不必要的自动迁移?

python - 搜索和更新 Pandas 数据框中每一行值的最快方法

python - 统计文件中所有单词的词频

python - NLTK CoreNLPDependencyParser : Failed to establish connection

lambda-calculus - Lambda 演算 - 为什么不能在这里进行另一个 beta 减少?

python - 使用一个 pyaudio 流进行数据读取和写入