首页> 中国专利> 一种基于概率单词选择和监督主题模型的文本分类方法

一种基于概率单词选择和监督主题模型的文本分类方法

摘要

本发明公开了一种基于概率单词选择和监督主题模型的文本分类方法。包括如下步骤:1)去除训练文本中的标点符号,统计词频信息及类别信息,并形成单词表和类别表;2)初始化主题比例矢量,主题单词矩阵,主题单词鉴别度矩阵和回归系数矩阵;3)根据训练文本的单词列表及其类别迭代更新主题比例矢量、主题单词矩阵、主题单词鉴别度矩阵和回归系数矩阵;4)对于测试文本,统计词频信息,然后利用主题比例矢量、主题单词矩阵、主题单词鉴别度矩阵和回归系数矩阵进行分类。本发明能够最大程度地减轻文本分类时繁杂的预处理过程,可以更加准确地对测试文本进行分类。本发明还能挖掘出主题中单词的鉴别度,以形象化展示文本中单词的重要性。

著录项

  • 公开/公告号CN103473309A

    专利类型发明专利

  • 公开/公告日2013-12-25

    原文格式PDF

  • 申请/专利权人 浙江大学;

    申请/专利号CN201310410657.0

  • 发明设计人 庄越挺;吴飞;高海东;

    申请日2013-09-10

  • 分类号G06F17/30(20060101);

  • 代理机构33200 杭州求是专利事务所有限公司;

  • 代理人张法高

  • 地址 310027 浙江省杭州市西湖区浙大路38号

  • 入库时间 2024-02-19 22:05:54

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-01-25

    授权

    授权

  • 2014-01-22

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20130910

    实质审查的生效

  • 2013-12-25

    公开

    公开

说明书

技术领域

本发明涉及概率单词选择、监督主题模型,尤其涉及一种基于概率单词选 择和监督主题模型的文本分类方法。

背景技术

互联网的出现使得人们获取信息越来越方便。然而,互联网的快速发展所 产生的海量数据同样为人们对数据分析、利用带来了巨大的困难。因此,自动 地组织,管理和挖掘数据变得越来越重要。因为主题模型的潜在结构的可解释 性,如PLSA(Probabilistic Latent Semantic Analysis)、LDA(Latent Dirichlet  Allocation)等,它们广泛地用于挖掘文本的低维表达。主题模型假设文本中所 有的单词都是从一个叫做“主题”的多项分布中产生而来,而文本则是由这些 主题混合而成。

传统的LDA是基于BOW(Bag Of Words)的无监督模型,不能很好地利用 文本常常伴有的监督信息,如伴随新闻文本的类别信息、伴随电影文本的评分 信息等。为了克服LDA在处理伴随有监督信息的文本时的不足,人们提出了 LDA的扩展模型。例如,Blei等人将文本的监督信息看作文本单词的主题结构 上的响应,并且以回归的方式将文本的监督信息和文本单词联系了起来。他们 称之为监督LDA。监督LDA构造了一个分析伴随有监督信息的文本的框架模型, 在分析伴随有评分信息的电影文本上取得了成功。之后,Wang等人将监督LDA 扩展到了文本的分类上来。

和传统的LDA一样,监督LDA同样需要对文本进行大量的繁琐的预处理。 不进行预处理或者不当的预处理,都会使得模型面对的文本数据包含冗余的数 据,从而影响主题模型的性能。另一方面,忽视主题中单词相对于鉴别信息所 体现出来的不一样的重要性(或可做成鉴别度)同样会对主题模型的性能造成 影响。最后,直接基于单词而非主题结构的监督模型则不能利用广泛存在的单 词多义性。

针对这些方法的不足,我们提出了一个基于概率单词选择和监督主题模型 的文本分类方法,并将其运用在了从http://web.ist.utl.pt/~acardoso/datasets/下载 的新闻文本20newsgroups上。该方法首先为主题中的单词构造了各自不同的鉴 别度,这个鉴别度依赖与单词本身和其对应的主题;其次,当每篇文本的单词 产生之后,该方法通过以文本单词鉴别度为参数的伯努利分布来对单词进行筛 选,筛选后的单词将会以两种不同的权重中的一种参与到文本监督信息的生成; 最后,通过在文本中单词新的权重上的回归产生了文本的类别。通过在训练文 本上的学习过程,该方法能很好地学习到单词的鉴别度并用于分类测试文本。

