笔记:计算机视觉与深度学习-北邮-鲁鹏-2020年录屏

写在开头(重复的)

1.课程来源:B站视频.
2.笔记目的:个人学习+增强记忆+方便回顾
3.时间:2021年4月12日
4.同类笔记链接:(钩子:会逐渐增加20210428)
第一讲.第二讲.第三讲.第四讲.第五讲.第六讲.第七讲.第八讲.第九讲.第十讲.第十一讲.番外篇一个简单实现.第十二讲.第十三讲.第十四讲完结.
5.请一定观看视频课程,笔记是对视频内容的有限度的重现和基于个人的深化理解。
6.注意符号 SS:意味着我的个人理解,非单纯授课内容,有可能有误哦。

—以下正文—

一、全景预览(共11个问题)

在这里插入图片描述
注:图像表示问题一笔带过

二、多层感知器(又称全连接神经网络)

(一)由线性分类器引出(层层套娃)

  • 1.全连接神经网络,可以看作多个线性分类器经过非线性连接以后的结果。
    在这里插入图片描述

    • 1.1其中max(0,…)称为激活函数
  • 2.一层的线性分类器,无论实现还是训练都已经很麻烦,为什么还有分层?

    • 2.1在只有一层的情况下,我的线性分类器的权值矩阵W只能是10×3072的二维矩阵。(10由类别标签个数确定,3072由图片格式决定)
    • 2.2 SS 从线性代数角度讲,在两层情况下,矩阵乘法a×b是10×3072时,a的列数和b的行数只要相等就可以是任何数。比如a是10×100矩阵,b是100×3072矩阵,则a×b仍是10×3072矩阵。由此回到分类其中,a=W2,b=W1,仍能保证,输入3072维的x图像,输出10个类别标签的得分。
    • 2.3 SS 可行性有了,优越性体现在何处?空泛的说,你更自由了,更自由必然是好的。具体来说,你可以在一开始分成更多类,分的越精准,最后输出的错误越少。
  • 3.线性可分与线性不可分

    • 在这里插入图片描述
  • 线性可分由线性分类器输出。
    在这里插入图片描述
  • 线性不可分由全连接神经网络输出。
  • 二维平面上,线性可分都有难度,请自行想象3072维空间中,是否可能画出线性的超平面,用于划分不同的标签?
  • 4.绘制与命名在这里插入图片描述

三、激活函数

  • 1.四种常用激活函数
    在这里插入图片描述

  • 2.sigmoid函数也叫Logistic函数,它可以将一个实数映射到(0,1)的区间,可以用来做二分类。优点:平滑、易于求导。缺点:激活函数计算量大,反向传播求误差梯度时,求导涉及除法;反向传播时,很容易就会出现梯度消失的情况,从而无法完成深层网络的训练。

    • 2.1Sigmoid函数由下列公式定义:
    • 在这里插入图片描述
    • 2.2其对x的导数可以用自身表示:
    • 在这里插入图片描述
    • 2.3Sigmoid函数的图形如S曲线
    • 在这里插入图片描述
    • 2.4比较活跃的取值范围[-5,5],在之外,函数值就非常接近0,或接近1。
  • 3.tanh函数

  • 4.ReLU函数

  • 5.Leaky ReLU函数

四、网络结构设计

(一)提出问题

  • 1.用不用隐层?用几个隐层?(深度设计)
  • 2.每个隐层设计多少个神经元?(宽度设计)
  • 3.本节不谈,但是也很重要的方面,选择什么样的激活函数?

(二)模型的复杂程度要与现实问题的复杂程度相匹配

  • 1.一个例子,神经元个数越多,能画出越复杂的分界面,但过复杂的分界面也有过拟合的问题
    在这里插入图片描述

五、损失函数之SOFRMAX与交叉熵

(一)什么叫SOFTMAX

  • 1.为什么?答:在使用模型时,一张图对应10个标签的不同分数,分数最高的标签,最可能对。但每个标签可能正确的概率是多少要如何表示?使用SOFTMAX方法表示。
  • 2.怎么算?(视频34:55)详细步骤可回顾
  • 在这里插入图片描述
  • 3.一个实例
  • 最后得出的0.21bird、0.01cat、0.78car是一个概率分布在这里插入图片描述

