我使用 NLTK 在 Python 中编写的基于特征的上下文无关语法中的一行给出了以下错误。
Error parsing feature structure
ADJ[SEM=<\x.x(\y.(some(y))>] -> 'some'
^ Expected logic expression
我认为SEM=
后面的表达式是一个逻辑表达式。
最佳答案
该错误来自 NLTK 如何实现 lambda 演算类型。
\x.x(\y.some(y))
它期望小写字母的类型为 <e>
和大写字母的类型为 <e,t>
。也就是说小写字母不能代表谓词。
以下解析:\X.X(\y.some(y))
顺便说一句,用一个连词来表示“some X are Y”中的“some”的概念,如下:
\X Y.(X(x) & Y(x))
换句话来说,某些 X 是 Y 在逻辑上等同于有一些元素同时具有 X 和 Y 品质。
关于python - NLTK、Python 中的 FCFG 错误。语法问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28522106/