1-深度学习绪论讲解

奋斗吧
奋斗吧
擅长邻域:未填写

标签: 1-深度学习绪论讲解 博客 51CTO博客

2023-05-10 18:24:06 62浏览

1-深度学习绪论讲解,文章目录深度学习0.概述0.1概念0.2历史1.感知机1.1概念1.2算法模型1.2.1模型1.2.2分离超平面1.2.3损失函数1.2.4随机梯度下降例子1.2.5对偶形式1.3逻辑电路1.3.1与门1.3.2与非门1.3.3或门1.3.4异或门多层感知机mlp深度学习学习路线1-----python2----常见的深度学习框架3-----pytorch学习4



文章目录

  • 深度学习
  • 0. 概述
  • 0.1 概念
  • 0.2 历史
  • 1. 感知机
  • 1.1 概念
  • 1.2 算法模型
  • 1.2.1 模型
  • 1.2.2 分离超平面
  • 1.2.3 损失函数
  • 1.2.4 随机梯度下降
  • 例子
  • 1.2.5 对偶形式
  • 1.3 逻辑电路
  • 1.3.1 与门
  • 1.3.2 与非门
  • 1.3.3 或门
  • 1.3.4 异或门
  • 多层感知机mlp


深度学习

学习路线

1-----python

2----常见的深度学习框架

3-----pytorch学习

4----CV领域学习

1-深度学习绪论讲解_感知机

1-深度学习绪论讲解_神经网络_02

1-深度学习绪论讲解_神经网络_03

1-深度学习绪论讲解_深度学习_04


1-深度学习绪论讲解_人工智能_05

0. 概述

0.1 概念

很多人都有误解,以为深度学习比机器学习先进。其实深度学习是机器学习的一个分支。

可以理解为具有多层结构的模型。具体的话,深度学习是机器学习中的具有深层结构的神经网络算法,即机器学习>神经网络算法>深度神经网络(深度学习)。

深度学习(deep learning,以下简称DL),换种说法,可以说是基于人工神经网络的机器学习。区别于传统的机器学习,DL需要更多样本,换来更少的人工标注和更高的准确率。

传统的BP神经网络一般指三层的全连接神经网络,而大于三层就成了DNN(深度神经网络)。

事实上,DNN能解决一些问题,但因为参数太多,逐步被其他网络模型取代:CNN(卷积神经网络)、RNN(循环神经网络)。二者目前最成功的实现分别是ResNet和LSTM。

深度学习三巨头

  • 神经网络之父hinton
  • 卷积神经网络之父lecun
  • GAN网络之父bengio

LSTM 之父 Jürgen Schmidhuber

0.2 历史

  • 第一代神经网络又称为感知器,由科学家Frank Rosenblatt发明于1950至1960年代,它的算法只有两层,输入层输出层,,主要使用的是一种叫做sigmoid神经元(sigmoid neuron)的神经元模型,主要是线性结构。它不能解决线性不可分的问题,如异或操作。
  • 为了解决第一代神经网络的缺陷,在1980年左右提出第二代神经网络多层感知器(MLP)。和第一代神经网络相比,第二代在输入输出层之间有增加了隐含层的感知机,引入一些非线性的结构,解决了之前无法模拟异或逻辑的缺陷。第二代神经网络让科学家们发现神经网络的层数直接决定了它对现实的表达能力,但是随着层数的增加,优化函数愈发容易出现局部最优解的现象,由于存在梯度消失的问题,深层网络往往难以训练,效果还不如浅层网络。
  • 2006年Hinton采取无监督预训练(Pre-Training)的方法解决了梯度消失的问题,使得深度神经网络变得可训练,将隐含层发展到7层,有一个预训练的过程。使用微调技术作为反向传播和调优手段。减少了网络训练时间,并且提出了一个新的概念叫做"深度学习",直到2012年,在ImageNet竞赛中,Hinton教授的团队,使用以卷积神经网络为基础的深度学习方案,他们训练的模型面对15万张测试图像时,预测的头五个类别的错误率只有 15.3%,而排名第二的日本团队,使用的SVM方法构建的模型,相应的错误率则高达 26.2%。从此一战成名!2012年后深度学习就成为主流。

1. 感知机

资料参考

https://blog.csdn.net/m0_37957160/article/details/113922919

资料参考2

https://blog.csdn.net/Insincerity/article/details/106446689

资料参考3

https://www.jianshu.com/p/81fa7682daf3

1.1 概念

感知机是1957年,由Rosenblatt提出会,是神经网络和支持向量机的基础。

