| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 自动微分(Auto differentiation) -> 正文阅读 |
|
[人工智能]自动微分(Auto differentiation) |
1.自动微分是干什么的:自动微分现在已经是深度学习框架的标配,我们写的任何模型都需要靠自动微分机制分配模型损失信息,从而更新模型。简言之,就是在模型更新计算梯度的时候会用到自动微分。 在数学和计算机代数中,自动微分有时称作演算式微分,是一种可以借由计算机程序计算一个函数导数方法。两种传统做微分的方法为:
使用符号微分最主要的缺点是速度慢及将计算机程序转换成表示式的困难,且很多函数在要计算更高阶微分时会变得复杂。 使用差分的两个重要的缺点是舍弃误差及数值化过程和相消误差。此两者传统方法在计算更高阶微分时,都有复杂度及误差增加的问题。自动微分则解决上述的问题。 2.现有四种微分方式:
其中,TensorFlow采用的是第四种微分方式 2.1?符号微分?2.2?数值微分2.3 前向自动微分稍微对上述性质做一下解释: 有一个dual数?,当函数变量为一元时:有 ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 当函数变量为一元时:有 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??? ?2.4 反向自动微分?第一次的正向计算穿过图就是从图底往上,即从n1,n2计算到n7 (根据各个节点的表达式,带入数值x=3,y=4计算得来) ??????? 3.一些链接:TensorFlow的自动微分文档:梯度和自动微分简介 ?|? TensorFlow Core 4 关于自动微分当前的一些不足:1. 在 ICLR 2020 的一篇 Oral 论文中,图宾根大学的研究者表示,目前深度学习框架中的自动微分模块只会计算批量数据反传梯度,但批量梯度的方差、海塞矩阵等其它量也很重要,它们可以在计算梯度的过程中快速算出来。目前自动微分框架(TensorFlow)只计算出梯度,因此就限定了研究方向只能放在梯度下降变体之上,而不能做更广的探讨。为此,研究者构建了 BACKPACK,它建立在 PyTorch 之上,还扩展了自动微分与反向传播能获得的信息。 ?2. 稀疏图加速(未完) 参考链接: 1.https://blog.csdn.net/qq_36810398/article/details/88738239 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 22:47:07- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |