来自 PDE 的残差神经网络

残差神经网络与常微分方程
参考文献 Deep Residual Learning for Image Recognition

在这里插入图片描述
对输入的向量 x, 经过 线性变换后, 再非线性变换, 然后线性变换, 最后加上 x. 写成公式
F ( x ) + x : = W 2 σ ( W 1 x ) + x . \text{F}(x) +x:=W_2\sigma(W_1x) +x. F(x)+x:=W2σ(W1x)+x.
σ : R → R \sigma: \R \to \R σ:RR 是激活函数.

残差主要的作用是避免梯度消失.

输入 特征 X 0 = X X_0=X X0=X,得到 X 1 X_1 X1, 输入 X 1 X_1 X1, 得到 X 2 X_2 X2, X 1 : = F ( X 0 ) + X 0 , X 2 : = F ( X 1 ) + X 1 , ⋮ X n + 1 : = F ( X n ) + X n . (1) \begin{aligned} X_1&:=\mathcal{F}(X_0) +X_0,\\ X_2&:=\mathcal{F}(X_1) +X_1,\\ \vdots\\ X_{n+1}&:=\mathcal{F}(X_n) +X_n.\\ \end{aligned}\tag{1} X1X2Xn+1:=F(X0)+X0,:=F(X1)+X1,:=F(Xn)+Xn.(1)

上面是一串残差网络.

对 (1) 做移项处理后, 有
X ( n + 1 ) − X ( n ) 1 : = X n + 1 − X n = F ( X n ) . (2) \frac{X(n+1)-X(n)}{1}:=X_{n+1}-X_n=\mathcal{F}(X_n). \tag{2} 1X(n+1)X(n):=Xn+1Xn=F(Xn).(2)
这可以看成是方程
∂ X ∂ t = F ( X ( t ) ) X ( 0 ) = X 0 \begin{aligned} \frac{\partial X}{\partial t}&= \mathcal{F}(X(t))\\ X(0)&=X_0 \end{aligned} tXX(0)=F(X(t))=X0的离散形式.

一串的残差神经网络可以看成是常微分方程的离散形式. 每层神经网络的输出实际上是 微分方程的解在 某个时刻的值. 这在一定程度上沟通了神经网络与微分方程的联系. 但 是 我 们 还 是 看 得 出 来 这 里 得 问 题 , 几 个 特 殊 点 是 否 能 确 定 唯 一 的 微 分 方 程 . ( 2 ) 式 里 边 仅 仅 是 用 了 有 限 个 点 . \blue{但是我们还是看得出来这里得问题, 几个特殊点是否能确定唯一的微分方程. (2)式里边仅仅是用了有限个点.} ,.(2).

残差卷积神经网络与PDE

参考文献 Deep Neural Networks Motivated by Partial Differential Equations

矩阵的卷积运算在本质上上是也是一种特殊的矩阵运算.
θ = ( θ 1 , θ 2 , θ 3 ) \theta=(\theta_1,\theta_2,\theta_3) θ=(θ1,θ2,θ3) R 3 \R^3 R3 中的向量. 对 x ∈ R n x \in \R^n xRn, 卷积运算
( θ 1 , θ 2 , θ 3 ) ∗ x . (\theta_1,\theta_2,\theta_3)*x. (θ1,θ2,θ3)x. 实际上是矩阵
( θ 2 θ 3 0 0 ⋯ 0 0 0 θ 1 θ 2 θ 3 0 ⋯ 0 0 0 0 θ 1 θ 2 θ 3 ⋯ 0 0 0 ⋮ ⋮ ⋮ ⋮ ⋯ ⋮ ⋮ ⋮ 0 0 0 ⋯ θ 1 θ 2 θ 3 0 0 0 ⋯ 0 θ 1 θ 2 ) x \left( \begin{array}{c} \theta_2&\theta_3&0 & 0 &\cdots &0 &0&0\\ \theta_1& \theta_2&\theta_3&0& \cdots &0&0&0\\ 0&\theta_1& \theta_2&\theta_3& \cdots &0&0&0\\ \vdots &\vdots &\vdots &\vdots &\cdots &\vdots &\vdots &\vdots &\\ 0&&0&0&\cdots&\theta_1& \theta_2&\theta_3\\ 0&&0&0&\cdots&0& \theta_1&\theta_2\\ \end{array} \right)x θ2θ1000θ3θ2θ10θ3θ20000θ300000θ10000θ2θ1000θ3θ2x

使用 W ( θ ) W(\theta) W(θ) 表示这个矩阵, 于是
W ( θ ) x = ( θ 1 , θ 2 , θ 3 ) ∗ x . W(\theta)x=(\theta_1,\theta_2,\theta_3)*x. W(θ)x=(θ1,θ2,θ3)x. 这意味着卷积网络可以有表达为残差网络模式, 称为卷积残差网络.
F ( θ , x ) : = W 2 ( θ 3 ) σ ( W 1 ( θ 1 ) ) : = θ 3 ∗ σ ( θ 1 ∗ x ) . \mathcal{F}(\theta,x):=W_2(\theta_3)\sigma(W_1(\theta_1)):=\theta_3*\sigma(\theta_1*x) . F(θ,x):=W2(θ3)σ(W1(θ1)):=θ3σ(θ1x). θ \theta θ θ 1 , θ 3 \theta_1,\theta_3 θ1,θ3.
通常输入是一堆样本, 即矩阵, 不仅仅是向量. 对卷积作用会使用一个正则化. 令 BN ( , θ 2 ) \text{BN}(,\theta_2) BN(,θ2) 是 参数为 θ 2 \theta_2 θ2 的 batch 正则化. 例如 对矩阵

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值