欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 人工智能 > pytorch >内容正文

pytorch

3.8 激活函数的导数-深度学习-Stanford吴恩达教授

发布时间:2025/4/5 pytorch 66 豆豆
生活随笔 收集整理的这篇文章主要介绍了 3.8 激活函数的导数-深度学习-Stanford吴恩达教授 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

←上一篇↓↑下一篇→
3.7 为什么需要非线性激活函数回到目录3.9 神经网络的梯度下降法

激活函数的导数 (Derivatives of Activation Functions)

在神经网络中使用反向传播的时候,你真的需要计算激活函数的斜率或者导数。针对以下四种激活,求其导数如下:

1)sigmoid activation function

图3.8.1

其具体的求导如下: 公式3.25:ddzg(z)=11+e−z(1−11+e−z)=g(z)(1−g(z))\frac{d}{dz}g(z)=\frac{1}{1+e^{-z}}(1-\frac{1}{1+e^{-z}})=g(z)(1-g(z))dzdg(z)=1+ez1(11+ez1)=g(z)(1g(z))

注:
z=10z=10z=10z=−10;ddzg(z)≈0z=-10;\frac{d}{dz}g(z)\approx0z=10;dzdg(z)0
z=0,ddzg(z)=g(z)(1−g(z))=14z=0,\frac{d}{dz}g(z)=g(z)(1-g(z))=\frac14z=0,dzdg(z)=g(z)(1g(z))=41
在神经网络中a=g(z);g(z)′=ddzg(z)=a(1−a)a=g(z);g(z)^{'}=\frac{d}{dz}g(z)=a(1-a)a=g(z);g(z)=dzdg(z)=a(1a)

2)Tanh activation function

图3.8.2

其具体的求导如下: 公式3.26:g(z)=tanh(z)=ez−e−zez+e−zg(z)=tanh(z)=\frac{e^z-e^{-z}}{e^z+e^{-z}}g(z)=tanh(z)=ez+ezezez
公式3.27: ddzg(z)=1−(tanh(z))2\frac{d}{dz}g(z)=1-(tanh(z))^2dzdg(z)=1(tanh(z))2

注:
z=10z=10z=10z=−10,ddzg(z)≈0z=-10,\frac{d}{dz}g(z)\approx0z=10,dzdg(z)0
=0,ddzg(z)=1−(0)=1=0,\frac{d}{dz}g(z)=1-(0)=1=0,dzdg(z)=1(0)=1
在神经网络中;

3)Rectified Linear Unit (ReLU)

注:通常在 z=0z=0z=0 的时候给定其导数1,0;当然 z=0z=0z=0 的情况很少

4)Leaky linear unit (Leaky ReLU)

ReLU类似

g(z)=max(0.01z,z)g(z)′={0.01ifz<01ifz>0undefinedifz=0g(z)=max(0.01z,z)\\ g(z)^{'}=\left\{ \begin{matrix} 0.01 & if\ z<0\\ 1 & if\ z>0\\ undefined & if\ z=0\\ \end{matrix} \right.g(z)=max(0.01z,z)g(z)=0.011undefinedif z<0if z>0if z=0

注:通常在 z=0z=0z=0 的时候给定其导数1,0.01;当然 z=0z=0z=0 的情况很少。

课程PPT





←上一篇↓↑下一篇→
3.7 为什么需要非线性激活函数回到目录3.9 神经网络的梯度下降法

《新程序员》:云原生和全面数字化实践50位技术专家共同创作,文字、视频、音频交互阅读

总结

以上是生活随笔为你收集整理的3.8 激活函数的导数-深度学习-Stanford吴恩达教授的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。