N-gram的简单的介绍

目录

  1. 联合概率
  2. 条件概率
  3. N-gram的计算方式

     4. 评估N-gram的模型.

前言:

    N-gram是机器学习中NLP处理中的一个较为重要的语言模型,常用来做句子相似度比较,模糊查询,以及句子合理性,句子矫正等. 再系统的介绍N-gram前,我们先了解一下这几种概率.

正文:

  1、联合概率介绍:

    形如:p(W1,....,Wn); 表示的意思是: w1,...Wn同时发生的概率.列举一个具体的例子说明:

    P(A,B) ,表示的是A,B同时发生的概率.

   1.1 当A,B相互独立时,也就是交集为空的时候,P(A,B) = P(A)P(B)

   1.2 当A,B相关联的时候,或者说存在交集的时候,P(A,B) = P(A)P(B|A),如下图所示

 总的样本数为T,A的样本数为7,B的样本数为6,A,B相同的样本数为2

那么:

    P(A,B) =2/T

    1.3 1.2处的公式简化到一般形式:

   P(w1,w2,w3) = P(W1)P(W2|W1)P(W3|W1,W2)

  一般形式为: P(W1,W2,..,Wn) = P(W1)P(W2|W1)...(Wn|Wn-1,...,W2,W1);

  抽象为:

      P(W1,W2,...,Wn) = ∏ni P(wi|w1,w2,..wi-1)     (累乘)

   2、条件概率:

  形如: P(A|B), 当某一系列事件放生时,该事件发生的概率.,如上图中的韦恩图所示:

     P(A|B) = P(A,B)/P(A) =  2/7

  我们将其扩展到一般形式:

    P(A|B,C) =  P(A,B,C) / P(B,C)  = P(A,B,C) / ( P(B|C) P(C) )

   3. N-gram的计算方式:

    N-gram是依据一个预料库中,对于单词的统计,来计算. N-gram常见的有1-gram(一元模型),2-gram(二元模型) ,3-gram(三元模型);

    在语义上只认为相近的几个词有关联 ,如果用韦恩图表示:

       3.1 对于一元模型(1-gram),每个词都是独立分布的,也就是对于P(A,B,C) 其中A,B,C互相之间没有交集. 所以P(A,B,C) = P(A)P(B)P(C)

       比如语句:“猫,跳上,椅子” ,P(A="猫",B="跳上",C="椅子") = P("猫")P(“跳上”)P("椅子");其中各个词的数量数语料库中统计的数量

跳上

椅子

13

16

23

       依据这些数据就可以求出P(A,B,C),也就是这个句子的合理的概率.

                P(A,B,C) = P(A)P(B)P(C) =13/M * 16/M * 23/M

       3.2 对于二元模型,每个词都与它左边的最近的一个词有关联,也就是对于P(A,B,C) = P(A)P(B|A)P(C|B)

       比如语句:“猫,跳上,椅子” ,P(A="猫",B="跳上",C="椅子") = P("猫")P(“跳上”|“猫”)P("椅子"|“跳上”);其中各个词的数量数语料库中统计的数量

跳上

椅子

0

9

1

跳上

0

3

15

椅子

0

0

0

       依据这些图表一和图表二就可以求出P(A,B,C),也就是这个句子的合理的概率.

              P(A,B,C) = P(A)P(B|A)P(C|B)

                   p(A) = 13/M

                  P(B|A) =9/13

                  p(C|B) = 15/16

       3.3 对于三元模型,每个词都与它左边的最近的两个词有关联. 计算同上.

   4. 评估模型的优劣

    对于一个训练好的模型,我们需要评估模型的好坏,N-gram常用的评估方式是:

     pp(w1,w2,...,Wn) = p(w1,w2,...,Wn)-1/n

    我们以上面的一元模型和二元模型来为例,进行评估计算.

        pp(w1,w2,...,Wn)1 = (13/M * 16/M * 23/M)-1/3 = (12*16*23)-1/3*M  一元模型

        pp(w1,w2,...,Wn)2 = (13/M * 9/13 * 15/ 16)-1/3 = (9*15/(16M))-1/3   二元模型

    可以看出二元模型比一元模型的值要小,而值越小说明模型越好.

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏量化投资与机器学习

【全网首发】机器学习该如何应用到量化投资系列(二)

有一些单纯搞计算机、数学或者物理的人会问,究竟怎么样应用 ML 在量化投资。他们能做些什么自己擅长的工作。虽然在很多平台或者自媒体有谈及有关的问题,但是不够全面...

29760
来自专栏自学笔记

Aggregation Model : Blending , Bagging , Boosting

比如现在有一支股票,你不知道是跌还是涨。你有T个friends,每一个friend对应的建议分别是g1,g2,g3...gn,那么你应该怎么选择建议?

13730
来自专栏一心无二用,本人只专注于基础图像算法的实现与优化。

《Single Image Haze Removal Using Dark Channel Prior》一文中图像去雾算法的原理、实现、效果(速度可实时)

      最新的效果见 :http://video.sina.com.cn/v/b/124538950-1254492273.html         可处理...

936100
来自专栏用户2442861的专栏

深度卷积网络CNN与图像语义分割

转载请注明出处: http://xiahouzuoxin.github.io/notes/

19410
来自专栏数据派THU

机器学习算法清单!附Python和R代码

来源:数据与算法之美 通过本文为大家介绍了3种机器学习算法方式以及10种机器学习算法的清单,学起来吧~ 前言 谷歌董事长施密特曾说过:虽然谷歌的无人驾驶汽车和机...

51070
来自专栏崔庆才的专栏

自然语言处理全家福:纵览当前NLP中的任务、数据、模型与论文

组合范畴语法(CCG; Steedman, 2000)是一种高度词汇化的形式主义。Clark 和 Curran 2007 年提出的标准解析模型使用了超过 400...

87800
来自专栏杨熹的专栏

机器学习-多元线性回归

A. 用途: 可以用来预测,由多种因素影响的结果。 B. 建立公式: ? C. 求解方法: 方法1. Gradient Descent: ? ...

36250
来自专栏人工智能头条

数据科学与机器学习管道中预处理的重要性(一):中心化、缩放和K近邻

23530
来自专栏新智元

谷歌等祭出图像语义理解分割神器,PS再也不用专业设计师!

不不不,这不是“找不同”,是为了让你感受一下“像素级语义分割和理解”带来的修图效果:

13620
来自专栏数据科学与人工智能

【机器学习】10 种机器学习算法的要点

前言 谷歌董事长施密特曾说过:虽然谷歌的无人驾驶汽车和机器人受到了许多媒体关注,但是这家公司真正的未来在于机器学习,一种让计算机更聪明、更个性化的技术。 也许我...

26770

扫码关注云+社区

领取腾讯云代金券