发明内容

本发明的目的是克服现有推荐技术的不足,提供一种基于概率单词选择和 监督主题模型的文本分类方法。

基于概率单词选择和监督主题模型的文本分类方法,包括如下步骤:

1)去除训练文本中的标点符号,统计词频信息及类别信息,并形成单词表 和类别表;

2)初始化主题比例矢量,主题单词矩阵,主题单词鉴别度矩阵和回归系数 矩阵;

3)根据训练文本的单词列表及其类别迭代更新主题比例矢量,主题单词矩 阵,主题单词鉴别度矩阵和回归系数矩阵;

4)对于测试文本,统计词频信息,然后利用主题比例矢量,主题单词矩阵, 主题单词鉴别度矩阵和回归系数矩阵进行分类。

所述的去除训练文本中的标点符号,统计词频信息及类别信息,并形成单 词表和类别表的步骤包括:

2.1)去除训练文本中的标点符号,顺序扫描训练文本中的所有单词,每个 不同的单词保留一个,最终形成一个大小为V的词汇表,顺序扫描每个训练文本 的类别,每个不同的类别保留一个,最终形成一个大小为C的文本类别表;

2.2)统计训练文本的词频信息,加上训练文本所属的类别信息,得到训练 文本TRAIN={((wd,fd,yd)),d=1,…,Dtr},其中Dtr表示训练文本的数目, wd={(wdm),m=1,…,Md,wdm∈{1,…,V}}表示训练文本d的所有不同的单词, Md表示训练文本d中不同的单词的个数;fd={(fdm),m=1,…,Md,fdm∈z+}表 示训练文本d中每个不同的单词出现的频数,z+表示正整数;yd∈{1,…,C}表 示训练文本d所属的类别。

所述的初始化主题比例矢量,主题单词矩阵,主题单词鉴别度矩阵和回归 系数矩阵的步骤包括:

3.1)初始化主题比例矢量α={(αk),k=1,…,K},其中K表示主题的个数;

3.2)初始化主题单词矩阵β={(βkv),k=1,…,K,v=1,…,V};

3.3)初始化主题单词鉴别度矩阵ψ={(ψkv),k=1,…,K,v=1,…,V};

3.4)初始化回归系数矩阵η={(ηcv),c=1,…,C,v=1,…,V}。

所述的根据训练文本的单词列表及其类别迭代更新主题比例矢量,主题单 词矩阵,主题单词鉴别度矩阵和回归系数矩阵的方法是:当算法没有满足终止 条件时,反复迭代执行以下步骤:

4.1)置下述统计量的所有元素的值为0:

(4.1.1)主题中单词的个数矩阵N={(nkv),k=1,…,K,v=1,…,V};

(4.1.2)主题中显著性单词的数量矩阵S={(skv),k=1,…,K,v=1,…,V};

(4.1.3)主题比例累积量A={(ak),k=1,…,K};

(4.1.4)训练文本的统计期望E={(edm),d=1,…,Dtrain,m=1,…,Md};

(4.1.5)训练文本的统计方差Q={(qdm),d=1,…,Dtr,m=1,…,Md};

4.2)对于所有训练文本(wd,fd,yd),d=1,…,Dtr,进行变分推理,并更新 有关统计变量Ntv,Stv,Ed和Qd

4.3)用N,S来学习β和ψ;用A来学习α;用E和Q来学习η。

所述的步骤4.2)具体是:对于所有训练文本的(wd,fd,yd),d=1,…,Dtr, 执行下述步骤:

(5.1)初始化主题比例变分参数γ={(γk),k=1,…,K};

(5.2)初始化主题分配变分参数φ={(φmk),m=1,…,Md,k=1,…,K};

