系列文章目录
lesson01
一、前言
深度学习是基于人工神经网络的机器学习方法子集。其中“深度”指的是网络具有多层的特性。简单的来说,深度学习=用深度神经网络进行数学学习。下面我们从傅里叶级数及其导数开始引入。
二、傅里叶级数的例子
深度学习做的是什么,无非就是在一个函数族中找到满足条件的函数(这个函数并不一定唯一在深度学习中,本节后面有例子说明)来逼近背后的规律。那么这个函数族我们将其称为模型,或者叫假设空间。例如线性模型就是一个假设空间,该空间就是所有满足条件的线性函数组成的一个函数族。下面我就从实值有限傅里叶级数开始:其定义为下面的函数族:
F N = { f ( x ) = a 0 + ∑ n = 1 N a n c o s ( n x ) + b n s i n ( n x ) : a 0 , a n , b n ∈ R , 1 ≤ n ≤ N } \begin{align*} \mathcal{F}_N &=\left \{ f(x)=a_0+\sum_{n=1}^{N}a_ncos(nx)+b_nsin(nx):a_0,a_n,b_n\in \mathbb{R},1\le n\le N \right \} \end{align*} FN={
f(x)=a0+n=1∑Nancos(nx)+bnsin(nx):a0,an,bn∈R,1≤n≤N}
这也是一个假设空间。其中 N N N为固定整数,并且 F N \mathcal{F}_N FN中的函数周期都为 2 π 2\pi 2π,所有的 { 1 , c o s ( n x ) , s i n ( n x ) } \left \{ 1,cos(nx),sin(nx) \right \} {
1,cos(nx),sin(nx)}在其中都扮演了基函数的作用;系数 a 0 , a 1 , b 1 , . . . , a N , b N a_0,a_1,b_1,...,a_N,b_N a0,a1,b1,...,aN,bN都是任意的,称为自由参数,在深度学习中就是我们要优化学习的,如果自由参数 a 0 , a 1 , b 1 , . . . , a N , b N a_0,a_1,b_1,...,a_N,b_N a0,a1,b1,...,aN,bN固定,显然 f ( x ) f(x) f(x)就也是固定的,或者我们可以说 f ( x ) f(x) f(x)完全由自由参数确定。
记 θ = { a 0 , a 1 , b 1 , . . . , a N , b N } \theta =\left \{ a_0,a_1,b_1,...,a_N,b_N \right \} θ={
a0,a1,b1,...,aN,bN}为所有自由参数组成的有序集合,那么我们可以将 f ( x ) f(x) f(x)重写为 f ( x ; θ ) f(x;\theta) f(x;θ),表示其对 θ \theta θ的依赖性,并且由于这里是基函数的线性组合,是线性模型,在这种情况下这种依赖性是唯一的。也就是说,对与 θ 1 , θ 2 \theta_1,\theta_2 θ1,θ2这两个自由参数集合,如果 f ( x ; θ 1 ) = f ( x ; θ 2 ) f(x;\theta_1)=f(x;\theta_2) f(x;θ1)=f(x;θ2)对所有的 x x x都成立,那么必有 θ 1 = θ 2 \theta_1=\theta_2 θ1=θ2
另外,在傅立叶级数的结构中,基函数 { 1 , c o s ( n x ) , s i n ( n x ) } \left \{ 1,cos(nx),sin(nx) \right \} {
1,cos(nx),sin(nx)}总是固定的,只有基函数的系数是变量,也就是说,所有傅立叶级数都是基函数的线性组合,在这个意义下,我们可以把所有的 F N \mathcal{F}_N FN看成是一个关于自由参数的线性结构。其他的线性结构还要包括多项式,有限元函数,小博级数等。
但是在深度学习的神经网络中,神经网络相对于自由参数是非线性结构的。典型的例子就是直接取消基函数的固定,以上述的 F N \mathcal{F}_N FN就是将其中的 c o s ( n x ) , s i n ( n x ) cos(nx),sin(nx) cos(nx),sin(nx)中的波数 n n n替换为自由参数 w n , v n w_n,v_n wn,vn,然后我们就有了下面的函数族:
S N = { ϕ ( x