基于半监督的SVM迁移学习文本分类算法
2016-04-13谭建平刘波肖燕珊
谭建平 刘波 肖燕珊
摘要:随着互联网的快速发展,文本信息量巨大,大规模的文本处理已经成为一个挑战。文本处理的一个重要技术便是分类,基于SVM的传统文本分类算法已经无法满足快速的文本增长分类。于是如何利用过时的历史文本数据(源任务数据)进行迁移来帮助新产生文本数据进行分类显得异常重要。文章提出了基于半监督的SVM迁移学习算法(Semi-supervised TL_SVM)来对文本进行分类。首先,在半监督SVM的模型中引入迁移学习,构建分类模型。其次,采用交互迭代的方法对目标方程求解,最终得到面向目标领域的分类器。实验验证了基于半监督的SVM迁移学习分类器具有比传统分类器更高的精确度。
关键词:文本分类;半监督学习;迁移学习;算法
文本分类是挖掘文本信息的处理技术,在传统文本分类方法中,大部分都是有监督的,即用带标签的数据来训练分类模型,并且只局限于目标数据域。然而,收集标注数据是非常困难且耗费巨大的,未标注数据却相当巨大,很容易获取。如果只有少量标注数据和大量未标注数据可用,那么半监督学习的方式在一定程度上便能弥补因训练数据不足而导致过拟化的分类误区。
很多机器学习的方法,无论是传统的机器学习还是半监督学习问题,都建立在一个共同假设上:测试数据与训练数据属于统一数据,分布于同一特征空间。一旦数据分布有差异,很多学习方法便无法表现得很好。于是又要重新标记大量数据去训练模型来适应新的数据分布,这样的代价是昂贵的。基于这个局限,便引入了迁移学习,目的是从其他相关辅助数据域中迁移知识去帮助目标域中解决学习任务。例如,在网页分类中,能利用迁移学习从大学网页迁移知识来帮助Facebook. com分类任务训练一个分类器。虽然大学网页与社交网络的数据分布十分不同,但是始终存在一些共同的分类知识来构建知识迁移的桥梁帮助提高分类器性能。
近年来,随着研究的深入,基于SVM的半监督、迁移学习等方法也逐渐应用于数据分类、社交网络分析和图像处理等方面。如Qiang Yang等人迁移学习对于文本挖掘的应用。目前,在解决实际的文本分类问题中,人们提出了不同的基于SVM的分类方法。随后在这些基本方法的基础上引入了当今热点研究的迁移学习,形成了如跨域SVM方法。迁移学习在各领域的应用也是层出不穷,如在社交网络的推荐系统中便提出了跨域推荐(CDR)和社交网络中的异构迁移对于图像聚类的方法,在图像处理和信号处理方面也有应用。
在这篇文章中,笔者提出了一种基于半监督的SVM迁移学习方法,此法的贡献有:(l)本文合理地利用了目标域中未标注的文本数据与少量标注的文本数据,采用局部化SVM(LSVM)进行局部和全局一致学习(LLGC),并通过半监督的学习方式来加强分类器精度。并给出了这种方法的目标方程。(2)为了给分类器得到更好的泛化误差,本文引入了迁移学习的方法对目标方程进行迭代,给出了迭代终止目标函数,产生更为精确的分类器,并得到数据标签。
1 相关工作
由于本文关注的是基于半监督的SVM迁移学习文本分类方法,所以着重研究算法,而在文本数据上进行实验。接下来先回顾半监督文本分类学习与迁移学习等方法。
1.1 半监督文本分类学习
近年来,半监督学习在文本分类上受到了广泛的关注。所谓半监督学习就是利用目标域中未带标签的数据与带标签的训练数据集一同训练分类器。这在某种程度上克服了传统机器学习中因为带标签训练数据集不足而导致的分类器不准确的问题。各式各样的半监督文本分类方法也被陆续地提出。Wajeed提出基于KNN的半监督文本分类方法,这种半监督方法使用了不同的相似度测量与不同向量产生技术来提高分类的准确度。v.Vapnik提出的自训练半监督SVM算法,很好地利用了大量未标记数据结合少量带标签数据共同训练分类器。接着Yong Ma在v.Vapnik的自训练半监督SVM算法上提出了一种改进的方法,这个方法将类别之间的差异性用一个散度矩阵表示出来,然后优化了目标方程。
1.2 迁移学习
随着互联网信息的高速发展,迁移学习越来越受到数据挖掘、机器学习等相关领域的关注,已经成为当今的一个研究热点。迁移学习就是利用一个新环境中学习的相关知识去指导当前环境目标任务的学习,而在数据挖掘中,本文定义新环境为辅助域,当前环境为目标域。现阶段的迁移学习工作方式分为3个主要部分:同构空间下基于实例的迁移学习、同构空间下基于特征的迁移学习和异构空间下的迁移学习。
现在各个研究方面陆续有不同的迁移学习方法被提出。Feng Yu提出了文本分类的迁移学习,这个方法利用了迁移知识采样源数据域数据构建了迁移知识库,进而帮助目标数据进行分类。C.Do针对文本分类问题提出了一种通过SoftmaxRegres sion学习一个参数函数来分类新的任务,而QiangYang在社交网络分析中提出了一种异构迁移学习的图像聚类方法,旨在通过社交网络中不相关的带注释的图片迁移知识来提高目标图片搜寻的精度。
尽管对迁移学习在文本分类、社交网络等不同领域的研究已经比较深入,但是在迁移知识的过程中,不同的迁移方法往往效果差别很大,不能很好地体现出分类器的效果。现阶段的迁移方式用得比较好的还是基于同构空间下迁移(分为基于实例的迁移和基于特征的迁移),而基于异构的迁移学习方法比较复杂多变,且实现起来比较困难,容易造成负迁移而导致分类器性能下降。
本文引入了一种基于邻域的SVM方法对源数据知识进行迁移,以便使与目标域带标签数据分布相近的数据更大程度地帮助训练目标分类器而提高分类器性能。本文利用基于SVM的半监督学习方法和局部和全局一致性方法(LLGC)进行模型构建,并给出了目标方程。这种半监督的学习方法所获得的方程能很好地结合邻域SVM方法,从而解决迁移学习方法运用于数据分类的问题。
2 半监督的SVM迁移学习方法
在这一节中,本文结合以前提出的半监督SVM分类算法与现在的迁移学习算法,提出了一种比较新颖的半监督迁移学习的方法。其原理如图1所示。
2.1 半监督迁移算法的模型
Sem-isupervised_based TL_SVM算法是利用相关辅助域数据迁移合适的知识来帮助目标域任务的学习,并利用了半监督迭代的思想来训练分类模型。
首先,定义辅助数据集用表示 ,目标数据集用表示 。目标数据集中带标签的数据集为 ,包含 个样本数据 ,不带标签的为 ,包含l2个样本 。对于辅助数据域 ,先对其相应的预处理,找到在辅助数据域中的一组SVM支持向量 ,并且学习到辅助数据域判别函数 。
定义一个基本的跨域迁移SVM分类器对于2类问题:
约束条件:
其中, 是一个训练实例的特征向量, 是其通过一个核函数映射到高维空间, 是样本数据 所带的类别标记, 是一个正规常数。
类似于LSVM,辅助数据集 的知识迁移的影响能被目标域训练集所限制。这个限制的基本原理就是一个支持向量 落入目标数据 的近邻,它有一个类似于 的分布并且能被用来帮助分类 指代辅助域中支持向量 和带标签目标数据集 之间的相似度测量。
在迁移SVM的优化中 ,原来从中学习得到支持向量适应于新的训练数据 ,支持向量与新的训练数据结合一起学习一个新的分类器。特别地,让 ,则方程(1)可被改写如下:
类似A_SVM,本文也想要保证这个新的决策边界在旧的辅助数据 的判别属性,但是这个技术有一个特别的优点:就是没有强迫这个正规项限制新决策边界相似于旧的。代替这个,基于本地化的主意,这个判别属性仅在与目标数据有相似分布的重要辅助数据样本中被处理。特别地,δ采用了高斯函数的形式:
β控制来自Vs的重要支持向量的退化速度。β越大,支持向量的影响就越小,同时也就远离 。当卢非常大,一个新的决策边界单独基于新的训练数据 学习得到。相反,当β非常小,来自Vs的支持向量和目标数据集 同等对待并且算法相当于运用 共同训练一个SVM分类器。通过这样的控制,与传统方法对比,这个算法更加一般化和灵活。控制参数β实际上能通过系统验证试验来优化。
对于上面所产生的一个初始弱SVM分类器,本文得到了目标域中未标记数据 的一组初始标签,接着把 加入训练集中一起训练,就形成了本文所提出的半监督迁移的方法。其基于半监督的SVM迁移学习算法的分类器对于2类问题的定义如下:
2.2 半监督迁移算法的描述
对于目标域数据 ,假设 是包含 个样本 且给定标签 的训练集, 是包含 个样本 且未带标签。
本文提出的基于半监督的SVM迁移算法详细描述如下:
算法:Semi-supervised TL_SVM
输入:目标数据集 (包含 和 ),经过预处理的辅助域支持向量xt,阈值δ0。
输出:D的类别标签
(1)利用 和xt训练初始TLSVM分类器。
(2)得到 的初始标签 和TLSVM分类器的初始参数 , 。
(3)将获得初始标签的 加入到训练集中一起训练分类器,假设经过k次训练后构建一目标函数
(4) Loop k=2,训练TLSVM对 进行类别测试,并得到每次分类器参数。
的预测标签就为
End If
Else
k++;
End If
3 实验
本文选取Enron公司提供的内部员工通信邮件数据集Enron数据集作为本文的实验数据,它包含1702封邮件,53个类别。
3.1 数据集说明
Enron数据集的描述如表1所示。
3.2 数据预处理
文本采用此空间向量表示文本数据,即:
上式中, 是词频的集合, 是其对应的权重。首先,将一些没有实际分类意义的词去掉,再根据有分类意义的词进行统计,最后根据TF-IDF算法将文本表述成文本向量空间,就形成了可以利用的SVM标准数据集了。然后便可以利用LIBSVM来实现本文的实验。
3.3 实验分析
首先,利用本文提出的基于半监督的SVM迁移学习算法迁移辅助域数据知识来对本文的目标数据集进行实验,并与半监督SVM进行对比。其次,还要调整参数β,用来控制辅助域数据的退化速度。将随机抽取的辅助数据集F加入经过数据知识迁移帮助目标域训练集进行分类器的训练,然后找到最佳参数β。
首先,本文选取152封作为目标数据集(其中训练数据100封,测试数据52封),剩余1650封用来作为辅助数据集。也就是目标数据约占辅助数据集的10%。对比本文提出的算法与半监督SVM算法在数据集Enron上的分类性能评估如表2所示,单位(%)。
β参数的变化就是控制着迁移知识在训练模型时所起的作用。在目标域数据仅占1%时本文调整最佳参数,接下来在不同β的下的进行实验,这里本文选取了p=[O.OOI,O.O1,0.1,1】这4个参数值上实验。并与半监督SVM形成对照,迁移性能与β的关系如图2所示。
通过上面β来控制迁移知识对分类器的影响。由图2可知β越小,迁移知识越多,迁移数据所起的作用越大,然而当达到一定的量时,迁移学习所起的作用可能跟传统的方法差不多,甚至可能存在负迁移的情况,所以实验中本文得到的最佳β是lx 10-2。
接下来,在确定最佳β参数值的情况下,本文提高目标数据占辅助数据的比例,利用本文提出的算法进一步分析,如图3所示。
由图3可知,随着目标域数据增多,迁移效果也在提升。当目标数据集占30%时,迁移学习的效果与传统的算法效果接近。
实验结果表明,当目标数据集较小时,本文提出的基于SVM的半监督迁移学习算法效果明显,而当目标数据集变大到一定数量时,本文所提出的算法与半监督SVM算法效果接近,可以使用传统的半监督SVM算法。
4 结语
在本文中,笔者提出了基于SVM的半监督迁移学习的方法,其主要是在减少目标域带标签训练数据的同时,增加了相关域带标签数据。本文在以前方法SVM的基础上提出了一种新的文本分类方法。将本文所提出的方法与半监督SVM方法相比较,证明本文的方法比半监督SVM方法好。
基于SVM的半监督迁移学习方法在数据分类中取得了明显的效果。而考虑利用本文所提的方法对在线增量进行分类将成为笔者的下一个研究目标。