(5.3)初始化单词鉴别值变分参数μ={(μm),m=1,…,Md};

(5.4)初始化已完成迭代次数iter=0;

(5.5)对训练文本d中所有不同的单词及其词频(wdm,fdm),m=1,…,Md, 执行下述步骤:

(a)运用固定点迭代的方法学习μm

logμm1-μm=Σk=1Kφmklogψkwdm1-ψkwdm+ηydwdm(1-0)

-hm1-hm0fdm(hm1μm+hm0(1-μm)),

其中,∈1和∈0分别表示峰鉴别值单词的权重和谷鉴别值单词的权重, hm1=Σc=1Cgmcexp(1ηcwdmfdm),hm0=Σc=1Cgmcexp(0ηcwdmfdm),而gmc由 以下方式计算:

gmc=Πm=1mm,Md{μmexp(1ηcwdmfdm)+(1-μm)exp(0ηcwdmfdm)}

(b)删除旧的φmk对γ的影响:

γkkmkfdm,k=1,…,K

(c)更新φmk

φmkβkwdmexp{Ψ(γk)+μmlogψkwdm+(1-μmlog(1-ψkwdm))},

k=1,···,K

其中,Ψ表示digamma函数;

(d)更新γ:

γkkmkfdm,k=1,…,K

(5.6)由训练文本d对应的γ,φ和μ计算训练文本d的似然概率,如果单文 本似然概率的改变量大于给定变分推理似然变化阈值且已完成迭代次数iter小 于变分推理最大迭代次数,则iter=iter+1,转到步骤(5.5)继续执行;

(5.7)更新N的每个元素:

nkv=nkv+Σm=1Mdφmkfdmδ(wdm,v),k=1,···,K,v=1,···,V

其中,δ(a,b)表示Kronecker delta函数,当a=b时,δ(a,b)=1;而a≠b时, δ(a,b)=0;

(5.8)更新S的每个元素:

skv=skv+Σm=1Mdμmφmkfdmδ(wdm,v),k=1,···,K,v=1,···,V

(5.9)更新A的每个元素:

ak=ak+Ψ(γk)-Ψ(Σk=1Kγk)Md,k=1,···,K

(5.10)更新训练文本d的统计期望edm

edm=fdmml+(1-μm)∈0),m=1,…,Md

(5.11)更新训练文本d的统计方差qdm

qdm=fdm2μm(1-μm)(1-0)2,m=1,···,Md

所述的步骤4.3)具体是:

6.1)由式子βkv=nkv/Σv=1Vnkv,k=1,···,K,v=1,···,V得到β的每个元素;

6.2)由式子ψkv=skv/nkv,k=1,…,K,v=1,…,V得到ψ的每个元素;

6.3)用Newton-Raphson算法最大化下式:

logΓ(Σk=1Kαk)+Σk=1K{ak(αk-1)-logΓ(αk)},

从而求出α,其中,Γ表示digamma函数;

6.4)求取η来最大化目标函数F(η):

Σd=1Dtr{Σm=1Mdedmηydwdm-

log[Σc=1C(1+12Σm=1Mdqdmηcwdm2)exp(Σm=1Mdedmηcwdm)]},

其中,最大化F(η)采用共轭梯度下降或者梯度下降的方法。

所述的根据训练文本的单词列表及其类别迭代更新主题比例矢量,主题单词 矩阵,主题单词鉴别度矩阵和回归系数矩阵所述的定义的终止条件是:所有文 本的似然概率之和的改变量小于给定参数学习似然变化阈值或者已经达到了参 数学习最大迭代次数;

所述的对于测试文本,统计词频信息,然后利用主题比例矢量,主题单词 矩阵,主题单词鉴别度矩阵和回归系数矩阵进行分类的步骤是:

