[发明专利]基于泊松‑伽玛置信网络主题模型的文本分析方法在审
申请号: | 201610828754.5 | 申请日: | 2016-09-18 |
公开(公告)号: | CN106446117A | 公开(公告)日: | 2017-02-22 |
发明(设计)人: | 陈渤;翟颖;丛玉来 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 陕西电子工业专利中心61205 | 代理人: | 田文英;王品华 |
地址: | 710071 陕*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 一种基于泊松‑伽玛置信网络主题模型的文本分析方法,主要解决现有技术中面临的过拟合问题和只能对文本内容的单层主题信息进行提取的问题。主要步骤是:建立训练集和测试集;设置泊松‑伽玛置信网络及其参数;对泊松‑伽玛置信网络进行分层;对五个子网络的参数分别进行初始化;训练当前子网络;保存训练后的当前子网络的全局参数;测试当前子网络;对文本进行分类;输出文本分类正确率和预测文本类别。本发明属于贝叶斯网络中的一种,采用逐层训练和联合训练的方法对网络进行训练,利用吉布斯采样方法对网络参数进行学习,从而获得多层字典矩阵,完成对文本内容的多层主题信息的提取。 | ||
搜索关键词: | 基于 置信 网络 主题 模型 文本 分析 方法 | ||
【主权项】:
一种基于泊松‑伽玛置信网络主题模型的文本分析方法,包括如下步骤:(1)建立训练集和测试集:(1a)从文本语料库中随机选取训练文本集和测试文本集;(1b)采用词袋方法,将训练文本集和测试文本集的格式由文本信息转化为数字信息的训练集和测试集;(2)设置泊松‑伽玛置信网络及其参数:(2a)设置泊松‑伽玛置信网络的总网络层数、输入层维度、隐层维度、输出层内容;(2b)设置泊松‑伽玛置信网络的网络参数;(2c)在{1000,1500}两个值中任意选取一个值作为训练迭代次数;(2d)将测试迭代次数设置为1500次;(3)对泊松‑伽玛置信网络进行分层:(3a)将泊松‑伽玛置信网络的第1层作为第1个子网络;(3b)将泊松‑伽玛置信网络的第1层和第2层,作为第2个子网络;(3c)将泊松‑伽玛置信网络的第1层、第2层和第3层,作为第3个子网络;(3d)将泊松‑伽玛置信网络的第1层、第2层、第3层和第4层,作为第4个子网络;(3e)将泊松‑伽玛置信网络的第1层、第2层、第3层、第4层和第5层,作为第5个子网络;(4)对第1个子网络的参数进行初始化;(4a)按照下式,对第1个子网络的泊松‑伽玛置信网络参数中所包含的字典矩阵进行初始化;φa(1)~Dir(η(1),....,η(1))其中,φa(1)表示第1个子网络第1层初始化后的字典矩阵第a列的所有元素,a的取值范围是{1,2,....,K1max},K1max表示所有子网络第一个隐层维度的最大值,~表示等价关系符号,Dir表示狄利克雷分布,η(1)表示第1个子网络第1层狄利克雷分布的参数;(4b)按照下式,对第1个子网络的泊松‑伽玛置信网络参数中所包含的概率分布对应参数和超参数进行初始化;pi(1)=1‑e‑1其中,pi(1)表示第1个子网络初始化后的第1层中服从负二项式分布的第i个样本的参数;rm~Gamma(γ0/K1max,1/c0)其中,rm表示第1个子网络初始化后的顶层生成向量的第m个元素,~表示等价关系符号,Gamma表示伽玛分布,γ0=1,K1max表示所有子网络第一个隐层维度的最大值,γ0/K1max表示伽玛分布的形状参数,c0=1,表示伽玛分布尺度参数的倒数;(4c)按照下式,对第1个子网络的泊松‑伽玛置信网络参数中所包含的隐层单元矩阵进行初始化;θh(1)~Gamma[r,pi(1)1-pi(1)]]]>其中,θh(1)表示第1个子网络初始化后的第1层隐层单元矩阵第h列的所有元素,~表示等价关系符号,Gamma表示伽玛分布,r表示顶层的生成向量,pi(1)表示第1层中服从负二项式分布的第i个样本的参数,h与i的大小相等;(5)判断当前子网络的网络层数是否为2,若是,则执行步骤(6),否则,执行步骤(7);(6)对第2个子网络的参数进行初始化:(6a)将第1个子网络中的全局参数值,作为第2个子网络全局参数的初始值;(6b)按照下式,对第2个子网络顶层的泊松‑伽玛置信网络参数中所包含的字典矩阵进行初始化;φb(T)~Dir(τ(T),....,τ(T))其中,φb(T)表示第2个子网络顶层初始化后的字典矩阵第b列的所有元素,b的取值范围是{1,2,....,KT},KT表示第2个子网络顶层的维度值,~表示等价关系符号,Dir表示狄利克雷分布,τ(T)表示第2个子网络第T层狄利克雷分布参数的初始值;(6c)按照下式,对第2个子网络的泊松‑伽玛置信网络参数中所包含的概率分布对应的参数和超参数进行初始化;pc(2)~Beta(a0,b0)其中,pc(2)表示第2个子网络初始化后的第2层中服从负二项式分布的第c个样本的参数,~表示等价关系符号,Beta表示贝塔分布,a0表示贝塔分布的参数1,a0=0.01,b0表示贝塔分布的参数2,b0=0.01;cd(2)=(1‑pc(2))/pc(2)其中,cd(2)表示第2个子网络初始化后的第2层伽玛分布尺度参数的倒数,d表示输入数据中的第d个样本,pc(2)表示第2个子网络的第2层中服从负二项式分布的第c个样本的参数,d与c的大小相等;ce(3)~Gamma(e0,1/f0)其中,ce(3)表示第2个子网络的下一个子网络的第3层初始化后的伽玛分布尺度参数的倒数值,e表示输入数据中的第e个样本,~表示等价关系符号,Gamma表示伽玛分布,e0表示伽玛分布的形状参数,e0=1,f0表示伽玛分布尺度参数的倒数值,f0=1;(6d)按照下式,对第2个子网络顶层的泊松‑伽玛置信网络参数中所包含的生成向量进行初始化;rm~Gamma(γ0/KT,1/c0)其中,rm表示第2个子网络初始化后的顶层生成向量的第m个元素,~表示等价关系符号,Gamma表示伽玛分布,γ0=1,KT表示顶层的维度值,c0表示伽玛分布尺度参数的倒数值,c0=1;(6e)按照下式,对第2个子网络顶层的泊松‑伽玛置信网络参数中所包含的隐层单元矩阵进行初始化;θg(2)~Gamma(r,1ce(3))]]>其中,θg(2)表示第2个子网络顶层初始化后的隐层单元矩阵第g列的所有元素,~表示等价关系符号,Gamma表示伽玛分布,r表示顶层的生成向量,表示第2个子网络的下一个子网络的第3层伽玛分布的尺度参数,e表示输入数据中的第e个样本,g与e的大小相等;(6f)按照下式,对第2个子网络第1层的泊松‑伽玛置信网络参数中所包含的隐层单元矩阵进行初始化;θh(1)~Gamma(Φ(2)θg(2),1cd(2))]]>其中,θh(1)表示第2个子网络第1层初始化后的隐层单元矩阵第h列的所有元素,~表示等价关系符号,Gamma表示伽玛分布,Φ(2)θg(2)表示第2个子网络的第2层伽玛分布的形状参数,Φ(2)表示第2个子网络的第2层字典矩阵,θg(2)表示第2个子网络的第2层隐层单元矩阵第g列的所有元素,表示第2个子网络的第2层伽玛分布的尺度参数,d表示输入数据中的第d个样本,h、g与d的大小相等;(7)对当前子网络的参数进行初始化:(7a)将上一个子网络中的全局参数值,作为当前子网络全局参数的初始值;(7b)对当前子网络顶层的泊松‑伽玛置信网络参数中所包含的字典矩阵进行初始化;φW(T)~Dir(ι(T),....,ι(T))其中,φW(T)表示当前子网络顶层初始化后的字典矩阵第W列的所有元素,W的取值范围是{1,2,....,KT},KT表示顶层的维度值,~表示等价关系符号,Dir表示狄利克雷分布,ι(T)表示当前子网络顶层的狄利克雷分布参数;(7c)按照下式,对当前子网络的泊松‑伽玛置信网络参数中所包含的概率分布对应的参数和超参数进行初始化;pr(T)=‑ln(1‑py(T‑1))/[cu(T)‑ln(1‑py(T‑1))]其中,pr(T)表示当前子网络顶层初始化后服从负二项式分布的第r个样本的参数,ln表示对数符号,py(T‑1)表示上一个子网络的顶层中服从负二项式分布的第y个样本的参数,cu(T)表示当前子网络顶层伽玛分布尺度参数的倒数值,u表示输入数据中的第u个样本,r、y与u的大小相等;cl(T+1)~Gamma(e0,1/f0)其中,cl(T+1)表示当前子网络的下一个子网络的顶层伽玛分布尺度参数的倒数值,l表示输入数据中的第l个样本,~表示等价关系符号,Gamma表示伽玛分布,e0表示伽玛分布的形状参数,e0=1,f0表示伽玛分布尺度参数的倒数值,f0=1;(7d)按照下式,对当前子网络顶层的泊松‑伽玛置信网络参数中所包含的生成向量进行初始化;rm~Gamma(γ0/KT,1/c0)其中,rm表示当前子网络顶层初始化后的生成向量的第m个元素,~表示等价关系符号,Gamma表示伽玛分布,γ0=1,KT表示顶层的维度值,c0表示伽玛分布尺度参数的倒数值,c0=1;(7e)按照下式,对当前子网络顶层的泊松‑伽玛置信网络参数中所包含的隐层单元矩阵进行初始化;θo(T)~Gamma(r,1cl(T+1))]]>其中,θo(T)表示当前子网络顶层初始化后的隐层单元矩阵第o列的所有元素,~表示等价关系符号,Gamma表示伽玛分布,r表示顶层的生成向量,表示第T+1层伽玛分布的尺度参数,l表示输入数据中的第l个样本,o与l的大小相等;(7f)按照下式,对当前子网络除顶层以外每一层的泊松‑伽玛置信网络参数中所包含的隐层单元矩阵进行初始化;θj(t)~Gamma(Φ(t+1)θw(t+1),1cx(t+1))]]>其中,θj(t)表示当前子网络第t层初始化后的隐层单元矩阵第j列的所有元素,t的取值范围是{T‑1,....,2,1},T表示当前子网络的层数,~表示等价关系符号,Gamma表示伽玛分布,Φ(t+1)θw(t+1)表示当前子网络的第t+1层伽玛分布的形状参数,Φ(t+1)表示当前子网络的第t+1层字典矩阵,θw(t+1)表示当前子网络的第t+1层隐层单元矩阵第w列的所有元素,w表示输入数据中的第w个样本,表示第t+1层伽玛分布的尺度参数,x表示输入数据中的第x个样本,j、w与x的大小相等;(8)训练当前子网络:(8a)按照从底层到顶层的顺序,对当前子网络每一层的泊松‑伽玛置信网络参数中所包含的对应参数和全局参数字典矩阵进行更新;(8b)将当前子网络的顶层作为当前训练层,对泊松‑伽玛置信网络参数中所包含的对应参数、全局参数生成向量和隐层单元矩阵进行更新;(8c)将当前子网络的第T‑1层、第T‑2层直到第一层依次作为当前训练层;(8d)对当前训练层的泊松‑伽玛置信网络参数中所包含的对应参数和隐层单元矩阵进行更新;(8e)对当前子网络的泊松‑伽玛置信网络参数中所包含的概率分布对应的参数和超参数进行更新;(9)判断当前子网络的训练次数是否等于训练迭代次数,若是,则执行步骤(10),否则,执行步骤(8);(10)将训练后的当前子网络的字典矩阵和生成向量等全局参数保存在Matlab工作空间中,并作为当前子网络的全局参数;(11)测试当前子网络:(11a)将带有标号的训练集和测试集一起作为当前子网络的输入数据;(11b)将当前子网络的顶层作为当前训练层,对当前训练层的泊松‑伽玛置信网络参数中所包含的对应参数和隐层单元矩阵进行更新;(11c)将当前子网络的第T‑1层、第T‑2层直到第一层依次作为当前训练层;(11d)对当前训练层的泊松‑伽玛置信网络参数中所包含的对应参数和隐层单元矩阵进行更新;(12)判断当前子网络的测试次数是否等于测试迭代次数,若是,执行步骤(13),否则,执行步骤(11);(13)对文本进行分类;(13a)利用带有标号的训练集和更新后的隐层单元矩阵和参数,对支持向量机SVM分类器进行训练;(13b)支持向量机SVM分类器对测试集进行分类,输出预测的文本类别;(13c)比较测试集的预测文本类别和标准文本类别,输出当前子网络的文本分类正确率;(14)判断当前子网络的网络层数是否为5,若是,则执行步骤(15),否则,将下一个子网络作为当前子网络,执行步骤(5);(15)输出文本分类正确率和预测文本类别:(15a)从五个子网络的文本分类正确率中选取最大的文本分类正确率;(15b)输出最大的文本分类正确率及其与该正确率对应的子网络的预测文本类别。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610828754.5/,转载请声明来源钻瓜专利网。