斯坦福李飞飞-深度学习与计算机视觉 数据驱动的图像分类方式:K最近邻与线性分类器
2017-10-10 12:57
691 查看
图像分类是最基础的
challenges
- 拍摄角度
- 亮度
- 形变
- 遮蔽一部分
- 背景杂斑
数据驱动
收集数据
用机器学习的方法训练数据
用得到的模型进行预测
差的绝对值
欧氏距离
差的平方
加快速度
对于形变效果不好
challenges
- 拍摄角度
- 亮度
- 形变
- 遮蔽一部分
- 背景杂斑
数据驱动
收集数据
用机器学习的方法训练数据
用得到的模型进行预测
近邻分类器
待分类对象的类别可以通过在它附近的训练数据的类别来确定,所以采取的策略就是找到离待分类对象最近的邻居进行分析。如何定义距离
曼哈顿距离差的绝对值
欧氏距离
差的平方
复杂度分析
随规模增大线性减慢近似近邻算法
FLANN加快速度
KNN
def classify(inX, dataSet, labels, k): dataSetSize = dataSet.shape[0] # 数据集大小 # 计算距离 diffMat = tile(inX, (dataSetSize, 1)) - dataSet sqDiffMat = diffMat**2 sqDistances = sqDiffMat.sum(axis=1) distances = sqDistances**0.5 # 按距离排序 sortedDistIndicies = distances.argsort() # 统计前k个点所属的类别 classCount = {} for i in range(k): votaIlabel = labels[sortedDistIndicies[i]] classCount[votaIlabel] = classCount.get(votaIlabel, 0) + 1 sortedClassCount = sorted(classCount.iteritems(), key=operator.itemgetter(1), reverse=True) # 返回前k个点中频率最高的类别 return sortedClassCount[0][0
用什么距离?
k等于多少?
只能自己测试缺点
效率低对于形变效果不好
线性分类器
相关文章推荐
- 斯坦福cs231n学习笔记(2)------数据驱动的图像分类方式:K最近邻与线性分类器
- Stanford CS231n Lecture 2 数据驱动的图像分类方式:K近邻与线性分类器
- 深度学习与计算机视觉[CS231N]学习笔记(2.1):图像分类
- 斯坦福李飞飞-深度学习与计算机视觉 计算机视觉历史回顾与介绍
- OpenCV 图像处理 计算机视觉 深度学习 优秀博主推荐
- CS231n 学习笔记(1)——神经网络 part1 :图像分类与数据驱动方法
- 资料网址大全 (数学,深度学习,机器学习,计算机视觉,人脸识别,图像处理等)
- 深度学习与计算机视觉(11)_基于deep learning的快速图像检索系统
- 【计算机视觉】【神经网络与深度学习】YOLO v2 detection训练自己的数据
- 【计算机视觉】【神经网络与深度学习】YOLO v2 detection训练自己的数据2
- [译]图像分类:数据驱动方法、K-最近邻、train/val/test分离 (1)
- 计算机视觉与图像处理学习笔记(三)opencv的基本数据类型与简单图像处理函数
- 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时8&&9
- 【计算机视觉】【神经网络与深度学习】深度学习在图像超分辨率重建中的应用
- [深度学习与计算机视觉] 斯坦福 CS231n 2017 学习笔记 -1 (Lecture 1: Introduction;课程介绍)
- 深度学习与计算机视觉(11)_基于deep learning的快速图像检索系统
- [深度学习基础] 1. 图像识别问题的挑战及数据驱动过程
- 深度学习入门笔记--图像线性分类
- [深度学习基础] 1. 图像识别问题的挑战及数据驱动过程
- 深度学习与计算机视觉(11)_基于deep learning的快速图像检索系统