Alterna · 学习资料
07.4. 非线性转换规则
ReLU、GELU和SILU是不同的转换神经元总和的方法。
本节学习内容
- 不同的负面分支
内容与核心概念
在上一页, 平滑的函数和饱和 。
ReLU、GELU和SILU是不同的转换神经元总和的方法。
他收集投入,增加一个轮班,并应用非线性规则。这一计算的所有部分已经用学校算术提供。
Для изменения рисунка включитеJavaScript; расчёт и теория доступны далее.
不同的负面分支
ReLU(z) =max( 0. z). 输出值为 0 : z < 0 和 1 z> 0 。 没有任何经典衍生物在 零 时可用; 运行时间选择 0 是一个明确的协议。 阈值倍增系数还有另一个衍生物: 0 超出临界值和不确定值 。
SILU(z)=z\(z)。根据工作规则:
SiLU
′
(
z
)
=
σ
(
z
)
+
z
σ
(
z
)
(
1
−
σ
(
z
)
)
.
\operatorname{SiLU}'(z)=\sigma(z)+z\sigma(z)(1-\sigma(z)).
SiLU
′
(
z
)
=
σ
(
z
)
+
z
σ
(
z
)
(
1
−
σ
(
z
))
.
从 5 得出 z= 0 结果 0; z = - 1 值约为 268941。 允许小负输出 。
GELU是使用标准高西亚CDF的z(z) 。
接近 tanh- 接近
而不是确切的CDF(N05.N08):
u
=
2
/
π
(
z
+
0.044715
z
3
)
,
g
(
z
)
=
1
2
z
(
1
+
tanh
u
)
.
u=\sqrt{2/\pi}(z+0.044715z^3),\qquad g(z)=\tfrac12z(1+\tanh u).
u
=
2/
π
(
z
+
0.044715
z
3
)
,
g
(
z
)
=
2
1
z
(
1
+
tanh
u
)
.
它的衍生物是:5(1+tanh u)+5z(1-tanh2u)G(2/Pi)(1)+3+044715z2)。 它具体对应选定的近似值。
研究。
比较 -1.0.1 中的函数, 并解释衍生物的差异。 图形的格式没有给出通用评级: 实用性取决于结构、 数据和学习。 转换正在改变函数的组合, 而不仅仅是线条的设计 。
from math import tanh,sqrt,pi
z=0
u=sqrt(2/pi)*(z+.044715*z**3)
g=.5*z*(1+tanh(u))
gp=.5*(1+tanh(u))+.5*z*(1-tanh(u)**2)*sqrt(2/pi)*(1+3*.044715*z*z)
assert g==0 and gp==.5
代码重复了刚刚处理的操作
完全检查了 Python 示例章节
可用一个单独的文件; 显示的短片不会取代其执行 。
公式和衍生物是选定的近似值之一。
这一问题如何继续下去?
Python第07章的例子
学术基础