发明名称 一种基于随机特征子空间的半监督文本情感分类方法
摘要 本发明公开了一种基于随机特征子空间的半监督文本情感分类方法,包括:1获取评论文本数据并进行预处理,构建全局特征集合;2将所有评论文本表示成向量形式;3标注部分评论文本,获得有标记样本集和未标记样本集;4计算全局特征集合中所有特征词的特征权重;5构建随机子空间;6利用未标记样本进行协同训练,最终得到Z个分类器;7利用主投票的方式对Z个分类器进行集成,得到最终的集成分类器。本发明解决传统协同训练算法训练过程中存在大量误分的样本,以及半监督文本情感分类方法中各基分类器差异性小的问题,从而提高文本情感分类方法的准确性。
申请公布号 CN105205124B 申请公布日期 2016.11.30
申请号 CN201510578418.5 申请日期 2015.09.11
申请人 合肥工业大学 发明人 王刚;孙二冬;李宁宁;程;何耀耀;;蒋军;夏婷婷
分类号 G06F17/30(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 安徽省合肥新安专利代理有限责任公司 34101 代理人 陆丽莉;何梅生
主权项 一种基于随机特征子空间的半监督文本情感分类方法,其特征是按如下步骤进行:步骤1、构建全局特征集合T:步骤1.1、获取n条评论文本构成评论文本集合D,记为D={d<sub>1</sub>,d<sub>2</sub>,…d<sub>i</sub>…,d<sub>n</sub>},d<sub>i</sub>表示所述评论文本集合D中的第i个评论文本;1≤i≤n;n表示所述评论文本集合D中的评论文本总数;步骤1.2、去除所述评论文本集合D中所有停用词,并用N‑gram的方法来表示第i个评论文本d<sub>i</sub>的特征,从而获得第i个评论文本d<sub>i</sub>的特征集合<img file="FDA0001005574560000011.GIF" wi="547" he="63" /><img file="FDA0001005574560000012.GIF" wi="54" he="55" />表示第i个特征集合T<sub>i</sub>中第s<sub>i</sub>个特征词,r<sub>i</sub>表示所述第i个特征集合T<sub>i</sub>中的特征总数,1≤s<sub>i</sub>≤r<sub>i</sub>;步骤1.3、将n个评论文本的特征集合取并集,从而构成所述评论文本集合D的全局特征集合T={t<sub>1</sub>,t<sub>2</sub>,…,t<sub>c</sub>,…,t<sub>m</sub>},t<sub>c</sub>表示所述全局特征集合T中第c个特征词,m表示所述全局特征集合T的特征词总数,1≤c≤m;步骤2、将所述评论文本集合D表示成向量形式:步骤2.1、将所述评论文本集合D中的所有评论文本映射到所述全局特征集合T上,并利用TF‑IDF计算第i个评论文本d<sub>i</sub>中第c个特征词t<sub>c</sub>的权值w<sub>c,i</sub>;步骤2.2、重复步骤2.1,从而获得第i个评论文本d<sub>i</sub>中m个特征词在所述全局特征集合T上的权值W<sub>i</sub>={w<sub>1,i</sub>,w<sub>2,i</sub>,…,w<sub>c,i</sub>,…,w<sub>m,i</sub>},从而获得n条评论文本的权值{W<sub>1</sub>,W<sub>2</sub>,…,W<sub>i</sub>,…,W<sub>n</sub>};步骤2.3、将第i个评论文本d<sub>i</sub>表示成向量形式:x<sub>i</sub>={(t<sub>1</sub>,w<sub>1,i</sub>),(t<sub>2</sub>,w<sub>2,i</sub>),...,(t<sub>c</sub>,w<sub>c,i</sub>),…,(t<sub>m</sub>,w<sub>m,i</sub>)};从而获得n条评论文本的向量形式:{x<sub>1</sub>,x<sub>2</sub>,…,x<sub>i</sub>,…,x<sub>n</sub>};步骤3、对所述评论文本集D中l个评论文本进行情感极性标注,获得标记样本集,记为L={(x<sub>1</sub>,y<sub>1</sub>),(x<sub>2</sub>,y<sub>2</sub>),…,(x<sub>q</sub>,y<sub>q</sub>),…,(x<sub>l</sub>,y<sub>l</sub>)},x<sub>q</sub>表示所述标记样本集L中第q个评论文本的向量形式;y<sub>q</sub>表示所述标记样本集L中第q个评论文本的向量形式x<sub>q</sub>的情感标记,并有y<sub>q</sub>∈Y={Ω<sub>1</sub>,Ω<sub>2</sub>,…,Ω<sub>λ</sub>,…,Ω<sub>τ</sub>},Y表示标记样本集L的情感标记总集,Ω<sub>λ</sub>表示第λ个情感标记;τ表示所述情感标记的总数,τ≥2;l表示所述标记样本集L的评论文本总数,1≤q≤l≤n,1≤λ≤τ;则所述评论文本集D中剩余的n‑l个文本作为未标记样本集,记为U={x<sub>l+1</sub>,x<sub>l+2</sub>,…,x<sub>l+b</sub>,…,x<sub>l+u</sub>},x<sub>l+b</sub>表示所述未标记样本集U中的第b个评论文本的向量形式,u表示所述未标记样本集U中的评论文本总数,1≤b≤u;步骤4、计算全局特征集合T中的所有特征词的特征权重:步骤4.1、根据所述标记样本集L,使用Lasso方法计算所述全局特征集合T中第c个特征词t<sub>c</sub>与所述情感标记总集Y中每个情感标记的关联性强度,获得第c个特征词t<sub>c</sub>的重要性得分γ<sub>c</sub>;从而获得m个特征词的重要性得分集合γ={γ<sub>1</sub>,γ<sub>2</sub>,…,γ<sub>c</sub>,…,γ<sub>m</sub>};步骤4.2、利用式(1)对所述第c个特征词t<sub>c</sub>的重要性得分γ<sub>c</sub>进行归一化处理,获得第c个特征词t<sub>c</sub>的特征权重δ<sub>c</sub>,从而获得m个特征词的特征权重集合δ={δ<sub>1</sub>,δ<sub>2</sub>,…,δ<sub>c</sub>,…,δ<sub>m</sub>},γ<sub>θ</sub>表示第θ个特征词t<sub>θ</sub>的重要性得分,1≤θ≤m:<maths num="0001"><math><![CDATA[<mrow><msub><mi>&delta;</mi><mi>c</mi></msub><mo>=</mo><mfrac><mrow><mo>|</mo><msub><mi>&gamma;</mi><mi>c</mi></msub><mo>|</mo></mrow><mrow><munderover><mo>&Sigma;</mo><mrow><mi>&theta;</mi><mo>=</mo><mn>1</mn></mrow><mi>m</mi></munderover><mo>|</mo><msub><mi>&gamma;</mi><mi>&theta;</mi></msub><mo>|</mo></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001005574560000021.GIF" wi="1098" he="207" /></maths>步骤5、构建r维的随机子空间:步骤5.1、定义抽出次数为z,定义随机子空间总数为Z;并初始化z=1;步骤5.2、以第c个特征权重δ<sub>c</sub>作为所述第c个特征词t<sub>c</sub>的抽取概率,从所述全局特征集合T中随机抽取r个特征词,构成第z次抽取的投影矩阵<img file="FDA0001005574560000022.GIF" wi="593" he="80" /><img file="FDA0001005574560000023.GIF" wi="61" he="71" />表示第z次抽取的第g个特征词;1≤g≤r≤m;步骤5.3、分别将所述标记样本集L和未标记样本集U分别投影到所述第z次抽取的投影矩阵V<sub>z</sub>上,从而分别构成第z个标记样本的随机子空间<img file="FDA0001005574560000024.GIF" wi="1054" he="87" />和第z个未标记样本的随机子空间<img file="FDA0001005574560000025.GIF" wi="670" he="79" /><img file="FDA0001005574560000026.GIF" wi="70" he="78" />表示所述第z个标记样本的随机子空间<img file="FDA0001005574560000027.GIF" wi="74" he="71" />中第q个评论文本的向量形式;并有<img file="FDA0001005574560000028.GIF" wi="875" he="93" /><img file="FDA0001005574560000029.GIF" wi="75" he="64" />表示所述第z个未标记样本的随机子空间<img file="FDA00010055745600000210.GIF" wi="86" he="69" />中第b个评论文本的向量形式,并有:<img file="FDA00010055745600000211.GIF" wi="957" he="87" />步骤5.4、将z+1赋值给z,并重复步骤5.2和步骤5.3,直到z=Z为止;从而获得Z个标记样本集L的随机子空间集合<img file="FDA00010055745600000212.GIF" wi="525" he="79" />和Z个未标记样本集U的随机子空间集合<img file="FDA0001005574560000031.GIF" wi="595" he="83" />步骤6、利用所述未标记样本集U进行学习,得到最终的分类器集合<img file="FDA0001005574560000032.GIF" wi="758" he="88" />步骤6.1、定义迭代次数为j,最大迭代次数为J;并初始化j=1;步骤6.2、以SVM作为基分类器,以第j次迭代的Z个标记样本集L的随机子空间集合<img file="FDA0001005574560000033.GIF" wi="621" he="81" />作为第j次训练样本,并在所述第j次训练样本上进行训练,获得第j次迭代的Z个分类器集合<img file="FDA0001005574560000034.GIF" wi="571" he="86" /><img file="FDA0001005574560000035.GIF" wi="79" he="72" />表示第j次迭代的第z个分类器;步骤6.3、定义被帮助分类器为f<sub>a</sub>,并初始化a=1;步骤6.4、选取第j次迭代的第a个分类器作为被帮助分类器,则除第j次迭代的第a个分类器<img file="FDA0001005574560000036.GIF" wi="82" he="70" />以外的(Z‑1)个分类器,作为帮助分类器;步骤6.5、利用所述(Z‑1)个帮助分类器对第j次迭代的(Z‑1)个未标记样本集U的随机子空间集合<img file="FDA0001005574560000037.GIF" wi="654" he="85" />中每个元素的第b个样本组成的集合<img file="FDA0001005574560000038.GIF" wi="678" he="95" />进行预测;从而获得第j次迭代的第b个样本的情感标记集合,记为<img file="FDA0001005574560000039.GIF" wi="891" he="94" /><img file="FDA00010055745600000310.GIF" wi="118" he="80" />表示第j次迭代的第z个未标记样本的随机子空间中的第b个样本的向量形式<img file="FDA00010055745600000311.GIF" wi="118" he="79" />的情感标记;并有<img file="FDA00010055745600000312.GIF" wi="747" he="79" />步骤6.6、利用式(2)获得所述情感标记集合y<sub>(l+b),j</sub>中为第λ个情感标记Ω<sub>λ</sub>的置信度<img file="FDA00010055745600000313.GIF" wi="150" he="79" />从而获得所述第b个样本的情感标记集合y<sub>(l+b),j</sub>中分别为τ个情感标记的置信度集合<img file="FDA00010055745600000314.GIF" wi="910" he="97" /><img file="FDA00010055745600000315.GIF" wi="1317" he="134" />式(2)中,<img file="FDA00010055745600000316.GIF" wi="118" he="79" />表示第λ个情感标记Ω<sub>λ</sub>在情感标记集合y<sub>(l+b),j</sub>中出现的次数;步骤6.7、重复步骤6.5和步骤6.6,从而分别获得第j次迭代的u个样本的情感标记集合,记为{y<sub>(l+1),j</sub>,y<sub>(l+2),j</sub>,…,y<sub>(l+b),j</sub>,…y<sub>(l+u),j</sub>}以及第j次迭代的u个样本的情感标记的置信度集合,记为<img file="FDA0001005574560000041.GIF" wi="718" he="95" />步骤6.8、从所述第j次迭代的置信度集合<img file="FDA0001005574560000042.GIF" wi="697" he="95" />中选取前ψ<sub>λ</sub>个置信度最高的第λ个情感标记Ω<sub>λ</sub>所对应的样本;并判断所选取的ψ<sub>λ</sub>个样本的置信度是否均大于置信度阈值σ,若均大于,则将所选取的ψ<sub>λ</sub>个样本加入第j次迭代的第a个候选样本集合<img file="FDA0001005574560000043.GIF" wi="83" he="70" />中;否则,从所选取的ψ<sub>λ</sub>个样本中删除置信度小于所述置信度阈值σ的样本,获得剩余的ψ′<sub>λ</sub>个样本,并将ψ′<sub>λ</sub>赋值给ψ<sub>λ</sub>,从而将ψ<sub>λ</sub>个样本加入第j次迭代的第a个候选样本集合<img file="FDA0001005574560000044.GIF" wi="83" he="75" />中;步骤6.9、重复步骤6.8,从而使得τ个情感标记所对应的<img file="FDA0001005574560000045.GIF" wi="122" he="120" />个样本均加入所述第j次迭代的第a个选样本集合<img file="FDA0001005574560000046.GIF" wi="89" he="71" />中;步骤6.10、将所述第j次迭代的第a个候选样本集合<img file="FDA0001005574560000047.GIF" wi="85" he="77" />中所有样本以及与其相对应的τ个情感标记,均加入到所述第j次迭代的第a个标记样本的随机子空间<img file="FDA0001005574560000048.GIF" wi="99" he="75" />中,从而获得更新的第a个标记样本的随机子空间<img file="FDA0001005574560000049.GIF" wi="155" he="71" />步骤6.11、将a+1赋值给a,并返回步骤6.4顺序执行,直到a=Z;从而获得第j次迭代的Z个候选样本集合<img file="FDA00010055745600000410.GIF" wi="395" he="85" />以及第j次迭代的更新的Z个标记样本集L的随机子空间集合<img file="FDA00010055745600000411.GIF" wi="763" he="79" />步骤6.12、将第j次迭代的Z个候选样本集合<img file="FDA00010055745600000412.GIF" wi="395" he="79" />取并集,获得优化的第j次迭代的候选样本集合Φ<sub>j</sub>,并将所述优化的第j次迭代的候选样本集合Φ<sub>j</sub>从所述第j次迭代的Z个未标记样本集U的随机子空间集合<img file="FDA00010055745600000413.GIF" wi="656" he="79" />中删除,获得更新的第j+1次迭代的Z个未标记样本集U的随机子空间集合<img file="FDA00010055745600000414.GIF" wi="798" he="87" />并重新计算未标记样本集U的未标记样本数为u′,并将u′赋值给u;步骤6.12、判断<img file="FDA00010055745600000415.GIF" wi="769" he="85" />均为空集或Z次所添加的样本数量<img file="FDA0001005574560000051.GIF" wi="117" he="127" />均为零是否满足,若满足,则结束第j+1次迭代,并将第j次迭代的Z个分类器作为最终的分类器集合<img file="FDA0001005574560000052.GIF" wi="762" he="79" />若没有满足,则将j+1赋值给j;并返回步骤6.2,直至j=J,并将第J次迭代的Z个分类器作为最终的分类器集合<img file="FDA0001005574560000053.GIF" wi="758" he="79" />步骤7、利用式(3),以主投票的方式将Z个分类器进行集成,从而获得最终的集成分类器F(x<sub>ε</sub>);<maths num="0002"><math><![CDATA[<mrow><mi>F</mi><mrow><mo>(</mo><msub><mi>x</mi><mi>&epsiv;</mi></msub><mo>)</mo></mrow><mo>=</mo><mi>arg</mi><mi> </mi><msub><mi>max</mi><mrow><msub><mi>&Omega;</mi><mi>&lambda;</mi></msub><mo>&Element;</mo><mi>Y</mi></mrow></msub><munderover><mo>&Sigma;</mo><mrow><mi>z</mi><mo>=</mo><mn>1</mn></mrow><mi>Z</mi></munderover><msub><mi>&beta;</mi><mi>&lambda;</mi></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001005574560000054.GIF" wi="1201" he="127" /></maths>式(3)中,x<sub>ε</sub>表示任意需要标记样本的向量表示,β<sub>λ</sub>表示分类器f<sub>z</sub><sup>(final)</sup>是否将任意需要标记样本的向量表示x<sub>ε</sub>的情感标记预测为Ω<sub>λ</sub>,其值可根据式(4)计算得到;<maths num="0003"><math><![CDATA[<mrow><msub><mi>&beta;</mi><mi>&lambda;</mi></msub><mo>=</mo><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><mn>1</mn><mo>,</mo><msubsup><mi>f</mi><mi>z</mi><mrow><mo>(</mo><mi>f</mi><mi>i</mi><mi>n</mi><mi>a</mi><mi>l</mi><mo>)</mo></mrow></msubsup><mrow><mo>(</mo><msub><mi>x</mi><mi>&epsiv;</mi></msub><mo>)</mo></mrow><mo>=</mo><msub><mi>&Omega;</mi><mi>&lambda;</mi></msub></mrow></mtd></mtr><mtr><mtd><mrow><mn>0</mn><mo>,</mo><msubsup><mi>f</mi><mi>z</mi><mrow><mo>(</mo><mi>f</mi><mi>i</mi><mi>n</mi><mi>a</mi><mi>l</mi><mo>)</mo></mrow></msubsup><mrow><mo>(</mo><msub><mi>x</mi><mi>&epsiv;</mi></msub><mo>)</mo></mrow><mo>&NotEqual;</mo><msub><mi>&Omega;</mi><mi>&lambda;</mi></msub></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001005574560000055.GIF" wi="1220" he="158" /></maths>式(4)中,<img file="FDA0001005574560000056.GIF" wi="218" he="69" />表示分类器<img file="FDA0001005574560000057.GIF" wi="130" he="69" />对任意需要标记样本的向量表示x<sub>ε</sub>进行预测的結果。
地址 230009 安徽省合肥市包河区屯溪路193号
您可能感兴趣的专利