sklearn-crfsuite如何处理字符串?

时间:2019-09-20 11:31:02

标签: python crf crfsuite python-crfsuite

我一直在关注sklearn-crfsuite tutorial

用于训练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的功能应仅是浮点数。文档中没有任何提及。

1 个答案:

答案 0 :(得分:0)

sklearn-crf功能采用python-crfsuite格式。每个字符串均视为键:

    * {"string_key": "string_value", ...} dict; that's the same as
      {"string_key=string_value": 1.0, ...}
    * ["string_key1", "string_key2", ...] list; that's the same as
      {"string_key1": 1.0, "string_key2": 1.0, ...}

您可以在此处找到更多信息: https://github.com/scrapinghub/python-crfsuite/blob/master/pycrfsuite/_pycrfsuite.pyx