初めに
学部当時はフーリエ変換何に使うのかさっぱりで、重要性を全く感じないまま過ごしていました笑
最近になって信号処理・制御工学などで使われていると知り、下の動画を見て「フーリエ変換面白そ!」ってなり、今になって復習しています。
視覚的に理解する フーリエ変換
円盤の組み合わせだけで何でも描けるフーリエ変換の話
特に3Blue1BrownJapanはかなりレベルの高い数学の議論をしているチャンネルだ!
公式フル活用のベッセルの不等式を導出すれば、フーリエ変換の良い復習になるのではと思い記事にしました。
また、ベッセルの不等式の導出過程は誤差の2乗を最小化することで求まると知り、機械学習で頻出の最小化問題に似ているなと気づいた。
フーリエ級数とベッセルの不等式
f(x)を周期2πの実数値の関数とする。さらにf(x)は2乗したものが可積分であるとする。
すなわち、
\int_{-π}^{π}f(x)^2 dx = 有限
an,bnをf(x)のフーリエ係数とする
\begin{align}
a_n = \frac{1}{π}\int_{-π}^{π}f(x)\cos nx dx \\
b_n = \frac{1}{π}\int_{-π}^{π}f(x)\sin nx dx
\end{align}
ここで勝手な周期2πの実関数g(x)を次のように与える
g(x) = \frac{c_0}{2}+\sum_{n=1}^{∞} (c_n\cos nx + d_n\sin nx)
実関数f(x),g(x)に対して
Δ^2 = \int_{-π}^{π}\{f(x) - g(x)\}^2 dx \geqq 0
ここからΔ2乗を最小化するための式変形を行う
\begin{align}
Δ^2 = \int_{-π}^{π} f(x)^2 dx - \underset{①}{\underline{2\int_{-π}^{π}f(x)\{\frac{c_0}{2}+\sum_{n=1}^{∞} (c_n\cos nx + d_n\sin nx)\}dx}} \\
+ \underset{②}{\underline{\int_{-π}^{π}\{\frac{c_0}{2}+\sum_{n=1}^{∞} (c_n\cos nx + d_n\sin nx)\}^2}}
\end{align}
なかなか計算がめんどくさいので、①と②に分けましょう
\begin{align}
① = 2 (\frac{c_0}{2}\int_{-π}^{π}f(x)dx + \bigl (c_1\int_{-π}^{π}f(x) \cos xdx + \cdots+c_n\int_{-π}^{π}f(x) \cos nxdx \bigr) \\
+ \bigl (d_1\int_{-π}^{π}f(x) \sin xdx + \cdots+d_n\int_{-π}^{π}f(x) \sin nxdx \bigr)
\end{align}
フーリエ係数an,bnを見てみると
\begin{align}
&① = 2 (\frac{c_0}{2} a_0π+c_1a_1π+\cdots+c_na_nπ+d_1b_1π+\cdots+d_nb_nπ)\\
&= 2π (\frac{a_0c_0}{2} + \sum_{n=1}^{∞}(c_na_n+d_nb_n))
\end{align}
次に②を式変形
\begin{align}
&② = \int_{-π}^{π} (\frac{c_0}{2}+\sum_{n=1}^{∞}(c_n\cos nx + d_n\sin nx))^2 \\
&= \int_{-π}^{π} (\frac{c_0}{2}+c_1\cos x+\cdots+d_1\sin x+\cdots)(\frac{c_0}{2}+c_1\cos x+\cdots+d_1\sin x+\cdots)
\end{align}
三角関数の直交性より mとnは任意の数
\frac{1}{π}\int_{-π}^{π}\cos mx \sin nx dx = 0
よって
\begin{align}
② = \int_{-π}^{π}\frac{c_0^2}{4}dx + \int_{-π}^{π}(c_1\cos x)^2dx + \cdots + \int_{-π}^{π}(c_n\cos nx)^2dx + \\
\int_{-π}^{π}(d_1 \sin x)^2dx + \cdots + \int_{-π}^{π}(d_n\sin nx)^2dx
\end{align}
さらに下の式で簡単にできる
\int_{-π}^{π} \sin x^2 dx = π \quad \int_{-π}^{π} \cos x^2 dx = π
\begin{align}
② = \frac{c_0^2}{2}π + c_1^2π + \cdots + c_n^2π + d_1^2π + \cdots + d_n^2π
= π(\frac{c_0^2}{2}+\sum_{n=1}^{∞}(c_n^2+d_n^2))
\end{align}
計算した①,②をΔ^2の式に代入する
\begin{align}
&Δ^2 = \int_{-π}^{π} f(x)^2 dx - 2π(\frac{a_0c_0}{2} + \sum_{n=1}^{∞}(c_na_n+d_nb_n))+π(\frac{c_0^2}{2}+\sum_{n=1}^{∞}(c_n^2+d_n^2)) \\
&= \int_{-π}^{π} f(x)^2 dx + π(\frac{c_0^2}{2}-a_0c_0) + π(\sum_{n=1}^{∞}(c_n^2+d_n^2)-2\sum_{n=1}^{∞}(c_na_n+b_nd_n)) \\
&= \int_{-π}^{π} f(x)^2 dx + \frac{π}{2}\underset{(c_0-a_0)^2-a_0^2}{\underline{(c_0^2-2a_0c_0)}} + π(\sum_{n=1}^{∞}(c_n - a_n)^2+\sum_{n=1}^{∞}(d_n-b_n)^2-\sum_{n=1}^{∞}a_n^2-\sum_{n=1}^{∞}b_n^2)
\end{align}
このΔ^2を最小化するためにはc0=a0,cn=an,dn=bn
また、Δ^2は0以上であるため
\int_{-π}^{π} f(x)^2 dx \geqq {\frac{a_0^2}{2}π + π(\sum_{n=1}^{∞}a_n^2 + \sum_{n=1}^{∞}b_n^2)}
不等号>が出る条件として、g(x)が正規直交系を満たさないときである。
完全系(正規直交系)を満たすならパーセバルの等式が成り立つ。
\int_{-π}^{π} f(x)^2 dx = {\frac{a_0^2}{2}π + π(\sum_{n=1}^{∞}a_n^2 + \sum_{n=1}^{∞}b_n^2)}
フーリエ変換とベッセルの等式
フーリエ級数との違いは範囲を実数全体(複素数や極限)に広げたものと考えたらおk。
ここで畳み込みという面白い性質があるので、ここにも注目!
畳み込みといえば、畳み込みNNや画像処理のモザイクが挙げられます。
畳み込み積分に関しては以下のページ、動画が参考になりました!
畳み込み積分を宇宙一わかりやすく解説してみる
15分で分かる畳み込み積分
g1(x)とg2(x)からつくられる次の関数をg1とg2のたたみこみといいg1*g2と書く
g_1*g_2(x) = \int_{-∞}^{∞} g_1(y)g_2(x-y)dy
ここでフーリエ変換・フーリエ逆変換の公式を確認する
\begin{align}
\tilde{g}(k) = \int_{-∞}^{∞}g(y)e^{-iky}dy \\
g(y) = \frac{1}{2π}\int_{-∞}^{∞}\tilde{g}(k)e^{iky}dk
\end{align}
ここからg1(y)とg2(x-y)のフーリエ逆変換を適用しておく。
g_1*g_2(x) = \int_{-∞}^{∞}\biggl(\frac{1}{2π}\int_{-∞}^{∞}\tilde{g_1}(k)e^{iky}dk×\int_{-∞}^{∞}\frac{1}{2π}\tilde{g_2}(k')e^{ik'(x-y)}dk'\biggr)dy
k,k',yの積分順序を入れ替える
\begin{align}
&= \frac{1}{2π}\int_{-∞}^{∞}\tilde{g_1}(k)\biggl(\int_{-∞}^{∞}\tilde{g_2}(k')e^{ik'x}\biggl(\frac{1}{2π}\int_{-∞}^{∞}e^{i(k-k')y}dy\biggr)dk'\biggr)dk \\
&= \frac{1}{2π}\int_{-∞}^{∞}\tilde{g_1}(k)\biggl(\int_{-∞}^{∞}\tilde{g_2}(k')e^{ik'x}\delta(k-k')dk'\biggr)dk
\end{align}
ここでデルタ関数の性質を用いる
\begin{align}
&\delta(k-k') = \frac{1}{2π}\int_{-∞}^{∞}e^{i(k-k')y}dy \\
&\int_{-∞}^{∞}f(k')\delta(k-k')dk' = f(k) \\
\end{align}
よって
=\frac{1}{2π}\int_{-∞}^{∞}\tilde{g_1}(k)\tilde{g_2}(k)e^{ikx}dk
つまり、g1とg2の畳み込みをフーリエ変換した結果はg1,g2それぞれのフーリエ変換の積となる。
g_1*g_2(x)=\frac{1}{2π}\int_{-∞}^{∞}\tilde{g_1}(k)\tilde{g_2}(k)e^{ikx}dk
フーリエ変換におけるパーセバルの等式はこの畳み込みを利用して簡単に証明できる。
g(x) = \frac{1}{2π}\int_{-∞}^{∞}\tilde{g}(k)e^{ikx}dk
この複素共役をとる。
\begin{align}
&g(x)^* = \frac{1}{2π}\int_{-∞}^{∞}\tilde{g}^*(k)e^{-ikx}dk \\
&g(-x)^* = \frac{1}{2π}\int_{-∞}^{∞}\tilde{g}^*(k)e^{ikx}dk
\end{align}
g*(x)とg*(-x)のたたみこみをつくると
\int_{-∞}^{∞}g(t)g^*(-(x-t))dt = \frac{1}{2π}\int_{-∞}^{∞}\tilde{g}^*(k)\tilde{g}(k)dk
x=0のとき
\begin{align}
&\int_{-∞}^{∞}g(t)g^*(t)dt = \frac{1}{2π}\int_{-∞}^{∞}\tilde{g}^*(k)\tilde{g}(k)dk \\
&\int_{-∞}^{∞}|g(x)|^2dx = \frac{1}{2π}\int_{-∞}^{∞}|\tilde{g}(k)|^2dk
\end{align}