华为计算机图像学习

https://ilearningx.huawei.com/portal/courses/course-v1:HuaweiX+NEOCN03001+Self-paced/about

1.4 统计学习理论的起源和基本思想
华为计算机图像学习
1.5 计算机视觉的三大基本原则
深度学习网络参数多达600万个,但是数据集最多才1500万个,所以会产生过拟合现象,解决是加入先验条件。
局部性、层次化、几何信息
1.6 计算机视觉的两大里程碑
Bag-of-visual-words(bovw) model(传统方法)
The convolutional neutral network卷积神经网络
本讲总结&小测

  1. 计算机以像素形式存储图像。图像中包含丰富的语义信息,难以直接获取。
  2. 计算机视觉经历了漫长而艰辛的发展历程。
  3. 人类与计算机理解图像的方式截然不同,因此也带来了本质困难。
  4. 图像理解的最大困难在于捕捉不变性,统计学习是当前最好的方法。
  5. 计算机视觉有三大设计原则:局部性、层次化和几何信息。
  6. 计算机视觉的两个最近的里程碑,属于视觉词袋模型和深度神经网络。

2.传统方法和数据结构
2.1 传统方法的方法论和重要性
步骤:局部特征的抽取,量化(码本),根据码本做出判断
相似度的计算
2.2 从像素中抽取局部特征
值得一学的传统方法SIFT\HOG\GLOH\SURF\LCS\DAISY\ORB\BRIEF\LIFT
全局特征的例子:颜色直方图
局部特征:
关键概念“梯度”——在图像中识别像素与周围像素间的变化率大的地方。
每个像素与周围像素的差异性,差异性大的被认为是有用特征,梯度方向指向亮度变大的方向。有此方向不怕图像旋转。在筛选后后续处理(DOG)。
一张图沿着不同亮度的阈值进行处理,这些不同阶段中一直保持不变的区域被认为具有重要特征。
密集采样方法更多用在图像分类,特征方法用在图像检索。
在特征采样基础上提出仿射变换(拉伸,旋转…)
SIFT(scale-invariant feature transform尺度不变性方法)不仅能够计算哪个方向变化大,还能计算变化变化量。旋转不变形、尺度不变形(与DOG一脉相承)
SIFT基础上的HOG(histogram of oriented gradients)算法
2.3 码本:建立视觉字典
(基本算法)聚类法:特征的相似性可以通过几何距离k -均值及其变化量来度量。问题:分多少类?
(进阶)层次化的码本:分四个聚类时,先分两个聚类,再分4个聚类。
Compositional码本
2.4 图像层面的编码和向量表示
通过码本获得图像级的表述 。
硬量化:离聚类中心最近就认为是此表述。产生问题——会有些点与两个聚类中心都相近(量化误差)。故而产生…
软量化:每个点可以和周围若干个单词产生关系。
更有效方法时引入高阶特征,不光记录归属那个单词,也记录什么路径归属,归属的程度等等。或者从视觉单词构成视觉短语,以此来表达更好的概念。
2.5 一个无需学习的例子:基于内容的检索系统
华为计算机图像学习
但以上方法效率较低,所以之后设计了倒排表。原来给定图像抽取特征,倒排意思是给定特征id,搜索包含此id的图像。举例…
华为计算机图像学习
在倒排表基础上的TFIDF,Qe…

2.6 一个需要学习的例子:物体分类和检测
如何增强图的图像集表述:SPM(spatial pyramid matching空间金字塔匹配)
华为计算机图像学习
为了提高速度——提出支撑向量机,通过学习的方式将图像划分为若干区域。通过核函数将非线性空间映射到线性空间中去,使其更具有扩展性。
从2012年起局部特征加向量机再没赢过深度学习。
2.7 传统方法的局限性
有太多的手工设计,导致学习能力的下降。
2.8 传统方法留下的遗产
局部特征的可复现性强——现在的卷积神经网络

本讲总结&小测
1. 传统方法(如视觉词袋模型)是计算机视觉发展的一个重要里程碑。
2. 传统方法主要分为三个步骤:特征的抽取、字典的建立和特征的编码。
3. 图像级编码信息,可以用于不同的视觉任务,并与各种学习算法结合。
4. 虽然传统方法在今天的应用已经很少,但其中的思想仍然有着深远的影响。

