深度学习入门(6)误差反向传播基础---计算图与链式法则

简介: 深度学习入门(6)误差反向传播基础---计算图与链式法则

1.计算图


计算图将计算过程用图形表示出来。这里的图形是数据结构图。


1.1用计算图进行计算

43a6f2eb8e86449d989638a7151b1c10.png

3b7fde372d264322b68d4d09de068d69.png

a69c97073aa7416dbc56b5c0421c4fd5.png

构建了计算图后,从左向右进行计算。就像电路中的电流流动一样,计算结果从左
向右传递。到达最右边的计算结果后,计算过程就结束了。


计算图计算流程:

1.构建计算图。

2.在计算图上,从左向右进行计算。


第2歩“从左向右进行计算”是一种正方向上的传播,简称为正向传播( forward propagation)。正向传播是从计算图出发点到结束点的传播。既然有正向传播这个名称,当然也可以考虑反向(从图上看的话,就是从右向左)的传播。实际上,这种传播称为反向传播( backward propagation



1.2 局部计算


计算图的特征是可以通过传递“局部计算”获得最终结果。“局部”这个词的意思是“与自己相关的某个小范围”。局部计算是指,无论全局发生了什么,都能只根据与自己相关的信息输出接下来的结果。


计算图可以集中精力于局部计算。无论全局的计算有多么复杂,各个步骤所要做的就是对象节点的局部计算。虽然局部计算非常简单,但是通过传递它的计算结果,可以获得全局的复杂计算的结果。


99e8932af8804729b0992d44cdeb4884.png

1.3计算图优势


1. 通过局部计算,简化问题

2. 利用计算图可以将中间的计算结果全部保存起来(比如,计算进行到2个苹

果时的金额是200日元、加上消费税之前的金额650日元等)

3. 通过反向传播高效计算导数


上述问题中,我们计算了购买2个苹果时加上消费税最终需要支付的金额。这里,假设我们

想知道苹果价格的上涨会在多大程度上影响最终的支付金额,即求“支付金额关于苹果的价格的导数”。设苹果的价格为x,支付金额为L,则相当于求αL/αx。这个导数的值表示当苹果的价格稍微上涨时,支付金额会增加多少?



e1b4a4ac8e3547438f88648f8115982d.png


如图所示,反向传播使用与正方向相反的箭头(粗线)表示。反向传播传递“局部导数”,将导数的值写在箭头的下方。在这个例子中,反向传播从右向左传递导数的值(1 → 1.1 → 2.2)。从这个结果中可知,“支付金额关于苹果的价格的导数”的值是2.2。这意味着,如果苹果的价格上涨1日元,最终的支付金额会增加2.2日元(严格地讲,如果苹果的价格增加某个微小值,则最终的支付金额将增加那个微小值的2.2倍)。


2链式法则


反向传播是将局部导数向正方向的反方向(从右到左)传递, 传递这个局部导数的原理,是基于链式法则( chain rule)的。


2.1计算图的反向传播


假设存在y = f(x)的计算,这个计算的反向传播如图所示。


a728d5a331344259af007e73e011b261.png

d1989d74dbb0492bb291c869bce89474.png


2.2什么是链式法则


介绍链式法则时,我们需要先从复合函数说起。复合函数是由多个函数构成的函数。

85e95edd11e044d1a94194918546a883.png


2.3链式法则和计算图

2036c0be6efc400eb499e1e5e8cfd773.png


84d4ee89ace145c8baa35b2802fd818f.png

66afa6bcb69d46339dfcbf72eb321e23.png




总结


1.介绍了计算图的基本概念与计算方式;


2.链式法则相关概念;

相关文章
|
11天前
|
机器学习/深度学习 人工智能 TensorFlow
人工智能浪潮下的自我修养:从Python编程入门到深度学习实践
【10月更文挑战第39天】本文旨在为初学者提供一条清晰的道路,从Python基础语法的掌握到深度学习领域的探索。我们将通过简明扼要的语言和实际代码示例,引导读者逐步构建起对人工智能技术的理解和应用能力。文章不仅涵盖Python编程的基础,还将深入探讨深度学习的核心概念、工具和实战技巧,帮助读者在AI的浪潮中找到自己的位置。
|
23天前
|
机器学习/深度学习 算法 编译器
Python程序到计算图一键转化,详解清华开源深度学习编译器MagPy
【10月更文挑战第26天】MagPy是一款由清华大学研发的开源深度学习编译器,可将Python程序一键转化为计算图,简化模型构建和优化过程。它支持多种深度学习框架,具备自动化、灵活性、优化性能好和易于扩展等特点,适用于模型构建、迁移、部署及教学研究。尽管MagPy具有诸多优势,但在算子支持、优化策略等方面仍面临挑战。
56 3
|
1月前
|
机器学习/深度学习 算法
深度学习笔记(四):神经网络之链式法则详解
这篇文章详细解释了链式法则在神经网络优化中的作用,说明了如何通过引入中间变量简化复杂函数的微分计算,并通过实例展示了链式法则在反向传播算法中的应用。
56 0
深度学习笔记(四):神经网络之链式法则详解
|
1月前
|
机器学习/深度学习 分布式计算 安全
深度学习之安全多方计算
基于深度学习的安全多方计算(Secure Multi-Party Computation,简称MPC)是一种密码学技术,旨在让多个参与方在不暴露各自数据的前提下,协作完成一个计算任务。
48 0
|
1月前
|
机器学习/深度学习 自然语言处理 TensorFlow
课外阅读之深度学习如何入门?
课外阅读之深度学习如何入门?
32 0
|
1月前
|
机器学习/深度学习 自然语言处理 算法
深度学习如何入门?
深度学习入门的指南,包括准备基础知识、学习深度学习理论、实践操作、进阶学习、参与社区和不断实践与反思等步骤。
46 0
|
1月前
|
机器学习/深度学习 存储 自然语言处理
深度学习入门:循环神经网络------RNN概述,词嵌入层,循环网络层及案例实践!(万字详解!)
深度学习入门:循环神经网络------RNN概述,词嵌入层,循环网络层及案例实践!(万字详解!)
|
10天前
|
机器学习/深度学习 人工智能 算法
深度学习在图像识别中的应用与挑战
本文探讨了深度学习技术在图像识别领域的应用,重点分析了卷积神经网络(CNN)的工作原理及其在处理图像数据方面的优势。通过案例研究,展示了深度学习如何提高图像识别的准确性和效率。同时,文章也讨论了当前面临的主要挑战,包括数据不足、过拟合问题以及计算资源的需求,并提出了相应的解决策略。
|
2天前
|
机器学习/深度学习 自然语言处理 语音技术
Python在深度学习领域的应用,重点讲解了神经网络的基础概念、基本结构、训练过程及优化技巧
本文介绍了Python在深度学习领域的应用,重点讲解了神经网络的基础概念、基本结构、训练过程及优化技巧,并通过TensorFlow和PyTorch等库展示了实现神经网络的具体示例,涵盖图像识别、语音识别等多个应用场景。
14 8
|
6天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习中的卷积神经网络(CNN)及其在图像识别中的应用
本文旨在通过深入浅出的方式,为读者揭示卷积神经网络(CNN)的神秘面纱,并展示其在图像识别领域的实际应用。我们将从CNN的基本概念出发,逐步深入到网络结构、工作原理以及训练过程,最后通过一个实际的代码示例,带领读者体验CNN的强大功能。无论你是深度学习的初学者,还是希望进一步了解CNN的专业人士,这篇文章都将为你提供有价值的信息和启发。
下一篇
无影云桌面