8.1)对于测试文本,去除标点符号,统计词频信息,得到测试文本 TEST={((wt,ft)),t=1,…,Dte},其中Dte表示测试文本的数目,wt= {(wtm),m=1,…,Mt,wtm∈{1,…,V}}表示测试文本t的所有不同的单词,Mt表 示训练文本t中不同的单词的个数;ft={(ftm),m=1,…,Mt,ftm∈Z+)表示训练 文本t中每个不同的单词出现的频数;

8.2)对于每篇测试文本(wt,ft),t=1,…,Dte,进行变分推理,并进行类别 预测;

所述的步骤8.2)具体是:对于所有测试文本的(wt,ft),t=1,…,Dte,执行 下述步骤:

(9.1)初始化主题比例变分参数γ={(γk),k=1,…,K};

(9.2)初始化主题分配变分参数φ={(φmk),m=1,…,Mt,k=1,…,K};

(9.3)初始化单词鉴别值变分参数μ={(μm),m=1,…,Mt};

(9.4)初始化已完成迭代次数iter=0;

(9.5)对训练文本t中所有不同的单词及其词频(Wtm,ftm),m=1,…,Mt, 执行下述步骤:

(e)运用固定点迭代的方法学习单μm

logμm1-μm=Σk=1Kφmklogψkwtm1-ψkwtm,

(f)删除旧的φmk对γ的影响:

γkkmkftm,k=1,…,K

(g)更新φmk

φmkβkwtmexp{Ψ(γk)+μmlogψkwtm+(1-μmlog(1-ψkwtm))}

,k=1,···,K,

其中,Ψ表示digamma函数;

(h)更新γ:

和现有技术相比,本发明能够最大程度地减轻文本分类时繁杂的预处理过 程,可以更加准确地对测试文本进行分类。除此之外,本发明还能挖掘出主题 中单词的鉴别度,以形象化展示文本中单词的重要性。

附图说明

图1是基于概率单词选择和监督主题模型的文本分类方法流程图;

图2是从20newsgroups学习到的4个主题中单词的鉴别度与单词实际分布 的熵比较图。

具体实施方式

基于概率单词选择和监督主题模型的文本分类方法,包括如下步骤:

1)去除训练文本中的标点符号,统计词频信息及类别信息,并形成单词表 和类别表;

2)初始化主题比例矢量,主题单词矩阵,主题单词鉴别度矩阵和回归系数 矩阵;

3)根据训练文本的单词列表及其类别迭代更新主题比例矢量,主题单词矩 阵,主题单词鉴别度矩阵和回归系数矩阵;

4)对于测试文本,统计词频信息,然后利用主题比例矢量,主题单词矩阵, 主题单词鉴别度矩阵和回归系数矩阵进行分类。

所述的去除训练文本中的标点符号,统计词频信息及类别信息,并形成单 词表和类别表的步骤包括:

2.1)去除训练文本中的标点符号,顺序扫描训练文本中的所有单词,每个 不同的单词保留一个,最终形成一个大小为V的词汇表,顺序扫描每个训练文本 的类别,每个不同的类别保留一个,最终形成一个大小为C的文本类别表;

2.2)统计训练文本的词频信息,加上训练文本所属的类别信息,得到训练 文本TRAIN={((wd,fd,yd)),d=1,…,Dtr},其中Dtr表示训练文本的数目, wd={(wdm),m=1,…,Md,wdm∈{1,…,V}}表示训练文本d的所有不同的单词, Md表示训练文本d中不同的单词的个数;fd={(fdm),m=1,…,Md,fdm∈Z+}表 示训练文本d中每个不同的单词出现的频数,Z+表示正整数;yd∈{1,…,C}表 示训练文本d所属的类别。

所述的初始化主题比例矢量,主题单词矩阵,主题单词鉴别度矩阵和回归 系数矩阵的步骤包括:

3.1)初始化主题比例矢量α={(αk),k=1,…,K},其中K表示主题的个数;

3.2)初始化主题单词矩阵β={(βkv),k=1,…,K,v=1,…,V};

3.3)初始化主题单词鉴别度矩阵ψ={(ψkv),k=1,…,K,v=1,…,V};

3.4)初始化回归系数矩阵η={(ηcv),c=1,…,C,v=1,…,V}。

