Java教程

kNN算法

本文主要是介绍kNN算法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一、电影类别分类:初识kNN

k近邻法(k-nearest neighbor, k-NN)是1967年由Cover THart P提出的一种基本分类与回归方法。

它的工作原理是:存在一个样本数据集合,也称作为训练样本集,并且样本集中每个数据都存在标签,即我们知道样本集中每一个数据与所属分类的对应关系。

输入没有标签的新数据后,将新的数据的每个特征与样本集中数据对应的特征进行比较,然后算法提取样本最相似数据(最近邻)的分类标签。

一般来说,我们只选择样本数据集中前k个最相似的数据,这就是k-近邻算法中k的出处,通常k是不大于20的整数。

最后,选择k个最相似数据中出现次数最多的分类,作为新数据的分类。

举个简单的例子,我们可以使用k-近邻算法分类一个电影是爱情片还是动作片。

表1.1

上表1.1,就是我们已有的数据集合,也就是训练样本集。

这个数据集有两个特征,即打斗镜头数和接吻镜头数。

除此之外,我们也知道每个电影的所属类型,即分类标签。用肉眼粗略地观察,接吻镜头多的,是爱情片。打斗镜头多的,是动作片。

以我们多年的看片经验,这个分类还算合理。如果现在给我一部电影,你告诉我这个电影打斗镜头数和接吻镜头数。不告诉我这个电影类型&

这篇关于kNN算法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!