@article{lu2017the,
title={The expressive power of neural networks: a view from the width},
author={Lu, Zhou and Pu, Hongming and Wang, Feicheng and Hu, Zhiqiang and Wang, Liwei},
pages={6232–6240},
year={2017}}
概
Universal approximation theorem-wiki, 这个定理分成俩个部分, 第一个部分是Unbounded Width Case, 这篇文章是Bounded Width Case (ReLu网络).
主要内容
定理1
另外, 定理1中的网络由若干个(视 ϵ \epsilon ϵ而定) blocks排列而成, 每个block具有以下性质:
- depth: 4n+1, width: n+4 的神经网络
- 在一个范围外其“函数值”为0
- 它能够存储样本信息
- 它会加总自身的信息和前面的逼近信息
定理2
定理3
定理4
定理1的证明
因为主要关注定理1, 所以讲下这个部分的证明(实际上是因为其它懒得看了).
假设
x
=
(
x
1
,
x
2
,
…
,
x
n
)
x = (x_1, x_2,\ldots, x_n)
x=(x1,x2,…,xn)为输入,
f
f
f是
L
1
L^1
L1可积的, 对于任意的
ϵ
>
0
\epsilon > 0
ϵ>0, 存在
N
>
0
N > 0
N>0满足
∫
∪
i
=
1
n
∣
x
i
∣
≥
N
∣
f
∣
d
x
<
ϵ
2
.
\int_{\cup_{i=1}^n|x_i| \ge N} |f| \mathrm{d}x < \frac{\epsilon}{2}.
∫∪i=1n∣xi∣≥N∣f∣dx<2ϵ.
定义下列符号:
则我们有:
∫
R
n
∣
f
−
(
f
1
−
f
2
)
∣
d
x
<
ϵ
2
,
\int_{R^n} |f-(f_1 - f_2)| \mathrm{d}x < \frac{\epsilon}{2},
∫Rn∣f−(f1−f2)∣dx<2ϵ,
对于
i
=
1
,
2
i=1, 2
i=1,2, 既然
V
E
i
V_E^i
VEi是可测的(且测度小于
+
∞
+\infty
+∞), 则我们能找到有限个
n
+
1
n+1
n+1维的矩体去逼近(原文用了cover, 但是我感觉这里用互不相交的矩体才合理), 并有
m
(
V
E
i
Δ
∪
j
J
j
,
i
)
<
ϵ
8
,
m(V_E^i \Delta \cup_j J_{j,i}) < \frac{\epsilon}{8},
m(VEiΔ∪jJj,i)<8ϵ,
不出意外
Δ
\Delta
Δ应该就是\.
假设
J
j
,
i
J_{j,i}
Jj,i有
n
i
n_i
ni个, 且
每一个
J
j
,
i
J_{j, i}
Jj,i对应一个指示函数:
ϕ
j
,
i
(
x
)
=
{
1
x
∈
X
j
,
i
0
x
∉
X
j
,
i
.
\phi_{j,i}(x) = \left \{ \begin{array}{ll} 1 & x \in X_{j,i} \\ 0 & x \not \in X_{j,i}. \end{array} \right.
ϕj,i(x)={10x∈Xj,ix∈Xj,i.
则
这个在实变函数将多重积分, 提到的下方图形集有讲到.
于是我们有(
−
f
1
−
f
2
+
f
1
+
f
2
−
f
+
f
-f_1-f_2+f_1+f_2-f+f
−f1−f2+f1+f2−f+f然后拆开来就可以得到不等式)
现在我们要做的就是通过神经网络拟合
φ
j
,
i
\varphi_{j,i}
φj,i去逼近
ϕ
j
,
i
\phi_{j,i}
ϕj,i, 使得
现在来讲, 如果构造这个神经网络:
一个block有4n+1层, 每层的width是n+4, 注意到所有层的前n个Node都是一样的用来保存样本信息. 我们用
R
i
,
j
,
B
k
,
i
=
1
,
2
,
3
,
4
,
j
=
1
,
…
,
n
+
4
,
k
=
1
,
…
,
n
,
R_{i, j, \mathscr{B_k}}, i=1, 2, 3, 4, j=1,\ldots,n+4, k=1,\ldots, n,
Ri,j,Bk,i=1,2,3,4,j=1,…,n+4,k=1,…,n, 表示第
k
k
k个Unit(每个Unit有4层)的第
i
i
i层的第
j
j
j个Node.
注意:
R
2
,
n
+
3
,
B
1
R_{2, n+3, \mathscr{B_1}}
R2,n+3,B1应该是
(
x
1
−
a
1
)
+
/
δ
(x_1-a_1)^+/\delta
(x1−a1)+/δ, 最开始的结构图中的对的. 我们来看一下, 什么样的
x
=
(
x
1
,
…
,
x
n
)
x=(x_1, \ldots, x_n)
x=(x1,…,xn), 会使得
L
1
L_1
L1不为0.
如果
x
1
=
a
1
+
δ
(
b
1
−
a
1
)
+
ϵ
x_1=a_1+\delta(b_1-a_1)+\epsilon
x1=a1+δ(b1−a1)+ϵ, 这里
ϵ
>
0
\epsilon>0
ϵ>0是一个任意小量, 和上文中的
ϵ
\epsilon
ϵ没有关系. 此时(当
δ
<
1
/
2
\delta<1/2
δ<1/2)
(
x
1
−
b
1
+
δ
(
b
1
−
a
1
)
)
+
δ
=
0
,
\frac{(x_1-b_1+\delta(b_1-a_1))^+}{\delta}= 0,
δ(x1−b1+δ(b1−a1))+=0,
当
δ
\delta
δ足够小的时候
(
x
1
−
a
1
)
+
δ
=
0
,
\frac{(x_1-a_1)^+}{\delta}= 0,
δ(x1−a1)+=0,
此时
L
1
=
1
L_1=1
L1=1, 类似地, 可以证明, 当
δ
→
0
\delta \rightarrow 0
δ→0的时候,
x
1
∈
(
a
1
+
δ
(
b
1
−
a
1
)
,
b
1
−
δ
(
b
1
−
a
1
)
)
x_1 \in (a_1+\delta(b_1-a_1),b_1-\delta(b_1-a_1))
x1∈(a1+δ(b1−a1),b1−δ(b1−a1))时,
L
1
=
1
L_1=1
L1=1, 否则为0.
R
i
,
j
,
B
k
R_{i, j, \mathscr{B_k}}
Ri,j,Bk的定义是类似的, 只是
L
k
=
(
(
L
k
−
1
−
(
x
k
−
b
k
+
δ
(
a
k
−
b
k
)
)
+
/
δ
)
+
−
(
1
−
(
x
k
−
a
k
)
+
/
δ
)
+
)
+
,
L_k = ((L_{k-1}-(x_k-b_k+\delta(a_k-b_k))^+/\delta)^+- (1-(x_k-a_k)^+/\delta)^+)^+,
Lk=((Lk−1−(xk−bk+δ(ak−bk))+/δ)+−(1−(xk−ak)+/δ)+)+,
可以证明, 当
δ
→
0
\delta\rightarrow 0
δ→0, 且
x
t
∈
(
a
t
+
δ
(
b
t
−
a
t
)
,
b
t
−
δ
(
b
t
−
a
t
)
)
,
t
=
1
,
2
,
…
,
k
x_t \in (a_t + \delta(b_t-a_t),b_t-\delta(b_t-a_t)), t=1,2,\ldots, k
xt∈(at+δ(bt−at),bt−δ(bt−at)),t=1,2,…,k的时候,
L
k
=
1.
L_k=1.
Lk=1., 这样我们就构造了一个指示函数, 如果这个这函数对应的
i
i
i为1则将
L
n
L_n
Ln存入n+1 Node, 否则 n+2 Node (实际上, 我感觉应该存的是
b
n
+
1
,
j
,
i
L
n
b_{n+1,j,i}L_n
bn+1,j,iLn), 则
这里
μ
\mu
μ相当于
L
n
L_n
Ln. 所以多个blocks串联起来后, 我们就得到了一个函数, 且这个函数是我们想要的.
这个直接通过超距体体积计算得来的, 我们只需要取:
最后
令
g
:
=
∑
i
=
1
2
∑
j
=
1
n
i
(
−
1
)
i
+
1
b
n
+
1
,
j
,
i
μ
j
,
i
g:=\sum_{i=1}^2\sum_{j=1}^{n_i}(-1)^{i+1}b_{n+1,j,i}\mu_{j,i}
g:=∑i=12∑j=1ni(−1)i+1bn+1,j,iμj,i,便有
此即定理1的证明.