所述的根据训练文本的单词列表及其类别迭代更新主题比例矢量,主题单 词矩阵,主题单词鉴别度矩阵和回归系数矩阵的方法是:当算法没有满足终止 条件时,反复迭代执行以下步骤:

4.1)置下述统计量的所有元素的值为0:

(4.1.1)主题中单词的个数矩阵N={(nkv),k=1,…,K,v=1,…,V};

(4.1.2)主题中显著性单词的数量矩阵S={(skv),k=1,…,K,v=1,…,V};

(4.1.3)主题比例累积量A={(ak),k=1,…,K};

(4.1.4)训练文本的统计期望E={(edm),d=1,…,Dtrain,m=1,…,Md};

(4.1.5)训练文本的统计方差Q={(qdm),d=1,…,Dtr,m=1,…,Md};

4.2)对于所有训练文本(wd,fd,yd),d=1,…,Dtr,进行变分推理,并更新 有关统计变量Ntv,Stv,Ed和Qd

4.3)用N,S来学习β和ψ;用A来学习α;用E和Q来学习η。

所述的步骤4.2)具体是:对于所有训练文本的(wd,fd,yd),d=1,…,Dtr, 执行下述步骤:

(5.1)初始化主题比例变分参数γ={(γk),k=1,…,K};

(5.2)初始化主题分配变分参数φ={(φmk),m=1,…,Md,k=1,…,K};

(5.3)初始化单词鉴别值变分参数μ={(μm),m=1,…,Md};

(5.4)初始化已完成迭代次数iter=0;

(5.5)对训练文本d中所有不同的单词及其词频(wdm,fdm),m=1,…,Md, 执行下述步骤:

(a)运用固定点迭代的方法学习μm

logμm1-μm=Σk=1Kφmklogψkwdm1-ψkwdm+ηydwdm(1-0)-hm1-hm0fdm(hm1μm+hm0(1-μm)),

其中,∈1和∈0分别表示峰鉴别值单词的权重和谷鉴别值单词的权重, hm1=Σc=1Cgmcexp(1ηcwdmfdm),hm0=Σc=1Cgmcexp(0ηcwdmfdm),而gmc由 以下方式计算:

gmc=Πm=1,mmMd{μmexp(1ηcwdmfdm)+(1-μm)exp(0ηcwdmfdm)}

(b)删除旧的φmk对γ的影响:

γk=γkmkfdm,k=1,…,K

(c)更新φmk

φmkβkwdmexp{Ψ(γk)+μmlogψkwdm+(1-μmlog(1-ψkwdm))},k=1,...,K

其中,Ψ表示digamma函数;

(d)更新γ:

γk=γkmkfdm,k=1,…,K

(5.6)由训练文本d对应的γ,φ和μ计算训练文本d的似然概率,如果单文 本似然概率的改变量大于给定变分推理似然变化阈值且已完成迭代次数iter小 于变分推理最大迭代次数,则iter=iter+1,转到步骤(5.5)继续执行;

(5.7)更新N的每个元素:

nkv=nkv+Σm=1Mdφmkfdmδ(wdm,v),k=1,...,K,v=1,...,V

其中,δ(a,b)表示Kronecker delta函数,当a=b时,δ(a,b)=1;而a≠b时, δ(a,b)=0;

(5.8)更新S的每个元素:

skv=skv+Σm=1Mdμmφmkfdmδ(wdm,v),k=1,...,K,v=1,...,V

(5.9)更新A的每个元素:

ak=ak+Ψ(γk)-Ψ(Σk=1Kγk)Md,k=1,...,K

(5.10)更新训练文本d的统计期望edm

edm=fdmml+(1-μm)∈0),m=1,…,Md

(5.11)更新训练文本d的统计方差qdm

qdm=fdm2μm(1-μm)(1-0)2,m=1,...,Md

所述的步骤4.3)具体是:

6.1)由式子βkv=nkv/Σv=1Vnkv,k=1,...,K,v=1,...,V得到β的每个元素;

