KNN,TC(text category)基本算法

来源:互联网 发布:淘宝留学中介受骗 编辑:程序博客网 时间:2024/05/01 14:47

kNN分类算法 kNN分类算法是一种传统的基于统计的模式识别方法。算法思想很简单:对于一篇待分类文档,系统在训练集中找到k个最相近的邻居,使用这k个邻居的类别为该文档的候选类别。该文档与k个邻居之间的相似度按类别分别求和,减去一个预先得到的截尾阈值,就得到该文档的类别测度。用kNN也表示所选k个最相近文档的集合,公式(11-9)刻画了上述思想[Yang and Liu,1999]。

其中,x为一篇待分类网页的向量表示;di为训练集中的一篇实例网页的向量表示;cj为一类别;(当d属于c}1,0{),(∈jicdyj时取1;当不属于cdj时取0);bj为预先计算得到的cj的最优截尾阈值;为待分类网页与网页实例之间的相似度,由文档间的余弦相似度公式(11-10)计算得到:

kNN算法本身简单有效,它是一种lazy-learning算法,分类器不需要使用训练集进行训练,训练时间复杂度为0。kNN分类的计算复杂度和训练集中的文档数目成正比,也就是说,如果训练集中文档总数为n,那么kNN的分类时间复杂度为O(n)。 

 KNN需要人工分类一部分数据,例如代分类总数为4,则必须为每个分类寻找足够的样本,每个样本有人工分类。对于某个代分类文档,随机抽取n个邻居,n的计算需要实际测试,选取合时的值,利用文档和这些邻居的相似关系,以及邻居的分类信息,得到该类的分类信息,寻找最大可能性的分类.

原创粉丝点击