文本分类中KNN算法

原创 2007年09月30日 15:46:00
文本分类中KNN算法,该方法的思路非常简单直观:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。该方法在定类决策上只依据最邻近的一个或者几个样本的类别来决定待分样本所属的类别。

    KNN方法虽然从原理上也依赖于极限定理,但在类别决策时,只与极少量的相邻样本有关。因此,采用这种方法可以较好地避免样本的不平衡问题。另外,由于KNN方法主要靠周围有限的邻近的样本,而不是靠判别类域的方法来确定所属类别的,因此对于类域的交叉或重叠较多的待分样本集来说, KNN方法较其他方法更为适合。

    该方法的不足之处是计算量较大,因为对每一个待分类的文本都要计算它到全体已知样本的距离,才能求得它的K个最近邻点。目前常用的解决方法是事先对已知样本点进行剪辑,事先去除对分类作用不大的样本。另外还有一种Reverse KNN法,能降低KNN算法的计算复杂度,提高分类的效率。

    该算法比较适用于样本容量比较大的类域的自动分类,而那些样本容量较小的类域采用这种算法比较容易产生误分。

 

k近邻分类器具有良好的文本分类效果,对仿真实验结果的统计分析表明:作为文本分类器,k近邻仅次于支持向量机,明显优于线性最小二乘拟合、朴素贝叶斯和神经网络。

重点:

1:特征降维(一般用CHI方法)

2:截尾算法(三种截尾算法)

3:降低计算量 

文本分类算法之--KNN算法的简介

1、KNN算法的简介 kNN算法就是找到k个最相似的样本,这些样本所在的类,就是当前文档的所属的类。如下图:绿色圆圈表示你想分类的文本,其他是已知类别的样本。图中其他形状和绿色圆圈的距离代表了相似度...
  • u011955252
  • u011955252
  • 2016年02月28日 11:12
  • 1125

文本分类KNN算法

文本分类中KNN算法,该方法的思路非常简单直观:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。该方法在定类决策上只依据最邻近的一个或...
  • lyflower
  • lyflower
  • 2007年08月06日 15:47
  • 9133

文本分类——KNN算法

上一篇文章已经描述了朴素贝叶斯算法newgroup的分类实现,这篇文章采用KNN算法实现newgroup的分类。 文中代码参考:http://blog.csdn.net/yangliuy/articl...
  • jiangsanfeng1111
  • jiangsanfeng1111
  • 2016年03月28日 15:26
  • 3769

数据挖掘-基于贝叶斯算法及KNN算法的newsgroup18828文本分类器的JAVA实现(上)

(update 2012.12.28 关于本项目下载及运行的常见问题 FAQ见 newsgroup18828文本分类器、文本聚类器、关联分析频繁模式挖掘算法的Java实现工程下载及运行FAQ ) ...
  • lostinai
  • lostinai
  • 2015年10月30日 16:14
  • 808

采用Weka中的KNN算法进行文本分类

Weka是新西兰Waikato大学开发的一款开源的基于Java的数据挖掘工具,其官方网址为http://www.cs.waikato.ac.nz/ml/weka/。Weka作为一个公共的数据挖掘的平台...
  • yunzhongfeiniao
  • yunzhongfeiniao
  • 2013年11月30日 21:07
  • 5282

机器学习经典算法详解及Python实现--K近邻(KNN)算法

KNN(K Nearest Neighbors,K近邻 )算法是机器学习所有算法中理论最简单,最好理解的一种监督学习算法。KNN是一种基于实例的学习,通过计算新数据与训练数据特征值之间的距离,然后选取...
  • suipingsp
  • suipingsp
  • 2014年12月16日 19:38
  • 13205

基于kNN的文本分类原理以及实现

    前两天写了 基于libsvm中文文本分类 ,只是做到了会用的,SVM的理论性太强了,理解起来还是很费劲的。不过SVM的应用很广泛,除了文本分类,比如人脸识别,手写识别,甚至验证码识别都可以...
  • marising
  • marising
  • 2010年08月30日 18:24
  • 6103

菜鸟进阶: C++实现KNN文本分类算法

转载自:http://www.cnblogs.com/finallyliuyu/archive/2010/09/26/1836285.html 原始作者:finallyliuyu(转载请...
  • leoking01
  • leoking01
  • 2016年03月03日 19:48
  • 1025

【python 编程】文本分类KNN算法实现及结果输出

KNN算法实现文本分类 ascii 系统 5 账号 2 密码 2 分辨率 2 用户名 1 用户 1 软件 1 苹果 1 密码技术 1 宽度 1 火狐 1 0、rd-doc—c...
  • jiayanhui2877
  • jiayanhui2877
  • 2014年05月14日 16:02
  • 4682

kNN文本分类器实现

本人本科毕业设计题目为:《基于摘要词频信息的论文分类方法的研究和实现》,属于文本分类(Text Classification)方面的内容。本人实现了kNN文本分类器,使用语言为Matlab(因为该脚本...
  • u014402149
  • u014402149
  • 2015年06月02日 19:09
  • 1348
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:文本分类中KNN算法
举报原因:
原因补充:

(最多只允许输入30个字)