6.2)由式子ψkv=skv/nkv,k=1,...,K,v=1,...,V得到ψ的每个元素;

6.3)用Newton-Raphson算法最大化下式:

logΓ(Σk=1Kαk)+Σk=1K{ak(αk-1)-logΓ(αk)},

从而求出α,其中,Γ表示digamma函数;

6.4)求取η来最大化目标函数F(η):

Σd=1Dtr{Σm=1Mdedmηydwdm-log[Σc=1C(1+12Σm=1Mdqdmηcwdm2)exp(Σm=1Mdedmηcwdm)]},

其中,最大化F(η)采用共轭梯度下降或者梯度下降的方法。

所述的根据训练文本的单词列表及其类别迭代更新主题比例矢量,主题单词 矩阵,主题单词鉴别度矩阵和回归系数矩阵所述的定义的终止条件是:所有文 本的似然概率之和的改变量小于给定参数学习似然变化阈值或者已经达到了参 数学习最大迭代次数;

所述的对于测试文本,统计词频信息,然后利用主题比例矢量,主题单词 矩阵,主题单词鉴别度矩阵和回归系数矩阵进行分类的步骤是:

8.1)对于测试文本,去除标点符号,统计词频信息,得到测试文本 TEST={((wt,ft)),t=1,…,Dte},其中Dte表示测试文本的数目,wt= {(wtm),m=1,…,Mt,wtm∈{1,…,V}}表示测试文本t的所有不同的单词,Mt表 示训练文本t中不同的单词的个数;ft={(ftm),m=1,…,Mt,ftm∈Z+}表示训练 文本t中每个不同的单词出现的频数;

8.2)对于每篇测试文本(wt,ft),t=1,…,Dte,进行变分推理,并进行类别 预测;

所述的步骤8.2)具体是:对于所有测试文本的(wt,ft),t=1,…,Dte,执行 下述步骤:

(9.1)初始化主题比例变分参数γ={(γk),k=1,…,K};

(9.2)初始化主题分配变分参数φ={(φmk),m=1,…,Mt,k=1,…,K};

(9.3)初始化单词鉴别值变分参数μ={(μm),m=1,…,Mt};

(9.4)初始化已完成迭代次数iter=0;

(9.5)对训练文本t中所有不同的单词及其词频(wtm,ftm),m=1,…,Mt, 执行下述步骤:

(e)运用固定点迭代的方法学习单μm

logμm1-μm=Σk=1Kφmklogψkwtm1-ψkwtm,

(f)删除旧的φmk对γ的影响:

γkkmkftm,k=1,…,K

(g)更新φmk

φmkβkwtmexp{Ψ(γk)+μmlogψkwtm+(1-μmlog(1-ψkwtm))}

,k=1,...,K,

其中,Ψ表示digamma函数;

(h)更新γ:

实施例

http://web.ist.utl.pt/~acardoso/datasets/下载的训练文本20ng-train-all-terms 和测试文本20ng-test-all-terms,去掉出现不超过3个单词的文本,得到 Dtr=11285篇训练文本和Dtr=8571篇测试文本。实验中,主题个数K设置为 20,其他实验参数选取如表1:

表1

对于训练文本,执行下列步骤:

1)去除标点符号,统计词频信息及类别信息,并形成大小为73712的单词 表和大小为20的类别表;

2)初始化主题比例矢量α,主题单词矩阵β,主题单词鉴别度矩阵ψ和回归 系数矩阵η:

(2.1)对于α,ψ和η,αk=0.1,ψkv=0.5,ηcv=0,k=1,…,K,c= 1,…,C,v=1,…,V;

(2.2)对于β,先令k=1,…,K,v=1,…,V,其中 rand函数随机产生0~1之间的数;然后对β进行归一化处理:

βkv=βkvoldΣv=1Vβkvold,k=1,···,K,v=1,···,V,

其中表示归一化前的元素值;

3)根据训练文本的单词列表及其类别迭代更新α,β,ψ和η:当算法没有 满足终止条件时,反复迭代执行以下步骤:

