李宏毅2021春季机器学习课程视频笔记2:(选修)深度学习简介,反向传播

简介: 李宏毅2021春季机器学习课程视频笔记2:(选修)深度学习简介,反向传播

1. 深度学习简介


本节是17年李宏毅机器学习课程中的一个章节。17年版我刷过一遍,但是看得不详细。大致来说,当时的逻辑是先介绍逻辑回归和softmax,然后引入深度学习。21版就直接从sigmoid曲线拟合函数的逻辑引入深度学习了,比那个版本要简单易懂得多。

本节就是引入部分。因此建议读者有逻辑回归和softmax基础。

逻辑回归用的是sigmoid函数,是softmax的一种二分类情况。具体的我也没搞清楚,就不写了。


  1. 深度学习的历史经历了一系列起起伏伏(蓝字为兴盛期,红字为衰落期)

1958年 提出线性感知器

1969年 提出线性感知器的局限性

1980年 提出多层感知器(已经类似于当代深度神经网络)

1986年提出反向传播算法

1989年 提出一层隐藏层就够了,不需要搞“深度”

2006年 发明RBM玻尔兹曼机(初始化梯度下降的方法,是一个非常复杂的graphical base模型。在对模型性能的提升上没什么用,但引起了大家对DL的兴趣)

2009年 应用GPU训练神经网络

2011年 在语音识别领域流行应用DL

2012年 DL方法赢得ILSVRC图像识别比赛

20210618130747894.png


  1. 深度学习和机器学习一样分成三步走:定义函数集→定义函数优劣→选择最好的函数(和21版的 建立模型→定义损失函数→优化参数 是一回事,但是新版的更明确了优化参数的过程,更清晰了)

image.png


1.1 Step1:建立模型

  1. 将多个逻辑回归(一个逻辑回归就是一个神经元)连在一起,就组成了这样的神经网络:不同的连接方式就是不同的网络结构

神经网络中的参数 θ \thetaθ:所有神经元(逻辑回归)中的权重和偏置

20210618140128675.png


  1. 全连接网络,就是如图所示每一层所有神经元都与前后层所有神经元相连:

image.png

image.png

20210618140433861.png

image.png

image.png

image.png



  1. 对于不知道参数的模型,就是一个可以优化参数、通过损失函数定义来找到最优函数(最优参数)的函数集。

全连接前馈网络结构如图所示,就是这样一个模型:

20210618141702816.png


网络由输入层、隐藏层、输出层构成。

(其实输入层不算一层,因为没有神经元;但是我们也把它称呼为一层)


  1. 深度神经网络深就深在有很多层。
  2. 可以用矩阵运算来表示全连接网络的计算过程。单层:

20210618141902639.png


  1. 整个神经网络,所有层:

image.png


  1. 整个神经网络的函数 f ( x ) f(x)f(x) 就可以表示为:

image.png

可以通过平行计算技术来加速矩阵运算(GPU就是在矩阵运算时用的)


  1. 神经网络的输出层,如果是多标签分类任务,可以使用softmax输出一个概率分布。

隐藏层实现了特征抽取工作,相当于代替了传统机器学习中的特征工程任务。

image.png

11.举例:手写数字识别任务

  • 输入一张图片(表示为像素向量的格式),输出这张图片代表哪个数字(一个独热编码向量,该数字对应索引位置的元素置1、其他元素置0)

20210618142551587.png


  • 选择一个神经网络模型,输入图像数据

(注意,需要定义一个存在好函数的函数集)

image.png


  • 深度学习的好处在于不需要做过多的特征转换,比如影像识别任务可以直接将像素图作为输入进行训练;但与此同时,深度学习需要自己设计网络结构,设计出一个含有好函数的函数集(模型)。

因此,可以说,从机器学习到深度学习,就是将难点从如何抽取特征变成如何设计网络结构。


  • Q:这个网络需要多少层?——A:凭多次实验和经验直觉。

Q:这个网络结构可以自动生成吗?——A:可以,比如用演化算法(evolutionary artificial neural networks (EANNs))。但是这种做法不常用。1

Q:除了全连接网络,我们还能定义别的网络结构吗?——A:可以,比如卷积神经网络CNN(后期课程会讲)。

20210618143643321.png


1.2 Step2:定义函数优劣(损失函数)

image.png

image.png

image.png

image.png


1.3 Step3:选择最好的函数(优化参数)

image.png

20210622161238390.png

image.png


  1. 反向传播:一种在神经网络中计算梯度的有效方法(各深度学习框架都内置计算方法,编程时不用手动算)

20210622161427877.png


  1. 在实践中,神经网络越深(在不增加单层神经元数量的情况下)确实表现越好:

image.png

image.png

image.png


图中网址:http://neuralnetworksanddeeplearning.com/chap4.html


  1. 其他建议学习资料:
  • 15版课程
  • 15版课程-6小时版 (这是个2016年的PPT,slideshare网站可能不方便上,如有需要可以联系我下下来放到GitHub之类的平台上以供下载)
  • Neural Networks and Deep Learning
  • Deep Learning


2. 反向传播


image.png

image.png

image.png

2021071514530079.png

image.png

image.png

image.png

image.png

image.png

2021071515464271.png

20210715154740311.png

image.png

image.png

image.png

image.png

image.png


  1. 从另一侧的观点来看,backward pass可以视为这样的一个奇怪的neuron:

注意 σ ′ ( z ) 是个常数,因为 z 在前向传播的过程中已经确定了。

所以这个neuron不是用的激活函数,而可视为一个放大器(就乘以 σ ′ ( z ) 这个常数)

20210719112724266.png

image.png

image.png

image.png



  1. 在实际计算过程中,就是从最后一层开始往前算偏导:

