RNN万能逼近定理证明
- RNN原理图和数学表达式
- RNN的万能逼近定理及其证明
- 证明
RNN原理图和数学表达式
-
s t = U h t − 1 + W x t + b ∈ R D h s_t=Uh_{t-1}+Wx_t+b\in\mathbb{R}^{D_h} st=Uht−1+Wxt+b∈RDh
- s t ∈ R D h s_t\in\mathbb{R}^{D_h} st∈RDh
- U ∈ R D h × D h U\in\mathbb{R}^{D_h\times D_h} U∈RDh×Dh
- W ∈ R D h × D x W\in\mathbb{R}^{D_h\times D_x} W∈RDh×Dx
- b ∈ R D h b\in\mathbb{R}^{D_h} b∈RDh
-
h t = f ( s t ) ∈ R D h h_t=f(s_t)\in\mathbb{R}^{D_h} ht=f(st)∈RDh
- f f f 为sigmoid激活函数
- h t h_t ht 为t时刻隐状态
-
z t = V h t ∈ R D z z_t=Vh_t\in\mathbb{R}^{D_z} zt=Vht∈RDz
- V ∈ R D z × D h V\in\mathbb{R}^{D_z\times D_h} V∈RDz×Dh
-
L t = l ( z t , y t ) ∈ R L_t=l(z_t,y_t)\in\mathbb{R} Lt=l(zt,yt)∈R
- L = 1 T ∑ t = 1 T L t L=\frac{1}{T}\sum_{t=1}^TL_t L=T1∑t=1TLt
RNN的万能逼近定理及其证明
证明
【引理】
深度受限的万能逼近定理:任何函数可以被足够宽的单隐层全连接神经网络逼近。
对g使用单隐藏神经网络逼近(f为激活函数,输出层线性变换C)
s t = g ( s t − 1 , x t ) ≈ C f ( A s t − 1 + B x t + b ) = C s t ′ s_t=g(s_{t-1},x_t)\approx Cf(As_{t-1}+Bx_t+b)=Cs'_t st=g(st−1,xt)≈Cf(Ast−1+Bxt+b)=Cst′
对复合函数O·g使用单隐层网络逼近(f为激活函数,输出层线性变换D)
s t ′ = f ( A s t − 1 + B x t + b ) = f ( A C s t − 1 ′ + B x t + b ) s'_t=f(As_{t-1}+Bx_t+b)=f(ACs_{t-1}'+Bx_t+b) st′=f(Ast−1+Bxt+b)=f(ACst−1′+Bxt+b)
y t = O ( s t ) = O ( g ( s t − 1 , x t ) ) ≈ D f ( A ′ s t − 1 + B ′ x t + b ′ ) = D y t ′ y_t=O(s_t)=O(g(s_{t-1},x_t))\approx Df(A's_{t-1}+B'x_t+b')=Dy'_t yt=O(st)=O(g(st−1,xt))≈Df(A′st−1+B′xt+b′)=Dyt′
y t ′ = f ( A ′ s t − 1 ′ + B ′ x t + b ′ ) = f ( A ′ C s t − 1 ′ + B ′ x t + b ′ ) y'_t=f(A's_{t-1}'+B'x_t+b')=f(A'Cs_{t-1}'+B'x_t+b') yt′=f(A′st−1′+B′xt+b′)=f(A′Cst−1′+B′xt+b′)
构建隐状态,得到其递推式
h t = [ s t ′ y t ′ ] = f ( [ A C 0 A ′ C 0 ] [ s t − 1 ′ y t − 1 ′ ] + [ b b ′ ] ) = f ( U h t + W x t + a ) h_t=\begin{bmatrix}s'_t\\y'_t\end{bmatrix}=f\left(\begin{bmatrix}AC&0\\A'C&0\end{bmatrix}\begin{bmatrix}s_{t-1}'\\y_{t-1}'\end{bmatrix}+\begin{bmatrix}b\\b'\end{bmatrix}\right)=f(Uh_t+Wx_t+a) ht=[st′yt′]=f([ACA′C00][st−1′yt−1′]+[bb′])=f(Uht+Wxt+a)
y t = [ 0 D ] [ s t ′ y t ′ ] = V h t y_t=\begin{bmatrix}0&D\end{bmatrix}\begin{bmatrix}s'_t\\y'_t\end{bmatrix}=Vh_t yt=[0D][st′yt′]=Vht
即全连接RNN的形式,通过训练得到参数 U 、 W 、 V 、 a (即可得到 A 、 B 、 A ′ 、 B ′ 、 b 、 b ′ ) U、W、V、a(即可得到A、B、A'、B'、b、b') U、W、V、a(即可得到A、B、A′、B′、b、b′)
当RNN神经元数量足够多时,单隐藏神经网络能逼近函数g、O,此时RNN逼近任意非线性动力系统。