word embedding(A neural probabilistic langulage model)

本文需要了解概率论,随机过程和神经网络等相关知识

公式无法显示,可跳转word embedding(A neural probabilistic langulage model)

语言模型

语言模型就是根据一定的训练集合算法得到的模型,该模型一般可以 1).预测一个句子出现的概率;2).根据不完整的句子前几个词来预测下一个词。一般的语言模型也就是统计语言模型

统计语言模型可以计算一个句子的概率,那什么叫做一个句子的概率,还有句子的概率怎么计算呢。假设一个句子由T个词构成W=(w_1,w_2,...,w_T)w_i表示一个单词,用w_i^j第i个词到第j个词的序列,则w_1,w_2,...,w_T的联合概率为:
p(W)=p(w_1^T)=p(w_1,w_2,...,w_T)

这就是句子的概率,根据 bayes公式得到:
p(w_1^T) = p(w_1)p(w_2|w_1)p(w_3|w_1^2)...p(w_T|w_1^{T-1})

其中的条件概率p(w_1)p(w_2|w_1)p(w_3|w_1^2)...p(w_T|w_1^{T-1})就是模型的参数,如果得到了这些参数,我们就能够知道该句子的概率。

常见的参数求解的方法有n-gram模型,决策树,最大熵模型以及本文要介绍的神经网络模型。为了对参数的求解有更好理解,先介绍n-gram 模型。

n-gram 模型

由bayes定理有:
p(w_k|w_1^{k-1})=\frac {p(w_1^k)}{p(w_1^{k-1})}

p(w_1^k)表示词序列w_1^k出现的概率,这个概率可以通过预料中的计算所有该序列的数目得到。

p(w_1^k)=\frac {count(w_1^k)}{\#词序列综合}

count(w_1^k)表示词序列w_1^k在语料中出现的次数。同理:

p(w_1^{k-1})=\frac {count(w_1^{k-1})}{\#词序列综合}

所以有:
p(w_k|w_1^{k-1})=\frac {count(w_1^k)}{count(w_1^{k-1})}

通过上式我们知道一个词的出现是和该词前面所有的词都相关,如果假设一个词的出现只和前面固定的词相关,比如在 Markov假设中,一个状态只和前一个状态相关。如果设定这样的一个固定值,可以降低不少的复杂度。另外一方面,从常识来看,一个词的出现只与它相邻的词相关,与较远距离的词几乎没有关系。这就是n-gram模型的基本思想,他做了一个n-1阶的Markov假设。

p(w_k|w_1^{k-1})=\frac {count(w_{k-n+1}^k)}{count(w_{k-n+1}^{k-1})}

n的大小完全决定于参数的规模,一般来说,n越大模型的效果也更好。但是由于其复杂度,一般n也不会取太大。

神经网络模型(neural probabilistic langulage model)

神经网络模型不仅可以得到语言模型的参数还顺便得到了词向量,即word embedding(南大周志华翻译成词嵌入),亦即得到了词的向量表示。最早用神经网络的思路训练神经网络的模型是百度IDL的徐伟2000提出的。而这篇《A neural probabilistic langulage model》是Bingio在2003年发表在JMLR上的文章。

Bengio的神经网络模型仍然是基于n-gram模型。


图中的w_{t-n+1},...w_{t-2},w_{t-1}表示w_t的前n-1个词,现在同样的通过前n-1个词来预测下一个词w_t。以前n-1个词为输入层,中间一个隐藏层,输出层是softmax层,用来预测下一个词。或者简化成如下的四层:输入层-投影层-隐藏层-输出层。假设词可以用m维的向量来表示,输入层到投影层的过程就是将n-1个词的表示连接起来得到一个(n-1)m维的向量X_w,投影层到隐藏层是一个全连接的过程,得到一个n_t维度的向量Z_w,参数是W和p,然后隐藏层到输出层也是全连接的方式,输出层的维度等于字典的大小N,参数是U和q。

其中前向计算的过程如下:
z_w = tanh(Wx_w+p)

y_w = Uz_w+q
记过计算得到一个长度为N的向量y_w,用softmax归一化之后得到每个单词的概率。
p(w_t|w_{t-n+1},...w_{t-2},w_{t-1}) = \frac {e^{y_w^i}}{\sum e^{y_w^i}}

i表示在字典中的第i个词。这里需要求的参数包括:1)词向量v(w),2)神经网络的参数(W,p,U,q),用随机梯度下降的方法就能求解了。

优点:
1.直接得到了词向量的表示和语言模型。
2.基于词向量的模型自带平滑的功能,得到的概率不可能为零。

参考

1.word2vec 中的数学原理详解
2.Deep Learning in NLP (一)词向量和语言模型
2.NNLM: Y. Bengio, R. Ducharme, P. Vincent. A neural probabilistic language model, JMLR 2003

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,937评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,503评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,712评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,668评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,677评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,601评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,975评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,637评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,881评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,621评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,710评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,387评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,971评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,947评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,189评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,805评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,449评论 2 342

推荐阅读更多精彩内容