课时4 数据驱动的图像分类:K最邻与线性分类器(上)

图像分类之前,我们需要将图片转换成一张巨大的数字表单,然后从所有种类中,给这个表单选定一个标签。

为什么分类问题是个困难的问题:图像分类难点是,当你想要处理这表单中数以百万计的数字并对其进行分类,这个问题是相当的复杂的,另外,相机是可以进行旋转和缩放的,并且旋转、平移、聚焦点选取等操作都会让图片样式不同。再考虑下相机高度的调整,这些所有的相机调整会使图片看起来完全不一样,我们对所有这些调整都具有鲁棒性;还有一些其他的挑战,例如光纤问题,我们对干扰也要具有强健的鲁棒性;还有形变的问题,也要对这种干扰具有鲁棒性;还有遮蔽的问题,有时候我们不能看到物体的全貌;背景杂斑问题,要检测的物体可能融入背景之中;同类演变问题。任何一个独立的问题都是十分复杂的。

我们构建一个三维空间,将x轴上的值定为种类标签值(没有任何一种显式的编程方法能实现这样的分类器),有一种算法例如排序算法能够实现这样的分类器。

近邻算法分类器

近邻算法:分类器的工作方式是高效的得到本联合训练集。在一段训练时间内,我们只需记住所有的训练数据,所以我们得到了 我们刚刚输入的全部训练数据,并且我们记住了他们。现在当你给我们一张测试图像时,我们要做额就是对测试图像和之前看过得每一张训练集中的图像进行一一对比,然后我们会传送相应的标签。

我们要如何定义距离的度量

其中最简单的方式可能就是曼哈顿距离算法,L1距离算法,该算法的内容是你有一个测试图像,认为我们需要一个单一的训练图像来比较该图像,基本上我们需要做的就是我们将逐元素比较,所有的像素值,形成绝对值的差,然后我们将差值全部相加。就是说只要观察每一个像素的位置,得到同一个空间位置的像素差,将其全部相加就得到了相似性。

欧式距离(L2距离)不是计算绝对值差的和,而是计算这些图像间差值的平方和。一个用来进行控制的离散选择,这个距离的选择我们称为超参数

对于近邻算法分类器有一个问题

他的速度如何取决于训练数据的大小?当训练数据的规模增大时将会发生什么?会变慢吗?是的,事实上他减慢的速度是线性的。因为我们只是独立地比较每一个训练样本,所以他会线性地减慢。

近邻算法是一个即时的训练方法,但同时他又是一个昂贵的测试方法,不管你的训练集有多大,我们对于每一张测试实例进行分类的计算量都将是恒定的。

能使近邻算法分类器速度加快的方法:近似近邻算法。

最邻近规则分类器KNN:检查每一张测试图像,事实上,单一邻近的训练实例 将检索几个最邻近的实例,我们将它们在所有的类中做多数的表决,从而对每一个测试实例进行分类。当K值变大,会发现边界变得平滑。  对于K值的选择是一个超参数 ,采用了不同的测量标准,效果最好的便是我所需要的。如果数据过少,可以使用交叉验证法,在选择中反复选择测试验证折,在所有可能的测试折的选择中选出效果最好的。但是KNN很少被采用的原因是效率低。

不同的方法会有不同的泛化方式

卷积神经网络CNN可用于机器视觉,循环神经网络RNN非常适用于排序问题。

斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时4的更多相关文章

  1. 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时3

    课时3 计算机视觉历史回顾与介绍下 ImageNet有5000万张图片,全部都是人工清洗过得,标注了超过2万个分类. CS231n将聚焦于视觉识别问题,图像分类关注的是大图整体:物体检测告诉你东西具体 ...

  2. 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时1

    课时1 计算机视觉历史回顾与介绍上 CS231n:这一一门关于计算机视觉的课程,基于一种专用的模型架构,叫做神经网络(更细一点说,是卷积神经网络CNN).计算机视觉是人工智能领域中发展最为迅猛的一个分 ...

  3. 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时26&&27

    课时26 图像分割与注意力模型(上) 语义分割:我们有输入图像和固定的几个图像分类,任务是我们想要输入一个图像,然后我们要标记每个像素所属的标签为固定数据类中的一个 使用卷积神经,网络为每个小区块进行 ...

  4. 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时24&&25

    课时24 深度学习开源库使用介绍(上) Caffe 被用于重新实现AlexNet,然后用AlexNet的特征来解决其他事情 用C++书写的,可以去GitHub上面读取源代码 主要四个类: Blob可以 ...

  5. 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时8&&9

    课时8 反向传播与神经网络初步(上) 反向传播在运算连路中,这是一种通过链式法则来进行递推的计算过程,这个链路中的每一个中间变量都会对最终的损失函数产生影响. 链式法则通常包含两部分,局部梯度和后一层 ...

  6. 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时12&&13

    课时12 神经网络训练细节part2(上) 训练神经网络是由四步过程组成,你有一个完整的数据集图像和标签,从数据集中取出一小批样本,我们通过网络做前向传播得到损失,告诉我们目前分类效果怎么样.然后我们 ...

  7. 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时11

    课时11 神经网络训练细节part1(下) 2010年,Glorot等人写的论文,我们称之为Xavier初始化,他们关注了神经元的方差表达式.他们推荐一种初始化方式,那就是对每个神经元的输入进行开根号 ...

  8. 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时10

    课时10 神经网络训练细节part1(上) 没有大量的数据也不会有太多影响,只需要找一个经过预训练的卷积神经网络然后进行调整 从数据集中抽样一小批数据, 将数据运入卷积神经网络中来计算损失值 通过反向 ...

  9. 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时7

    课时7 线性分类器损失函数与最优化(下) 我们为什么要最大化对数概率而非直接最大化概率? 你在做逻辑斯蒂回归时,如果你只是想要最大化概率,那你使用log是无意义的.因为log函数是单调函数,最大化概率 ...

  10. 斯坦福CS231n—深度学习与计算机视觉----学习笔记 课时14&&15

    课时14 卷积神经网络详解(上) CNN处理的是一些数据块,在这之间有很多层,一系列的层将输入数据变换为输出数据,所以完成操作的中间量不仅是NN时候讲的那些向量,而是立体结构,有宽,高和深度,在整个计 ...

随机推荐

  1. BUPT复试专题—统计节点个数(2013)

    题目描述 给出一棵有向树,一共有n个节点,如果一个节点的度(入度+出度)不小于它所有儿子以及它父亲的度(如果存在父亲或儿子),那么我们称这个节点为p节点,现在你的任务是统计p节点的个数. 如样例,第一 ...

  2. Dynamics CRM 2015中的SSRS Report集成配置

    大家应该都知道.Dynamics CRM能集成SSRS Report,而且我也在之前的博文中讨论过怎样制作一个简单的SSRS Report并部署到Dynamics CRM中.今天我们来看看一些比較有用 ...

  3. FlashBuilder找不到所需要的AdobeFlashPlayer调试器版本的解决方案

    这个问题就是因为你所装的FlashPlayer不是调试器版本.如果你的FlashPlayer是调试版,那么你随便打开一个有Flash的页面,然后右键点击Flash,就会有一个调试器,菜单,当然它现在是 ...

  4. java开始到熟悉100-102

    本次内容:arraylist() 1. package list; import java.util.ArrayList; import java.util.Date; import java.uti ...

  5. XML语法笔记

    XML(可扩展标记语言) XML的特点: XML是一种标记语言,适合跨平台.跨语种信息交互XML被用于存储.传输数据XML可扩展性良好,没有预定义标签,需要用户自定义标签XML具有自我描述性XML采用 ...

  6. Struts2+Spring+Hibernate step by step 04 整合Spring之二,从数据库验证username和password

    注:本系列文章部分内容来自王健老师编写ssh整合开发教程 使用Spring的AOP进行项目的事务管理,已经成为非常多企业的首先,Spring做为优秀的开源项目,其在数据库连接.事务管理方面的优势已经显 ...

  7. 使用脚本删除ios工程中未使用图片

    使用脚本删除ios工程中未使用图片 最近在读唐巧大神的<iOS开发进阶>,学到了一个大招:使用脚本删除ios中未使用的图片(纸书上有点小问题,参考github上的issue:使用脚本删除i ...

  8. 使用DWR实现自己主动补全 相似百度搜索框的自己主动显示效果

    使用DWR实现自己主动补全 自己主动补全:是指用户在文本框中输入前几个字母或汉字的时候,自己主动在存放数据的文件或数据库中将全部以这些字母或汉字开头的数据提示给用户供用户选择 在日常上网过程中,我们常 ...

  9. CXF发布在Web服务

    1.下载apache-cxf-3.1.4,将jar引入新工程中. 2.People.java package com.soap.server; import java.util.Date; impor ...

  10. Java程序员从笨鸟到菜鸟之(十五)Html基础积累总结(下)

     本文来自:曹胜欢博客专栏.转载请注明出处:http://blog.csdn.net/csh624366188 一:表格 1.表格的基本语法 <table>...</table> ...