NLTK:为FCFG中的要素添加两个值

时间:2018-01-05 08:20:09

标签: python nltk context-free-grammar

对于NLTK的要素语法,如何为要素添加多个值。 例如。目前我能够成功使用以下内容,

NP[TYPE=name]

我想要类似的东西,

NP[TYPE=[name,organisation,location]]

也就是说,NP应该能够获取类型为名称,组织或位置的值。

1 个答案:

答案 0 :(得分:2)

一个“黑客”是将特征值转换为布线的“一热”矢量,例如。

而不是:

NP[TYPE=[name,organisation,location]]

你可以这样做:

NP[NAME='1',ORG='1',LOC='1']

另一个例如,而不是:

NP[TYPE=[name,organisation]

你可以通过指定来做到这一点:

NP[NAME='1',ORG='1']

或者如果你想过度指定:

NP[NAME='1',ORG='1', LOC='0']

EDITED

您还可以在要素结构中使用+/-语法,例如

NP[+NAME, -ORG, +LOC]

有关详细信息,请参阅http://www.nltk.org/book/ch09.html#code-slashcfg