感知机是二分类的线性分类模型,输入为实例的特征向量,输出为实例的类别(取+1和-1)。感知机对应于输入空间中将实例划分为两类的分离超平面。感知机旨在求出该超平面,为求得超平面导入了基于误分类的损失函数,利用梯度下降法对损失函数进行最优化

1-深度学习绪论讲解_深度学习_06

1.2 算法模型

1.2.1 模型

输入:1-深度学习绪论讲解_感知机_07,x是特征向量

输出:1-深度学习绪论讲解_神经网络_08

由输入空间到输出空间的表达形式为:

1-深度学习绪论讲解_深度学习_09

上面该函数称为感知机,其中w,b称为模型的参数,1-深度学习绪论讲解_感知机_10称为权值,b称为偏置,1-深度学习绪论讲解_神经网络_11表示为w,x的内积
1-深度学习绪论讲解_感知机_12

下面是符号函数的函数图像(w为一维的数据量1-深度学习绪论讲解_感知机_13):

1-深度学习绪论讲解_人工智能_14

1.2.2 分离超平面

感知机的作用就是找到一个分离超平面,使数据能够正确分为两类。

在实际情况中,w往往是1-深度学习绪论讲解_深度学习_15,多维的。这个时候1-深度学习绪论讲解_感知机_16表示的是超平面

在感知机中,一般把超平面方程写为:wx+b=0.

w 为超平面的法向量,b 是超平面的截距,超平面把数据分为两类,如下图。

1-深度学习绪论讲解_感知机_17

1.2.3 损失函数

感知机能够自动地把 w 和 b 求解出来,求解过程中有个重点,就是损失函数的引入,损失函数也叫代价函数,是样本分类预测结果和样本实际类别差异的度量,正是通过最小化损失函数,感知机才能不断地修正w和b的值,找到一个最优的超平面。

1. 超平面的距离

感知机中的损失函数是所有误分类点到分离超平面的距离,其中,某一个误分类点到超平面的距离表示为:

1-深度学习绪论讲解_神经网络_18

1-深度学习绪论讲解_人工智能_191-深度学习绪论讲解_感知机_201-深度学习绪论讲解_人工智能_21范数,这个L2范数乍听有点高大上,实际上就是 w 中每个元素去平方,然后相加开根号

1-深度学习绪论讲解_神经网络_22

2. 误分类点到分离超平面的距离

对于一个误分类数据1-深度学习绪论讲解_深度学习_23,当 1-深度学习绪论讲解_人工智能_24 时,1-深度学习绪论讲解_神经网络_25;当1-深度学习绪论讲解_神经网络_26时,1-深度学习绪论讲解_人工智能_27;所以1-深度学习绪论讲解_人工智能_28,所有误分类点到分离超平面的距离为:

1-深度学习绪论讲解_神经网络_29

为啥距离是这个呢???,

1-深度学习绪论讲解_深度学习_30

不考虑1-深度学习绪论讲解_神经网络_31损失函数写成这样:

1-深度学习绪论讲解_人工智能_32

我们的目标就是最小化损失函数 L(w,b),这里用 **随机梯度下降(SGD)**的方法来做最小化。

L0范数是指向量中非0的元素的个数。(L0范数很难优化求解)

L1范数是指向量中各个元素绝对值之和

L2范数是指向量各元素的平方和然后求平方根

1.2.4 随机梯度下降

梯度下降方向就是梯度的反方向,最小化损失函数 L(w,b) 就是先求函数在 w 和 b 两个变量轴上的偏导:

1-深度学习绪论讲解_神经网络_33

1-深度学习绪论讲解_人工智能_34

上面的式子,每更新一次参数,需要遍历整个数据集,如果数据集非常大的话,显然是不合适的,为了解决这个问题,只随机选取一个误分类点进行参数更新,这就是随机梯度下降(SGD),如下所示。

1-深度学习绪论讲解_神经网络_35

1-深度学习绪论讲解_神经网络_36

这里的 η 指的是学习率,相当于控制下山的步幅,1-深度学习绪论讲解_深度学习_37 太小,函数拟合(收敛)过程会很慢,1-深度学习绪论讲解_深度学习_37太大,容易在最低点方向震荡,进入死循环。

当没有误分类点的时候,停止参数更新,所得的参数就是感知机学习的结果,这就是感知机的原始形式。下面总结一下参数更新的过程:
(1)预先设定一个1-深度学习绪论讲解_感知机_391-深度学习绪论讲解_深度学习_40,即w和b的初值。
(2)在训练集中选取数据1-深度学习绪论讲解_深度学习_23
(3)当1-深度学习绪论讲解_人工智能_42时,利用随机梯度下降算法进行参数更新。

