当前位置:文档之家› 基于改进的kNN算法的中文网页自动分类方法研究

基于改进的kNN算法的中文网页自动分类方法研究

基于改进的kNN算法的中文网页自动分类方法研究
基于改进的kNN算法的中文网页自动分类方法研究

第40卷第4期2007年8月武汉大学学报(工学版)

Engineering Journal of Wuhan University Vol.40No.4Aug.2007

收稿日期:2007203225作者简介:胡 燕(19652),女,湖北松滋人,副教授,研究方向为Web 数据挖掘和信息抽取.

文章编号:167128844(2007)0420141204

基于改进的kNN 算法的中文网页

自动分类方法研究

胡 燕,吴虎子,钟 珞

(武汉理工大学计算机科学与技术学院,湖北武汉 430070)

摘要:概述了中文网页分类的一般过程,重点论述了在分类过程中特征词提取、训练库建立和文本分类算法等

关键问题,针对向量空间模型的文本特征表示方法中特征词数量的多少与分类算法的效率有着密切关系的特点,提出了基于词性的特征词提取方法,并且在文本相似度计算时,融入传统的特征向量的比较方法来对kNN 算法进行改进,提出了基于特征词减少的改进kNN 算法,提高了分类算法的效率和性能.

关键词:特征词;训练库;文本相似度;kNN 算法

中图分类号:TP 181 文献标志码:A

R esearch of Chinese Web classif ication method

b ased on improved kNN algorithm

HU Yan ,WU Huzi ,ZHON G L uo

(School of Computer Science and Technology ,Wuhan University of Technology ,Wuhan 430070,China )

Abstract :The procedure of Chinese Web classification is described ;and the keys of this classification including feature selection ,building the training collection and text categorization algorithm are discussed crucially.The quantity of characteristic word in the text characteristic expression method of vector space model has an intimate relationship with the efficiency of classification algorithm.A characteristic word extraction method has been de 2veloped based on word gender.By fusing the traditional method which comparing the feature vectors when com 2puting the similarity of texts to reform the k 2nearest neighbor (kNN )algorithm ,a modified kNN algorithm ,which is based on lessening of characteristic words and data division respectively ,has been proposed ;so that the efficiency and performance of classification algorithm are improved.

K ey w ords :characteristic words ;t raining collection ;similarity of t he text ;kNN algorit hm.

文本分类是指将文本按一定的策略归于一个或多个预先定义类别中的应用技术.随着Internet 的飞速发展,网页数量急剧增加,对这些蕴涵丰富信息的网页进行人工分类远远不能满足各种领域获取信息的需求.因此,为了能够有效地组织和分析海量的信息,人们希望能够按照其内容实现对网页的自动分类.网页自动分类已经成为领域的一个研究热点.

国外文本自动分类研究始于1950年,H P L uhn 在这一领域进行了开创性的研究.其后,Maron 和H Borko 等许多学者在这一领域进行了卓有成效的研究.当前,国外主流的分类方法有Rocchio 法及其变异方法、k 近邻法(kNN )、决策树、朴素贝叶斯、贝叶斯网络、支持向量机(SVM )等方法.这些方法在英文一级欧洲语种文本分类上有广泛的研究,而且很多研究表明kNN 和SVM

武汉大学学报(工学版)2007

是英文文本分类的最好方法.

国内自动分类研究起步较晚,始于20世纪80年代初期.1981年候汉清对计算机在文献分类工作中的应用作了探讨.关于中文文本分类的研究相对较少,国内外的研究基本上是在英文文本分类的基础上,结合中文文本和汉语言的特性采取相应的策略,然后应用于中文之上,继而形成中文文本自动分类研究体系.

本文在文本相似度计算时,融入传统的特征向量的比较方法对kNN 算法进行了改进,提出了基于特征词减少的改进的kNN 算法,并将该算法用于计算机学科教学大纲的分类体系,对从Internet 上获取的与计算机专业课程相关的网页进行分类处理.

1 kNN 分类算法

kNN (k 最近邻)算法是一种传统的分类算法,

在文本分类方面得到了广泛的研究和应用.kNN 算法实际上是矢量相似度法的一种改进.

一般有两种方法计算相似度:

(1)欧氏距离,两个标准化的文本向量a 、b 之间的欧氏距离为

D (a ,b )=

∑i

(a

i

-b i )

2

(2)余弦距离,计算两个向量的余弦夹角:

co s 〈a ,b 〉=

a ?b

|a ||b |

该分类算法的基本思路是:在给定新文本后,考虑在训练文本集中与该测试文本距离最近(最相似)的k 篇文本,根据这k 篇文本所属的类别判定测试文本所属的类别.

