深度神经网络中的精确学习与架构分析
1. 最大值的表示
在神经网络中,我们可以用具有特定激活函数的网络来精确表示最大值函数。对于函数 (f(x_1, \ldots, x_n) = \max{x_1, \ldots, x_n}),可以使用隐藏层为ReLU激活函数、输出层为线性激活函数的神经网络来精确表示,并且网络深度与输入大小 (n) 呈对数增长。
首先,引入一些符号和基本性质。设 (x^+ = \max{x, 0}) 和 (x^- = \min{x, 0}) 分别表示实数 (x) 的正部和负部,有 (x = x^+ + x^-) 和 (|x| = x^+ - x^-),且 (x^+ = -(-x)^-)。利用公式 (\max{x_1, x_2} = \frac{1}{2}(x_1 + x_2 + |x_1 - x_2|)) 以及 (ReLU(x) = x^+),可以将两个数的最大值表示为ReLU函数的线性组合:
[
\begin{align }
\max{x_1, x_2} &= \frac{1}{2}(x_1 + x_2 + |x_1 - x_2|)\
&= \frac{1}{2}((x_1 + x_2)^+ + (x_1 + x_2)^- + (x_1 - x_2)^+ - (x_1 - x_2)^-)\
&= \frac{1}{2}((x_1 + x_2)^+ - (-x_1 - x_2)^+ + (x_1 - x_2)^+ + (-x_1 + x_2)^+)\
&= \frac{1}{2}ReLU(1 \cdot x_1 + 1 \cdot x_2) - \frac{1}{2}ReLU(-1
超级会员免费看
订阅专栏 解锁全文
36万+

被折叠的 条评论
为什么被折叠?



