■フーリエ変換とアダマール変換

 今回はコラム「平面代数曲線とライスの公式(その3)」に引き続きフーリエ変換を,コラム「4次元正多胞体による空間充填と元素定理(その17)」に引き続きアダマール行列を扱う.

===================================

【1】フーリエ変換

 フーリエ変換(FT)は,三角関数の性質を利用した積分変換解析法で,19世紀初頭,鉄の輪を熱したときの温度分布を解析するなど熱伝導の考察から誕生し,波動や振動現象の解明をはじめ多くの応用分野をもっています.

 フーリエ変換の理論はそれがつくられた時点から物理現象を説明するための手段でしたし,今日ではコンピュータと結びついて画像処理などの技術に利用されています.現在でもさまざまな工学分野,CTスキャンなどの医療分野になくてはならない理論になっていますが,なぜフーリエ変換がCTスキャンなど医療用画像にとって重要なのかというと,「短い周期をもつ成分(高調波成分)を無視してもとの図形を再現しても,その周期に対応した微細な構造が失われるだけで,再現された画像に大して悪影響はない」ということに起因しています.

 この辺の事情は,確率統計における中心極限定理の考え方によく似ています.すなわち,たくさんの確率変数の和は,各々の確率分布の形によらず,普遍的な正規分布に従うという事実は,いい換えれば,巨視的なアウトラインは微視的なディテールには依存せず,平均値や分散など大まかな性質だけで決まってしまうというものであり,その結果,微視的なディテールは見えなくなって,巨視的に意味のあるものだけが残るのだと考えられます.

−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−

 ところで,弦の振動や波を三角関数の級数で解くならまだしもわかりますが,熱伝導を三角級数で解くという着想は奇妙奇天烈に感じられます.これに対する回答ですが,次のように考えてみましょう.

(1)フーリエ級数では,データを一定間隔ごとにサンプリングすると,三角関数のもつ直交基底の性質:Σcos(kx)=0,Σsin(kx)=0,Σcos(ix)cos(jx)=0,Σcos2(kx)=n/2,Σsin(ix)sin(jx)=0,Σsin2(kx)=n/2,Σsin(ix)cos(jx)=0から非対角要素はすべて0になり,連立方程式を解くことなしにフーリエ係数を簡単に求めることができる

(2)滑らかでない関数も表現可能になる

(3)フーリエ級数は周期関数にしか適用できないが,非周期関数を周期が∞の周期関数とみなすと,非周期関数にも適用できるようになる

(4)周期関数のうちで微積分がもっとも簡単なのは三角関数であり,微分方程式を解くためには,関数を三角関数の和として表せばよい

など,フーリエ級数への展開はテイラー級数への展開よりもはるかに強力な方法になっています.したがって,フーリエはべき級数の方法によって関数を取り扱うよりも,三角級数による任意の関数表現のほうが,これらのメリットを活かせると考えたに違いありません.

 ここで述べたフーリエ級数は離散世界(Σの世界)のものでしたが,未知の係数を計算するために連続世界(∫dxの世界)に拡張したものがフーリエ変換(FT)です.もちろんこれらのよい性質はFTにも遺伝し,関数

  y=f(x)=a0+a1cosx+b1sinx+a2cos2x+b2sin2x+・・・+akcoskx+bksinkx+・・・

のフーリエ係数は

 ak=2∫f(x)coskxdx,bk=2∫f(x)sinkxdx

で与えられます.さらに,高速フーリエ変換(FFT)は位相補正によって未知の係数を効率よく計算する技法であり,そして,これらが原動力となって,現代解析学が生まれたのです.

===================================

【2】アダマール行列

 アダマール行列Hnは+1か−1の要素をもつn×n行列で,その行と列は互いに直交している.各行または列のノルム(各要素の2乗和)はnであるから,  HnHn’=Hn’Hn=nIn

が成り立つ.

 最も簡単なアダマール行列は

  H2 =[1, 1]

     [1,−1]

である.すべての他のアダマール行列はn=4kであることが必要である.

 とくに興味深いのは「直積」

  H4=H2×H2,H8=H2×H2×H2,・・・

によって,H2から得られるn=2^mのシルベスタ型のアダマール行列で,

     [1, 1, 1, 1]

  H4 =[1,−1, 1,−1]

     [1, 1,−1,−1]

     [],−1,−1, 1]

     [1, 1, 1, 1, 1, 1, 1, 1]

     [1,−1, 1,−1, 1,−1, 1,−1]

     [1, 1,−1,−1, 1, 1,−1,−1]

  H8 =[1,−1,−1, 1, 1,−1,−1, 1]

     [1, 1, 1, 1,−1,−1,−1,−1]

     [1,−1, 1,−1,−1, 1,−1, 1]

     [1, 1,−1,−1,−1,−1, 1, 1]

     [1,−1,−1, 1,−1, 1, 1,−1]

===================================

【3】FFTの基本原理

 n次の行列とベクトルの乗算における演算数はn^2−nであるのに対して,n次のアダマール行列の乗算はnlog2n回の加減算しか必要としない.そのため,アダマール行列はFFT(高速フーリエ変換)の基本原理と関係している.

 離散フーリエ変換(DFT)は,Fmをm×m行列,aをベクトルとして,

  A=Σakexp(−2πink/m)=Fma

と書くことができる.

 最も簡単なDFT行列は

  F2 =[1, 1]

     [1,−1]

である.これはアダマール行列H2と全く同じである.F4はH4とは異なり,

     [1, 1, 1, 1]

  F4 =[1,−i,−1, 1]

     [1,−1, 1,−1]

     [1, i,−1,−i]

である.しかしながら,2行と3行を入れ替えて,すべての虚数項に回転因子iを掛けるとアダマール行列H4と全く同じになる.

 1965年に大量のデータを速度を重視して解析するテクニックとして開発されたのが高速フーリエ変換(FFT)であるが,これがFFTの基本原理であるという.

[参]シュレーダー「数論」コロナ社

===================================