例子

输入:正例1-深度学习绪论讲解_深度学习_43

输出:感知机模型1-深度学习绪论讲解_人工智能_44

目标公式1-深度学习绪论讲解_深度学习_45

  • 假设1-深度学习绪论讲解_人工智能_46
  • 判断1-深度学习绪论讲解_感知机_47是否正确分类,1-深度学习绪论讲解_深度学习_48不能正确分类
    更新1-深度学习绪论讲解_神经网络_49
  • 更新公式为1-深度学习绪论讲解_感知机_50
    1-深度学习绪论讲解_深度学习_51
    同理1-深度学习绪论讲解_神经网络_52,得到新的模型1-深度学习绪论讲解_神经网络_53
  • 更新后的模型,对于1-深度学习绪论讲解_深度学习_54被正确分类,但是对于1-深度学习绪论讲解_深度学习_55错误分类。进行更新1-深度学习绪论讲解_人工智能_56
    1-深度学习绪论讲解_深度学习_571-深度学习绪论讲解_人工智能_58

依次类推

迭代过程如下

迭代次数

误分类点

w

b

wx+b

0

0

1

-1

2

0

3

-1

4

-2

5

-1

6

-2

7

-3

8

0

-3

1.2.5 对偶形式

将 w 和 b 表示为实例1-深度学习绪论讲解_深度学习_75和标记1-深度学习绪论讲解_深度学习_76线性组合的形式,通过求解系数来求解w和b,前面提到过这个式子:

1-深度学习绪论讲解_神经网络_35

1-深度学习绪论讲解_神经网络_36

这里先假设 w 和 b 的初值为0,那么通过对偶形式能表示为什么?从上面式子可以看出来,每次迭代,w会增加一个 1-深度学习绪论讲解_人工智能_79,b 会增加一个1-深度学习绪论讲解_神经网络_80,到最后参数更新完之后,w 和 b 一共增加了这些:

1-深度学习绪论讲解_人工智能_81

1-深度学习绪论讲解_感知机_82

这里的1-深度学习绪论讲解_感知机_831-深度学习绪论讲解_神经网络_84就是1-深度学习绪论讲解_深度学习_23被误分类的次数,η 还是学习率。

1-深度学习绪论讲解_深度学习_86越大,意味这实例点更新次数越多,距离分离超平面越近,越难被分类,对实例影响结果越大

下面是对偶形式的参数更新过程:

1-深度学习绪论讲解_感知机_87

1.3 逻辑电路

1.3.1 与门

y

0

0

0

1

0

0

0

1

0

1

1

1

1.3.2 与非门

y

0

0

1

1

0

1

0

1

1

1

1

0

1.3.3 或门

y

0

0

0

1

0

1

0

1

1

1

1

1

1.3.4 异或门

什么是异或?就是,假如这里有两件事,一真一假,异或为真;两件事都为假或者两件事都为真,异或为假,就像这样:
0⊕0=0,0⊕1=1
1⊕0=1,1⊕1=0
下面是异或的函数图像:

1-深度学习绪论讲解_感知机_94

通过图像可以看出,找不到一个超平面能将这四个点分隔开,所以感知机无法处理异或问题,不仅仅是感知机,其他线性模型也无法处理这种问题。

y

0

0

0

0

1

1

1

0

1

1

1

0

多层感知机mlp

如何解决呢???

使用多层的感知机即可完成,如下图所示

1-深度学习绪论讲解_人工智能_97

与门、与非门、或门的符号

通过上面的感知机如何组成异或门呢??

1-深度学习绪论讲解_神经网络_98

这里,把1-深度学习绪论讲解_深度学习_99作为 与非门 的输出,把1-深度学习绪论讲解_人工智能_100

结果如图所示,观察1-深度学习绪论讲解_神经网络_101,可以发现确实符合异或门的输出

1-深度学习绪论讲解_感知机_102

异或门是一种多层结构的神经网络。

与门、或门是单层感知机,而异或门是2层感知机。叠加了多 层的感知机也称为多层感知机(multi-layered perceptron) 。

1-深度学习绪论讲解_人工智能_103

感知机的作用就是引出神经网络


好博客就要一起分享哦!分享海报

此处可发布评论

评论(0展开评论

暂无评论,快来写一下吧

展开评论

您可能感兴趣的博客

客服QQ 1913284695