N-Gram模型介绍
创始人
2024-03-02 01:02:29

N-gram是一种基于统计语言模型的算法,基本思想是将文本内容按照字节进行大小为N的滑动窗口操作,形成了长度是N的字节片段序列。

每一个字节片段称为gram,对所有gram的出现频度进行统计,并且按照事先设定好的阈值进行过滤,形成关键gram列表,也就是这个文本的向量特征空间,列表中的每一种gram就是一个特征向量维度。

该模型基于马尔可夫假设,每一个单词的出现都取决于它前面有限个单词。对于有限个单词数量n的不同定义,组成了不同的gram模型,

当n=1时,就是uni-gram, p(w_1,w_2,...,w_m) = \prod_{i=1}^{m}p(w_i)

当n=2时,就是bi-gram, p(w_1,w_2,...,w_m)=\prod_{i=1}^{m}p(w_i|w_{i-1})

当n=3时,就是tri-gram, P(w_1,w_2,...,w_m)=\prod_{i=1}^{m}p(w_i|w_{i-2}w_{i-1})

在给定的训练语料中,利用贝叶斯定理,将上述的条件概率值都统计计算出来即可,以bigram为例,公示推导如下:

P(w_i|w_{i-1})=\frac{P(w_i,w_{i-1})}{P(w_{i-1})}=\frac{count(w_i,w_{i-1})}{count(ALLword)} \cdot \frac{count(ALLword)}{count(w_{i-1})}=\frac{count(w_i,w_{i-1})}{count(w_{i-1})}

同理,可以得到trigram的条件概率公式:P(w_i|w_{i-2},w_{i-1})=\frac{Count(w_{i-2},w_{i-1},w_i)}{Count(w_{i-2},w_{i-1})}

n-gram条件概率公式为:P(w_n|w_{n-1}...w_2,w_1)=\frac{Count(w_1,w_2,...w_n)}{Count(w_1,w_2,...,w_{n-1})}

注意:如果N过大会导致对于当前单词的约束过强,则容易导致过拟合。简单理解就是特征太多训练集上是准确率高了,但是容易过拟合。

以Bi-gram为例,假设有三句话组成的语料库为:

则能计算出的概率为:

I出现3次,I do出现1次,则P(do|I)=1/3=0.33

do出现1次,do not出现1次,则P(not|do) =1/1=1

代码实现N-gram:

#coding:utf-8def creat_ngram_list(input_list, ngram_num):ngram_list = []if len(input_list) <= ngram_num:ngram_list.append(input_list)else:for temp in zip(*[input_list[i:] for i in range(ngram_num)]):temp = "".join(temp)ngram_list.append(temp)return ngram_listif __name__ == "__main__":text = input("输入:")ngram_num = int(input("切分长度:"))print("\n 列表输出:{0}".format(creat_ngram_list(text,ngram_num)))

结果为:

总结,N-gram模型的优点是基于有限的历史所以效率高,缺点是无法体现文本相似度,无法关联更早的信息。

相关内容

热门资讯

北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...