自然语言处理入门的路-分词3

语言模型里的马尔可夫假设

统计分词通过建立语言模型对分词结果进行概率运算从而得到更好的分词结果,一般有HMM(隐式马尔可夫模型)和CRF(条件随机场)。

P(S) = p(w1,w2,w3,w4,w5,w6,…,wn) = p(w1) * p(w2|w1) * p(w3|w1,w2) * … * p(wn|w1,w2,wn-1)

p(S)就是语言模型,用来计算一个句子的概率,依靠的是这个句子的各个词

可以发现计算出完美的p(S),就要计算所有词的联合概率,就要考虑每个词和这个词前面所有词的关系,显然这个计算不切实际。考虑的上文越多越容易出现稀疏性问题。

马尔可夫假设:估计上面这个不好计算的概率。不考虑这么多关系,每个词只和前面有限个词有关

零阶马尔可夫(unigram):只考虑当前词和前面0个单词有关,也就是每个单词是独立的

一阶马尔可夫(bigram):只考虑当前词和前面一个单词有关,也就是考虑当前单词和前面的单词的关系(最常用的)

二阶马尔可夫():只考虑当前词和前面二个单词有关

三阶。。。。

N阶马尔可夫(N-gram):只考虑当前词和前面n-1个单词有关

具体要怎么做到呢?

unigram:

需要一个语料库,统计各个单词在这个语料库里出现的概率,相乘即可

bigram:

需要一个语料库,统计各个单词出现在前面那个单词后面的概率,相乘即可

有等于0的情况,则借助于平滑操作,具体以后会补充
简单的做法是人工把概率为0写成一个较低的概率

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值