我正在尝试按照此处的教程创建注释预测模型,但我的模型没有学到任何东西。这是我的训练数据和标签的示例:
-1:word.lower()': '\nreference...n \n \n \n \n \n \n \n \n0\ntable\n1\n:\nairbrake\ncas\nmessages\n', '-1:word.istitle()': False, '-1:word.isupper()': False, '-1:postag': 'POS', '-1:postag[:2]': 'PO ', '+1:word.lower()': 'issue', '+1:word.istitle()': False, '+1:word. isupper()': True, '+1:postag': 'POS', '+1:postag[:2]': 'PO'}, {'bias': 1.0, 'word.lower()': '问题','word [-3:]':'SUE','word [-2:]':'UE','word.isupper()':真,'word.istitle()':假,' word.isdigit()':假,'postag':'POS','postag[:2]':'PO','w_emb_0':-1.220 4882,'w_emb_1':0.8920707,'w_emb_2':-3。
y_train = ['O', 'O', 'O'...'I-data-ca-s_message-type'....'B-data-ca-s_message-type']
这是模型定义和训练:
`
crf = sklearn_crfsuite.CRF(
algorithm='lbfgs',
c1=0.1,
c2=0.1,
max_iterations=100,
all_possible_transitions=True
)
crf.fit(X_train, y_train)
y_pred = crf.predict(X_test)
sorted_labels = sorted(labels, key=lambda name: (name[1:], name[0]))
msg = metrics.flat_classification_report(y_test, y_pred, labels=labels, digits=4)
print(msg)
`
不幸的是,我的模型没有学到任何东西:
precision recall f1-score support
B-data-c-a-s_message-type 0.0000 0.0000 0.0000 23
I-data-c-a-s_message-type 0.0000 0.0000 0.0000 90
micro avg 0.0000 0.0000 0.0000 113
macro avg 0.0000 0.0000 0.0000 113
weighted avg 0.0000 0.0000 0.0000 113