[发明专利]一种基于循环神经网络的蒙古语语言模型的训练方法有效

专利信息
申请号: 201810345632.X 申请日: 2018-04-17
公开(公告)号: CN108549703B 公开(公告)日: 2022-03-25
发明(设计)人: 马杰;马志强;杨瑞 申请(专利权)人: 内蒙古工业大学
主分类号: G06N3/04 分类号: G06N3/04;G06N3/08;G06F16/33;G06F16/332;G06F40/30;G06F40/284
代理公司: 北京睿智保诚专利代理事务所(普通合伙) 11732 代理人: 周新楣
地址: 010080 内蒙古自治*** 国省代码: 内蒙古;15
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 循环 神经网络 蒙古语 语言 模型 训练 方法
【权利要求书】:

1.一种基于循环神经网络的蒙古语语言模型的训练方法,其特征在于:

一、所述的基于循环神经网络的蒙古语语言模型MLMRNN在预训练阶段,使用Word2vec+k-means算法得到蒙古语词表中的蒙古语词及其所属的语义类别,并设计了基于one-hot的蒙古语语义词向量,蒙古语语义词向量是根据不同的语义类别下的蒙古语词的个数,作为每个语义类别下的蒙古语词向量的维度,依次按照语义类别进行词向量的编码,编码完成语义类别1下的所有蒙古语词后,继续进行语义类别2下的所有蒙古语词的词向量编码,直至完成所有语义类别下的蒙古语词编码,编码格式同one-hot编码格式相同,具体训练算法为:

输入:V表示包含|V|个蒙古语词向量{w1,…,wV}的数据集合;k表示簇的数目k≤|V|;

输出:k个簇的集合S;

1)随机初始化了K个与蒙古语词向量维度一致的类簇的簇心向量u1,u2,...,uk

2)采用循环语句repeat循环,For循环;

3)For外循环语句使用循环变量i遍历|v|;

4)For内循环语句使用循环变量j遍历K个类簇;

5)进入循环体,Si←argminj||wi-uj||2代表计算得到的词向量与簇心向量的最小化平方误差;

6)代表更新簇心向量;

7)结束For内循环;

8)结束For外循环;

9)直到收敛,repeat循环结束;

二、当对循环神经网络的蒙古语语言模型MLMRNN进行训练和计算时,对每个输入的蒙古语词,根据类别信息创建基于one-hot的语义词向量,作为输入层进行计算;根据语义分为k类,基于one-hot的蒙古语语义词向量创建算法如下:

输入:k个簇的集合S,其中Si表示第i个集合,S共有k个分类;k表示簇的数目;

index表示k个簇下的蒙古语词向量的位置;

输出:kc-one-hot,k个簇下的基于one-hot的蒙古语词向量;

1)读取词汇表大小,作为词向量维度;

2)初始化kc-one-hot长度为n;

4)For外循环语句使用循环变量j遍历K个类簇;

3)For内循环语句使用循环变量i遍历蒙古语词表中的每个词表的大小;

5)进入循环体,确定该蒙古语词向量在one-hot编码中的位置;

6)kc-one-hot[index]=1,将该蒙古语词向量用one-hot编码形式编码;

7)结束For内循环;

7)结束For外循环;

三、模型的训练算法:

wt表示t时刻的当前输入蒙古语基于one-hot的语义词向量,维度是词典V的大小;ft表示t时刻预训练的蒙古语Skip-Gram词向量,维度为M<|V|;

wt表示t时刻的蒙古语分类词向量;ft表示t时刻的蒙古语Skip-Gram词向量;α表示学习率;epoch表示循环次数;τ表示bptt大小,其中bptt表示反向传播的步长;Wxs,Wss,Wfs,Wsc,Wsy分别表示输入部分中的蒙古语分类词向量到隐含层的权值矩阵;St-1代表上一时刻的隐含层的输出;lt是词在类中期望输出概率;yt是真实输出的类概率;ct'是期望输出的类概率;ct是真实输出的类概率;

输入:wt,ft

输出:Wxs,Wss,Wfs,Wsc,Wsy,yt

1)随机初始化Wxs,Wss,Wfs,Wsc,Wsy矩阵;

2)For外循环使用循环变量j遍历每个epoch;

3)xt←wxs·wt+wss·st-1+wfs·ft,将wt,ft,St-1与权值矩阵相乘并相加得到xt

4)st←sigmoid(xt),将xt通过激活函数sigmoid计算得到St

5)yt←softmax(Wsy·st),将Wsy和St相乘通过softmax函数计算得到yt

6)ct←softmax(Wsc·st),将Wsc和St相乘通过softmax函数计算得到ct

7)Et(yt,lt)←-logyt,使用yt计算训练损失;

8)Et(ct,c't)←-ctlogc't,使用ct和ct'计算训练损失;

9)For内循环使用循环变量τ遍历时间t;

10)

11)更新训练参数

12)结束For内循环;

13)结束For外循环;其中,所述的基于循环神经网络的蒙古语语言模型MLMRNN结构包括输入层x(t)、隐含层s(t)和输出层y(t);在t时刻,输入向量x(t)包括三部分,分别是w(t),s(t-1)和f(t),其中w(t)代表t时刻输入的词的one-hot词向量表示;s(t-1)为t-1时刻隐含层的输出;f(t)为t时刻Skip-Gram训练出的上下文词向量,维度远小于|V|;隐含层为s(t);输出向量用y(t)表示,包括两部分,一部分是类别层神经元,另一部分是蒙古语词神经元,c(t)为对词汇表进行的词向量的聚类的类别层,输出向量y(t)即表示下一个词w(t+1)的概率;

网络中,U、W、F为输入层与隐含层之间的权值矩阵,C为隐含层与类别层的权值矩阵,在输出层计算的时候先算词类的概率分布,再从所需的词类中计算特定词的概率,计算输出层的结果需要用到类别的输出结果;网络中各层输出值用表示为:

x(t)=w(t)+s(t-1)+f(t) (1)

s(t)=f(U·w(t)+W·s(t-1)+F·f(t)) (2)

c(t)=g(C·s(t)) (3)

y(t)=g(V′·s(t)) (4)

其中V′∈R(c(w(t))),R(c(w(t))表示w(t)所属的聚类的词集合,f表示sigmoid激活函数,g表示softmax激活函数。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于内蒙古工业大学,未经内蒙古工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201810345632.X/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top