我是CRF的新手,我想使用CRFsuite来标记单词。我阅读了CRFsuite的手册,理解了训练数据的格式,但如果我想添加一些带有"近词"标签的功能,训练数据文件是什么样子的?
我到处搜索了一下,但没有发现这个问题。
简单的答案是,您提供单词coffee的属性(如表示前一个单词的w[-1]=drank
)及其标签(NOUN
),CRFsuite生成组成CRF模型的实际指标函数(包括表示前一单词的标签为VERB
的功能)。它知道这样做是因为它使用了"具有二元特征的一阶马尔可夫CRF",如您链接到的手册页面上所述。
一个重要的区别是(文档可以更精确地说明)"特征"one_answers"属性"之间的区别,其中特征是模型中表示(属性、标签)或(标签、标签)对的链接。
因此,在您的示例中,w[-1]=drank
是您提供的一个属性。w[-1]=drank, NOUN
的组合是一个状态特征,标签VERB --> NOUN
之间的转换是一个转换特征,两者都是由CRFsuite生成的。
我推荐教程,它将对此进行更详细的讨论。