Я следовал учебнику sklearn-crfsuite
.
Пример функций, использованных для обучения модели CRF, показан ниже.
{'+1:postag': 'Fpa',
'+1:postag[:2]': 'Fp',
'+1:word.istitle()': False,
'+1:word.isupper()': False,
'+1:word.lower()': '(',
'BOS': True,
'bias': 1.0,
'postag': 'NP',
'postag[:2]': 'NP',
'word.isdigit()': False,
'word.istitle()': True,
'word.isupper()': False,
'word.lower()': 'melbourne',
'word[-2:]': 'ne',
'word[-3:]': 'rne'}
Какsklearn-crfsuite
конвертирует строки типа melbourne
в числа с плавающей точкой, поскольку функции для CRF должны быть только числами с плавающей точкой.Там нет упоминания об этом нигде в документации.