由于使用kNN 算法进行分类的过程中,要计算测试文本与每个训练文本的相似度,这样无疑大大增加了分类的计算量,分类的速度无法提高,因此,在训练文本较多的情况下,如何减小计算量,提高分类速度是个关键性问题.

为了降低复杂度,人们进行了大量的研究,Grid 2file [1]和KD 2t ree [2]忽视数据的聚类性质,将

数据分割为不相交的区域,R 32tree [3]、X 2t ree [4]、SR 2t ree 和SS 2t ree

[5]

等方法根据数据在具体索引

中的分布对数据空间进行分割.这些方法处理低维数据一般比较好,但是它们的性能会随着维数的增加而降低.

文献[6,7]等提出将数据集的维数缩减,这些

方法通过索引树进行查询,检索出数据库的一个子集,然后,用最初的高维特征向量计算出查询点与候选集中每个点的距离,最后求出所需邻居.

VA 2file [8]和L PC 2file [9]把整个数据空间分成2b 个矩形单元,这里b 是用户指定的一个二进制

数.每个单元分配一个长度为b 的二进制字符串,近似表示落到该单元的点的数目.该种kNN 查询近似扫描整个文件,过滤出不重要的点.然而,该方法的性能在很大程度上依赖于顾虑能力和近似的精确度之间的权衡.

Z 2order 曲线、多重Hilbert 曲线[10]将d 维点

集映射到一个一维空间,最后沿着曲线执行一定范围的查询就能找到k 个最近邻居.然而,由于映射这个特性,一些比较近的邻居就有可能放置在沿着曲线比较远的地方.

2 基于特征项减少的改进kNN 算法

文本相似度的计算实际上就是文本所对应的特征向量的计算,在文本数一定的情况下,特征向量的个数也就不能改变了.那么要提高分类的速度,还可以从特征向量计算入手.

因此,本文提出基于特征项减少的改进的kNN 算法,其思想是在kNN 算法中融入传统的特

征向量的比较方法,先找出两个原始特征向量之间相同的词及其权重,按照相同特征词的顺序重新构造两个特征词都相同的特征向量,再利用特征词对应的权重向量来计算这两个特征向量之间的相似度.详细算法如下:

Input :测试文本T 的特征向量Output :文本所属类别标识FOR all Ti ∈训练库DO

从训练库中取出一个文本特征向量Ti

找出T 、Ti 中相同的特征词

把相同的特征词和对应的权值提取出来组成两个新的向量N T 、N Ti

计算两个特征向量的权值组成的一元向量之间的相似度sim (t ,x )

END FOR

将计算的文本的相似度计算结果进行排序取出相似度最高的k 个文本把这k 个文本的相似度按类别累加取相似度最大值S i 以及对应的类别Ci IF S i ≥

εthen 标识该文本属于Ci 类

2

41

 第4期

胡 燕,等:基于改进的kNN

算法的中文网页自动分类方法研究

EL SE

标识该文本可能属于Ci 类

END IF END

3 基于改进的kNN 算法的中文网页

自动分类实现

图1给出了中文网页分类的实现过程

.

图1 中文网页分类的实现过程

3.1 特征提取

在英文文本分类中,常用的特征提取的评估函

数有文档频数、信息增益、期望交叉熵、互信息、x

2

统计、文本证据权和几率比等.但这些方法用于中文文本的特征提取,并没有很高的效率.这主要有两个方面的原因:第一,特征提取的计算量太大,特征提取效率太低,而特征提取的效率直接影响到整个文本分类系统的效率;第二,经过特征提取后生成的特征向量维数太高,而且不能直接计算出特征向量中各个特征词的权重.因此,在中文文本分类中,如何提取特征词以及如何控制特征向量的维数,成为了一个亟待解决的难题.

本文采取的是基于词性的特征提取方法[11].这种方法充分考虑了汉语言自身的特性,在中文文本中,往往是文章中的名词和动词包含了能标识该文本类别的信息.因此,在基于词性的特征提取过程中,只提取中文文本中的名词和动词作为文本的一级特征词,再根据这些特征词的词频和文本频度计算其权重,取权重高的V 个特征词作为文本的核心特征词.这种方法不仅很大程度上提高了特征词提取的效率而且有效地降低了特征向量的维数.3.2 训练库生成

在TREC 上展示的文本分类系统代表了文本分类领域的最新研究成果,但到目前为止,还没有出现标准的中文网页语料库,因此也没有出现针对

中文网页分类的系统的测评.

为了解决这一问题,我们人工选取了800个网

页作为网页样本集,分别分布在8个不同的类别.经过分类整理,本文最终采用的分类体系如图2所示,该体系是根据计算机专业的课程设置和广泛应用的一些计算机相关知识而定的.选用该分类体系的主要原因是它的分类层次关系简单明了

