从流形的观点分析神经网络

从流形的观点分析神经网络

无意中看到一本用数学分析神经网络的书,里面用各种数学工具来分析神经网络(如数学分析、线性代数、流形、信息论、概率论、优化等),书的信息如下:

Ovidiu Calin, Deep Learning Architectures - A Mathematical Approach, Springer, 2020.

我看了用流形解释神经网络那一章的前面几页,觉得写的还不错,记录一下。
考虑一个神经元,输入是 x∈Rn\textbf{x}\in \mathbb{R}^nxRn,输出是 y=σ(wTx+b)∈Ry=\sigma(w^T\textbf{x}+b )\in \mathbb{R}y=σ(wTx+b)R。不妨取 σ\sigmaσ 是 logistic function。则集合
S={σ(wTx+b);w∈Rn,b∈R}S=\{\sigma(w^T\textbf{x}+b );w\in\mathbb{R}^n,b\in \mathbb{R} \}S={σ(wTx+b);wRn,bR}
是一个 n+1n+1n+1 维的流形。它可以看成是Rn\mathbb{R}^nRn上全体连续函数空间(其维数是无穷维)的一个子流形。事实上,计算得
∂y∂b=σ′(wTx+b)=y(1−y)∂y∂wj=σ′(wTx+b)xj=y(1−y)xj\frac{\partial{y}}{\partial{b}}=\sigma'(w^T\textbf{x}+b )=y(1-y) \\ \frac{\partial{y}}{\partial{w_j}}=\sigma'(w^T\textbf{x}+b )x_j=y(1-y)x_jby=σ(wTx+b)=y(1y)wjy=σ(wTx+b)xj=y(1y)xj
我们说明{∂y∂b,∂y∂wj}\{\frac{\partial{y}}{\partial{b}},\frac{\partial{y}}{\partial{w_j}}\}{by,wjy}线性无关。若α0∂y∂b+∑i=1nαi∂y∂wi=0\alpha_0\frac{\partial{y}}{\partial{b}}+\sum_{i=1}^{n}\alpha_i\frac{\partial{y}}{\partial{w_i}}=0α0by+i=1nαiwiy=0,则代入得α0y(1−y)+∑i=1nαiy(1−y)xj=0\alpha_0y(1-y) +\sum_{i=1}^{n}\alpha_iy(1-y) x_j=0α0y(1y)+i=1nαiy(1y)xj=0,由y(1−y)≠0y(1-y)\neq0y(1y)=0 知道 α0+∑i=1nαixj=0\alpha_0 +\sum_{i=1}^{n}\alpha_i x_j=0α0+i=1nαixj=0。再由xjx_jxj任意性即得结论。从而Jacobian矩阵JyJ_yJy满秩(为n+1n+1n+1)。
接下来,训练神经网络的过程实际上是拟合一个函数z=z(x)z=z(\textbf{x})z=z(x)。如果zzz在流形SSS上,那么存在w∗∈Rn,b∗∈Rw^*\in\mathbb{R}^n,b^*\in \mathbb{R}wRn,bR使得z=y∗=y(w∗,b∗)z=y^*=y(w^*,b^*)z=y=y(w,b)。然而,更一般的情况是z∉Sz\notin Sz/S,这意味着需要找w∗∈Rn,b∗∈Rw^*\in\mathbb{R}^n,b^*\in \mathbb{R}wRn,bR使得
(w∗,b∗)=argminw,bdist(z,S)(w^*,b^*)=\mathop{argmin}\limits_{w,b} dist(z,S)(w,b)=w,bargmindist(z,S)
给定初值(w0,b0)(w_0,b_0)(w0,b0),一个学习算法会产生一个序列(wn,bn)n(w_n,b_n)_n(wn,bn)n,期望它收敛到(w∗,b∗)(w^*,b^*)(w,b)。按作者原话:If the parameters update is made continuously (implied by an infinitesimal learning rate), then we obtain a curve c(t)=(w(t),b(t))c(t) = (w(t),b(t))c(t)=(w(t),b(t)) joining (w0,b0)(w_0,b_0)(w0,b0) and (w∗,b∗)(w^*,b^*)(w,b). This can be lifted to the curve γ(t)=y∘c(t)γ(t) = y \circ c(t)γ(t)=yc(t) on the manifold SSS. The fastest learning algorithm corresponds to the “shortest” curve between y(w0,b0)y(w_0,b_0)y(w0,b0) and y(w∗,b∗)y(w^*,b^*)y(w,b). The attribute “shortest” depends on the intrinsic geometry of the manifold SSS, and this topic will be discussed in the next section. 这样这个优化问题就可以和后面的黎曼度量、测地线等概念建立关联了。
对一般的神经网络,如果我们增大神经元的个数,则对应的参数也相应增多,SSS的维数也增加。记M=C([0,1])M=C([0,1])M=C([0,1]),我们知道对于任意固定的 ϵ>0\epsilon>0ϵ>0,以及任意的f∈Mf\in MfM,总有一个足够高维数的SSS使得dist(f,S)<ϵdist(f,S)<\epsilondist(f,S)<ϵ,其中
dist(f,S)=infs∈Smaxx∈[0,1]∣f(x)−s(x)∣dist(f,S)=\mathop{inf}\limits_{s\in S}\mathop{max}\limits_{x\in [0,1]}|f(x)-s(x)|dist(f,S)=sSinfx[0,1]maxf(x)s(x)
然而实际问题中神经元个数是受限的,如何处理也是作者讨论的话题。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值