KNN,TC(text category)基本算法

本文介绍了kNN分类算法的基本原理及应用。通过计算待分类文档与训练集中文档的相似度,选择最近邻文档集合来确定待分类文档的类别。kNN算法简单有效,但计算复杂度随训练集规模增加而升高。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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的计算需要实际测试,选取合时的值,利用文档和这些邻居的相似关系,以及邻居的分类信息,得到该类的分类信息,寻找最大可能性的分类.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值