加权最小二乘法、数据趋势分析和傅里叶级数是内积空间的典型应用。加权最小二乘法通过内积衡量误差,数据趋势分析利用内积分离不同阶数的趋势,傅里叶级数则基于内积定义正弦和余弦的正交性。这些方法广泛应用于统计学、信号处理等领域,解决数据拟合、趋势分析和函数近似问题。
1. 加权最小二乘法
传统的最小二乘法的目标是最小化观测值与拟合值之间的误差平方和(即残差的平方和)。然而,在实际情况中,观测值的可靠性通常是不均匀时,这时就可以使用加权最小二乘法来对误差进行加权。加权最小二乘法 ( Weighted Least Squares, WLS \textbf{Weighted Least Squares, WLS} Weighted Least Squares, WLS )通过为不同的观测值分配不同的权重,以实现更精确的拟合。
1.1 加权最小二乘法的定义
假设我们有一个由 n ~n~ n 个观测值组成的向量 y = ( y 1 , y 2 , … , y n ) ~y = (y_1, y_2, \dots, y_n)~ y = ( y 1 , y 2 , … , y n ) ,以及一个期望的近似值向量 y ^ = ( y ^ 1 , y ^ 2 , … , y ^ n ) \hat{y} = (\hat{y}_1, \hat{y}_2, \dots, \hat{y} _n) y ^ = ( y ^ 1 , y ^ 2 , … , y ^ n ) ,加权最小二乘法的目标是最小化权误差的平方和。首先,我们定义加权误差平方和为:
S S ( E ) = ∑ i = 1 n w i ( y i − y ^ i ) 2 SS(E) = \sum_{i = 1}^n w_i (y_i - \hat{y}_i)^2 SS ( E ) = i = 1 ∑ n w i ( y i − y ^ i ) 2
其中, w i w_i w i 是为每个观测值 y i y_i y i 指定的权重。对于更可靠的测量, w i w_i w i 会较大,而对于不太可靠的测量, w i w_i w i 会较小。
1.2 权重矩阵的引入
为了使问题更易处理,通常可以引入一个对角矩阵 W W W ,其中对角元素是每个观测值的权重 w 1 , w 2 , … , w n w_1, w_2, \dots, w_n w 1 , w 2 , … , w n 。于是,权重误差平方和可以表示为:
S S ( E ) = ∥ W ( y − y ^ ) ∥ 2 SS(E) = \| W (y - \hat{y}) \|^2 SS ( E ) = ∥ W ( y − y ^ ) ∥ 2
这就是通过内积空间定义的误差平方,利用内积来衡量加权误差的大小。通过调整权重矩阵 W W W ,我们能够增强那些更可靠的观测数据,从而使拟合结果更加精准。
1.3 转换为普通最小二乘法
在某些情况下,为了方便计算,加权最小二乘法可以转化为普通最小二乘法的问题。通过引入权重矩阵 W W W ,可以将原问题转化为:
W y = W y ^ \mathbf{W} \mathbf{y} = \mathbf{W} \hat{\mathbf{y}} Wy = W y ^
此时,我们通过乘 W W W 来调整数据和拟合值,使得这个加权问题转化为普通最小二乘法的问题。加权误差平方和变成了标准的最小二乘法的误差平方和:
∥ W y − W y ^ ∥ 2 = ∥ W ( y − y ^ ) ∥ 2 \| \mathbf{W} \mathbf{y} - \mathbf{W} \hat{\mathbf{y}} \|^2 = \| \mathbf{W} (\mathbf{y} - \hat{\mathbf{y}}) \|^2 ∥ Wy − W y ^ ∥ 2 = ∥ W ( y − y ^ ) ∥ 2
这使得我们能够应用普通最小二乘法的求解方法,通过解线性方程组 W A x = W y \mathbf{W} \mathbf{A} \mathbf{x} = \mathbf{W} \mathbf{y} WAx = Wy
得到最优解。为了得到普通最小二乘法的标准形式,我们将方程转换为法方程的形式,即:
( W A ) T ( W A ) x = ( W A ) T W y (\mathbf{W}\mathbf{A})^T(\mathbf{W}\mathbf{A}) \mathbf{x} = (\mathbf{W}\mathbf{A})^T \mathbf{W} \mathbf{y} ( WA ) T ( WA ) x = ( WA ) T Wy
1.4 示例:加权与普通最小二乘法比较 求出最小二乘法拟合的直线 y = β 0 + β 1 x ~y = \beta_0 + \beta_1 x~ y = β 0 + β 1 x ,使其最适合下列数据点: ( − 2 , 3 ) , ( − 1 , 5 ) , ( 0 , 5 ) , ( 1 , 4 ) , ( 2 , 3 ) (-2,3),(-1,5),(0,5),(1,4),(2,3)~ ( − 2 , 3 ) , ( − 1 , 5 ) , ( 0 , 5 ) , ( 1 , 4 ) , ( 2 , 3 ) 。假设最后两个数据点的 y ~y~ y 值的测量误差较大,因此这些数据点的权重需要减半。使用加权最小二乘法对这些数据点加权,并与普通最小二乘法拟合结果进行比较。
1
定义设计矩阵 X ~\mathbf{X}~ X 和观测值向量 y ~\mathbf{y}~ y
最小二乘矩阵方程 X β = y ~\mathbf{X}\boldsymbol{\beta} = \mathbf{y}~ X β = y ,其中:
X = [ 1 − 2 1 − 1 1 0 1 1 1 2 ] , β = [ β 0 β 1 ] , y = [ 3 5 5 4 3 ] \mathbf{X} = \begin{bmatrix}
1 & -2 \\
1 & -1 \\
1 & 0 \\
1 & 1 \\
1 & 2
\end{bmatrix},\quad \boldsymbol{\beta} = \begin{bmatrix}
\beta_0 \\
\beta_1
\end{bmatrix}, \quad \mathbf{y} = \begin{bmatrix}
3 \\ 5 \\ 5 \\ 4 \\ 3
\end{bmatrix} X = 1 1 1 1 1 − 2 − 1 0 1 2 , β = [ β 0 β 1 ] , y = 3 5 5 4 3 由于最后两个数据点的 y ~y~ y 值的测量误差较大,我们将它们的权重减半。权重矩阵 W ~\mathbf{W}~ W 是一个对角矩阵,对角元素为 2 , 2 , 2 , 1 , 1 ~2, 2, 2, 1, 1~ 2 , 2 , 2 , 1 , 1 :
W = [ 2 0 0 0 0 0 2 0 0 0 0 0 2 0 0 0 0 0 1 0 0 0 0 0 1 ] \mathbf{W} = \begin{bmatrix}
2 & 0 & 0 & 0 & 0 \\
0 & 2 & 0 & 0 & 0 \\
0 & 0 & 2 & 0 & 0 \\
0 & 0 & 0 & 1 & 0 \\
0 & 0 & 0 & 0 & 1
\end{bmatrix} W = 2 0 0 0 0 0 2 0 0 0 0 0 2 0 0 0 0 0 1 0 0 0 0 0 1 3
计算加权后的 W x ~\mathbf{W}\mathbf{x}~ Wx 和 W y ~\mathbf{W}\mathbf{y}~ Wy
将权重矩阵 W ~\mathbf{W}~ W 作用于设计矩阵 X ~\mathbf{X}~ X 和观测值向量 y ~\mathbf{y}~ y ,得到:
W X = [ 2 − 4 2 − 2 2 0 1 1 1 2 ] , W y = [ 6 10 10 4 3 ] \mathbf{W}\mathbf{X} = \begin{bmatrix}
2 & -4 \\
2 & -2 \\
2 & 0 \\
1 & 1 \\
1 & 2
\end{bmatrix}, \quad \mathbf{W}\mathbf{y} = \begin{bmatrix}
6 \\ 10 \\ 10 \\ 4 \\ 3
\end{bmatrix} WX = 2 2 2 1 1 − 4 − 2 0 1 2 , Wy = 6 10 10 4 3 使用加权后的矩阵 W X ~\mathbf{W}\mathbf{X}~ WX 和 W y \mathbf{W}\mathbf{y} Wy 计算法方程。法方程的形式为:
( W X ) T ( W X ) x = ( W X ) T W y (\mathbf{W}\mathbf{X})^T(\mathbf{W}\mathbf{X})\mathbf{x} = (\mathbf{W}\mathbf{X})^T\mathbf{W}\mathbf{y} ( WX ) T ( WX ) x = ( WX ) T Wy
计算 ( W X ) T ( W X ) ~(\mathbf{W}\mathbf{X})^T(\mathbf{W}\mathbf{X})~ ( WX ) T ( WX ) 和 ( W X ) T W y ~(\mathbf{W}\mathbf{X})^T\mathbf{W}\mathbf{y}~ ( WX ) T Wy :
( W X ) T ( W X ) = [ 14 − 9 − 9 25 ] , ( W X ) T W y = [ 59 − 34 ] (\mathbf{W}\mathbf{X})^T(\mathbf{W}\mathbf{X}) = \begin{bmatrix}
14 & -9 \\
-9 & 25
\end{bmatrix}, \quad (\mathbf{W}\mathbf{X})^T\mathbf{W}\mathbf{y} = \begin{bmatrix} 59 \\ -34 \end{bmatrix} ( WX ) T ( WX ) = [ 14 − 9 − 9 25 ] , ( WX ) T Wy = [ 59 − 34 ] 解以下线性方程组:
[ 14 − 9 − 9 25 ] [ β 0 β 1 ] = [ 59 − 34 ] \begin{bmatrix}
14 & -9 \\
-9 & 25
\end{bmatrix} \begin{bmatrix} \beta_0 \\ \beta_1 \end{bmatrix} = \begin{bmatrix}
59 \\ -34 \end{bmatrix} [ 14 − 9 − 9 25 ] [ β 0 β 1 ] = [ 59 − 34 ]
得到解:
β 0 = 4.3 , β 1 = 0.20 \beta_0 = 4.3, \beta_1 = 0.20 β 0 = 4.3 , β 1 = 0.20
因此,加权最小二乘法拟合的直线为:
y = 4.3 + 0.20 x y = 4.3 + 0.20x y = 4.3 + 0.20 x 对于普通最小二乘法,解的法方程为:
A T A x = A T y \mathbf{A}^T \mathbf{A} \mathbf{x} = \mathbf{A}^T \mathbf{y} A T Ax = A T y
计算得到:
y = 4.0 − 0.10 x y = 4.0 - 0.10x y = 4.0 − 0.10 x 2. 数据趋势分析
假设有一个未知的函数 f ~f~ f ,它在一些点 t 0 , t 1 , ⋯ , t n ~t_0,t_1,\cdots, t_n~ t 0 , t 1 , ⋯ , t n 上的值是已知的(或大致已知)。如果数据中存在某种"线性趋势",则可以尝试通过线性函数 y = β 0 + β 1 t ~y = \beta_0 + \beta_1t~ y = β 0 + β 1 t 来近似这些数据。如果存在"二次趋势",则尝试通过二次函数 y = β 0 + β 1 t + β 2 t 2 y = \beta_0 + \beta_1t + \beta_2t^2 y = β 0 + β 1 t + β 2 t 2 来拟合数据。一般地,如果存在" m m m 次趋势",则尝试通过 m m m 次多项式 y = β 0 + β 1 t + ⋯ + β m t m y = \beta_0 + \beta_1t + \cdots + \beta_m t^m y = β 0 + β 1 t + ⋯ + β m t m 来近似数据。
2.1 定义内积
为了分析这些趋势,我们可以用内积空间中的正交投影方法。首先,定义在多项式空间 P n ~\mathbb{P}_n~ P n 上的内积:
⟨ p , q ⟩ = p ( t 0 ) q ( t 0 ) + p ( t 1 ) q ( t 1 ) + ⋯ + p ( t n ) q ( t n ) \langle p, q \rangle = p(t_0)q(t_0) + p(t_1)q(t_1) + \cdots + p(t_n)q(t_n) ⟨ p , q ⟩ = p ( t 0 ) q ( t 0 ) + p ( t 1 ) q ( t 1 ) + ⋯ + p ( t n ) q ( t n )
这里, p ~p~ p 和 q ~q~ q 是定义在数据点 t 0 , t 1 , ⋯ , t n ~t_0,t_1,\cdots, t_n~ t 0 , t 1 , ⋯ , t n 上的多项式。这个内积的意义在于,它可以 量化两个多项式在这些数据点上的相关性 ,即通过计算它们在所有数据点上的“匹配”程度。
2.2 Gram-Schmidt \text{Gram-Schmidt} Gram-Schmidt 正交化过程
接下来,通过对一组多项式(例如常数项 1 ~1~ 1 、一次项 t ~t~ t 、二次项 t 2 ~t^2~ t 2 、三次项 t 3 ~t^3~ t 3 )应用 Gram-Schmidt ~\text{Gram-Schmidt}~ Gram-Schmidt 正交化过程,我们可以得到一组正交基 p 0 , p 1 , p 2 , p 3 ~p_0,~p_1,~p_2,~p_3~ p 0 , p 1 , p 2 , p 3 。这个过程的目的是生成一组相互正交的多项式,正交性保证了每个多项式与其他多项式之间没有冗余信息,从而使得每个多项式所代表的趋势成分都可以独立计算。具体步骤可以参考上一节的对多项式标准基进行 Gram-Schmidt \text{Gram-Schmidt} Gram-Schmidt 正交化 的过程。
2.3 将数据函数投影到正交基上
通过正交投影的方法,我们可以将给定的数据函数 g ( t ) ~g(t)~ g ( t ) 投影到得到的正交基 p 0 , p 1 , p 2 , p 3 ~p_0,~p_1,~p_2,~p_3~ p 0 , p 1 , p 2 , p 3 上。投影的过程就是计算数据函数 g ( t ) ~g(t)~ g ( t ) 在每个正交多项式上的"成分",即每个正交多项式所代表的 趋势函数 ( trend function \textbf{trend function} trend function )的贡献。计算的公式为:
g ( t ) ≈ c 0 p 0 + c 1 p 1 + c 2 p 2 + c 3 p 3 g(t) \approx c_0 p_0 + c_1 p_1 + c_2 p_2 + c_3 p_3 g ( t ) ≈ c 0 p 0 + c 1 p 1 + c 2 p 2 + c 3 p 3
其中, c 0 , , c 1 , c 2 , c 3 ~c_0,~,c_1,~c_2,~c_3~ c 0 , , c 1 , c 2 , c 3 是各个 趋势系数 ( trend coefficients \textbf{trend coefficients} trend coefficients ),表示数据在不同趋势成分上的权重。通过内积的计算,我们可以得到每个系数:
c i = ⟨ g , p i ⟩ ⟨ p i , p i ⟩ c_i = \frac{\langle g, p_i \rangle}{\langle p_i, p_i \rangle} c i = ⟨ p i , p i ⟩ ⟨ g , p i ⟩
这里的 ⟨ g , p i , ⟩ ~\langle g, p_i, \rangle~ ⟨ g , p i , ⟩ 表示数据函数 g ( t ) ~g(t)~ g ( t ) 与正交基 p i ~p_i~ p i 的内积,而 ⟨ p i , p i ⟩ ~\langle p_i,p_i\rangle~ ⟨ p i , p i ⟩ 是正交基 p i ~p_i~ p i 的"长度",确保了每个趋势成分的独立性。
2.4 解释趋势成分
通过上面的正交投影方法,我们能够清晰地区分数据中的不同趋势成分:
系数 c 0 ~c_0~ c 0 对应常数项,代表数据的基准值。
系数 c 1 ~c_1~ c 1 对应线性趋势,代表数据的线性变化。
系数 c 2 ~c_2~ c 2 对应二次趋势,表示数据的曲率变化,即数据增长或下降的弯曲趋势。
系数 c 3 ~c_3~ c 3 对应三次趋势,代表更复杂的变化。
正交性确保了这些系数的独立性,使得每个趋势成分可以被单独计算并精确提取。若只关注某一趋势(例如二次趋势),可以忽略高阶项,从而更专注于需要的部分。
2.5 具体示例
给定一组数据点:
( − 2 , 3 ) , ( − 1 , 5 ) , ( 0 , 5 ) , ( 1 , 4 ) , ( 2 , 3 ) (-2,3), (-1,5), (0,5), (1,4), (2,3) ( − 2 , 3 ) , ( − 1 , 5 ) , ( 0 , 5 ) , ( 1 , 4 ) , ( 2 , 3 )
要求使用正交多项式方法拟合数据的二次趋势函数。已知多项式标准基为 { 1 , t , t 2 } ~\{1, ~ t, ~ t^2\}~ { 1 , t , t 2 } ,求解该数据的最佳拟合趋势函数,并分析其趋势特性。
在多项式空间 P n ~\mathbb{P}_n~ P n 中,我们定义内积如下:
⟨ p , q ⟩ = p ( t 0 ) q ( t 0 ) + p ( t 1 ) q ( t 1 ) + ⋯ + p ( t n ) q ( t n ) \langle p, q \rangle = p(t_0) q(t_0) + p(t_1) q(t_1) + \cdots + p(t_n) q(t_n) ⟨ p , q ⟩ = p ( t 0 ) q ( t 0 ) + p ( t 1 ) q ( t 1 ) + ⋯ + p ( t n ) q ( t n )
这是我们普遍采用的离散加权内积,适用于离散数据点。
2
Gram-Schmidt \text{Gram-Schmidt} Gram-Schmidt 正交化
我们需要将标准多项式 { 1 , t , t 2 } ~\{1, ~t,~t^2\}~ { 1 , t , t 2 } 通过 Gram-Schmidt \text{Gram-Schmidt} Gram-Schmidt 正交化过程转换为一组正交多项式基。这一过程在 上一节已经计算过 ,直接得正交基如下:
p 0 = [ 1 1 1 1 1 ] , p 1 = [ − 2 − 1 0 1 2 ] , p 2 = [ 2 − 1 − 2 − 1 2 ] \mathbf{p}_0 = \begin{bmatrix} 1 \\ 1 \\ 1 \\ 1 \\ 1 \end{bmatrix}, \quad
\mathbf{p}_1 = \begin{bmatrix} -2 \\ -1 \\ 0 \\ 1 \\ 2 \end{bmatrix}, \quad
\mathbf{p}_2 = \begin{bmatrix} 2 \\ -1 \\ -2 \\ -1 \\ 2 \end{bmatrix} p 0 = 1 1 1 1 1 , p 1 = − 2 − 1 0 1 2 , p 2 = 2 − 1 − 2 − 1 2 我们希望找到最佳二次趋势函数,其中数据点向量 g = [ 3 5 5 4 3 ] T ~\mathbf{g} = \begin{bmatrix}3 & 5 & 5 & 4 & 3\end{bmatrix}^T~ g = [ 3 5 5 4 3 ] T :
p ^ = c 0 p 0 + c 1 p 1 + c 2 p 2 = ⟨ g , p 0 ⟩ ⟨ p 0 , p 0 ⟩ p 0 + ⟨ g , p 1 ⟩ ⟨ p 1 , p 1 ⟩ p 1 + ⟨ g , p 2 ⟩ ⟨ p 2 , p 2 ⟩ p 2 = 20 5 p 0 − 1 10 p 1 − 7 14 p 2 = 4 − 0.1 − 0.5 t 2 \begin{align*}\hat{p} &= c_0 p_0 + c_1 p_1 + c_2 p_2 \\[2ex]
&= \frac{\langle \mathbf{g}, \mathbf{p}_0 \rangle}{\langle \mathbf{p}_0, \mathbf{p}_0 \rangle} p_0 + \frac{\langle \mathbf{g}, \mathbf{p}_1 \rangle}{\langle \mathbf{p}_1, \mathbf{p}_1 \rangle} p_1 + \frac{\langle \mathbf{g}, \mathbf{p}_2 \rangle}{\langle \mathbf{p}_2, \mathbf{p}_2 \rangle} p_2\\[4ex]
&= \frac{20}{5} p_0 - \frac{1}{10} p_1 - \frac{7}{14} p_2\\[3ex]
&= 4 - 0.1 - 0.5t^2
\end{align*} p ^ = c 0 p 0 + c 1 p 1 + c 2 p 2 = ⟨ p 0 , p 0 ⟩ ⟨ g , p 0 ⟩ p 0 + ⟨ p 1 , p 1 ⟩ ⟨ g , p 1 ⟩ p 1 + ⟨ p 2 , p 2 ⟩ ⟨ g , p 2 ⟩ p 2 = 5 20 p 0 − 10 1 p 1 − 14 7 p 2 = 4 − 0.1 − 0.5 t 2
二次项 − 0.5 t 2 ~-0.5t^2~ − 0.5 t 2 主要决定数据趋势:负系数表明数据整体呈现下凹趋势,说明数据中非线性趋势较强。
一次项 − 0.1 t ~-0.1t~ − 0.1 t 较小,说明线性趋势不明显。
常数项 5 ~5~ 5 是整体偏移量。
结论 :数据具有显著的二次趋势,说明变量的增长或减少速度随时间变化,表现出非线性特征。
3. 傅里叶级数与近似
傅立叶级数是数学分析中的一个重要工具,它可以将连续函数表示为正弦和余弦函数的线性组合。这种表示方式广泛应用于信号处理、物理学(如振动分析)、电子工程(如滤波器设计)、数据压缩等领域。
3.1 三角多项式的定义
对连续函数 f ( t ) ~f(t)~ f ( t ) (定义在区间 [ 0 , 2 π ] ~[0,2\pi]~ [ 0 , 2 π ] 上),我们可以使用一个有限阶的三角多项式来逼近它:
a 0 2 + a 1 cos t + a 2 cos 2 t + ⋯ + a n cos n t + b 1 sin t + b 2 sin 2 t + ⋯ + b n sin n t \frac{a_0}{2} + a_1 \cos t + a_2 \cos 2t + \cdots + a_n \cos nt + b_1 \sin t + b_2 \sin 2t + \cdots + b_n \sin nt 2 a 0 + a 1 cos t + a 2 cos 2 t + ⋯ + a n cos n t + b 1 sin t + b 2 sin 2 t + ⋯ + b n sin n t
其中, a k ~a_k~ a k 和 b k ~b_k~ b k 是傅里叶系数,它们决定了函数的近似程度。该表达式是 n ~n~ n 阶 三角多项式 ( trigonometric polynomial \textbf{trigonometric polynomial} trigonometric polynomial ),即由正弦和余弦函数构成的线性组合。在实际应用中,若 n ~n~ n 取足够大,我们可以使该多项式无限接近于原函数。
3.2 正交基与内积
傅立叶级数的展开依赖于函数集合:
{ 1 , cos t , cos 2 t , … , cos n t , sin t , sin 2 t , … , sin n t } \{1,~ \cos t,~ \cos 2t,~ \dots,~ \cos nt,~ \sin t,~ \sin 2t,~ \dots,~ \sin nt\} { 1 , cos t , cos 2 t , … , cos n t , sin t , sin 2 t , … , sin n t }
该集合在定义区间 [ 0 , 2 π ] ~[0,2\pi]~ [ 0 , 2 π ] 内基于如下内积定义是正交的:
⟨ f , g ⟩ = ∫ 0 2 π f ( t ) g ( t ) d t \langle f, g \rangle = \int_0^{2\pi} f(t) g(t) \, dt ⟨ f , g ⟩ = ∫ 0 2 π f ( t ) g ( t ) d t
即对于任意的不同整数 m , n ~m,n~ m , n ,余弦函数之间满足正交性:
⟨ cos m t , cos n t ⟩ = ∫ 0 2 π cos m t cos n t d t = 0 , ( m ≠ n ) \langle \cos mt, \cos nt \rangle = \int_{0}^{2\pi} \cos mt \cos nt \, dt = 0, \quad (m \neq n) ⟨ cos m t , cos n t ⟩ = ∫ 0 2 π cos m t cos n t d t = 0 , ( m = n ) 对于不同整数 m ~m~ m 和 n ~n~ n 且 m ≠ n ~m \neq n~ m = n ,余弦函数的内积计算如下:
⟨ cos m t , cos n t ⟩ = ∫ 0 2 π cos m t cos n t d t \langle \cos mt, \cos nt \rangle = \int_{0}^{2\pi} \cos mt \cos nt \, dt ⟨ cos m t , cos n t ⟩ = ∫ 0 2 π cos m t cos n t d t
利用三角恒等式:
cos A cos B = 1 2 [ cos ( A − B ) + cos ( A + B ) ] {\cos A \cos B = \frac{1}{2} \left[ \cos(A - B) + \cos(A + B) \right]} cos A cos B = 2 1 [ cos ( A − B ) + cos ( A + B ) ]
将其代入:
⟨ cos m t , cos n t ⟩ = ∫ 0 2 π 1 2 [ cos ( ( m − n ) t ) + cos ( ( m + n ) t ) ] d t \langle \cos mt, \cos nt \rangle = \int_0^{2\pi} \frac{1}{2} \left[ \cos((m - n)t) + \cos((m + n)t) \right] dt ⟨ cos m t , cos n t ⟩ = ∫ 0 2 π 2 1 [ cos (( m − n ) t ) + cos (( m + n ) t ) ] d t
计算积分:
∫ 0 2 π cos ( ( m − n ) t ) d t = 0 , ( m ≠ n ) ∫ 0 2 π cos ( ( m + n ) t ) d t = 0 , ( m ≠ n ) \begin{align*} \int_0^{2\pi} \cos((m - n)t) dt &= 0, \quad (m \neq n) \\[3ex]
\int_0^{2\pi} \cos((m + n)t) dt &= 0, \quad (m \neq n)
\end{align*} ∫ 0 2 π cos (( m − n ) t ) d t ∫ 0 2 π cos (( m + n ) t ) d t = 0 , ( m = n ) = 0 , ( m = n )
因此:
⟨ cos m t , cos n t ⟩ = 0 , ( m ≠ n ) \langle \cos mt, \cos nt \rangle = 0, \quad (m \neq n) ⟨ cos m t , cos n t ⟩ = 0 , ( m = n )
当 m = n ~m=n~ m = n 时:
⟨ cos m t , cos m t ⟩ = ∫ 0 2 π cos 2 m t d t = π \langle \cos mt, \cos mt \rangle = \int_0^{2\pi} \cos^2 mt \, dt = \pi ⟨ cos m t , cos m t ⟩ = ∫ 0 2 π cos 2 m t d t = π
综上:
⟨ cos m t , cos n t ⟩ = { 0 , m ≠ n π , m = n , m ≠ 0 2 π , m = n = 0 \langle \cos mt, \cos nt \rangle = \begin{cases}
0, & m \neq n \\
\pi, & m = n, m \neq 0 \\
2\pi, & m = n = 0
\end{cases} ⟨ cos m t , cos n t ⟩ = ⎩ ⎨ ⎧ 0 , π , 2 π , m = n m = n , m = 0 m = n = 0 类似地,正弦函数之间也满足正交性:
⟨ sin m t , sin n t ⟩ = ∫ 0 2 π sin m t sin n t d t = 0 , ( m ≠ n ) \langle \sin mt, \sin nt \rangle = \int_{0}^{2\pi} \sin mt \sin nt \, dt = 0,\quad (m \neq n) ⟨ sin m t , sin n t ⟩ = ∫ 0 2 π sin m t sin n t d t = 0 , ( m = n ) 对于不同整数 m ~m~ m 和 n ~n~ n 且 m ≠ n ~m \neq n~ m = n ,正弦函数的内积计算如下:
⟨ sin m t , sin n t ⟩ = ∫ 0 2 π sin m t sin n t d t \langle \sin mt, \sin nt \rangle = \int_0^{2\pi} \sin mt \sin nt \, dt ⟨ sin m t , sin n t ⟩ = ∫ 0 2 π sin m t sin n t d t
利用三角恒等式:
sin A sin B = 1 2 [ cos ( A − B ) − cos ( A + B ) ] \sin A \sin B = \frac{1}{2} \left[ \cos(A - B) - \cos(A + B) \right] sin A sin B = 2 1 [ cos ( A − B ) − cos ( A + B ) ]
将其代入:
⟨ sin m t , sin n t ⟩ = ∫ 0 2 π 1 2 [ cos ( ( m − n ) t ) − cos ( ( m + n ) t ) ] d t \langle \sin mt, \sin nt \rangle = \int_0^{2\pi} \frac{1}{2} \left[ \cos((m - n)t) - \cos((m + n)t) \right] dt ⟨ sin m t , sin n t ⟩ = ∫ 0 2 π 2 1 [ cos (( m − n ) t ) − cos (( m + n ) t ) ] d t
计算积分:
∫ 0 2 π cos ( ( m − n ) t ) d t = 0 , ( m ≠ n ) ∫ 0 2 π cos ( ( m + n ) t ) d t = 0 , ( m ≠ n ) \begin{align*} \int_0^{2\pi} \cos((m - n)t) dt &= 0, \quad (m \neq n) \\[3ex]
\int_0^{2\pi} \cos((m + n)t) dt &= 0, \quad (m \neq n)
\end{align*} ∫ 0 2 π cos (( m − n ) t ) d t ∫ 0 2 π cos (( m + n ) t ) d t = 0 , ( m = n ) = 0 , ( m = n )
因此:
⟨ sin m t , sin n t ⟩ = 0 , ( m ≠ n ) \langle \sin mt, \sin nt \rangle = 0, \quad (m \neq n) ⟨ sin m t , sin n t ⟩ = 0 , ( m = n )
当 m = n ~m=n~ m = n 时:
⟨ sin m t , sin m t ⟩ = ∫ 0 2 π sin 2 m t d t = π \langle \sin mt, \sin mt \rangle = \int_0^{2\pi} \sin^2 mt \, dt = \pi ⟨ sin m t , sin m t ⟩ = ∫ 0 2 π sin 2 m t d t = π
综上:
⟨ sin m t , sin n t ⟩ = { 0 , m ≠ n π , m = n \langle \sin mt, \sin nt \rangle = \begin{cases}
0, & m \neq n \\
\pi, & m = n
\end{cases} ⟨ sin m t , sin n t ⟩ = { 0 , π , m = n m = n 正弦-余弦函数之间也满足正交性:
⟨ cos ( m t ) , sin ( n t ) ⟩ = ∫ 0 2 π cos ( m t ) sin ( n t ) d t = 0 , ( m ≠ n ) \langle \cos(mt), \sin(nt) \rangle = \int_0^{2\pi} \cos(mt) \sin(nt) \, dt = 0, \quad (m \neq n) ⟨ cos ( m t ) , sin ( n t )⟩ = ∫ 0 2 π cos ( m t ) sin ( n t ) d t = 0 , ( m = n ) 对于不同整数 m ~m~ m 和 n ~n~ n 且 m ≠ n ~m \neq n~ m = n ,余弦函数和正弦函数的内积计算如下:
⟨ cos m t , sin n t ⟩ = ∫ 0 2 π cos m t sin n t d t \langle \cos mt, \sin nt \rangle = \int_0^{2\pi} \cos mt \sin nt \, dt ⟨ cos m t , sin n t ⟩ = ∫ 0 2 π cos m t sin n t d t
利用三角恒等式:
cos A sin B = 1 2 [ sin ( A + B ) − sin ( A − B ) ] \cos A \sin B = \frac{1}{2} \left[ \sin(A + B) - \sin(A - B) \right] cos A sin B = 2 1 [ sin ( A + B ) − sin ( A − B ) ]
将其代入:
⟨ cos ( m t ) , sin ( n t ) ⟩ = 1 2 ∫ 0 2 π [ sin ( ( m + n ) t ) − sin ( ( m − n ) t ) ] d t \langle \cos(mt), \sin(nt) \rangle = \frac{1}{2} \int_0^{2\pi} \left[ \sin((m + n)t) - \sin((m - n)t) \right] dt ⟨ cos ( m t ) , sin ( n t )⟩ = 2 1 ∫ 0 2 π [ sin (( m + n ) t ) − sin (( m − n ) t ) ] d t
由于 sin ( ( m + n ) t ) ~\sin((m+n)t)~ sin (( m + n ) t ) 和 cos ( ( m − n ) t ) ~\cos((m-n)t)~ cos (( m − n ) t ) 在区间 [ 0 , 2 π ] ~[0,2\pi]~ [ 0 , 2 π ] 上的积分为零,因此:
⟨ cos m t , sin n t ⟩ = 0 , ∀ m , n \langle \cos mt, \sin nt \rangle = 0, \quad \forall m, n ⟨ cos m t , sin n t ⟩ = 0 , ∀ m , n 这种正交性质允许我们使用投影的方式提取不同频率的成分。
3.3 傅里叶系数计算
给定 f ( t ) ∈ C [ 0 , 2 π ] f(t) \in C[0, 2\pi] f ( t ) ∈ C [ 0 , 2 π ] ,在 W ~W~ W 中的最佳逼近称为 f ~f~ f 在区间 [ 0 , 2 π ] ~[0,2\pi]~ [ 0 , 2 π ] 上的 n ~n n 阶 傅里叶逼近 ( nth-order Fourier approximation \textbf{nth-order Fourier approximation} nth-order Fourier approximation )。我们可以将函数 f ( t ) ~f(t)~ f ( t ) 投影到正交的基函数集上,得到对应的傅里叶系数( Fourier coefficients ~\textbf{Fourier coefficients}~ Fourier coefficients )。正交基函数集包括常数项 1 ~1~ 1 ,余弦函数和正弦函数。傅里叶系数 a k ~a_k~ a k 和 b k ~b_k~ b k 可以通过计算函数 f ( t ) ~f(t)~ f ( t ) 在这些基函数上的投影得到:
对于 a k ~a_k~ a k ,它是函数 f ( t ) ~f(t)~ f ( t ) 在余弦基函数 cos ( k t ) ~\cos(kt)~ cos ( k t ) 上和正弦基函数上的投影为:
a k = ⟨ f ( t ) , cos ( k t ) ⟩ ⟨ cos ( k t ) , cos ( k t ) ⟩ , b k = ⟨ f ( t ) , sin ( k t ) ⟩ ⟨ sin ( k t ) , sin ( k t ) ⟩ {a_k = \frac{\langle f(t), \cos(kt) \rangle}{\langle \cos(kt), \cos(kt) \rangle}},\quad {b_k = \frac{\langle f(t), \sin(kt) \rangle}{\langle \sin(kt), \sin(kt) \rangle}} a k = ⟨ cos ( k t ) , cos ( k t )⟩ ⟨ f ( t ) , cos ( k t )⟩ , b k = ⟨ sin ( k t ) , sin ( k t )⟩ ⟨ f ( t ) , sin ( k t )⟩
由于 ⟨ cos ( k t ) , cos ( k t ) ⟩ = π , ⟨ sin ( k t ) , sin ( k t ) ⟩ = π \langle \cos(kt), \cos(kt)\rangle = \pi,~\langle \sin(kt), \sin(kt)\rangle = \pi ⟨ cos ( k t ) , cos ( k t )⟩ = π , ⟨ sin ( k t ) , sin ( k t )⟩ = π ,所以:
a k = 1 π ∫ 0 2 π f ( t ) cos k t d t , ( k ≥ 0 ) b k = 1 π ∫ 0 2 π f ( t ) sin k t d t , ( k ≥ 0 ) \begin{align*}
a_k &= \frac{1}{\pi} \int_0^{2\pi} f(t) \cos kt \, dt, \quad (k \geq 0)\\[2ex]
b_k &= \frac{1}{\pi} \int_0^{2\pi} f(t) \sin kt \, dt, \quad (k \geq 0)
\end{align*} a k b k = π 1 ∫ 0 2 π f ( t ) cos k t d t , ( k ≥ 0 ) = π 1 ∫ 0 2 π f ( t ) sin k t d t , ( k ≥ 0 ) 对于常数项 a 0 ~a_0~ a 0 ,它是函数 f ( t ) ~f(t)~ f ( t ) 在常数基函数 1 ~1~ 1 上的投影:
⟨ f ( t ) , 1 ⟩ ⟨ 1 , 1 ⟩ = 1 2 π ∫ 0 2 π f ( t ) ⋅ 1 d t = 1 2 [ 1 π ∫ 0 2 π f ( t ) cos ( 0 ⋅ t ) d t ] = a 0 2 \begin{align*} \frac{\langle f(t), 1 \rangle}{\langle 1, 1 \rangle}
&= \frac{1}{2\pi} \int_0^{2\pi} f(t) \cdot 1 \, dt \\[3ex]
&= \frac{1}{2} \left[ \frac{1}{\pi} \int_0^{2\pi} f(t) \cos(0 \cdot t) \, dt \right]\\[3ex] &= \frac{a_0}{2}
\end{align*} ⟨ 1 , 1 ⟩ ⟨ f ( t ) , 1 ⟩ = 2 π 1 ∫ 0 2 π f ( t ) ⋅ 1 d t = 2 1 [ π 1 ∫ 0 2 π f ( t ) cos ( 0 ⋅ t ) d t ] = 2 a 0 3.4 具体示例
求函数 f ( t ) = t ~f(t) = t~ f ( t ) = t 在区间 C [ 0 , 2 π ] ~C[0,2\pi]~ C [ 0 , 2 π ] 上的 n ~n~ n 阶傅里叶逼近。
计算常数项 a 0 ~a_0~ a 0 : 通过积分计算常数项:
a 0 2 = 1 2 ⋅ 1 π ∫ 0 2 π t d t = 1 2 π [ 1 2 t 2 ] 0 2 π = π \frac{a_0}{2} = \frac{1}{2} \cdot \frac{1}{\pi} \int_0^{2\pi} t \, dt = \frac{1}{2\pi} \left[ \frac{1}{2} t^2 \right]_0^{2\pi} = \pi 2 a 0 = 2 1 ⋅ π 1 ∫ 0 2 π t d t = 2 π 1 [ 2 1 t 2 ] 0 2 π = π
计算余弦项 a k ~a_k~ a k 正弦项 b k ~b_k~ b k : 使用部分积分法计算余弦项:
a k = 1 π ∫ 0 2 π t cos ( k t ) d t = 1 π [ 1 k 2 cos ( k t ) + t k sin ( k t ) ] 0 2 π = 0 b k = 1 π ∫ 0 2 π t sin ( k t ) d t = 1 π [ 1 k 2 sin ( k t ) − t k cos ( k t ) ] 0 2 π = − 2 k \begin{align*}a_k &= \frac{1}{\pi} \int_0^{2\pi} t \cos(kt) \, dt = \frac{1}{\pi} \left[ \frac{1}{k^2} \cos(kt) + \frac{t}{k} \sin(kt) \right]_0^{2\pi} = 0 \\[3ex]
b_k &= \frac{1}{\pi} \int_0^{2\pi} t \sin(kt) \, dt = \frac{1}{\pi} \left[ \frac{1}{k^2} \sin(kt) - \frac{t}{k} \cos(kt) \right]_0^{2\pi} = -\frac{2}{k}
\end{align*} a k b k = π 1 ∫ 0 2 π t cos ( k t ) d t = π 1 [ k 2 1 cos ( k t ) + k t sin ( k t ) ] 0 2 π = 0 = π 1 ∫ 0 2 π t sin ( k t ) d t = π 1 [ k 2 1 sin ( k t ) − k t cos ( k t ) ] 0 2 π = − k 2
得出傅里叶近似 : 综合以上计算,得出函数 f ( t ) = t f(t) = t f ( t ) = t 的傅里叶近似公式:
f ( t ) ≈ π − 2 sin t − sin 2 t − 2 3 sin 3 t − ⋯ − 2 n sin n t f(t) \approx \pi - 2 \sin t - \sin 2t - \frac{2}{3} \sin 3t - \cdots - \frac{2}{n} \sin nt f ( t ) ≈ π − 2 sin t − sin 2 t − 3 2 sin 3 t − ⋯ − n 2 sin n t
对于 n = 3 , 5 , 15 , 30 , 100 ~n= 3, 5, 15, 30, 100~ n = 3 , 5 , 15 , 30 , 100 的傅里叶级数近似曲线,可通过下图的交互式可视化组件查看,其中用户可以通过下拉菜单选择不同 n ~n~ n 值,蓝色实线表示近似曲线,红色虚线表示目标函数 f ( t ) = t ~f(t) = t~ f ( t ) = t 。这些近似基于函数 f ( t ) = t ~ f(t) = t ~ f ( t ) = t 在 [ 0 , 2 π ] ~[0,2\pi]~ [ 0 , 2 π ] 上的傅里叶级数展开:
f ( t ) ≈ π − 2 sin t − sin 2 t − 2 3 sin 3 t − ⋯ − 2 n sin n t f(t) \approx \pi - 2 \sin t - \sin 2t - \frac{2} {3} \sin 3t - \cdots - \frac{2} {n} \sin nt f ( t ) ≈ π − 2 sin t − sin 2 t − 3 2 sin 3 t − ⋯ − n 2 sin n t