我正在寻找一种在槌中使用以属性和标签二元组为条件的特征的方法。我仍在尝试了解如何将刚刚生成的标记的标签用作确定下一个标记的标签的特征?标记的特征向量是否作为先前标记的标签生成?
我是否误解了 CRF 允许使用预测的先前标签作为下一个标记的特征?
提前致谢!
标记的特征向量是否作为先前标记的标签生成?
不,CRF 联合优化损失,没有像 MEMM 中那样从左到右的处理,您可以在其中预测标签然后使用它。CRF 考虑所有可能的先前标签并找到最可能的序列。
我是否误解了 CRF 允许使用预测的先前标签作为下一个标记的特征?
CRF 允许使用以前的标签作为特征;在您的情况下,很可能它已经自动发生了。我没有使用 Mallet 的经验,但在大多数开箱即用的线性链 CRF 包中,有两种功能:
有时,您还可以对依赖于当前令牌的用户定义特征设置 (2) 转换特征。看来这就是你要找的东西,但我不确定。有些包实现了这一点(例如 wapiti),有些则没有(例如 crfsuite)。一些包允许定义任意 CRF,并使用任意特性(例如 pystruct、factorie、GRMM(?))。抱歉,我没有使用 Mallet 的经验,所以这不是一个真正的答案:)