基于支持向量机的文本分类技术
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2.1 文本表示
文本表示问题会对学习系统的泛化正确率产生较强影响。典型的文本多包含 字符串,需要转换成为适合分类任务的表示。IR 的研究表明单词频率统计表示 能够较好的工作,而字符顺序对许多任务影响相对较小。单词频率统计建立在去
除特定单词的时态和屈折信息基础上的。例如“computes”,“computing”和 “computer”都将被映射到相同的单词“compute”。 文本通过该方向将形成“属性-值”的表示方法。每一个不同的词 wi 对应一 个特征 TF ( wi , d ) ,作为单词 wi 在文档中出现的频率。图 2-1 表示一个样例文档 的特征向量。为了避免不必要的高维特征向量,某个单词被看为一维特征仅当它 在训练数据中至少出现了三次且非“停止单词” (例如“and”、 “or”等等) 。
三、 支持向量机
支持向量机(Support Vector Machine,SVM)是Vapnik等[1][2]提出 的 一 种 新 的 学 习 方 法 , 它 是 建 立 在 统 计 学 习 理 论 的 VC 维 ( Vapnik Chervonenkis Dimension)理论和结构风险原理基础上的,根据有限的样 本信息在模型的复杂性(即特定训练样本的学习精度)和学习能力(即无错 误地识别任意样本的能力) 之间寻求最佳折衷, 以期获得最好的推广能力。 支 持 向 量 机 的 最 大 特 点 是 根 据 结 构 风 险 最 小 化 (Structural Risk Minimization: SRM)准则,以最大化分类间隔构造最优分类超平面来提高 学习机的泛化能力,较好地解决了高维数、非线性、局部极小点等问题, 在训练样本数目相对较少的情况下也能取得很好的分类效果对于分类问 题,支持向量机算法根据区域中的样本计算该区域的决策曲面,由此确定 该区域中未知样本的类别。
2.3 SVM 适合文本分类原因的讨论
为了指出基于 SVM 的文本分类是先进的,我们将发掘更多有关文本的属性 高维输入空间:为了学习文本分类器,我们需要处理高维特征(大于 10000 维) 。由于 SVM 是过拟合保护的,也即它不依赖与特征的维数,因此它有处理高 维特征空间的潜力。
图 2-2 使用非“最佳”特征学习
空间维数,而是取决于样本数,尤其是样本中的支持向量数。这些特点使 有效处理高维问题成为可能。
3.1.2 非线性情形 对非线性情形,支持向量机通过非线性变换转换到高维的特征空间, 并构造线性判别函数实现原空间的非线性判别。SVM 把输入向量映射成一 个高维特征中的向量, 通过一个适当的非线性函数 φ ,将数据由原始特征空 间映射到一个新的特征空间,然后在新空间中寻求最优判定超平面。 为说明问题,我们给出了一个具体的例子。如 3-2 左图所示,样本数 据 x i ∈ R 2 (i = 1,2, K , l ) ,选择核函数 K (x, y ) 为多项式函数 K (x, y ) =< x, y > 2 ,那 么我们的目的是寻找一个满足如下条件的空间 H 和映射 φ :使映射将数据 从 R 2 空间映射到 H 空间,并且满足 < x, y > 2 = φ (x ) ⋅ φ (y )
基于支持向量机的 文本分类技术
一、 引言
随着网络信息不断增长和丰富,文本分类(text categorization)已经成 为处理和组织文本数据的关键技术之一。文本分类用于(1)对新文本数据进行 分类, (2)在万维网(Wide World web:www)上发掘感兴趣的信息,以及(3) 通过超文本指导用户进行搜索。由于手工创建文本分类器复杂且耗时,通过样本 来学习分类器是有优势的。 本次实验,我们将探索和分析基于支持向量机(Support Vector Machine: SVM)文本分类技术的优点。SVM是由V. Vapnik等人[1][2]提出的一种新的学习 方法。支持向量机方法是建立在统计学习理论的VC 维理论和结构风险最小原理 基础上的,根据有限的样本信息在模型的复杂性和学习能力之间寻求最佳折衷, 以期获得最好的推广能力。 在对文本标准的特征向量表示进行简单的回顾之后(2.1),我们将详细讨论 文本以该形式表示的特殊属性(2.3)。我们将讨论支持向量机非常适合用于文本 分类的原因。第 3 部分将给出支持向量机的理论及具体实现算法。第四部分的实 验结果很好的支持了我们的观点。作为先进的方法,支持向量机表现出实质的性 能提升。进一步的,对比传统文本分类方法,SVM 被证明非常鲁棒,并且避免了 复杂的调参环节。
( x i , y i ), i = 1,2, K , n, x ∈ R d , y ∈ {+1,−1} ,满足 y i (< x i , ω > +b ) − 1 ≥ 0
此 时 分 类 间 隔 γ = 2 ω ,为 使 间 隔 最 大 等 价 于 使 (3-1)且使 ω
2
(3-1)
ω
2
最小。满足条件
图 2-1 将文本表示为一特征向量
基 于 这 种 基 本 表 示 , 已 经 被 证 明 将 某 个 单 词 的 反 向 文 档 频 率 (Inverse Document Frequency: IDF)[3]作为对应维的缩放因子能够提高性能。IDF ( wi ) 可 以通过文档频率(Document Frequency: DF)计算得到,其中 DF ( wi ) 表示存在 wi
二、 文本分类
文本分类的目的将文档归类到数目固定的且已预定义的类别中去。每个文档 可以被归为多类(multiple),归为单类(exactly one)和不属于任何类(no category at all)。我们的目标是通过机器学习从样本集学习出一个分类器,该 分类器能够自动地分类文本。这是一个监督学习问题。为了能进行快速有效的学 习,各类别的分类作为一个独立的二分类(binary classification)问题,这样 就解决了一个文档是否归类为特定类的类别。
maximize : W (α ) = ∑ α i −
i∈sv
1 ∑ ∑ α iα j y i y j < x i , x j > 2 i∈sv j∈sv
subject to
∑ α i yi = 0
i∈sv
(3-5)
该方法是在经验风险为零的前提下,保证了全体训练样本的正确率, 因此被称为硬间隔分类器。它通过最大化分类间隔获得最好的推广性能。 同时我们看到,通过把原问题转化为对偶问题,计算的复杂度不再取决于
(3-2)
其中, α i > 0 ,称为拉格朗日乘子,将式(3-2)分别对 ω 和 b 求偏微分 并令其等于 0,可得到关系式 l l ∂L(ω, b, α ) = ω − ∑ y iα i x i = 0 ⇒ ω = ∑ y iα i x i ∂ω i =1 i =1
l ∂L(ω, b, α ) l = ∑ y iα i = 0 ⇒ 0 = ∑ y iα i ∂b i =1 i =1
2.2 特征选择
文本分类通常都需要应对 10000 维甚至更高的特征空间,经常多于可用训练 样本的数目。许多工作都强调通过使用特征选择才能够让传统学习方法正常使 用,以及提高泛化正确率,以及避免过拟合[4]。 特征选择最常用的方法是选择一个特征子空间,例如 DF − Thresholding [4]、 χ 2 − test [5]等等。最普遍且通常最有效的特征选择方法是信息增益标准 (information gain criterion)[6]。它将被后面的实验部分使用。所有的单词 按照他们的信息增益进行排序。为了选择其中的 f 维特征,将选中互有信息最高 的 f 个单词,其它单词将被忽略。
(3-3)
将式(3-3)的等式关系代入到原始拉格朗日函数,最后得到 l 1 l (3-4) W (α ) = ∑ α i − ∑ α iα j yi y j < x i ⋅ x j > 2 i , j =1 i =1 因此,若 α * 为最优解,那么
ω ∗ = ∑ α i∗ yi x i
i =1
l
即最优超平面的权系数向量是训练样本向量的线性组合。 由于 W (α ) 的求解是不等式约束下的二次函数寻优问题, 存在全局最优解。 容易证明, 解中只有一部分(通常是少部分) α i 不为零,对应的样本就是支持向量。 支持向量包括了重构超平面的所有必要信息。即使移除所有其他点,仍然 可以为剩余的支持向量子集找到相同的最大间隔超平面。求解上述问题后 得到的最优分类函数是
的文档数目。
⎞ ⎛ n IDF ( wi ) = log⎜ ⎟ ⎜ DF ( w ) ⎟ i ⎠ ⎝
(2-1)
源自文库
其中 n 表示训练文档的总数。直观上如果某个单词在许多文档中都出现过, 那么它的反向频率会较低,而如果只出现在一个文档上,那么它的方向频率是高 低的。为了从不同长度的文本进行抽象,每个文档特征矢量都将归一化成为单位 矢量。
3.1 数学模型
3.1.1 线性可分情形 SVM 是从线性可分情形下的最优分类 面发展而来。基本思想可以用图 (3-1)的二维情况说明。
图 3-1 线性可分情况下的最优分类线
图中实心点和空心点代表两类样本,H 为分类线 H1,H2 分别为过各类 中离分界线最近的样本且平行于分类线的直线,它们之间的距离叫做分类 间 隔 (margin)。 所 谓 最 优 分 类 线 就 是 要 求 分 类 线 不 仅 能 将 两 类 正 确 分 开 (训练错误率为 0),而且使分类间隔最大。推广到一般线性可分情形,假 设 分 类 方 程 为 < x,ω>+b=0 , 对 其 进 行 归 一 化 , 样 本 集
的 VC 维,满足下面的界
h ≤ min([ R 2 A2 ], N ) + 1
因此使 ω 最小就是使 VC 维的上界最小, 从而实现 SRM 准则对函数复 杂性的选择。为了解决约束最优化问题,构造拉格朗日函数
2
l l 1 2 ( ) L = w − ∑ α i y i xi ⋅ w + b + ∑ α i 2 i =1 i =1
少不相关特征:一种避免高维输入空间的方法是假设大多数特征是相互不相
关的。特征选择是基于上述假设的。不幸的是,文本分类中鲜见不相关的特征。 图 2-2 表示路透社“acq”类的实验结果。所有特征根据它们的互信息进行排列。 然后naïve贝叶斯分类器在训练阶段仅使用排序后索引值分别为 1 - 200,201 500,501-1000,1001-2000,2001-4000,4001-9947 的特征。图 2-2[16]表明即使 排序靠后的特征依然包含有效信息并且在一定程度上是相关的。仅使用那些“糟 糕”特征的分类器的性能比随机选择特征的好得多。正因为所有那些“糟糕”的 特征似乎并不是完全无用的,因此引发了以下两个猜测: (1)好的分类器应该能 够融合多特征, (2)特征选择由于信息损失似乎会降低分类器性能。 文档矢量是稀疏的:对于每一个文档,它对应的文档矢量只有少数分量是非 零的。已经有理论和实验的依据[7]证明基于“累加”算法的误差界模型更适合 处理多特征(dense concept)和稀疏样例(sparse instance)的情形。而“累加” 算法和SVM的感知阈值相似。 大多文本分类问题是线性可分的: 所有 Ohsumed 类别及许多路透任务都是线 性可分的。一些不可分的路透类别经常是由于不确定文档和标注者明显的误分 类。 SVM 的思想正是去寻找这样一个线性(或者多项式、 径向基函数等等)分界面。 以上讨论充分表明 SVM 能够很好地处理文本分类问题。
f (x ) = Sgn ∑i =1 yiα i∗ < x i ⋅ x > + b ∗
l
{
}
完成对支持向量机模型的训练之后,输入样本 x ,模型将通过计算 f (x ) 进行类别判定,若 f (x ) > 0 认为是正类,否则为负类。 f (x ) 越大表示输出 的类别结果置信度越高。 由于非支持向量对应的 α i 均为 0, 因此上式的求和实际上只对支持向量 进行, b∗ 是分类阈值,可以用任一个支持向量求解得到。最终的优化问题 为
2 最小的分类面就叫做最优分类面,H1,H2 上的训练样本
点就称作支持向量。 使分类间隔最大实际上就是对推广能力的控制,这是 SVM 的核心思想 之一。统计学习理论指出,在 N 为空间中,设样本分布在一个半径为 R 的 超球半径内,则满足条件 ω ≤ A 的正则超平面构成的指示函数集
f (x, w, b) = Sgn{< x, ω > +b}