文本分类之KNN
w为词t在文档d中所占的权重,得到各个训练集文档和测试集文档的向量表示:
采用KNN进行文本分类:
基本步骤:计算测试文档和每个训练文档的相似度,选取相似度最高的K个文档,采用多数表决的方法,得到测试文档的类别。
相似度计算可以采用欧式距离并采用[0,1]规范化,或者曼哈顿距离,这里我们采用cos方法:
如何确定K的值?只能在试验中确定,选取产生最下误差率的K值!
KNN的效果在理想情况下一般仅次于SVM:
但KNN也有些缺点:
In fact, KNN has no train process, it’s not proper for real time application
Parameters are difficult to decide,maybe no better than simple Naive Bayesian Model
Sometimes, some text docs belong to several classes