首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >固定模式中的Python-crfsuite标签

固定模式中的Python-crfsuite标签
EN

Stack Overflow用户
提问于 2019-02-04 03:10:41
回答 1查看 70关注 0票数 0

我正在尝试创建一个将日语句子分割成单词的CRF模型。目前,我并不担心完美的结果,因为这只是一个测试。训练进行得很好,但当训练结束时,它总是对我尝试标记的每个句子给出相同的猜测。

代码语言:javascript
复制
"""Labels: X: Character is mid word, S: Character starts a word, E:Character ends a word, O: One character word"""
    Sentence:広辞苑や大辞泉には次のようにある。
    Prediction:['S', 'X', 'E', 'S', 'E', 'S', 'E', 'S', 'E', 'S', 'E', 'S', 'E', 'S', 'E', 'S', 'E']
    Truth:['S', 'X', 'E', 'O', 'S', 'X', 'E', 'O', 'O', 'O', 'O', 'S', 'E', 'O', 'S', 'E', 'O']
    Sentence:他にも、言語にはさまざまな分類がある。
    Prediction:['S', 'X', 'E', 'S', 'E', 'S', 'E', 'S', 'E', 'S', 'E', 'S', 'E', 'S', 'E', 'S', 'E', 'S', 'E']
    Truth:['O', 'O', 'O', 'O', 'S', 'E', 'O', 'O', 'S', 'X', 'X', 'X', 'E', 'S', 'E', 'O', 'S', 'E', 'O']

查看模型的过渡信息时:

代码语言:javascript
复制
{('E', 'E'): -3.820618,
 ('E', 'O'): 3.414133,
 ('E', 'S'): 2.817927,
 ('E', 'X'): -3.056175,
 ('O', 'E'): -4.249522,
 ('O', 'O'): 2.583123,
 ('O', 'S'): 2.601341,
 ('O', 'X'): -4.322003,
 ('S', 'E'): 7.05034,
 ('S', 'O'): -4.817578,
 ('S', 'S'): -4.400028,
 ('S', 'X'): 6.104851,
 ('X', 'E'): 4.985887,
 ('X', 'O'): -5.141898,
 ('X', 'S'): -4.499069,
 ('X', 'X'): 4.749289}

这看起来很好,因为所有具有负值的转换都是不可能的,例如E -> X,从一个单词的末尾到下一个单词的中间。S -> E gets的值最高,如上所述,模型只是进入了一种重复标记S和E的模式,直到句子结束。我在尝试的时候遵循了this demo,尽管这个演示是用来分离拉丁语的。我的特征同样也是n-gram:

代码语言:javascript
复制
['bias',
 'char=ま',
 '-2-gram=さま',
 '-3-gram=はさま',
 '-4-gram=にはさま',
 '-5-gram=語にはさま',
 '-6-gram=言語にはさま',
 '2-gram=まざ',
 '3-gram=まざま',
 '4-gram=まざまな',
 '5-gram=まざまな分',
 '6-gram=まざまな分類']

我已经尝试将标签更改为start和other的S和X,但这只会导致模型重复S,X,S,X,直到用完所有字符。我已经在两个方向上增加了6克,这花了更长的时间,但没有改变任何事情。尝试训练更多的迭代,并稍微更改L1和L2常量。我已经训练了多达100,000个句子,这几乎是我所能做到的,因为它几乎需要我所有的16 go内存来做到这一点。我的功能结构有误吗?我如何让模型停止在模式中猜测,这就是正在发生的事情吗?感谢您的帮助,如果我需要添加更多信息到问题中,请让我知道。

EN

回答 1

Stack Overflow用户

发布于 2019-02-05 00:19:24

结果发现我漏掉了一步。我将原始句子传递给标记器,而不是传递特征,因为CRF显然可以接受字符串,就像它是一个几乎没有特征的条目列表一样,它只是默认猜测最高评级的转换,而不是引发错误。我不确定这是否会对其他人有帮助,因为这是一个愚蠢的错误,但我会在这里放一个答案,直到我决定是否要删除这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54506520

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档