(二)交叉熵损失

  • 1.如何度量现在的分类器输出的该楼层分布与预测值之间的距离?
    • 1.1面临的困难:多类支撑向量机的损失函数,度量的是图片在各类标签下的得分(Sij与Yj);但现在需要度量的是SOFTMAX的概率分布结果正确的概率分布结果之间的距离。在这里插入图片描述
  • 2.引入新的数学工具:熵、交叉熵、相对熵
    • 2.1信息熵(扩展自百度百科)计算公式:
      • H(x) = -∑P(xi)log(2,P(xi)) (i=1,2,…n)
      • 其中,x表示随机变量,与之相对应的是所有可能输出的集合,定义为符号集,随机变量的输出用x表示。P(x)表示输出概率函数。变量的不确定性越大,熵也就越大,把它搞清楚所需要的信息量也就越大。
      • 或者写为(SS:K可以理解为系数,注意负号)
      • 在这里插入图片描述
    • 2.2交叉熵
      • 主要用于度量两个概率分布间的差异性信息。
      • 计算公式:
      • 在这里插入图片描述
      • 其中p,q为一个样本集中两个概率分布,其中p为真实分布,q为非真实分布。
    • 2.3应用-计算上图中的交叉熵损失:
      在这里插入图片描述
      • 在真实分布为one-hot形式时,部分等于0的项可以直接化简,交叉熵损失化简为:
      • 在这里插入图片描述
  • 3.我们事实上是使用相对熵(也称KL散度)衡量损失的,但是由于计算上q、p概率中的p是one-hot形式的,这使得相对熵等于交叉熵,所以我们称呼这种用交叉熵来度量的损失,为交叉熵损失。交叉熵在计算过程中,由于p是one-hot形式,故又可化简为上图中的极其简单的式子。最终的式子使用起来非常简单,但一定要记住其背后深刻的意义,有余力的话去理解其引入的数学工具的计算方法。

六、交叉熵损失与多类支撑向量机损失的比较

  • 1.写在开头,注意区分两种损失字面上的不同。交叉熵损失是,以交叉熵这种数学工具度量的损失。多类支撑向量机损失是,这种名为多类支撑向量机的分类器的通过权值打分再比较再求平均值后计算出的损失。在这里插入图片描述
  • 2.使用交叉熵损失进行训练时,会出现这样一种情况,我们的多类支撑向量机损失没有变,但是训练精度一直在提升。其背后就是交叉熵损失在降低。
    在这里插入图片描述
  • 3.交叉熵损失,要求别人小
  • 多类支撑损失,要求自己至少比别人大1。

七、计算图与反向传播

(一)什么是计算图

  • 1.定义:计算图是一种有向图,它用来表达输入、输出以及中间变量之间的计算关系,图中的每个节点对应着一种数学运算。
  • 2.计算图的前反向计算
  • 使用数学工具—链式求导法则—实现梯度的反向计算
  • 在这里插入图片描述
  • 3.计算图总结
    • 3.1任意复杂的函数,都可以用计算图的形式表示
    • 3.2在整个计算图中,每个门单元都会得到一些输入,然后,进行下面两种计算:这个门的输出值;七输出值关于输入值的局部梯度。
    • 3.3利用链式法则,门单元应该将回传的梯度乘以它对其的输入的局部梯度,从而得到整个网络的输出对该门单元的每个输入值的梯度。
    • 3.4梯度的方向传到整个过程(66:48-69:50),讲的非常零基础,都是高数的基础内容,但是很容易把人绕迷糊了。
      在这里插入图片描述
      反向传播过程
      在这里插入图片描述
  • 4.顺便强调sigmoid函数,为什么经常使用它?看sigmoid函数的导数形式即可。方便计算啊!
    在这里插入图片描述
  • 5.介绍i中计算途中常见的们单元及其导数(其中拷贝门要多留心,反向传播是导数要加起来)
    在这里插入图片描述
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