码迷,mamicode.com
首页 > 其他好文 > 详细

NN和KNN

时间:2017-10-28 18:59:11      阅读:192      评论:0      收藏:0      [点我收藏+]

标签:集中   应该   神经网络   距离   img   数据集   作用   ati   set   

1、最近邻分类器(NN)

假如现在用CIFAR-10数据集做训练集,判断一张未知的图片属于CIFAR-10中的哪一类,应该怎么做?

  现在有每个像素点的值,那我们就根据输入图片的这些值,计算和训练集中的图片距离,找最近的图片的类别。

  图像距离评定准则,其中最简单的是曼哈顿距离:计算所有像素点之间的差值,然后做加法。直观的理解如下:

  公式是技术分享,I1和I2可以看做两张图片,p可以看做矩阵的坐标

 

技术分享

 

问题1:此处NN调用寒小阳的例子报错,哪里出的问题?

2、KNN

就是在NN的基础上,找到最近的K个邻居,这几个邻居中哪一个类的数目最多,测试样本就属于哪一个类。

影响最后结果的因素:①距离计算方法的选择;②近邻个数K的取值

1)引出来训练集(train set),验证集(validation set),测试集(test set)这三个名词

  训练集:学习样本数据集,通过匹配一些参数来建立一个分类器。

  验证集:对学习出来的模型,调整分类器的参数,如在神经网络中选择隐藏单元数。问题2:具体的作用还是没有搞清楚?

 测试集:测试训练好的模型的分辨能力。

划分的用意在于了防止过度拟合,也就是不要太精确。如果所有的数据都参与训练,出来的结果对这些数据肯定最合适,但对于其它数据就不一定了。

一般把数据集的75%作为训练集,把数据集的25%作为测试集。其中训练集利用K折交叉验证法,将样本打乱,然后均匀分成K份,轮流选择其中K-1份训练,剩余的一份做验证,计算预测误差平方和,最后把K次的预测误差平方和再做平均作为选择最优模型结构的依据。

问题3:K的取值难道不是一个值,还得是一个列表?

 

NN和KNN

标签:集中   应该   神经网络   距离   img   数据集   作用   ati   set   

原文地址:http://www.cnblogs.com/wangxiao-zb/p/7747534.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!