20210719113208665.png

20210719113234485.png

image.png

2021071911331937.png

相关文章
|
19天前
|
机器学习/深度学习 算法 TensorFlow
机器学习算法简介:从线性回归到深度学习
【5月更文挑战第30天】本文概述了6种基本机器学习算法:线性回归、逻辑回归、决策树、支持向量机、随机森林和深度学习。通过Python示例代码展示了如何使用Scikit-learn、statsmodels、TensorFlow库进行实现。这些算法在不同场景下各有优势,如线性回归处理连续值,逻辑回归用于二分类,决策树适用于规则提取,支持向量机最大化类别间隔,随机森林集成多个决策树提升性能,而深度学习利用神经网络解决复杂模式识别问题。理解并选择合适算法对提升模型效果至关重要。
185 4
|
1天前
|
机器学习/深度学习 人工智能 自然语言处理
算法金 | 一文看懂人工智能、机器学习、深度学习是什么、有什么区别!
**摘要:** 了解AI、ML和DL的旅程。AI是模拟人类智能的科学,ML是其分支,让机器从数据中学习。DL是ML的深化,利用多层神经网络处理复杂数据。AI应用广泛,包括医疗诊断、金融服务、自动驾驶等。ML助力个性化推荐和疾病预测。DL推动计算机视觉和自然语言处理的进步。从基础到实践,这些技术正改变我们的生活。想要深入学习,可参考《人工智能:一种现代的方法》和《深度学习》。一起探索智能的乐趣!
18 1
算法金 | 一文看懂人工智能、机器学习、深度学习是什么、有什么区别!
|
8天前
|
机器学习/深度学习 数据采集 TensorFlow
【机器学习】Python与深度学习的完美结合——深度学习在医学影像诊断中的惊人表现
【6月更文挑战第10天】Python和深度学习驱动的医学影像诊断正在革新医疗行业。借助TensorFlow等库,开发人员能轻松构建CNN等模型,自动提取影像特征,提升疾病诊断准确性。已在肿瘤检测等领域取得显著成果,但也面临数据质量和模型解释性等挑战。随着技术进步,深度学习有望在医学影像诊断中发挥更大作用。
|
17天前
|
机器学习/深度学习 人工智能 自然语言处理
探索AI的无限可能:从机器学习到深度学习
【5月更文挑战第31天】本文旨在深入探讨人工智能(AI)的核心技术,包括机器学习和深度学习。我们将通过实例和案例研究,揭示这些技术如何改变我们的生活和工作方式。此外,我们还将讨论AI的未来发展趋势,以及它可能带来的挑战和机遇。
|
19天前
|
机器学习/深度学习 数据采集 传感器
深度学习在图像识别中的应用进展构建高效机器学习模型:从数据预处理到模型优化的洞见
【5月更文挑战第29天】 在人工智能领域,深度学习技术已经成为推动图像识别进步的核心动力。随着卷积神经网络(CNN)的不断发展和优化,以及大数据和计算能力的显著提升,图像识别的准确性和效率得到了极大增强。本文将探讨深度学习技术在图像识别领域的最新应用,分析其关键技术创新点,并讨论未来可能的发展趋势。 【5月更文挑战第29天】 在探索数据科学与机器学习的融合艺术中,本文将引导读者穿越数据处理的迷宫,解锁特征工程的秘密,并最终在模型优化的顶峰俯瞰效率与准确性的壮丽景色。我们将通过一系列经过实战验证的技术感悟,展现如何打造一个既健壮又灵敏的机器学习模型。文章不仅聚焦于技术细节,更注重于概念理解与实
|
22天前
|
机器学习/深度学习 人工智能 算法
机器学习和深度学习有啥区别?一看就懂
深度学习与机器学习是相关但不同的概念,深度学习是机器学习的一个分支。机器学习侧重于让计算机在无明确编程情况下学习,包括决策树、SVM等算法;而深度学习主要依赖深层神经网络,如CNN、RNN。机器学习对数据需求较小,广泛应用于各领域;深度学习则需要大量数据,擅长图像和语音处理。机器学习模型可简可繁,计算资源需求较低;深度学习模型复杂,常需GPU支持
23 0
|
1月前
|
机器学习/深度学习 监控 算法
LabVIEW使用机器学习分类模型探索基于技能课程的学习
LabVIEW使用机器学习分类模型探索基于技能课程的学习
22 1
|
1月前
|
机器学习/深度学习 算法 算法框架/工具
Python深度学习基于Tensorflow(5)机器学习基础
Python深度学习基于Tensorflow(5)机器学习基础
24 2
|
1月前
|
机器学习/深度学习 人工智能 算法
【AI 初识】讨论深度学习和机器学习之间的区别
【5月更文挑战第3天】【AI 初识】讨论深度学习和机器学习之间的区别
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习在图像识别中的应用与挑战探索机器学习中的自然语言处理技术
【4月更文挑战第30天】 随着人工智能技术的飞速发展,深度学习已经成为计算机视觉领域的核心动力。本文将探讨深度学习在图像识别任务中的关键技术、应用实例以及面临的主要挑战。我们将重点讨论卷积神经网络(CNN)的架构优化、数据增强技术以及迁移学习的策略,并通过具体案例分析其在医疗影像、自动驾驶和面部识别等领域的应用成效。同时,我们也将指出当前模型泛化能力不足、对抗性攻击以及算力资源需求等挑战,并提出潜在的解决方向。 【4月更文挑战第30天】 在人工智能领域,自然语言处理(NLP)是赋予机器理解和响应人类语言能力的关键技术。本文将深入探讨NLP的发展历程、核心技术及其在不同领域的应用案例。我们将从