您的位置:首页 > 其它

高效计算基础与线性分类器

2016-06-29 16:01 316 查看
七月算法5月深度学习班课程笔记——No.2


1. 深度学习与应用

  1. 图像上的应用:可以根据图片,识别图片的内容,描述图像;模仿人的创造性生成画作;相册自动归类等。

  


  


  

  2. NLP上的应用:用RNN学习某作家的文笔风格进行写作、学习代码写作等。下图为RNN学习了200M的代码量后自动生成的代码片段,代码的格式已经比较相似了。

  


  

  3. 综合应用:识别物体,再根据识别出来的物品组织成文本描述。

  


2. 高效计算基础

  python基本类型、容器等基础的语言知识,请移步:python基础教程

  Numpy:矩阵运算

  Scipy:稀疏矩阵求距离。

  科学计算库的安装与使用可以移步:Python及科学运算库的安装

3. 图像识别难点与KNN

  图像识别的核心问题:一个图像给计算机输入的是一个矩阵,每一个像素点上都是一个RGB颜色值,根据矩阵去做图像识别,计算置信度。

  难点:

  1. 视角不同:每个事物旋转或者侧视最后的构图都完全不同

  2. 尺寸大小不统一:相同内容的图片也可大可小

  3. 变形:很多东西处于特殊的情形下, 会有特殊的摆放和形状

  4. 光影等干扰/幻象重点内容

  5. 背景干扰

  6. 同类内的差异(比如椅子有靠椅/吧椅/餐椅/躺椅…)

  图像识别的基本流程:

输入:我们的给定K个类别的N张图片, 作为计算机学习的训练集。
学习:让计算机逐张图片地『 观察』 和『 学习』
评估:就像我们上学学了东西要考试检测一样, 我们也得考考计算机学得如何, 于是我们给定一些计算机不知道
类别的图片让它判别, 然后再比对我们已知的正确答案。


  K最邻近法(KNN):K最近邻,就是k个最近的邻居的意思,说的是每个样本都可以用它最接近的k个邻居来代表。KNN算法的核心思想是如果一个样本在特征空间中的k个最相邻的样本中的大多数属于某一个类别,则该样本也属于这个类别,并具有这个类别上样本的特性。

  KNN做图像识别有一些缺点,比如准确度不高,因为找不到图像合适的特征,而且KNN需要记录全部训练数据。那么可以试试线性分类器,用逻辑回归或者linearSVM。

4. 线性分类器

4.1 线性分类器

  线性分类器会有一个得分函数,比如CIFAR-10数据集,数据集里有10个类别,每个图像的大小都是32x32,每个像素点有RDB的值,所以总共有32x32x3=3072 个数,线性分类器就是把这些数作为输入,即3072x1的向量,给定权重矩阵W[n*3072],n是要判定的类别的数量。通过矩阵相乘得到得分函数:

  f(x,W)=Wx+b

  其中W是通过训练得到的。那么得到的得分高低就可以判定类别。

  


  线性分类器的理解:

  1. 空间划分:Wx+b是空间的点。

  2. 模板匹配:W的每一行可以看做是其中一个类别的模板。每类得分,实际上是像素点和模板匹配度,模板匹配的方式是内积计算。

4.2 损失函数

  损失函数:由得分函数我们知道,给定W,可以由像素映射到类目得分。损失函数用来评估W、b的好坏,衡量吻合度,可以通过调整参数/权重W, 使得映射的结果和实际类别吻合。有两种损失函数:

  一是hinge loss/支持向量机损失

  对于训练集中的第i张图片数据xi,在W下会有一个得分结果向量f(xi,W),第j类的得分为我们记作f(xi,W)j,则在该样本上的损失我们由下列公式计算得到:

  Li=∑j≠yimax(0,f(xi,W)j−f(xi,W)yi+Δ)

  假如有猫、狗、船三个类别,得分函数计算某张图片的得分为f(xi,W)=[13,−7,11],而实际的结果是第一类yi=0。假设Δ=10,用上面的公式把错误类别(j≠yi)都遍历了一遍,则求值加和:

  Li=max(0,−7−13+10)+max(0,11−13+10)

  计算得到狗的损失函数为0,船的损失函数为8,所以被判定为船的概率还是比较高的。所以Δ可以看做一个超参数,规定一个警戒线用来平衡损失。

  


  

  二是互熵损失(softmax分类器)

   对于训练集中的第i张图片数据xi,在W下会有一个得分结果向量fyi,则损失函数记作:

   Li=−log(efyi∑jefj)

   把得分求exp再做归一化,计算损失。两种损失函数得到的结果会有些区别,实际的求解过程比较如下:

  


5. 实践

  KNN分类器、用SVM和Softmax分类器做图像分类,详见ipython。

More

python做科学计算

深度学习—线性分类器视频及PPT下载
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息