主权项 |
一种提取文本模型特征进行分类算法,包括如下步骤:第一,对文本模型的训练数据采用信息增益算法(IG,Information Gain)获得特征的权值其算法为:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mi>IG</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mo>-</mo><munderover><mi>Σ</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>m</mi></munderover><mi>P</mi><mrow><mo>(</mo><msub><mi>C</mi><mi>i</mi></msub><mo>)</mo></mrow><mi>log</mi><mi>P</mi><mrow><mo>(</mo><msub><mi>C</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>+</mo><mi>P</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><munderover><mi>Σ</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>m</mi></munderover><mi>P</mi><mrow><mo>(</mo><msub><mi>C</mi><mi>i</mi></msub><mo>|</mo><mi>t</mi><mo>)</mo></mrow><mi>log</mi><mi>P</mi><mrow><mo>(</mo><msub><mi>C</mi><mi>i</mi></msub><mo>|</mo><mi>t</mi><mo>)</mo></mrow><mo>+</mo><mi>P</mi><mrow><mo>(</mo><mover><mi>t</mi><mo>‾</mo></mover><mo>)</mo></mrow><munderover><mi>Σ</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>m</mi></munderover><mi>P</mi><mrow><mo>(</mo><msub><mi>C</mi><mi>i</mi></msub><mo>|</mo><mover><mi>t</mi><mo>‾</mo></mover><mo>)</mo></mrow><mi>log</mi><mi>P</mi><mrow><mo>(</mo><msub><mi>C</mi><mi>i</mi></msub><mo>|</mo><mover><mi>t</mi><mo>‾</mo></mover><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000629959110000011.GIF" wi="1728" he="134" /></maths>公式(1)公式(1)中,P(C<sub>i</sub>)为类别C<sub>i</sub>包含文本数与文本总数的比值,P(t)为包含特征t的文本数与文本总数的比值,P(C<sub>i</sub>|t)为出现特征t时文本属于C<sub>i</sub>的概率,<img file="FDA0000629959110000013.GIF" wi="110" he="71" />为不含特征t的文本数与文本总数的比值,<img file="FDA0000629959110000012.GIF" wi="179" he="68" />为不出现特征t时文本属于C<sub>i</sub>的概率;第二,将步骤一获得的权值IG进行排序,提取第一阶段α*K个特征;第三,将第一阶段α*K个特征采用公式(2)和(3)计算特征t在文本模型的训练数据中新数据、旧数据的分布情况,获得:w<sub>same</sub>(t,C<sub>same</sub>)=f(t,C<sub>same</sub>)*n(t,C<sub>same</sub>)/N(C<sub>same</sub>) (2)w<sub>dif</sub>(t,C<sub>dif</sub>)=f(t,C<sub>dif</sub>)*n(t,C<sub>dif</sub>)/N(C<sub>dif</sub>) (3)其中,C<sub>same</sub>和C<sub>dif</sub>分别表示训练数据中的新、旧数据,f(t,C<sub>same</sub>)和f(t,C<sub>dif</sub>)分别表示特征t在新、旧数据中出现的次数,n(t,C<sub>same</sub>)和n(t,C<sub>dif</sub>)分别表示新、旧数据中出现特征t的文本数,N(C<sub>same</sub>)和N(C<sub>dif</sub>)分别为新、旧数据中的文本总数,w<sub>same</sub>(t,C<sub>same</sub>)和w<sub>dif</sub>(t,C<sub>dif</sub>)分别表示特征t在新、旧数据中的分布;第四,将步骤三中特征t在新、旧数据中的分布,采用公式(4)计算特征t的最终的权值,提取第二阶段α*K个特征:max{w<sub>same</sub>(t,C<sub>same</sub>),w<sub>dif</sub>(t,C<sub>dif</sub>)}/min{w<sub>same</sub>(t,C<sub>same</sub>),w<sub>dif</sub>(t,C<sub>dif</sub>)} (4)第五,依次循环步骤二到步骤四,不断提取第二阶段α*K个特征;第六,对步骤五获得第二阶段第二阶段α*K个特征按权重从小到达进行排序,选取权重最小K个特征完成文本模型分类。 |