.

图2 确定分类的类别体系

对于训练库中收集的网页进行以下处理:

(1)定义类别集合C ={C 1,…,C i ,…,C m };(2)给出训练文档集合S ={S 1,…,S i ,…,S n },每个训练文档S j 被标上所属的类别标识C i ;

(3)统计S 中所有文档的特征矢量V (S j );

(4)根据采取的不同分类算法,确定文档C i 的

特征矢量.3.3 改进的kNN 算法实现

本文根据改进的kNN 分类算法,对给定的248篇网页进行了测试.在kNN 算法中的阈值k 取100的情况下,分别取不同的向量维数阈值V ,测试结果如表1所示.

表1 准确率和召回率实验结果向量维数

V =15V =18V =20V =22

准确率/%改进前的kNN 算法改进后的kNN 算法80.4380.0080.7681.7385.7185.8580.9581.90召回率/%

改进前的kNN 算法改进后的kNN 算法80.6592.7483.8795.1685.4895.9784.6894.35

试验结果数据表明,向量维数对分类结果的准确率有较明显的影响,根据向量维数取值的不同,算法改进前后分类的准确率和召回率的走势如图3和图4所示.

为了检测文档的分类速度,取不同的向量维数分别对测试文档进行测试,得到分类效率对照表,如表2所示.

3

41

武汉大学学报(工学版)

2007

图3 准确率测试结果

图4 召回率测试结果表2 分类效率对照实验结果

维数

V =15V =18V =20V =22

改进前的kNN 算法 6.08 6.737.348.15DFkNN 算法

4.58

5.55

5.98

6.20

对应的分类效率对照图如图5所示.

图5 分类效率对照图

实验结果表明,改进的kNN 算法在基本不损失

准确率的基础上召回率和分类效率都有明显提高.

4 结 语

本文叙述了文本分类的一般过程及在文本分类过程中几个关键性问题,提出了基于特征向量减少的改进kNN 算法.该算法针对传统算法中在训练文本较多的情况下,计算测试文本与每个训练文本的相似度增加了分类的计算量、使分类的速度无法提高的缺点,一方面在特征提取时降低特征向量

的维数,另一方面在kNN 算法中融入传统的特征向量的比较方法,先找出两个原始特征向量之间相同的词及其权重,按照相同特征词的顺序重新构造两个特征词都相同的特征向量,再利用特征词对应的权重向量来计算这两个特征向量之间的相似度.改进的kNN 算法在基本不损失准确率的基础上召回率和分类效率都有明显提高.

参考文献:

[1] Nievergelt J ,Hinterberger H ,Sevcik K.The gridfile :

an adaptable symmetric multikey file stucture[C]//ACM T rans.on Database Systems ,1984,9(1):38271.[2] Bentley J L.Multidimensional binary search trees in

database applications [J ].Software Engineering ,1979,5(4):3332340.

[3] Beckmann N ,Kriegel H ,Schneider R ,et al.R 32

tree :an efficient and robust access method for points and rectangles[C]//ACM SIGMOD ,1990:3222231.

[4] Berchtold S ,Keim D ,Kriegel H P.The X 2tree :an

index structures for high 2dimensional data [C ]//22th VLDB ,1996:28239.

[5] White D A ,Jzin R.Similarity indexing with the SS 2

tree [C ]//Proceedings of the Twelfth International Conference on Data Engineering ,1996:5162523.[6] Jin H ,Ooi B B ,Shen H T ,Ao Y ing Zhou.An

adaptive and efficient dimensionality reduction algo 2rithm for high 2dimensional indexing[C]//Proceedings of the 19th International Conference on Data Engi 2neering ,2003:87298.

[7] Flickner M ,Sawhney H ,Niblack W ,et al.Query

by image and video content :the QBIC system [J ].Computer ,1995,28(9):23232.

[8] Wu P ,Manjunath B S ,Chandrasekaran S.An adap 2

tive index structure for high 2dimensional similarity search[C]//PCM 2001,L NCS 2195,2001:71278.[9] Cha G 2H ,Zhu X ,Petkovic D ,Chung C 2W.An effi 2

cient indexing method for nearest neighbor searches in high 2dimensional image databases [J ].IEEE

Transactions on Multimedia ,2002,4(1):76287.[10]Hanan Samet.Depth 2first k 2nearest neighbor finding

using the maxnearestdist estimator [C ]//Proceedings of the 12th

International Conference on Image

Analysis and Proceeding ,2003:4862491.

[11]胡 燕,吴虎子,钟 珞.中文文本分类中基于词性的

特征提取方法研究[J ].武汉理工大学学报,2007,29

(4):1322135.

4

41

相关主题
文本预览
相关文档 最新文档