0

我在 python 中使用 python-crfsuite 包,这是由 Naoaki Okazaki 开发的 CRFSUITE 的实现(http://www.chokkan.org/software/crfsuite/

我想使用前一个标记的实体类作为特征,这将帮助我识别多词命名实体。我的训练数据示例:

[(Raheja,B-builder),(vista,I-builder),(is,O),(very,O),(着名,O)]

在这里,如果我可以在训练时使用之前的类特征。但是在预测时,我们将特征列表传递给标记器对象。测试时的问题是不知道以前的课程。

谁能告诉我这在 python-crfsuite 中是否可行。我觉得我们将特征传递给标记器对象的方式,是不可能的。

4

2 回答 2

0

在 CRFSuite 中,前一个令牌的类默认用作特征。CRFSuite 使用两种特性:

  1. “状态特征” - I(current_label=A and f(sequence, current_position));
  2. “过渡特征”——I(current_label=A and previous_label=B)

您定义的特征实际上f是 (1) 中的函数;为标签的所有可能值生成状态特征。要使用过渡功能,您无需执行任何操作,它们是默认生成的。

CRFsuite 中没有实现的是第三种特性I(current_label=A and previous_label=B and f(sequence, current_position)):这就是教程所说的“以属性和标签二元组为条件的特征”的意思。

于 2016-12-05T13:39:53.973 回答
0

根据教程中的这句话,我相信 crfsuite(和 python-crfsuite)不可能做到这一点:

不支持以属性和标签二元组为条件的特征。

于 2015-09-08T01:33:38.567 回答