基于字符串核的免分词中文文本分类方法
- 格式:pdf
- 大小:155.54 KB
- 文档页数:3
基于字符串核的免分词中文文本分类方法
游智李战怀张阳
(西北工业大学计算机学院,西安710072)
摘 要 文本分类是获取文本信息的重要一步,现有的分类方法主要是基于统计理论和机器学习的,其中著名的有 Bayes【ll、KNNt2]、SVMpl、神经网络等方法。实验证明这些方法对英文分类都表现出较好的准确性和稳定性 。对于中文文本
分类.涉及对文本进行分词的工作。但是中文分词本身又是一件困难的事情 。论文尝试一种基于字符串核函数的支持矢 量机方法来避开分词对中文文本分类,实验表明此方法表现出较好的分类性能。
关键词 核函数SVM 字符串核
文章编号1002—8331一(2006)26—0170—03 文献标识码A 中图分类号TP301
Chinese Text Categorization Without Word Segmentation
Using String Kernel
YoU Zhi LI Zhan-huai ZHANG Yang
(Department of Computer Science,Northwestern Polytechnical University,Xi’an 710072)
Abstract:Text Categorization is the first step to gain information from textual data,existing methods are mainly based
on statistical method or machine learning,such as Bayes,KNN,SVM,Neural Network,which have proved to be accurate and stable in experiments for categorizing English texts.However,Chinese text categorization is much more dificult be— cause there is no space between words,and word segmentation has always been used to solve this problem.This paper
delivers a method using string kernel in support vector machine without word segmentation and the experiment reports a good result.
Keywords:kernel function,SVM,string kernel
1 引言
传统的学习系统把输入数据映射到一个m维空间 上的 特征向量D。(D …D ∈西),从而对特征向量d。处理来实现各种
学习和分类算法。但是在很多情况下,并不能直接从输入数据 直接获取特征向量,例如:生物基因特征,图像和文本。在这些
复杂数据集上,特征提取方法决定着整个分类系统的性能。如
果对这些数据简单的映射到一个m维空间 会损失许多重要 的信息,如属性的顺序特征等。
核函数方法(Kernel Methods)可以用作一种针对复杂数据
集的有效特征提取方法,核函数计算的是映射到多维空间的特 征向量d (d1..・d ∈D)间的中间值。著名的基于核函数的分类系
统是支持向量机(Support Vector Machine,SVM),它直接不依 赖于特征向量的维数,还可以针对不同的问题灵活的使用不同
的核函数,目前越来越多的被文本分类领域研究和应用
2相关知识
支持向量机方法是统计学习、最优化方法和核函数方法的
结合{61。对于线性可分的样品集(X。,yi), 1,2,…,/2,X ∈R ,yi∈
卜1,11,构造分类面:WX+6=0,使得Y。(WX。+6)一1≥0,i=1,2,
…,/2,使得ll ll最小。这样的 就叫做最优分类面,满足:Y (WX,+b)一1=0的点 就称为支持向量(support vector)。 对于给定的训练数据集,从中学习得到参数W,b的方法, 一般是利用拉格朗日优化方法。求解一个非负向量d.与 的
^ 关系是: = d 。 』:l 核函数方法可以用于解决输入数据特征维数很高的情况
下特征提取问题。它是一个对称的函数:K(D ,D,)= (DJ,D )其 中 √=1,…,n通过计算输入数据的核函数,得到一个对称的特
征矩阵,这个矩阵就代表了所以输入数据的特征信息。核函数
的计算方法目前有多种,如:线性核,多项式核,高斯核,Sig— moid核等
3字符串核函数
首先,我们把每一个文本文档看成一个由文字、数字和标
点构成的一个字符串。下面介绍如何求两个文档之间的字符串 核函数值。
字符串核函数的思想是通过比较两个字符串共同包含的
子串个数和连续程度来衡量两个字符串的相似程度。共同的子 串越多,两个文档就越相似。这里的子串不一定是连续的,但是
它的连续程度被用来作为衡量的一个指标。 3.1 字符串核函数的形式化定义【9】
定义1设∑是一个有限字母集合,S=S ,S ,…,5 是∑上 的一个字母序列,其中S ∈∑,1≤ ≤ISI。设 ,i ,…,i 】,且
1≤i<i <…< ≤Isl是s的下标的子集。则用s[i1∈∑ 来表示字母
作者简介:游智,硕士研究生,研究兴趣为文本数据挖掘。李战怀,博士生导师,研究方向为数据库理论与技术。张阳,博士,研究兴趣为数据挖掘与 知识发现。 ‘
170 2006.
26计算机工程与应用 维普资讯 http://www.cqvip.com 序列S S …, .。这里的s嘲并不一定是s的连续子序列。例
如:s=CART, 【2,4],那么s[i]=AT。设f( )表示s嘲在s中的跨
度,那么:
f(i)= 一i +1 (1) 则在∑上的两个字符串s和t的字符串核表示为:
( )=∑∑∑ (2) “∈∑ i 5 l =“』I ]=“ 其中A∈f0,1]是用来体现不连续情况下的衰减因子。第一 个求和符号代表所有长度为n的字符序列。
3.2字符串核函数举例
例如:“中国人民银行”和“国民经济”都包含“国民”两字,
但是这两个字在他们中的权值是不一样的。这里的权值决定于
两个方面:出现的次数和子串在文档中的跨度。为了衡量子串
在文档中的跨度,我们引入一个衰减因子A E(0,1)。 实例:我们以如下一组文档为例,假设四个文档分别包括:
“中国人”,“中国魂”,“秦国人”,“秦国魂”。以子串长度K=2为
例,得到一个8维的特征空间。
表1字符串核函数举例
中国 国人 中国人 A A 中国魂 A 0 秦国人0 A 秦国魂 A z 0 国魂 秦国 中人 中魂 秦人 秦魂 0 0 A 0 A 0 0 A 0 A 0 0 A A 0 0
根据表1,“中国人”(A)和“中国魂”(B)之间的核函数值
为:K(A,B)=A ,而K(A,A)= (B,B)=2A +A 。对K(A,B)定义
如下的正规化:
㈣=— 2A4+A6%/K(A A B ZA= 2+A , ) (B,) ‘
3_3算法递归化[91
这个算法的时间和空间复杂度为0(I∑『 )。直接对两个文 本求字符串核.在文本包含字符多时,需要耗费很长的时间。为
了降低算法复杂度,对算法进行递归化。
由式(1)和(2)得:
Ki'( ,f):∑∑∑A。 。 。一 】 E∑_l_j… J:I ] 其中,i=1,…,n一1。
定义2递归计算字符串核函数值 (1)对于所有s和t,K0 (s,£)=1。
(2)如果s或t的长度小于i,则K (s,£)=0。
(3)如果s或t的长度小于i,则 (s,£)=0。
(4) (s ,£)=A (s,£)+ : 。(s,£【1: 一1])A l-j+2其中,i= 』: = 1,…,n一1。
(5) (s ,£)=K (s,£)+∑ 。(s,£【1: 一1])A 递归化以后的
』:垆 算法的时间复杂度为n ll tl 。 4试验分析
这里设计实验来验证字符串核在中文义本分类中的有效
性.我们将把基于免分词字符串核方法和目前常用的基于分词 的线性核方法进行相同环境的对比。另外,还将讨论字符串核
函数中参数k(子串长度)和参数A(衰减因子)对分类性能的 影响。 4.1试验数据集
试验选择复旦大学计算机信息与技术系国际数据库中心 自然语言处理小组发布的《文本分类语料库(复旦)》…】。这个库 分为训练库和测试库两个部分,其中测试语料共9 833篇文
档;训练语料共9 804篇文档,分为20个类别。训练语料和测 试语料基本按照1:1的比例来划分。各类别分布如表2。 从中选出语料相对丰富的C19,C31,C32,C34,C38,C39
六类作为试验数据集。其中C19,C31,C32分为一组G ,C34, C38,C39分为一组G 。在G。和G 中分别依次选定二三类为正例 样本,其他两类为负例样本。正负样本比例大致控制在1:1。训 练数据集和测试数据集之间不包含重叠样本。训练数据集和测
试数据集内也不包含重复样本。 线性核函数计算参数选用Js 肘 的默认参数 ,详细参见 参考文献【8],单词权重使用TFIDF方式给出。分词软件采用中 科院计算所汉语词法分析系统ICTCLAS,详细参见参考文献
【10]。 4.2性能评价
文本分类中普遍使用的性能评估指标有查全率(Recal1.简 记为R)、查准率(Precision,简记为P)以及F。指标。二值分类 的评估一般使用列联表(Contingency Table)。表3为一个二值
分类问题的列联表。
表3二分类问题列联表
真正属于该类的文档数真正不属于该类的文档数
这时,R和P以及F。分别定义为:
R: ,P= . : a+c a+b ‘R+P 本试验用以上三个指标来衡量系统分类性能。
4_3试验结果与评价
图1分别表示:基于分词技术的线性核方法和基于免分词
技术的字符串核方法两者的指标、查准率、查全率比较情况 其 中,string代表基于免分词字符串核方法;liner代表基于分词的 线性核方法。
图2表示了算法中子串长度k对分类性能的影响(样本数 为50)。可以看到对于中文文本,使字符串核对分类有效的取 值是K=2,3,4,5。考虑到计算效率,在大量样本情况下(样本数
大于300),推荐使用K=2,在小样本的情况下(样本数在100 以下),推荐使用 =5。 图3表示了算法中衰减因子A对分类性能的影响。可以看 到对于中文文本,使字符串核对分类最有效的取值是A=0.9。
从图3中可以看到对于A<O.9的情况,算法对于参数A是 表2实验数据集中数据分布情况
计算机工程与应用2006.26 171 0 0 0 ^ 0 0 A
0 维普资讯 http://www.cqvip.com