(3.1)置下述统计量的所有元素的值为0:

(a)主题中单词的个数矩阵N={(nkv),k=1,…,K,v=1,…,V};

(b)主题中显著性单词的数量矩阵S={(skv),k=1,…,K,v=1,…,V};

(c)主题比例累积量A={(ak),k=1,…,K};

(d)训练文本的统计期望E={(edm),d=1,…,Dtrain,m=1,…,Md};

(e)训练文本的统计方差Q={(qdm),d=1,…,Dtr,m=1,…,Md};

(3.2)对于每篇训练文本(wd,fd,yd),d=1,…,Dtr,进行变分推理,并更 新有关统计变量Ntv,Stv,Ed和Qd,具体是执行下述步骤:

(a)初始化主题分配变分参数φ:

φmk=1T,m=1,···,Md,k=1,···,K;

(b)初始化单词鉴别值变分参数μ:

μm=0.5,m=1,…,Md

(c)初始化主题比例变分参数γ:

γk=αk+1T×Σm=1Mdfdm,k=1,···,K;

(d)初始化已完成迭代次数iter=0;

(e)对训练文本d中所有不同的单词及其词频(wdm,fdm),m=1,…,Md, 执行下述步骤:

(e1)运用固定点迭代的方法学习单词wdm对应的鉴别值变分参数μm

logμm1-μm=Σk=1Kφmklogψkwdm1-ψkwdm+ηydwdm(1-0)

-hm1-hm0fdm(hm1μm+hm0(1-μm)),

其中,hm1=Σc=1Cgmcexp(1ηcwdmfdm),hm0=Σc=1Cgmcexp(0ηcwdmfdm),而 gmc由以下方式计算:

gmc=Πm=1,mmMd{μmexp(1ηcwdmfdm)+(1-μm)exp(0ηcwdmfdm)}

(e2)删除旧的φmk对γ的影响:

γkkmkfdm,k=1,…,K

(e3)更新φmk,k=1,…,K:

φmkβkwdmexp{Ψ(γk)+μmlogψdwdm+(1-μmlog(1-ψkwdm))},

其中,Ψ表示digamma函数;

(e4)更新γ:

γkkmkfdm,k=1,…,K

(f)由训练文本d对应的γ,φ和μ计算训练文本d的似然概率,如果单文本 似然概率的改变量大于给定变分推理似然变化阈值且已完成迭代次数iter小于 变分推理最大迭代次数,则iter=iter+1,转到步骤(e)继续执行;

(g)更新N的每个元素:

nkv=nkv+Σm=1Mdφmkfdmδ(wdm,v),k=1,...,K,v=1,...,V,

其中,δ(a,b)表示Kronecker delta函数,当a=b时,δ(a,b)=1;而a≠b时, δ(a,b)=0;

(h)更新S的每个元素:

skv=skv+Σm=1Mdμmφmkfdmδ(wdm,v),k=1,...,K,v=1,...,V,

(i)更新A的每个元素:

ak=ak+Ψ(γk)-Ψ(Σk=1Kγk)Md,k=1,...,K,

(j)更新训练文本d的统计期望edm

edm=fdmm1+(1-μm)∈0),m=1,…,Md

(k)更新训练文本d的统计方差qdm

qdm=fdm2μm(1-μm)(1-0)2,m=1,...,Md

(3.3)用N,S来学习β和ψ;用A来学习α;用E和Q来学习η:

(a)由式βkv=nkv/Σv=1Vnkv,k=1,...,K,v=1,...,V得到β的每个元素;

(b)由式ψkv=skv/nkv,k=1,…,K,v=1,…,V得到ψ的每个元素;

(c)用Newton-Raphson算法最大化下式:

logΓ(Σk=1Kαk)+Σk=1K{ak(αk-1)-logΓ(αk)},

从而求出α,其中,Γ表示digamma函数;

(d)求取η来最大化目标函数F(η):

Σd=1Dtr{Σm=1Mdedmηydwdm-log[Σc=1C(1+12Σm=1Mdqdmηcwdm2)exp(Σm=1Mdedmηcwdm)]},

