はじめに ー 週末研究ノートとは?
個人的に研究的な活動をやるにあたり、オープンにしてみたら面白いかもと思い、自分が興味を持っている ざっくりテーマについて、これから、ゆるい週末研究を公開していこうと思います。(有識者の方のアドバイスも、ちょっとというかかなり期待してます!笑)
どこかの権威的な学会やジャーナルなどで発表する予定はないため、万が一、私の記事を利用する際には自己責任でお願いします。そんな人はいないと思いますが、念のため。
今回のサマリ (TL; DR)
今回は、関数ベクトル空間について、理論的に整理します。
どこまで理論的にOKなのかを把握して、応用につなげるためです。
- 関数ベクトルと普通のベクトルとの関係の整理
- 関数集合がベクトル空間になること
- 関数ベクトル空間の基底
- $\{ \frac{1}{\sqrt{2}}, \cos(kx), \sin(kx) \}_{k \in \mathbb{N}}$ が関数ベクトルの基底になること
極力、計算過程がわかるように記載していきます。
公開?週末研究ノート ー 関数ベクトル空間②(検証編) もご参照ください。
環境
- なし
今回の週末研究ノート
関数ベクトルと普通のベクトルの関係
普通のベクトル空間として、$n$ 次元実ベクトル空間 $\mathbb{R}^n$ を取り上げます。
$n$ 次元実ベクトル空間の要素 $x\in \mathbb{R}^n$ は、$x = (x_1, ..., x_n)$ として表現されます。
では、関数ベクトルについて考えてみるとどうなるか
実数から実数の関数 $f: \mathbb{R} \rightarrow \mathbb{R}$ について考えます。
言い換えると、$\mathcal{F} := \{f | f: \mathbb{R} \rightarrow \mathbb{R} \}$ を空間として考え、ベクトル空間にするにはどうするか、を考えます。
関数 $f$ の実数 $x \in \mathbb{R}$ に対応する次元の成分として、$f(x) \in \mathbb{R}$ を考えると、関数 $f$ は、$f = ( f(x) )_{x \in \mathbb{R}} = ( , ..., f(-0.01)...,f(0), ..., f(0.01), ...,f(1), ..., f(1.01), ... )$
という 濃度 $\aleph$ (アレフ)の成分を持つ 無限次元ベクトルとして表現できそうです。
実際、$\mathcal{F}$ が、実数(体) $\mathbb{R}$ 上のベクトル空間になることを確認します。
$\forall f, \forall g \in \mathcal{F}$ に対して、
\begin{align}
f + g &= (f(x))_{x \in \mathbb{R}} + (g(x))_{x \in \mathbb{R}} \\
&= (f(x) + g(x))_{x \in \mathbb{R}} ... ☆ \\
&= ( (f+g)(x))_{x \in \mathbb{R}} ... ★ \\
\end{align}
よって、$f+g \in \mathcal{F}$
また、$\forall f \in \mathcal{F}, \forall \alpha \in \mathbb{R}$ に対して、
\begin{align}
\alpha f &= \alpha (f(x))_{x \in \mathbb{R}} \\
&= (\alpha f(x))_{x \in \mathbb{R}} ... ☆ \\
&= ((\alpha f)(x))_{x \in \mathbb{R}} ... ★ \\
\end{align}
よって、$\alpha f \in \mathcal{F}$
以上により、$\mathcal{F}$ が、要素間の加法とスカラー倍について閉じていることから、$\mathcal{F}$ が、ベクトル空間であることが示されました。
ここで、☆と★ の補足をします。
☆: 選択公理を仮定している点に注意します
つまり、無限濃度の次元から、特定の($x$ に対する)次元を選べることを前提としていることで、成分同志の加算が可能になっている点に注意します
★: 関数上の加算とスカラー倍について、以下のように定義している点に注意します
$\forall f, \forall g \in \mathcal{F}, \alpha \in \mathbb{R}$ に対して、
\begin{align}
(f + g)(x) &:= f(x) + g(x), \forall x \in \mathbb{R} \\
(\alpha f)(x) &:= \alpha f(x), \forall x \in \mathbb{R} \\
\end{align}
という、一般的な定義を用いています。
関数ベクトル空間の基底
関数の集合に演算や成分を定義すると、無限次元のベクトル空間になることがわかりました。
では、関数ベクトル空間を構成する最低限のベクトル集合、いわゆる基底ベクトルは何か?という点について触れます。
アプローチとしては、関数を級数展開できる関数族(関数を要素とする集合)を探してきて、それらが基底になっているかを確認する、というアプローチをとります。つまり、基底の条件である全域性と線形独立性を満たすものを探すときに、全域性を満たす(級数展開できる)関数族を探してきて、その関数族が線形独立性を満たすかを確認する・示す、という流れをとります。
この週末研究では、フーリエ級数展開を考えます。
ここで、$\mathcal{F}$ を再定義しておきます。
\mathcal{F} := \{ f | \int_{-\pi}^{\pi} |f(x)|dx < \infty \}
つまり、$\mathcal{F}$ は、 区間 $(-\pi, \pi)$ でルベーグ可積分である関数の集合とする、ということです。
フーリエ級数展開
$\forall f \in \mathcal{F}, \forall x \in (-\pi, \pi)$ に対して、
\begin{align}
f(x) &= \frac{a_0}{2} + \sum_{n=1}^{\infty} a_n \cos nx + b_n \sin nx \\
&= (\frac{a_0}{2} + \sum_{n=1}^{\infty} a_n \cos n + b_n \sin n)(x) \\
\end{align}
と級数展開できることが、フーリエ級数展開です。
つまり、関数ベクトル$f$は、
\begin{align}
f &= \frac{a_0}{2} + \sum_{n=1}^{\infty} a_n \cos n + b_n \sin n \\
\end{align}
と、関数ベクトル集合 $\{ 1, \cos n(\cdot), \sin n(\cdot) \}$ をうまく合成して作ることができることがわかります。(全域性)
※ 細かいことを言うと、定数と定数関数を同じ記号で表記しています。 ($\frac{a_0}{2}, \frac{1}{2}$)
右辺に現れる $\{ 1, \cos(kx), \sin(kx) \}_{k \in \mathbb{N}}$ が基底になることを確認していきます。上記により、全域性はOKなので、線形独立性を確認します。
線形独立性
\begin{align}
a_0 + \sum_{n=1}^{\infty} a_n \cos n + b_n \sin n = 0 \\
\end{align}
の時、各係数 $\{ a_0, a_n, b_n \}_{n \in \mathbb{N}}$ のすべてが $0$ になることを示します。
関数ベクトルの成分表示を使って表現すると、
\begin{align}
(a_0 + \sum_{n=1}^{\infty} a_n \cos nx + b_n \sin nx)_{x \in \mathbb{R}} = (0)_{x \in \mathbb{R}} \\
\end{align}
つまり、$\forall x \in \mathbb{R}$ に対して、
\begin{align}
a_0 + \sum_{n=1}^{\infty} a_n \cos nx + b_n \sin nx = 0 \\
\end{align}
が成り立つということである。
まず、両辺の積分をとると
\begin{align}
& \int_{-\pi}^{\pi} ( a_0 + \sum_{n=1}^{\infty} a_n \cos nx + b_n \sin nx )dx = 0 \\
= & \int_{-\pi}^{\pi} ( a_0 + \sum_{n=1}^{\infty} a_n \cos nx )dx \\
= & a_0*2\pi + \sum_{n=1}^{\infty} a_n [\sin nx]_{-\pi}^{\pi} \\
= & a_0*2\pi + \sum_{n=1}^{\infty} a_n * 0 \\
= & 2 \pi a_0 \\
\therefore a_0 = & 0 \\
\end{align}
次に、 $\forall k \in \mathbb{N}$ に対して、$\cos kx$ との積を積分を取る ( $a_0 = 0$ を使う)
\begin{align}
& \int_{-\pi}^{\pi} \Big( a_0 + \sum_{n=1}^{\infty} a_n \cos nx + b_n \sin nx \Big) \cos kx dx = 0 \\
=& \sum_{n=1}^{\infty} \Big( a_n \int_{-\pi}^{\pi} (\cos nx \cos kx )dx + b_n \int_{-\pi}^{\pi} (\sin nx \cos kx )dx \Big) \\
=& \sum_{n=1}^{\infty} \Big( a_n * \pi \delta_{nk} + b_n * 0 \Big) \\
=& \pi a_k \\
\therefore a_k = & 0 \\
\end{align}
同様に、 $\forall k \in \mathbb{N}$ に対して、$\sin kx$ との積を積分を取る ( $a_0 = 0$ を使う)
\begin{align}
& \int_{-\pi}^{\pi} \Big( a_0 + \sum_{n=1}^{\infty} a_n \cos nx + b_n \sin nx \Big) \sin kx dx = 0 \\
=& \sum_{n=1}^{\infty} \Big( a_n \int_{-\pi}^{\pi} (\cos nx \sin kx )dx + b_n \int_{-\pi}^{\pi} (\sin nx \sin kx )dx \Big) \\
=& \sum_{n=1}^{\infty} \Big( a_n * 0 + b_n * \pi \delta_{nk} \Big) \\
=& \pi b_k \\
\therefore b_k = & 0 \\
\end{align}
以上により、線形結合が 0 ベクトル (0 関数)のとき、の時、各係数 $\{ a_0, a_n, b_n \}_{n \in \mathbb{N}}$ のすべてが 0 になるとわかりました。つまり、線形独立性が成り立ちます。
よって、$\{ 1, \cos(kx), \sin(kx) \}_{k \in \mathbb{N}}$ が基底になります。
ここで、上記積分の計算には、以下の性質を用いていたことに注意します。(場合分けをつかって、積和の公式を使って示せます。)
\begin{align}
& \int_{-\pi}^{\pi} \cos nx \cos kx dx = \pi \delta_{nk} \\
& \int_{-\pi}^{\pi} \sin nx \sin kx dx = \pi \delta_{nk} \\
& \int_{-\pi}^{\pi} \cos nx \sin kx dx = 0 \\
\end{align}
関数ベクトルの正規直交基底
基底 $\{ \frac{1}{\sqrt{2}}, \cos(kx), \sin(kx) \}_{k \in \mathbb{N}}$ は、正規直交基底になります。
つまり、関数ベクトル空間上の内積を $\langle \cdot, \cdot \rangle$ とした時、以下が成り立ちます。
$\forall n, \forall k \in \mathbb{N}$ に対して、
\begin{align}
\langle \frac{1}{\sqrt{2}}, \frac{1}{\sqrt{2}} \rangle & = 1 \\
\langle \frac{1}{\sqrt{2}}, \cos nx \rangle & = 0 \\
\langle \frac{1}{\sqrt{2}}, \sin nx \rangle & = 0 \\
\langle \cos nx, \cos kx \rangle & = \delta_{nk} \\
\langle \sin nx, \sin kx \rangle & = \delta_{nk} \\
\langle \cos nx, \sin kx \rangle & = 0 \\
\end{align}
つまり、同じ基底の内積が 1, 異なる基底間の内積が 0 になります。
(補足)関数ベクトル空間上の内積
ここで、内積 $\langle \cdot, \cdot \rangle$ を以下のように定義します。
$\forall f, \forall g \in \mathcal{F}$ に対して、
\begin{align}
\langle f, g \rangle & := \frac{1}{\pi} \int_{-\pi}^{\pi} f(x)g(x) dx \\
\end{align}
この定義は、$n$ 次元実ベクトル空間上の成分をつかった内積の定義 $\langle x, y \rangle := \sum_{k=1}^{n} x_k y_k$ の 無限次元成分への拡張になっています。(となりへの次元との差分を、dx で表現している。)
この定義により、基底 $\{ \frac{1}{\sqrt{2}}, \cos(kx), \sin(kx) \}_{k \in \mathbb{N}}$ は、正規直交基底になります。
まとめ
- 今回は、関数ベクトルについて調査・整理をした
- $n$ 次元ベクトル空間の無限次元への拡張としての関数ベクトル(成分)
- 成分による定義によって、関数集合がベクトル空間になる
- $\{ \frac{1}{\sqrt{2}}, \cos(kx), \sin(kx) \}_{k \in \mathbb{N}}$ が、正規直交基底になる
- つまり、無限濃度 $\aleph$ の成分を持つ無限次元ベクトルが、加算無限個の関数ベクトル基底で表現(近似)できる
- もっというと、NN/DL を使って関数を分解・近似できるだけでなく、分解した基底自体がベクトルの性質を持つことを意味している(つまり、加法・スカラー倍に意味がある)