ImageVerifierCode 换一换
格式:DOCX , 页数:7 ,大小:27.67KB ,
资源ID:15494736      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/15494736.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(KNN不足与改进Word文件下载.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

KNN不足与改进Word文件下载.docx

1、KNN算法是对NN(nearest neighbor)算法即近邻算法的改进,最初的近邻算法是由T.M. Cover,在其文章”Rates of Convergence for Nearest Neighbor Procedures,”中提出的,是以全部训练样本作为带标点,计算测试样本与所有样本的距离并以最近邻者的类别作为决策,后学者们对近邻算法进行了各方面的改进。1.1 KNN应用场景文本分类:文本分类主要应用于信息检索,机器翻译,自动文摘,信息过滤,邮件分类等任务。文本分类在搜索引擎中也有着大量的使用,网页分类/分层技术是检索系统的一项关键技术,搜索引擎需要研究如何对网页进行分类、分层,对不

2、同类别的网页采用差异化的存储和处理,以保证在有限的硬件资源下,提供给用户一个高效的检索系统,同时提供给用户相关、丰富的检索结果。回归:通过找出一个样本的k个最近邻居,将这些邻居的属性的平均值赋给该样本,就可以得到该样本的属性。更有用的方法是将不同距离的邻居对该样本产生的影响给予不同的权值(weight),如权值与距离成正比。可以使用knn算法做到比较通用的现有用户产品推荐,基于用户的最近邻(长得最像的用户)买了什么产品来推荐是种介于电子商务网站和sns网站之间的精确营销。1.2 KNN有如下优点- 算法易于理解且易于实现- 几乎没有训练过程(只是需要确定K值和必要的预处理)- 可以在线更新 -

3、 非线性分类器,鲁棒性强 二 KNN算法不足该算法在分类时有个主要的不足是,当样本不平衡时,如一个类的样本容量很大,而其他类样本容量很小时,有可能导致当输入一个新样本时,该样本的K个邻居中大容量类的样本占多数。因此可以采用权值的方法(和该样本距离小的邻居权值大)来改进。该方法的另一个不足之处是计算量较大,因为对每一个待分类的文本都要计算它到全体已知样本的距离,才能求得它的K个最近邻点。目前常用的解决方法是事先对已知样本点进行剪辑,事先去除对分类作用不大的样本。该算法比较适用于样本容量比较大的类域的自动分类,而那些样本容量较小的类域采用这种算法比较容易产生误分。【KNN的主要不足】- 计算量大,

4、分类速度慢 浓缩训练样本集 加快K个最近邻的搜索速度 KNN在对属性较多的训练样本进行分类时,由于计算量大而使其效率大大降低效果不是很理想。 懒惰算法,对测试样本分类时的计算量大,内存开销大,评分慢。- K值难以确定 目前没有很好的方法,一般采用先定一个初始值,然后根据实验测试的结果调整 K 值。 可解释性较差,无法给出决策树那样的规则。- 对于不平衡样本集比较敏感 采用权值的方法(增大距离小的邻居样本的权值)当样本不平衡时,如一个类的样本容量很大,而其他类样本容量很小时,有可能导致当输入一个新样本时,该样本的K个邻居中大容量类的样本占多数。三 KNN算法改进3.1 基于聚类的KNN算法改进3

5、.1.1传统的kNN算法对于测试集中每一个测试文本,都需要计算它与训练集中每个文本的距离,然后把距离排序找到离该测试文本最近的k个文本,根据测试文本与训练文本的距离来给该测试文档的候选类别按公式(1)评分。如果有属于同一个类别的,就将该类别中的文本的打分求和作为该类别的得分。最后,将得分排序,测试文本将被分配给得分最高的那个类别。SCORE(c|x) = sim(x,d)I(d,c)x是一个测试集文本,c是训练集的类别,d是距离x最近的k个文本之一;sim(x,d) 是文本x与文本d的相似度,这里指的是距离;I(d,c) 是表示d是否属于类c,如果属于类c则为1,否则为0。3.1.2改进的IK

6、NN算法首先对训练集文本进行聚类,采用DBSCAN算法。算法过程如下:第一步:如果文本对象P未被归入某个簇或标记为噪声,就检查它的指定半径邻域r,如果指定半径邻域内包含的对象数目大于等于给定的值m,就建立新簇C,将p的指定半径领域r中所有点加入该簇C;第二步:对C中所有尚未被处理(归入某个簇或标记为噪声)的对象q,检查它的指定半径邻域,如果该邻域内包含对象数目大于等于给定的值m,将该邻域中没有归入任何一个簇的对象加入C;第三步:重复第二步,继续检查C中未被处理对象,直到没有新的对象加入当前簇C:第四步:重复以上步骤,直到所有对象都被处理。其中关键参数为作为密度计算的距离表示的半径,密集点所必需

7、的在指定半径内拥有的最少的其他点的数目。通过这两个参数我们就可以计算在任何点周围的密度值。这样,训练集中文本就聚为若干个类了。每个簇的类别由簇中多数文本类别而定。然后结合KNN算法,计算测试集文本与训练集文本簇之间的距离,这样可以减少计算量和个别孤立点对测试集文本的影响。具体算法:对于任一个给定的测试集文本,计算与训练集中各个簇的距离,采用(2)式为测试集文本评分SCORE(c|x) = sim(x,t)I(t,c)其中x是一个测试集文本,c是训练集的类别,t是距离x最近的k个文本簇之一。sim(x,t) 是文本x与文本t簇的相似度,这里指的是距离;I(t,c) 是表示t簇是否属于类c,如果属

8、于类c则为1,否则为0;根据评分结果进行排序,选取前k个簇。从这些簇中选取n个与测试集文本最近的文本,按照(1)式评分,判定该测试集文本类别,回归到传统的KNN算法。改进算法中有领域半径r,指定邻域内最小文本数m,选取簇类个数k,从k簇中选取距离最小的n个文本这几个参数。根据试验表明,这几个参数需要经过多次试验,得出较优取值范围。3.2 用于文本分类的改进KNN算法在文本分类中,KNN 方法通常是建立在VSM 模型上的,其判断样本相似度的样本距离测度通常使用欧氏距离 在传统的欧氏距离中,各特征的权重相同,也就是认定各个特征对于分类的贡献是相同的,显然这是不符合实际情况的 同等的权重使得特征向量

9、之间相似度计算不够准确, 进而影响分类精度。本文采用加权欧氏距离公式,特征权重通过灵敏度方法获得传统KNN 方法样本相似度计算量较大和对样本库容量依赖性较强。在KNN 分类算法中,确定待分类样本类别需要计算其与训练样本库中所有样本的相似度,才能求得与其距离最近的I个样本众所周知,文本的特征向量空间具有很高的维数, 这样对于一个有成千上万的训练样本的文本分类系统而言,庞大的计算量将严重阻碍分类速度,难以达到用户的实际需求,甚至导致KNN 算法在文本分类中失去实用性 本文通过样本库的裁减来减少样本相似度的计算量, 提高KNN 的分类速度,以提高KNN 在文本分类中的实用价值降低样本相似度计算量,

10、加快KNN 算法分类速度的主要改进办法之一就是通过使用小样本库代替原来的大样本库进行分类。这类方法一般是在原来的训练样本库中选取一些代表样本作为新的训练样本,或删除原来的训练样本库中的某些样本,将剩下的样本作为新的训练样本库,从而达到减小训练样本库的目的O 这种途径最主要的方法是Hart 的Condensing 算法。WilSon 的Editing 算法和Devijver 的MultiEdit 算法,Kuncheva 使用遗传算法在这方面也进行了一些研究O 在训练样本库中每增加或删除一个样本时, 都要对样本进行一次测试,反复迭代直到样本库不再变化,这对于有成百上千的训练样本来说,其工作量是非常

11、巨大的O 在本文的裁减训练样本库的方法中,首先利用CURE 聚类算法获得样本数据库S 的代表样本库S1, 然后再用基于Tabu 算法的方法对新的训练样本库S1进行一步维护(增加或删除训练样本),以得到一个分类性能较优。样本量较小的训练样本库O 本文算法不仅极大缩减样本库裁减的工作量, 且在裁减样本库的基础上使KNN 算法的分类速度和分类精度都得到了提高O 实验结果表明了这种方法的有效性和实用性。3.3 改进的KNN方法及其在文本分类中的应用3.3.1 文本分类的KNN方法在向量空间模型中,文本的内容被形式化为多维空间中的一个点,通过向量的形式给出。正是因为把文档以向量的形式定义到实数域中,才使

12、得模式识别和其它领域中各种成熟的计算方法得以采用,极大地提高了自然语言文档的可计算性和可操作性。文档向量中的各个维对应于用于表征文档的各个特征属性。一般采用经典的TFIDF进行文档的特征权值的表示。KNN方法是一种基于实例的方本分类方法。首先,对于一个测试文本,计算它与训练样本集中每个文本的文本相似度,依文本相似度找出k 个最相似的训练文本。然后在此基础上给每一个文本类打分,分值是k个训练文档中属于该类的文本与测试文本之间的文档相似度之和。对这k个文本所属类的分值统计完毕之后,即按分值进行排序。为了分类合理,应当选定一个阈值,可以认为测试文本属于越过阈值的所有类。通过上面的分析可知道,KNN法

13、的实质就是以特征属性权值作为特征空间的坐标系测度,先计算测试文本与训练文本之间在该坐标系中的Cosine距离,然后依据测试文本与训练文本的距离远近来确定类别。显然,它没有非常显别地考虑特征属性关联及其现等因素对文本相似度的影响,可以认为恰当的考虑关联与共现等因素,KNN的效果应当更好。3.3.2 改进的KNN方法根据语言学知识,一定层次上的语义是由一定范围的词汇共同表达的,共同表达的词汇构成语义链。语义链中不仅有规范的词汇,而且有规范的次序。语义链的重现,就可以为彼此表达同一语义,而且能进一步认为,语义链重合量越多,那么语义同一性越大。向量空间中,每一个元素对应一个经过提取之后的文本特征,可以认为它就是语义链的一个组成部分。一个文本中的所有特征,构成了文本的整个语义,特征之间的相互关联和共现,对于文本相似度来说是很有意义的。然而,传统向量空间模型中相似度的计算没有很好地考虑到特征词之间的相互关联与共现,使分类结果不甚理想。四 参考文献【1】 王煜、张明、王正欧 用于文本分类的改进KNN算法 2007【2】 樊东辉 基于聚类的KNN算法改进【3】 孙丽华 一种改进的KNN方法及其在文本分类中的应用7

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1