Contents
前言
前文中对导数、偏导数已经有了概念并能进行简单计算,本篇主要介绍单变量和多变量的复合函数如何求导,以及近似公式的计算
正文
复杂函数求导
如果一个函数比较复杂,无论是用公式也好,还是用导数的定义强算也好,都比较麻烦,于是书中又介绍了关于复合函数的快速求导方法(高中数学知识),以及扩展了多变量复合函数的链式法则。
神经网络中的复合函数
这里又祭出那个十分熟悉的公式
w1, w2, …, wn为各输入对应的权重,b为神经单元的偏置。输出函数是如下的x1, x2, …, xn的一次函数f和激活函数a的复合函数。
可以把这个函数看为两个函数的复合函数
单变量复合函数链式法则
当已知 y = f(u)
u = g(x)
,其导数可以依照下方所示的公式进行计算
仅看公式可能看不太明白,可以看一下书中的例题,例题中的符号有点难打,就直接贴图了。
多变量函数链式法则
多变量函数的偏导数求导,也有一个链式法则。
比如变量 z为u、v的函数 ,如果 u、v分别为x、y的函数 ,则z为x、y的函数, z关于x求导 时,先对 u、v求导 ,然后 与z的相应导数相乘 ,最后将乘积加起来。
函数的近似公式
个人看下来,觉着作用是减少计算机计算量,书中强调这是梯度下降法的基础;
单变量函数的近似公式
根据导数公式,Δx->0 的时候,解出来的式子就是其一阶导数,如果Δ的值很小,那么下面的式子是成立的
此时,将 f(x+Δx) 转换出来,就成了下面这个样子,这个式子就叫做 单变量函数的近似公式
那么这个式子有什么用处呢?通过一个栗子来看一下
当f(x)=ex时,求x=0附近的近似公式。
根据公式可以得到如下的结果:
取 x = 0,再将Δx换成X,可得到
e^x = 1+x
在图形中有这样的含义,意思是 x=0 的时候 e^x 与 1+x 的结果相似:
多变量函数的近似公式
这个公式可能比较好理解,但是不大好推导,x和y分别变化一个较小的数,其结果与 f(x, y) + x的偏导数 Δx + y的偏导数 Δy 近似相同
可以通过书中的一个例子来理解这个公式
举个例子:当z=e^(x+y)时,求x=y=0附近的近似公式
f(x+Δx, y+Δy) = e^(x+y) + e^(x+y)*Δx + e^(x+y)*Δy = e^(x+y)*(1+Δx+Δy)
带入 x+y = 0,并将 Δx 换为 x ,Δy 换成 y 即可
1 + x + y
书中还提到了简化多变量函数近似公式的方法,首先有个 Δz 定义为x和y同时进行一个很小的变化与原函数值的差值
那么根据公式以及上述定义进行一下变换,可以得到
再对变量数量进行推广
有没有很眼熟,是不是很像向量的内积,所以书中又提到了这个公式可以用向量内积的形式体现
总结
主要介绍了单变量和多变量复合函数求导,还有单变量和多变量的近似公式及其向量内积表示,为日后梯度下降的学习打下基础。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 上海交大:基于近似随机Dropout的LSTM训练加速
- 引介 | Casper FFG 的可审计安全性和近似活性
- 如何在Python中快速进行语料库搜索:近似最近邻算法
- 一文尽览近似最近邻搜索中的哈希与量化方法
- 一文尽览近似最近邻搜索中的哈希与量化方法
- 在定制硬件上实现DNN近似算法,一文概述其过去、现在与未来
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。