第四章
样条曲线
在第三章中,我们看到足够大的神经网络可以以任意精度逼近每个连续函数。然而,这些结果对“足够大”的含义以及合适架构的选择提供了很少的见解。理想情况下,给定一个函数
f
f
f f 和期望的精度
ε
>
0
ε
>
0
epsi > 0 \varepsilon>0 ,我们希望对所需的大小、深度和宽度有一个(可能是严格的)界限,以保证存在一个神经网络可以逼近
f
f
f f ,误差不超过
ε
ε
epsi \varepsilon 。
逼近理论领域建立了函数
f
f
f f (例如,其光滑性)、逼近精度和实现该精度所需参数数量之间的权衡。例如,给定
k
,
d
∈
N
k
,
d
∈
N
k,d inN k, d \in \mathbb{N} ,需要多少个参数才能将函数
f
:
[
0
,
1
]
d
→
R
f
:
[
0
,
1
]
d
→
R
f:[0,1]^(d)rarrR f:[0,1]^{d} \rightarrow \mathbb{R} 近似到均匀误差
ε
ε
epsi \varepsilon ?已知样条函数可以通过
O
(
ε
−
d
/
k
)
O
ε
−
d
/
k
O(epsi^(-d//k)) O\left(\varepsilon^{-d / k}\right) 个简单(分段多项式)基函数的叠加来实现这种逼近精度。在本章中,参考[144],我们展示了某些 S 型神经网络在神经网络规模方面可以匹配这种性能。实际上,从逼近理论的角度来看,我们证明了所考虑的神经网络至少与样条函数的叠加同样具有表达能力。
4.1 B 样条和光滑函数
我们在下面介绍一种简单的样条及其逼近性质。
定义 4.1。对于
n
∈
N
n
∈
N
n inN n \in \mathbb{N} ,单变量基数 B 样条的阶数
n
∈
N
n
∈
N
n inN n \in \mathbb{N} 由以下公式给出:
S
n
(
x
)
:=
1
(
n
−
1
)
!
∑
ℓ
=
0
n
(
−
1
)
ℓ
(
n
ℓ
)
σ
ReLU
(
x
−
ℓ
)
n
−
1
for
x
∈
R
S
n
(
x
)
:=
1
(
n
−
1
)
!
∑
ℓ
=
0
n
(
−
1
)
ℓ
(
n
ℓ
)
σ
ReLU
(
x
−
ℓ
)
n
−
1
for
x
∈
R
S_(n)(x):=(1)/((n-1)!)sum_(ℓ=0)^(n)(-1)^(ℓ)((n)/(ℓ))sigma_(ReLU)(x-ℓ)^(n-1)quad" for "x inR \mathcal{S}_{n}(x):=\frac{1}{(n-1)!} \sum_{\ell=0}^{n}(-1)^{\ell}\binom{n}{\ell} \sigma_{\operatorname{ReLU}}(x-\ell)^{n-1} \quad \text { for } x \in \mathbb{R}
其中
0
0
:=
0
0
0
:=
0
0^(0):=0 0^{0}:=0 和
σ
ReLU
σ
ReLU
sigma_(ReLU) \sigma_{\mathrm{ReLU}} 表示 ReLU 激活函数。
通过平移和扩展基数 B 样条,我们获得了一组单变量样条。对这些单变量样条进行张量积运算,得到一组称为多变量 B 样条的高维函数。
定义 4.2。对于
t
∈
R
t
∈
R
t inR t \in \mathbb{R} 和
n
,
ℓ
∈
N
n
,
ℓ
∈
N
n,ℓinN n, \ell \in \mathbb{N} ,我们定义
S
ℓ
,
t
,
n
:=
S
n
(
2
ℓ
(
⋅
−
t
)
)
S
ℓ
,
t
,
n
:=
S
n
2
ℓ
(
⋅
−
t
)
S_(ℓ,t,n):=S_(n)(2^(ℓ)(*-t)) \mathcal{S}_{\ell, t, n}:=\mathcal{S}_{n}\left(2^{\ell}(\cdot-t)\right) 。此外,对于
d
∈
N
d
∈
N
d inN d \in \mathbb{N} 、
t
∈
R
d
t
∈
R
d
t inR^(d) \boldsymbol{t} \in \mathbb{R}^{d} 和
n
,
ℓ
∈
N
n
,
ℓ
∈
N
n,ℓinN n, \ell \in \mathbb{N} ,我们将多元 B 样条
S
ℓ
,
t
,
n
d
S
ℓ
,
t
,
n
d
S_(ℓ,t,n)^(d) \mathcal{S}_{\ell, t, n}^{d} 定义为
S
ℓ
,
t
,
n
d
(
x
)
:=
∏
i
=
1
d
S
ℓ
,
t
i
,
n
(
x
i
)
for
x
=
(
x
1
,
…
x
d
)
∈
R
d
S
ℓ
,
t
,
n
d
(
x
)
:=
∏
i
=
1
d
S
ℓ
,
t
i
,
n
x
i
for
x
=
x
1
,
…
x
d
∈
R
d
S_(ℓ,t,n)^(d)(x):=prod_(i=1)^(d)S_(ℓ,t_(i),n)(x_(i))quad" for "x=(x_(1),dotsx_(d))inR^(d) \mathcal{S}_{\ell, t, n}^{d}(\boldsymbol{x}):=\prod_{i=1}^{d} \mathcal{S}_{\ell, t_{i}, n}\left(x_{i}\right) \quad \text { for } \boldsymbol{x}=\left(x_{1}, \ldots x_{d}\right) \in \mathbb{R}^{d}
和
B
n
:=
{
S
ℓ
,
t
,
n
d
∣
ℓ
∈
N
,
t
∈
R
d
}
B
n
:=
S
ℓ
,
t
,
n
d
∣
ℓ
∈
N
,
t
∈
R
d
B^(n):={S_(ℓ,t,n)^(d)∣ℓinN,t inR^(d)} \mathcal{B}^{n}:=\left\{\mathcal{S}_{\ell, t, n}^{d} \mid \ell \in \mathbb{N}, \boldsymbol{t} \in \mathbb{R}^{d}\right\}
引入系统
B
n
B
n
B^(n) \mathcal{B}^{n} 后,我们希望了解如何通过
B
n
B
n
B^(n) \mathcal{B}^{n} 的元素的叠加来很好地表示每个光滑函数。以下定理是从更一般的结果[166,定理 7]中改编而来;另见[139,定理 D.3],以获得更接近当前表述的内容。
定理 4.3. 设
d
,
n
,
k
∈
N
d
,
n
,
k
∈
N
d,n,k inN d, n, k \in \mathbb{N} 使得
0
<
k
≤
n
0
<
k
≤
n
0 < k <= n 0<k \leq n 。则存在
C
C
C C 使得对于每个
f
∈
C
k
(
[
0
,
1
]
d
)
f
∈
C
k
[
0
,
1
]
d
f inC^(k)([0,1]^(d)) f \in C^{k}\left([0,1]^{d}\right) 和每个
N
∈
N
N
∈
N
N inN N \in \mathbb{N} ,存在
c
i
∈
R
c
i
∈
R
c_(i)inR c_{i} \in \mathbb{R} 使得
|
c
i
|
≤
C
‖
f
‖
L
∞
(
[
0
,
1
]
d
)
c
i
≤
C
‖
f
‖
L
∞
[
0
,
1
]
d
|c_(i)| <= C||f||_(L^(oo)([0,1]^(d))) \left|c_{i}\right| \leq C\|f\|_{L^{\infty}\left([0,1]^{d}\right)} 和
B
i
∈
B
n
B
i
∈
B
n
B_(i)inB^(n) B_{i} \in \mathcal{B}^{n} 对于
i
=
1
,
…
,
N
i
=
1
,
…
,
N
i=1,dots,N i=1, \ldots, N ,满足
‖
f
−
∑
i
=
1
N
c
i
B
i
‖
L
∞
(
[
0
,
1
]
d
)
≤
C
N
−
k
d
‖
f
‖
C
k
[
0
,
1
]
d
f
−
∑
i
=
1
N
c
i
B
i
L
∞
[
0
,
1
]
d
≤
C
N
−
k
d
‖
f
‖
C
k
[
0
,
1
]
d
||f-sum_(i=1)^(N)c_(i)B_(i)||_(L^(oo)([0,1]^(d))) <= CN^(-(k)/(d))||f||_(C^(k)[0,1]^(d)) \left\|f-\sum_{i=1}^{N} c_{i} B_{i}\right\|_{L^{\infty}\left([0,1]^{d}\right)} \leq C N^{-\frac{k}{d}}\|f\|_{C^{k}[0,1]^{d}}
备注 4.4。定理 4.9 中有几个关键概念将在本书中反复出现。参数数量
N
N
N N 决定了近似精度
N
−
k
/
d
N
−
k
/
d
N^(-k//d) N^{-k / d} 。这意味着要实现精度
ε
>
0
ε
>
0
epsi > 0 \varepsilon>0 需要
O
(
ε
−
d
/
k
)
O
ε
−
d
/
k
O(epsi^(-d//k)) O\left(\varepsilon^{-d / k}\right) 个参数(根据这个上限),而这个数量在
d
d
d d 中呈指数增长。这种对
d
d
d d 的指数依赖被称为“维度诅咒”,将在后续章节中再次讨论。平滑度参数
k
k
k k 具有与
d
d
d d 相反的效果,并改善收敛速度。因此,平滑函数可以用比粗糙函数更少的 B 样条进行近似。这种更高效的近似需要使用阶数为
n
n
n n 的 B 样条,并且
n
≥
k
n
≥
k
n >= k n \geq k 。我们将在接下来的内容中看到,B 样条的阶数与神经网络中的深度概念密切相关。
4.2 使用 sigmoid 激活函数的 B 样条的重新近似
我们现在展示 B 样条的逼近速率可以转移到某些神经网络上。以下论证基于[142]。
定义 4.5。一个函数
σ
:
R
→
R
σ
:
R
→
R
sigma:RrarrR \sigma: \mathbb{R} \rightarrow \mathbb{R} 被称为阶数为
q
∈
N
q
∈
N
q inN q \in \mathbb{N} 的 sigmoid 函数,如果
σ
∈
C
q
−
1
(
R
)
σ
∈
C
q
−
1
(
R
)
sigma inC^(q-1)(R) \sigma \in C^{q-1}(\mathbb{R}) 并且存在
C
>
0
C
>
0
C > 0 C>0 使得
σ
(
x
)
x
q
→
0
as
x
→
−
∞
σ
(
x
)
x
q
→
1
as
x
→
∞
|
σ
(
x
)
|
≤
C
⋅
(
1
+
|
x
|
)
q
for all
x
∈
R
σ
(
x
)
x
q
→
0
as
x
→
−
∞
σ
(
x
)
x
q
→
1
as
x
→
∞
|
σ
(
x
)
|
≤
C
⋅
(
1
+
|
x
|
)
q
for all
x
∈
R
{:[(sigma(x))/(x^(q)) rarr0" as "x rarr-oo],[(sigma(x))/(x^(q)) rarr1" as "x rarr oo],[|sigma(x)| <= C*(1+|x|)^(q)" for all "x inR]:} \begin{aligned}
\frac{\sigma(x)}{x^{q}} & \rightarrow 0 & & \text { as } x \rightarrow-\infty \\
\frac{\sigma(x)}{x^{q}} & \rightarrow 1 & & \text { as } x \rightarrow \infty \\
|\sigma(x)| & \leq C \cdot(1+|x|)^{q} & & \text { for all } x \in \mathbb{R}
\end{aligned}
例 4.6。整流功率单元
x
↦
σ
ReLU
(
x
)
q
x
↦
σ
ReLU
(
x
)
q
x|->sigma_(ReLU)(x)^(q) x \mapsto \sigma_{\operatorname{ReLU}}(x)^{q} 是阶数为
q
q
q q 的 S 形曲线。 我们接下来的目标是展示神经网络可以近似一个线性组合的
N
N
N N B-样条,其参数数量与
N
N
N N 成正比。根据定理 4.9,我们可以得到神经网络的收敛速率。让我们从用固定大小的神经网络近似一个单变量 B-样条开始。
命题 4.7. 设
n
n
n n ,
d
∈
N
,
n
≥
2
,
K
>
0
d
∈
N
,
n
≥
2
,
K
>
0
d inN,n >= 2,K > 0 d \in \mathbb{N}, n \geq 2, K>0 ,并且
σ
:
R
→
R
σ
:
R
→
R
sigma:RrarrR \sigma: \mathbb{R} \rightarrow \mathbb{R} 是阶数为
q
≥
2
q
≥
2
q >= 2 q \geq 2 的 sigmoid 函数。存在一个常数
C
>
0
C
>
0
C > 0 C>0 ,使得对于每个
ε
>
0
ε
>
0
epsi > 0 \varepsilon>0 ,都有一个神经网络
Φ
S
n
Φ
S
n
Phi^(S_(n)) \Phi^{\mathcal{S}_{n}} ,其激活函数为
σ
,
⌈
log
q
(
n
−
1
)
⌉
σ
,
log
q
(
n
−
1
)
sigma,|~log_(q)(n-1)~| \sigma,\left\lceil\log _{q}(n-1)\right\rceil 层,大小为
C
C
C C ,使得
‖
S
n
−
Φ
S
n
‖
L
∞
(
[
−
K
,
K
]
d
)
≤
ε
S
n
−
Φ
S
n
L
∞
[
−
K
,
K
]
d
≤
ε
||S_(n)-Phi^(S_(n))||_(L^(oo)([-K,K]^(d))) <= epsi \left\|\mathcal{S}_{n}-\Phi^{\mathcal{S}_{n}}\right\|_{L^{\infty}\left([-K, K]^{d}\right)} \leq \varepsilon
证明。根据定义 (4.1.1),
S
n
S
n
S_(n) \mathcal{S}_{n} 是
n
+
1
n
+
1
n+1 n+1 次
σ
ReLU
n
−
1
σ
ReLU
n
−
1
sigma_("ReLU ")^(n-1) \sigma_{\text {ReLU }}^{n-1} 的线性组合。我们首先对
σ
ReLU
n
−
1
σ
ReLU
n
−
1
sigma_("ReLU ")^(n-1) \sigma_{\text {ReLU }}^{n-1} 进行近似。很容易看出(练习 4.10),对于每个
K
′
>
0
K
′
>
0
K^(') > 0 K^{\prime}>0 和每个
t
∈
N
t
∈
N
t inN t \in \mathbb{N}
|
a
−
q
t
σ
∘
σ
∘
⋯
∘
σ
(
a
x
)
⏟
t
−
times
−
σ
ReLU
(
x
)
q
t
|
→
0
as
a
→
∞
|
a
−
q
t
σ
∘
σ
∘
⋯
∘
σ
(
a
x
)
⏟
t
−
times
−
σ
ReLU
(
x
)
q
t
|
→
0
as
a
→
∞
|a^(-q^(t))ubrace(sigma@sigma@cdots@sigma(ax)ubrace)_(t-" times ")-sigma_(ReLU)(x)^(q^(t))|rarr0quad" as "a rarr oo |a^{-q^{t}} \underbrace{\sigma \circ \sigma \circ \cdots \circ \sigma(a x)}_{t-\text { times }}-\sigma_{\operatorname{ReLU}}(x)^{q^{t}}| \rightarrow 0 \quad \text { as } a \rightarrow \infty
对所有
x
∈
[
−
K
′
,
K
′
]
x
∈
−
K
′
,
K
′
x in[-K^('),K^(')] x \in\left[-K^{\prime}, K^{\prime}\right] 统一。 设定
t
:=
⌈
log
q
(
n
−
1
)
⌉
t
:=
log
q
(
n
−
1
)
t:=|~log_(q)(n-1)~| t:=\left\lceil\log _{q}(n-1)\right\rceil 。然后
t
≥
1
t
≥
1
t >= 1 t \geq 1 自
n
≥
2
n
≥
2
n >= 2 n \geq 2 以来,以及
q
t
≥
n
−
1
q
t
≥
n
−
1
q^(t) >= n-1 q^{t} \geq n-1 。因此,对于每个
K
′
>
0
K
′
>
0
K^(') > 0 K^{\prime}>0 和
ε
>
0
ε
>
0
epsi > 0 \varepsilon>0 ,存在一个具有
⌈
log
q
(
n
−
1
)
⌉
log
q
(
n
−
1
)
|~log_(q)(n-1)~| \left\lceil\log _{q}(n-1)\right\rceil 层的神经网络
Φ
ε
q
t
Φ
ε
q
t
Phi_(epsi)^(q^(t)) \Phi_{\varepsilon}^{q^{t}} ,满足
|
Φ
ε
q
t
(
x
)
−
σ
ReLU
(
x
)
q
t
|
≤
ε
for all
x
∈
[
−
K
′
,
K
′
]
Φ
ε
q
t
(
x
)
−
σ
ReLU
(
x
)
q
t
≤
ε
for all
x
∈
−
K
′
,
K
′
|Phi_(epsi)^(q^(t))(x)-sigma_(ReLU)(x)^(q^(t))| <= epsiquad" for all "x in[-K^('),K^(')] \left|\Phi_{\varepsilon}^{q^{t}}(x)-\sigma_{\operatorname{ReLU}}(x)^{q^{t}}\right| \leq \varepsilon \quad \text { for all } x \in\left[-K^{\prime}, K^{\prime}\right]
这表明我们可以将
ReLU
ReLU
ReLU \operatorname{ReLU} 的
q
t
≥
n
−
1
q
t
≥
n
−
1
q^(t) >= n-1 q^{t} \geq n-1 次方进行近似。然而,我们的目标是获得 ReLU 的
n
−
1
n
−
1
n-1 n-1 次方的近似值,这可能小于
q
t
q
t
q^(t) q^{t} 。为了降低阶数,我们模拟
Φ
ε
q
t
Φ
ε
q
t
Phi_(epsi)^(q^(t)) \Phi_{\varepsilon}^{q^{t}} 的近似导数。具体来说,我们展示以下声明:对于所有
1
≤
p
≤
q
t
1
≤
p
≤
q
t
1 <= p <= q^(t) 1 \leq p \leq q^{t} ,对于每个
K
′
>
0
K
′
>
0
K^(') > 0 K^{\prime}>0 和
ε
>
0
ε
>
0
epsi > 0 \varepsilon>0 ,存在一个具有
⌈
log
q
(
n
−
1
)
⌉
log
q
(
n
−
1
)
|~log_(q)(n-1)~| \left\lceil\log _{q}(n-1)\right\rceil 层的神经网络
Φ
ε
p
Φ
ε
p
Phi_(epsi)^(p) \Phi_{\varepsilon}^{p} ,并满足
|
Φ
ε
p
(
x
)
−
σ
ReLU
(
x
)
p
|
≤
ε
for all
x
∈
[
−
K
′
,
K
′
]
Φ
ε
p
(
x
)
−
σ
ReLU
(
x
)
p
≤
ε
for all
x
∈
−
K
′
,
K
′
|Phi_(epsi)^(p)(x)-sigma_(ReLU)(x)^(p)| <= epsiquad" for all "x in[-K^('),K^(')] \left|\Phi_{\varepsilon}^{p}(x)-\sigma_{\operatorname{ReLU}}(x)^{p}\right| \leq \varepsilon \quad \text { for all } x \in\left[-K^{\prime}, K^{\prime}\right]
该声明适用于
p
=
q
t
p
=
q
t
p=q^(t) p=q^{t} 。我们现在通过对
p
=
q
t
,
q
t
−
1
,
…
p
=
q
t
,
q
t
−
1
,
…
p=q^(t),q^(t)-1,dots p=q^{t}, q^{t}-1, \ldots 进行归纳来进行推导。假设(4.2.3)对某个
p
∈
{
2
,
…
,
q
t
}
p
∈
2
,
…
,
q
t
p in{2,dots,q^(t)} p \in\left\{2, \ldots, q^{t}\right\} 成立。固定
δ
≥
0
δ
≥
0
delta >= 0 \delta \geq 0 。然后
|
Φ
δ
2
p
(
x
+
δ
)
−
Φ
δ
2
p
(
x
)
p
δ
−
σ
ReLU
(
x
)
p
−
1
|
≤
2
δ
p
+
|
σ
ReLU
(
x
+
δ
)
p
−
σ
ReLU
(
x
)
p
p
δ
−
σ
ReLU
(
x
)
p
−
1
|
Φ
δ
2
p
(
x
+
δ
)
−
Φ
δ
2
p
(
x
)
p
δ
−
σ
ReLU
(
x
)
p
−
1
≤
2
δ
p
+
σ
ReLU
(
x
+
δ
)
p
−
σ
ReLU
(
x
)
p
p
δ
−
σ
ReLU
(
x
)
p
−
1
{:[|(Phi_(delta^(2))^(p)(x+delta)-Phi_(delta^(2))^(p)(x))/(p delta)-sigma_(ReLU)(x)^(p-1)|],[quad <= 2(delta )/(p)+|(sigma_(ReLU)(x+delta)^(p)-sigma_(ReLU)(x)^(p))/(p delta)-sigma_(ReLU)(x)^(p-1)|]:} \begin{aligned}
& \left|\frac{\Phi_{\delta^{2}}^{p}(x+\delta)-\Phi_{\delta^{2}}^{p}(x)}{p \delta}-\sigma_{\operatorname{ReLU}}(x)^{p-1}\right| \\
& \quad \leq 2 \frac{\delta}{p}+\left|\frac{\sigma_{\operatorname{ReLU}}(x+\delta)^{p}-\sigma_{\mathrm{ReLU}}(x)^{p}}{p \delta}-\sigma_{\mathrm{ReLU}}(x)^{p-1}\right|
\end{aligned}
因此,根据二项式定理,存在
δ
∗
>
0
δ
∗
>
0
delta_(**) > 0 \delta_{*}>0 使得
|
Φ
δ
∗
2
p
(
x
+
δ
∗
)
−
Φ
δ
∗
2
p
(
x
)
p
δ
∗
−
σ
ReLU
(
x
)
p
−
1
|
≤
ε
Φ
δ
∗
2
p
x
+
δ
∗
−
Φ
δ
∗
2
p
(
x
)
p
δ
∗
−
σ
ReLU
(
x
)
p
−
1
≤
ε
|(Phi_(delta_(**)^(2))^(p)(x+delta_(**))-Phi_(delta_(**)^(2))^(p)(x))/(pdelta_(**))-sigma_(ReLU)(x)^(p-1)| <= epsi \left|\frac{\Phi_{\delta_{*}^{2}}^{p}\left(x+\delta_{*}\right)-\Phi_{\delta_{*}^{2}}^{p}(x)}{p \delta_{*}}-\sigma_{\mathrm{ReLU}}(x)^{p-1}\right| \leq \varepsilon