其中,最大化F(η)采用共轭梯度下降或者梯度下降的方法。

通过对训练文本的学习,我们得到了主题比例矢量α,主题单词矩阵β,主 题单词鉴别度矩阵ψ和回归系数矩阵η;然后,我们将对测试文本进行变分推理 并进而预测测试文本的类别,达到对测试文本进行分类的目的。

对于测试文本,执行下述步骤:

1)去除标点符号,统计词频信息;

2)对于每篇测试文本(wt,ft),t=1,…,Dte,进行变分推理和类别预测:

(a)初始化主题比例变分参数γ={(γk),k=1,…,K};

(b)初始化主题分配变分参数φ={(φmk),m=1,…,Mt,k=1,…,K};

(c)初始化单词鉴别值变分参数μ={(μm),m=1,…,Mt};

(d)初始化已完成迭代次数iter=0;

(e)对训练文本t中所有不同的单词及其词频(wtm,ftm),m=1,…,Mt,执 行下述步骤:

(e1)运用固定点迭代的方法学习μm

logμm1-μm=Σk=1Kφmklogψkwtm1-ψkwtm,

(e2)删除旧的φmk对γ的影响:

γkkmkftm,k=1,…,K

(e3)更新φmk

φmkβkwtmexp{Ψ(γk)+μmlogψkwtm+(1-μmlog(1-ψkwtm))},k=1,...,K,

其中,Ψ表示digamma函数;

(e4)更新γ:

γkkmkftm,k=1,…,K

(f)由测试文本t对应的γ,φ和μ计算测试文本t的似然概率,如果单文本 似然概率的改变量大于给定变分推理似然变化阈值且已完成迭代次数iter小于 变分推理最大迭代次数,则iter=iter+1,转到步骤(e)继续执行;

(g)得到测试文本t的统计期望etm

etm=ftmm1+(1-μm)∈0),m=1,…,Mt

(h)由式yt=argmaxcΣm=1Mdetmηcwtm预测测试文本t的类别yt

在得到测试文本的预测类别之后,我们将预测结果与测试文本的真实类别 用Accuracy,MacroAUC,MicroAUC,MacroF1,MicroF1等5个评价标准进行 比对,结果如表2所示。结果表明了本发明良好的预测能力,在总共20个类的 数据上,达到了80%的预测精确度。

表2

Accuracy MacroAUC MicroAUC MacroF1 MicroF1 0.8026 0.8882 0.8979 0.8819 0.8905

另外,我们也学习到了主题中单词的鉴别度。表3展示了学习到的4个主 题中的前10个高鉴别度的单词。这里,高鉴别度是指鉴别度高于0.9。不难发 现,虽然我们对文本数据只做过极其简单地预处理,本发明依然能很好的发现 体现主题的高鉴别度的单词。例如,就“atheism”(无神论)而言,本发明挖掘 除了能强烈关联这一意味的“jesus”(耶稣)“church”(教堂)“Christianity”(基 督教),“hell”(地狱)等等。

表3

主题 前10个高鉴别度的单词 atheism jesus,church,christianity,hell,atheism,atheists,gay,athos,jews,

最后,我们将学习到的主题中单词的鉴别度(Discrimination)和单词在文本 中的熵进行比对,如图2所示。这里,单词w在文本中的熵entropy(w)由式子 计算得出,其中#(w,c)表示单词w在所属类 别为c的训练文本中总共出现的次数,表示单词w在训练文本 中总共出现的次数。图2中每个子图各自表示一个主题,每个子图中,横坐标 对应主题的前20个流行的单词(按单词在主题中的权重由大到小排序),其中 红色带方框的离散点的横纵坐标分别表示单词以及单词在主题中的鉴别度,蓝 色带星号的离散点的横纵坐标分别表示单词以及单词在文本中的熵。图2恰如 其分地反映出了这样一个事实:单词在文本中的熵较低时,单词在主题中的鉴 别度较高;反之亦然。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号