6.1-深度学习简介

发布于:2023-01-22 ⋅ 阅读:(265) ⋅ 点赞:(0)

一、深度学习的三个步骤

  • 神经元(Neuron):任意的一个逻辑回归单元

  • 神经网络(Neural Network):不同的连接导致不同的网络结构

  • 网络参数(Network parameter)𝜃:“神经元”中的所有权重weight和偏差bias

image-20220811100757472image-20220811100837358

1.1 全连接前馈网络(Fully Connect Feedforward Network)

  • 当我们对权重weight和偏差bias进行不同的设置时,就得到了一个函数集合。
  • 最后一张图是全连接前馈网络的一般画法,由于层(Layer)与层(Layer)之间所有的神经元都是两两连接,因此它叫全连接(Fully Connect),传递的方向是从后往前(1->2->3…->L),因此叫前馈(Feedforward)
  • 输入层(Input Layer): x 1 , x 2 . . . x n x_1,x_2...x_n x1,x2...xn
  • 隐藏层(Hidden Layers): L 1 , L 2 . . . L n − 1 L_1,L_2...L_{n-1} L1,L2...Ln1
  • 输出层(Output Layer): L n L_n Ln
  • 输出(Output): y 1 , y 2 . . . y m y_1,y_2...y_m y1,y2...ym

image-20220811101351479image-20220811101422378

image-20220811101447916image-20220811101535235

  • 常见的神经网络

image-20220811103034466image-20220811103128864

1.2 矩阵运算(Matrix Operation)

  • 下图是整个网络进行的矩阵运算,可以用GPU进行加速。最后一张图红色框起来的部分被称为特征抽取(Feature extractor),取代了我们之前机器学习中手动做特征工程(feature engineering),特征变换的过程(feature transformation)。

image-20220811120728697image-20220811120750050

image-20220811120803811image-20220811120815727

1.3 手写数字辨识

  • 对于一个16*16=256的图片来说,它的输入就是256维,输出就是10维,至于中间的网络结构一共有多少层,每层需要多少个神经元就需要自行设计了,而这些经验就来源于:试错+直觉
  • 有人可能会说,要是网络结构也能让机器自动确定就好了,事实上还真有,例如进化人工神经网络(Evolutionary Artificial Neural Networks)
  • 除了之前介绍的全连接前馈网络,还可以采用卷积神经网络(CNN)来设计网络

image-20220811122436962image-20220811122447695

image-20220811122500825image-20220811122518011

二、确定评价函数(goodness of function)

  • 计算预测值与真实值之间的交叉熵(CrossEntropy),全部的数据产生的交叉熵求和就是我们的Loss函数,使loss值最小的那个函数就是最好的模型。找最小loss值所使用的方法就是梯度下降

image-20220811123245028image-20220811123444717

image-20220811123519658

三、寻找最优模型(pick the best function)

  • 下面就是做梯度下降的过程
  • 反向传播(Backpropagation):反向传播就是用来在神经网络中计算 ∂ L ∂ w \frac{\partial L}{\partial w} wL(偏微分)的一个有效方式

image-20220811124207198image-20220811124218254

image-20220811124230606image-20220811124242310