3.深度学习和神经网络
3.1 深度学习的方法论和重要性
华为计算机图像学习
3.2深度学习三要素:数据(监督)、操作(学习参数)、损失函数(最终输出)
术语:
网络术语:层,宽(层上的尺度,输出的个数指标),高(层上的尺度,一层的通道数channel,如RGB),深度(通常指网络中层的数量)
网络复杂度:模型大小(可悲训练的参数多少),模型复杂度(以网络中需要的浮点数运算来度量的,一个乘法加一个加法算一次FLOPs,FLOPS则指硬件计算速度要区分),网络的感受眼(传到某一层时能够看到图像的多大范围)
3.3 感知器:最早的神经网络
华为计算机图像学习
全连接层概念:每一个输入和每一个输出都有连接。
**函数,计算计算量时被忽略。**函数一般为非线性函数,使其具有非线性的划分能力。
失败原因:这个模型本质是一个神经网络版本的全局特征。视觉三大因素都未被解决。
卷积具有局部特性。
华为计算机图像学习
深度概念:一般指层的概念,是指的有效的线性层的数量。**函数的那一层不算,没有多少学习的东西。其次,两个全连接层的组仍为线性层,其实一个层即可达到,故两个线性层连续被称为一个层。以上网络只有3层。
3.4 现代化的深度卷积神经网络
把一个固定大小的卷积核在图片空间中进行平移,遍历空间中的所有可覆盖位置。现在常见大小是33大小。它会在不同的位置上共享权重!!用处在于33的卷积核成为一种pattern。看这一部分是否在卷积核下产生了很强的响应,类似滤波效果。
Padding技巧:33卷积核在66图片上游走,本来输出44结果,但是通过padding弄成66.想象在6*6外再加一圈,幅值为0.从而不考虑边界,使得输入和输出的大小一样。
Pooling:卷积结果可以决定一层中的channel个数,pooling则通过此结果后只有一个channel。使得输入时有多少channe,输出就有多少channel。是在卷积核的空间中进行规整化,捕捉平移不变性。
华为计算机图像学习
感受眼概念详解!!!
为什么23年只多了3层那么困难?
华为计算机图像学习
3.5 宽度和深度对神经网络的影响
深度不够使得每一层负担加重,使得学习不完整。
深度比宽度更有用,因为深度加深使得神经元之间的组合呈指数级的增长,表达的更多。
同样,加深后带来过拟合的挑战增加。
3.6 训练神经网络:数值稳定性和过拟合
以SGD(stochastic gradient descent随机梯度下降)为基础的训练技巧。从大数据中先取一个小数据集minibatch,在minibatch中算其损失函数、梯度等。
为了满足训练要求,把网络堆深:
解决under-fitting(欠拟合)——替换**函数
Overfitting(过拟合)——对网络正则化
Numerical instability(数值不稳定,网络太深时易产生)——normalization标准化
Information flow信息流——通过多通道的连接方式缓解
under-fitting(欠拟合)——替换**函:sigmoid函数的饱和区太长。因为sigmoid达到接近1时,梯度消失,变得训练不动。改为ReLU=MAX{X,0}
Overfitting(过拟合)——对网络正则化:太好的拟合训练集,而实际使用效果不好。利用dropout函数解决,随机的丢弃每一层每一个神经元的值。Dropout同时能使越深层网络的输出越稀疏,是我们想要的。
Numerical instability(数值不稳定,网络太深时易产生)——normalization归一化。数值稳定性是说,神经网络通常具有放大效应或缩小效应,所以需要归一化,仿真多层后数值过大和过小。
Information flow信息流——通过多通道的连接方式缓解:skip-connected neutrons跳连层设计,中间跳过一个层,仿真多层间数据的有时信息消失。一般会经过一层卷积或多层卷积后才跳连。
3.7 一些典型的神经网络训练过程
AutoML自动化机器学习的引入
3.8 深度学习的成就、局限性和未来方向
本讲总结&小测
1. 深度学习是当前人类掌握的最强有力的AI解决方案。
2. 深度神经网络由一些基本单元组成,通过深度堆叠产生强大的表达能力。
3. 深度神经网络的训练过程十分复杂,需要大量的技巧以保持稳定性。
4. 深度学习的发展前景良好,但在未来还将面临巨大挑战。