找回密码
 立即注册
搜索

自然言语了解之神经网络言语模型的文本生成

什么是言语模型

言语模型是一个单词序列上的概率分布,对于一个给定长度为m的序列,它可以为整个序列产生一个概率 P(w_1,w_2,…,w_m) 。其实就是想办法找到一个概率分布,它可以表示恣意一个句子或序列出现的概率。言语模型的简单来说就是判别一句话是正常的概率是多少?那么如何计算一句话的概率呢?我们可以运用下面的公式:

以上就是一个文本的概率,我们可以对齐停止分解,变成一句话中每个单词的预测,那么如今的成绩就变成我们如何预测一个词的概率

在言语模型中常用的方式n-gram方法,它的计算方法如下图所示

这是一种基于词统计的言语模型,我们可以经过语料数据的统计从而算出来P,语料越大效果越好,但是n-gram有一些成绩使得它很难处理一些成绩。

n-gram的成绩

成绩一:不可以处理长期依赖的成绩

它上程序课,然后它需求电脑,programming和computer之间是互相依赖的,但是间隔比较远,所以这个处理不了长期依赖的成绩

成绩二:相反的词不能共享权重

bought和purchased具有相反的上下文,但是n-gram不能让二者共享权重,所以这也是n-gram的成绩

成绩三:中心词不能作为上下文的条件

n-gram可以运用后面的词预测后面的词,但是不可以运用中心词预测上下文的词

处理成绩三


假如如今给定上下文为giving a然后预测后面的单词的概率,其中b表示偏置项(每个词的先验能够),然后w1,a表示在a条件下,每一个词的能够性,w2,giving表示在giving的条件下,每一个词的能够性,然后加起来就是在giving a条件下后一个词的能够性,加起来就使得giving a绑定在了一同,这样可以使得giving a共同的发挥作用,我们可以看到最能够的就是gift,我们可以把它变成网络的方式,如下所示

giving下面的蓝色向量(可以看作是特征),对应于w2,giving,a下面的蓝色向量(可以看作是特征),对应于w1,giving。

相对于n-gram基于统计的方式,这里运用特征的方式,特征化模型的计算概率用不同的办法,它们会计算上下文的特征,并基于特征来计算概率,对于n-gram来说Dr.jane和Dr Gertrude完全是两个不同的东西,而基于特征的方式,可以最大限制的使得二者的scores相近,这样就当Dr.Gertrude Smith和Dr .jane Gertrude之间共享。

成绩二

下面的模型是线性模型,我们知道线性模型没有特征组合,所以下面的模型没有办法处理成绩二,那么如何才能处理成绩二呢?那么我们可以运用非线性的方式,从而完成特征组合

我们将giving和a经过并列衔接,然后经过非线性激活,从而得到紫色的特征组合,然后完成最终的分类,此时就可以处理成绩二了,这样的方式就会出现下面的状况:

当我们运用这个模型的时分,就会出现相近的词具有相反的词编码,这是由于我们并没有将二者加起来,而是连起来了,这样然后预测的下一个词相反,这就会导致相近的词会有相反的词向量编码。

这是n-gram所不能处理的,缘由是:bought和purchased 是意思相反的词,然后car和bicyle是类型相反的词,但是n-gram仅仅停止表面的统计,所以bought和purchased没有共享任何的参数,这个意思就是说二者的意思相近,但是n-gram却把它当成了完全不同的东西,而运用这样的模型可以使得相近的词具有相反的向量

算法模型搭建

import torch
from torch import nn
from collections import defaultdict
import math
import random
class My_net(nn.Module):
def __init__(self,nwords,emb_size,hid_size,num_hist):
super(My_net,self).__init__()
self.embedding=nn.Embedding(nwords,emb_size)
self.fnn=nn.Sequential(
\t nn.Linear(num_hist*emb_size,hid_size),
nn.Dropout(True),
nn.Linear(hid_size,nwords)
\t)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

大神点评3

展翅ぃ雄鹰 2019-9-29 07:44:24 显示全部楼层
老哥,这波稳
回复

使用道具 举报

张美嘉o7a 2019-9-30 08:18:51 显示全部楼层
只看文字不过瘾啊~
回复

使用道具 举报

福和家具 2019-10-1 17:34:22 来自手机 显示全部楼层
楼下的接上
回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies