当我在我的训练数据(train.txt)上运行CRF ++时,我遇到了以下错误
C:\Users\2012\Desktop\CRF_Software_Package\CRF++-0.58>crf_learn template train.d
ata model
CRF++: Yet Another CRF Tool Kit
Copyright (C) 2005-2013 Taku Kudo, All rights reserved.
reading training data: tagger.cpp(393) [feature_index_->buildFeatures(this)]
0.00 s
我的训练数据包含Unicode字符,数据使用记事本(encoding = Unicode big indian)保存
我不确定如果模板有问题或者是培训数据的格式。如何查看培训数据的格式?
答案 0 :(得分:3)
我认为这是因为您的模板文件。 请检查您是否包含了作为培训功能的黄金标准的最后一列。列索引从0开始。 例如,如果您的BIO文件中有6列。 模板不应该有%x [0,5]
之类的东西答案 1 :(得分:0)
问题在于模板文件 检查你的功能是否错误" grammer" 即 U10:%x [-1,0] /%[0,0]
你意识到在第二个%之后有一个缺失的' x' 修正后的行应如下所示 U10:%×[-1,0] /%×[0,0]
答案 2 :(得分:0)
我有同样的问题,文件是UTF-8,模板文件和培训文件肯定是正确的格式。原因是CRFPP期望输入文件中最多1024列。如果在这种情况下输出适当的错误信息,那将会很棒。
答案 3 :(得分:0)
问题不在于Unicode编码,而在于模板文件。