【線形代数 07】マルコフ行列とフーリエ行列

  この記事は、行列式と固有値の適用例として見ることができます。ただし、私が興味がある部分、つまり離散ソース チャネル モデルと循環行列の対角化について説明します。


マルコフ行列

この行列は確率理論における確率の定義から導出されるため、各要素は実際には負ではない確率値になりますマルコフ行列 (マルコフ行列) は、確率行列 (確率行列)、遷移確率行列 (遷移確率行列) とも呼ばれます。英語の数学文献の慣例では、確率の行ベクトルと確率の右ランダム行列を使用することになっているため、 を参照してください。 Wikipedia へ 上記の定義は次のとおりです。

ランダム行列は有限状態空間SSを記述しますマルコフ連鎖X t X_ton Sバツiiからのタイムステップ内の場合私はJJj が移動する確率はP r ( j ∣ i ) = P i , j Pr(j|i)=P_{i,j}P r ( j i )=P j、ランダム行列PPピーズ_i行、jjj列要素は、Pi , j P_{i,j}で構成されます。P j出:
P = [ P 1 , 1 P 1 , 2 … P 1 , j … P 1 , SP 2 , 1 P 2 , 2 … P 2 , j … P 2 , S ⋮ ⋮ ⋱ ⋮ ⋱ ⋮ Pi , 1 Pi , 2 … Pi , j … Pi , S ⋮ ⋮ ⋱ ⋮ ⋱ ⋮ PS 、 1 PS 、 2 … PS 、 j … PS , S ] 。{\displaystyle P=\left[{\begin{matrix}P_{1,1}&P_{1,2}&\dots &P_{1,j}&\dots &P_{1,S}\\P_{2, 1}&P_{2,2}&\dots &P_{2,j}&\dots &P_{2,S}\\\vdots &\vdots &\ddots &\vdots &\ddots &\vdots \\P_{i ,1}&P_{i,2}&\dots &P_{i,j}&\dots &P_{i,S}\\\vdots &\vdots &\ddots &\vdots &\ddots &\vdots \\P_{ S,1}&P_{S,2}&\dots &P_{S,j}&\dots &P_{S,S}\\\end{行列}}\right].}{\displaystyle}P= P1、1 _ _P2、1 _ _P 1PS 1P1、2 _ _P2、2 _ _P 2PP1 jP2 jP jPS JP1 SP2 SP SPS S


自然

明らかな結論は、行列PPPの固有値は1 11 (右のランダム行列に対応し、各行の合計が 1、各列の合計が 1 の場合、転置検証を行うだけです。同じ理由)、つまりP
x = 1 ⋅ x Px=1 \cdドットxPx _=1
確率の完全性と加法性に基づいて、 xを検証できます。つまり、転送プロセスは避けられないため、各確率の合計は 1 になります。


ある確率空間から別の確率空間に移動する場合でも、確率の完全性、非負性、リスト可能性、および加法性は依然として保持されます。したがって、A、BA、Bの場合ABは 2n × nn\times nn×nの伝達行列、その積 (確率伝達)、べき乗 (自己進化)、および算術平均は依然として伝達行列、つまり
AB 、 A n 、 A + B 2 AB、 \ \ A^n、 \ \ \frac です。 {A +B}{2}AB _    2+B

AとA^nについて考えてみましょうnn → ∞ n \rightarrow \inftynのシーンはAAAの最大の固有値は 1 であり、残りの固有値の絶対値は 1 未満であるため、A n A^nn は実際にはλ = 1 \lambda=1となる傾向があります。=定常状態は1で表されます。


離散ソースチャネルモデル

「情報理論」を勉強したことのある友人なら同様の形式の伝達行列に精通しているはずなので、例として離散ソース チャネル モデルを使用します。正確には、ソースは確率行列として記述することができます。いわゆるソース分布とは、送信される各信号が特定の送信可能性を占めることを意味します。行ベクトルPX P_XなどP×3 値の同様に尤度の高いソース分布を記述するには、
PX = [ 1 / 3 1 / 3 1 / 3 ] P_X=\begin{bmatrix} 1/3 & 1/3 & 1/3 \end{bmatrix}P×=[1/31/31/3]
このようなチャネル伝達モデルに直面すると仮定する
ここに画像の説明を挿入
と、対応するチャネル伝達行列は
P ij = [ 0.8 0.2 0.5 0.5 0.2 0.8 ] 行 i (X の確率空間) → 列 j (Y の確率空間) P_{ij }=\ begin{bmatrix} 0.8 & 0.2 \\ 0.5 & 0.5 \\ 0.2 & 0.8 \end{bmatrix} \ \ 行 i (X の確率空間) → j 列 (Y の確率空間)Pイジ= 0.80.50.20.20.50.8   i ( Xの確率空間)j ( Yの確率空間)には、 PY = PXP ij = [ 1 / 3 1 / 3 1 / 3 ] [ 0.8 0.2 0.5 0.5 0.2 0.8 ] = [ 0.5 0.5 ] P_Y=P_XP_{ij のシンク確率分布があります

} =\begin{bmatrix} 1/3 & 1/3 & 1/3 \end{bmatrix}\begin{bmatrix} 0.8 & 0.2 \\ 0.5 & 0.5 \\ 0.2 & 0.8 \end{bmatrix} =\begin{ bmatrix } 0.5 & 0.5 \end{bmatrix}P=P×Pイジ=[1/31/31/3 0.80.50.20.20.50.8 =[0.50.5]
しかし、実際には、チャネルのCCC = max ⁡ [ H ( Y ) − H ( Y ∣ X ) ] C=\max [H(Y)-H(Y|X) ]
C=最大[ H ( Y )H ( Y X )]
および既知の
H ( Y ) ≤ H ( 0.5 , 0.5 ) = 1 ビット、H ( Y ∣ X ) ≥ H ( 0.2 , 0.8 ) = 0.7219 ビット H(Y) \le H(0.5, 0.5)=1 ビット、 \ \ \ H(Y|X) \ge H(0.2,0.8)=0.7219 ビットH ( Y )H ( 0.5 0.5 =1ビット、H ( Y X )   H ( 0.2 0.8 )=0.7219ビット
そして 2 つの式が等しい場合、対応するソース分布は
PX = [ 1 / 2 0 1 / 2 ] P_X=\begin{bmatrix} 1/2 & 0 & 1/2 \end{bmatrix} となります。P×=[1/201/2]
したがって、チャネル容量は
C = H ( 0.5 , 0.5 ) − H ( 0.2 , 0.8 ) = 0.2781 ビット C = H(0.5,0.5)-H(0.2,0.8)=0.2781 ビットと等しくなります。C=H ( 0.5 0.5 H ( 0.2 0.8 )=0.2781ビット
これにより、選択されたチャネルの遷移確率が 0.5 から外れるほど良好であり、等確率エラーの送信は無効である


フーリエ行列


ベースを選ぶ

フーリエ変換は信号処理の古典的な演算ですが、ウェーブレット変換と比較すると、基底関数の違いが違います。では、人々が快適に感じる基底関数を選択するにはどうすればよいでしょうか? 1 つの答えは、正規直交基底のセットを選択することですしたがって、これらの基底ベクトルをまとめて変換行列を形成すると、その行列は正規行列となり、その逆行列が共役転置になります

老人は、「私の空間は無限次元だから、無限に多くが必要だ。」つまり、無限次元空間は無限次元基底によって記述されるべきである、というような言葉を言いました。次に、n 次元空間の場合、実際には n 個の正規直交基底を使用します。つまり、
v = x 1 q 1 + x 2 q 2 + ⋯ + xiqi + ⋯ + xnqnv=x_1q_1+x_2q_2+\cdots+x_iq_i+\cdots+x_nq_nv=バツ1q1+バツ2q2++バツ私はq私は++バツq
其中 x i x_i バツ私は対応するベースqi q_iを表しますq私は伸長係数に この係数を取得するにはどうすればよいでしょうか? これは正規直交性の工夫を反映しており、2 つの辺に共役転置ベクトルqi H v = x 1 qi H q 1 + x 2 qi H q 2 + ⋯ + xiqi H qi + ⋯ + xnqi H を乗算できるようにするためです
qn = xi q_i^Hv=x_1q_i^Hq_1+x_2q_i^Hq_2+\cdots+x_iq_i^Hq_i+\cdots+x_nq_i^Hq_n=x_iqHv=バツ1qHq1+バツ2qHq2++バツ私はqHq私は++バツqHq=バツ私は
このとき、直交しているため0が得られ、自己標準化により1が得られるので、係数xi x_iを求めるのに便利です。バツ私は


直交性が非常に役立つことは注目に値します信号解析では、よく知られたフーリエ級数は、直交三角関数、つまりsin ⁡ ( nx ) \sin(nx)を基礎として使用します。sin ( n x )cos ⁡ ( nx ) \cos(nx)cos ( nx )の場合、単一周期内のそれらの積分が 0 つまり直交していることが確認できます。この直交性の考え方は、OFDM サブキャリア選択の原理でもあります。


フーリエ行列

フーリエ行列の定義については、Wikipedia を参照してください。

N 点の離散フーリエ変換は、n × mn\times mで使用できます。n×mの行列乗算は、 X = F x X = Fxで表されます。バツ=F xxxxは元の入力信号、XXXは離散フーリエ変換によって得られる出力信号です。a n × nn\times nn×nFFF は、 F = ( ω ij ) i , j = 0 , … , N − 1 / NF=(\omega ^{ { ij}})_{ { i,j=0,\ldots ,N-1として定義できます。} }/{\sqrt {N}} F=(ああイジ)i , j = 0 , , N 1/N 、すなわち
F = 1 N [ 1 1 1 1 ⋯ 1 1 ω ω 2 ω 3 ⋯ ω N − 1 1 ω 2 ω 4 ω 6 ⋯ ω 2 ( N − 1 ) 1 ω 3 ω 6 ω 9 ⋯ ω 3 ( N − 1 ) ⋮ …… ⋮ ⋮ ⋮ 1 ω N − 1 ω 2 ( N − 1 ) ω 3 ( N − 1 ) ⋯ ω ( N − 1 ) ( N − 1 ) ] {\displaystyle F={\frac { 1}{\sqrt {N}}}{\begin{bmatrix}1&1&1&1&\cdots &1\\1&\omega &\omega ^{2}&\omega ^{3}&\cdots &\omega ^{N-1 }\\1&\オメガ ^{2}&\オメガ ^{4}&\オメガ ^{6}&\cdots &\オメガ ^{2(N-1)}\\1&\オメガ ^{3}&\オメガ ^{6}&\オメガ ^{9}&\cdots &\オメガ ^{3(N-1)}\\\vdots &\vdots &\vdots &\vdots &&\vdots \\1&\omega ^{ N-1}&\オメガ ^{2(N-1)}&\オメガ ^{3(N-1)}&\cdots &\オメガ ^{(N-1)(N-1)}\\\終了{bマトリックス}}}F=N 1 111111おおおお2おお3おおN 11おお2おお4おお6おお2 ( N 1 )1おお3おお6おお9おお3 ( N 1 )1おおN 1おお2 ( N 1 )おお3 ( N 1 )おお( N 1 ) ( N 1 )

其中 w w wは1 1として定義されますnn1n 乗根の主値つまり
w = e − 2 π i N w=e^{\frac{-2\pi i}{N}}w=eN2πi _
列jjの場合に注意してください。jの列ベクトルは次のとおりです:
qj = [ w α × ( j − 1 ) ] T / N α = 0 , 1 , 2 , ⋯ , N − 1 q_j=\begin{bmatrix} w^{\alpha \times ( j-1)} \end{bmatrix}^T/\sqrt{N} \ \ \ \ \ \alpha=0,1,2,\cdots,N-1qj=[wα × ( j 1 )T/N      ある=0 1 2 N1
この時点で、別の列qj + k q_{j+k}qj + k2 つの内積を作成すると、
qj + k H qj = 1 N ∑ α = 0 N − 1 w α × ( j − 1 ) w − α × ( j + k − 1 ) = ∑ α = 0 となります。 N − 1 w − α k q_{j+k}^Hq_{j}=\frac{1}{N} \sum_{\alpha = 0}^{N-1} w^{\alpha \times (j - 1)}w^{-\alpha \times (j+k-1)}= \sum_{\alpha = 0}^{N-1}w^{-\alpha k}qj + kHqj=N1α = 0N 1wα × ( j 1 ) wα × ( j + k 1 )=α = 0N 1wk = 0 k=0
のときのα kk=0の場合、つまり自身の係数の 2 乗を求めると、このときの内積の結果が 1 であることがわかり、標準化されていることが確認できます。
そして、− k ≠ 0 -k \ne 0−k_=0 、 w − kw^{-k}であることがわかります。wkはNNです1の根のN倍、およびα \alpha係数α は単位円上の回転として機能します− k = 1 -k=1はどうでしょうか−k_=1を例にとると、α \alpha0 0からのαフェッチするのに0N − 1 N-1N1このNNN 個の結果が単位円上に再構成されます1 1NN1N NN_Unity の根のN倍。そこで問題は、なぜこのNN がN個の単位根の合計は0 00 ? 百度百科には次の 3 つの説明が記載されています。

基本的な方法は等比級数の合計です。つまり、∑ α = 0 ∞ w α = 1 − w N 1 − w = 0 \sum_{\alpha = 0}^{\infty} w^{\alpha} = \frac{1-w^N}{1-w}=0α = 0wある=1w1wN=0
2 番目の証明は、これらが複素平面上の正多角形の頂点を形成しており、対称性から多角形の重心が原点にあることがわかります最後の証明では、円除算方程式xn − 1 x_{n-1}方程式 の根と係数に関するヴェダーの定理バツn 1項ですが、係数はゼロです。

どの解釈が採用されても、結論は一貫しています。つまり、k ≠ 0 k \ne 0です。k=0の場合、内積の結果は 0 となり、直交性が検証されます。すると、フーリエ行列は正規行列となり
F − 1 = FHF^{-1}=F^Hという優れた性質が生まれます。F1=FH

FFT オーバーヘッドN log 2 N / 2 Nlog_2N/2いいえ_2N /2の説明


まずは理論的な観点から。デジタル信号処理では、FFT を完成させるための代表的な考え方として、時間選択 DIT と周波数選択 DIF の 2 つがあることが知られていますが、どちらの方法でもソート後は計算量が半分になります。DIT
の場合、 x ( n ) x(n)の場合x ( n )シーケンスのパリティがソートされ、結果はX ( k ) X(k)X ( k )は前半と後半です
ここに画像の説明を挿入
ここに画像の説明を挿入
DIFの場合はx ( n ) x(n)です。x ( n )シーケンスの前半と後半をソートし、その結果を出力X ( k ) X(k)X ( k )は奇数と偶数に分けられます

ここに画像の説明を挿入
ここに画像の説明を挿入
DFT 演算の定義は X ( k ) = ∑ n = 0 N − 1 x ( n ) w N nk , k = 0 , 1 , ⋯ , N − 1 X(k)=\sum_{ であることも知られています
n=0} ^{N-1} x(n)w_{N}^{nk}、k = 0,1,\cdots,N-1X ( k )=n = 0N 1x ( n ) wNンクk=0 1 N1

演算の中で乗算の演算オーバーヘッドが最も大きくなりますNNN点の DFT の場合、行列乗算のコストは N で、合計 N 点があり、コストはN 2 N^2N2、FFT は最終的にlog 2 N log_2Nログ_ _2Nレベルのバタフライ演算の場合、各ステージでのバタフライ演算の乗算コストは​​ N / 2 N/2N /2 (つまり、2 つの係数ごとに 1 回共有できるため、計算の半分が節約されます)、したがって、総コストはN log 2 N / 2 Nlog_2N/2いいえ_2N /2


上記のプロセスを行列変換の観点から理解しました。64 ポイント FFT を 32 ポイント FFT に変換するプロセスを示しましょう。
F 64 = [ ID 32 I − D 32 ] [ F 32 0 0 F 32 ] [ 1 0 0 0 ⋯ 0 0 0 0 1 0 ⋯ 0 0 ⋮ ﹁ ⋮ ⋮ ⋱ ⋮ ⋮ 0 0 0 0 ⋯ 1 0 0 1 0 0 ⋯ 0 0 0 0 0 1 ⋯ 0 0 ⋮ ﹁ ⋮ ⋮ ⋱ ⋮ ⋮ 0 0 0 0 ⋯ 0 1 ] 奇数行 偶数行 F_{64}=\begin{bmatrix} I &D_{32} \\ I & -D_{32} \end{bmatrix}\begin{bmatrix} F_{32} &0 \\ 0 & F_{32} \end{bmatrix} \begin{bmatrix} \colorbox{ yellow}1& 0 &0 &0 &\cdots & 0 & 0\\ 0 & 0 & \colorbox{ yellow}1 & 0 & \cdots & 0 & 0\\ \vdots & \vdots & \vdots & \vdots & \ddots & \vdots & \vdots \\ 0 & 0 & 0 & 0 & \cdots & \colorbox{イエロー}1 & 0 \\ 0 & \colorbox{アクア}1 & 0 & 0 &\cdots & 0 & 0 \\ 0 & 0 & 0 & \colorbox{ aqua}1 & \cdots & 0 & 0 \\ \vdots & \vdots & \vdots & \vdots & \ddots &\vdots & \vdots \\ 0 & 0 & 0 & 0 & \cdots & 0 & \colorbox{aqua}1 \end{bmatrix} \ \ \ \colorbox{ yellow}{odd \ rows} \ \ \ \colorbox{水色{偶数\行}F64=[D32−D _32[F3200F32 100000000100010000000010001000000001    奇数   偶数
ここでD 32 D_{32}D32は補正用の対角行列で、要素はお馴染みの補正係数ですwwwは、バタフライ演算の補正係数であることがわかります。つまり、
D 32 = [ w 0 0 0 0 ⋯ 0 w 1 0 0 ⋯ 0 0 w 2 0 ⋯ ⋮ ⋮ ⋮ ⋱ ⋮ 0 0 0 0 w 31 ] D_{32} = \begin{bmatrix} w^0 & 0 & 0 & 0& \cdots \\ 0 & w^1 & 0 & 0 &\cdots \\ 0 & 0 & w^2 & 0& \ cdots \ \ \vdots & \vdots &\vdots & \ddots & \vdots \\ 0 & 0 & 0 & 0 & w^{31} \end{bmatrix}D32= w00000w10000w200000w31
一番右の行列はスイッチング行列P64 P_{64}P64、パリティソートの機能を実現しますこのプロセスを観察すると、乗算オーバーヘッドの増加は主にD 32 D_{32}にあることがわかりました。D32したがって、このステージの計算は 2 つのF 32 F_{32}に変換されます。F32乗算量とD 32 D_{32}D32乗算演算の。など、F 32 F_{32}F32さらにF 16 ⋯ F_{16} \cdotsに分解することもできます。F16その結果、基本要素のブロックはF 2 F_2F2、次のように示されます
[ ID 32 I − D 32 ] [ ID 16 ID 16 0 0 ID 16 I − D 16 ] ⋯ [ ID 1 ID 1 ⋱ 0 0 ID 1 I − D 1 ] [ F 2 ⋱ 0 0 F 2 ] [ P 2 ⋱ 0 0 P 2 ] ⋯ [ P 32 0 0 P 32 ] [ P 64 ] \begin{bmatrix} I &D_{32} \\ I &-D_{32} \end{bmatrix} \begin{bmatrix} \begin {行列} I & D_{16} \\ I & D_{16} \end{行列} & \text{\Large 0} \\ \text{\Large 0} & \begin{行列} I&D_{16 } \\ I & -D_{16} \end{matrix} \end{bmatrix} \cdots \begin{bmatrix} \begin{matrix} I & D_{1} & \\ I & D_{1} & \\ & & \ddots \end{行列} &\text{\Large 0} \\ \text{\Large 0} & \begin{行列} I & D_{1} \\ I & -D_{1} \end{行列} \end{bmatrix} \begin{bmatrix} \begin{行列} F_2& \\& \ddots \end{行列} & \text{\Large 0} \\ \text{\Large 0} & \begin{行列} F_{2} \end{行列} \end{b行列} \begin{b行列} \begin{行列}P_2& \\& \ddots \end{行列} & \text{\Large 0} \\ \text{\Large 0} & \begin{行列} P_{2} \end{行列} \end{bmatrix} \cdots \begin{bmatrix}P_{32} & 0 \\ 0 & P_{32} \end{bmatrix} \begin{bmatrix}P_{64} \end{bmatrix}[D32−D _32 D16D1600D16−D _16 D1D100D1−D _1 F200F2 P200P2 [P3200P32[P64]補正行列の合計はlog ⁡ 2 N \log_2N
ことがわかります。ログ_2Nレベル、各レベルにはN/2 N/2N /2乗算演算したがって、最終的な運用コストはN log 2 N / 2 Nlog_2N/2いいえ_2N /2N=1024 N=1024で計算量の削減を直感的に感じてみましょうN=1024を例にとると、
N 2 N log 2 N / 2 = 102 4 2 1024 ∗ 5 ≈ 205 \frac{N^2}{Nlog_2N/2}=\frac{1024^2}{1024*5} \about 205いいえ_2N /2N2=10245102 42205 FFT によりフーリエ変換処理の高性能化が可能であることが
わかります


円行列の対角化の説明

この説明の背景は OFDM におけるサイクリック プレフィックスです。Wikipedia を参照してください。まず定義を確認してください。

形式としては、A = [ c 0 cn − 1 cn − 2 … c 1 c 1 c 0 cn − 1 ⋯ c 2 c 2 c 1 c 0 ⋯ c 3 ⋮ ⋮ ⋱ ⋮ cn − 1 cn − 2 cn − 3 … c 0 ] {\displaystyle A={\begin{bmatrix}c_{0}&c_{n-1}&c_{n-2}&\dots &c_{1}\\c_{1}&c_{0}&c_{n -1}& \cdots &c_{2}\\c_{2}&c_{1}&c_{0}&\cdots &c_3 \\\vdots &\vdots& \vdots&\ddots &\vdots \\c_{n-1} &c_{n-2}&c_{n-3}&\ドット &c_{0}\end{bmatrix}}}= c0c1c2cn 1cn 1c0c1cn 2cn 2cn 1c0cn 3c1c2c3c0 の行列は循環行列です。

私たちはこの性質に注目します。循環行列の固有ベクトル行列は同じ次元の離散フーリエ変換行列であるため、循環行列の固有値は高速フーリエ変換によって簡単に計算でき、循環行列は次のように計算できます。フーリエ行列対角化によって計算されます。つまり、
AF = F Λ ⇒ Λ = FHAF または A = F Λ FH AF=F\Lambda \Rightarrow \Lambda=F^HA F または A = F\Lambda F^{H}A F=_L=FH AFまたはA=FΛF _ _H
3 つの主要な前提条件があることを簡単に証明しましょう。1 つは DFT の定義、もう 1 つはその時間領域の巡回シフト特性、そして 3 つ目は対称性です。つまり、
条件 1: X ( k ) = ∑ n = 0 N − 1 x ( n ) w N nk 、 k = 0 , 1 , ⋯ , N − 1 条件 2: x ( ( n + m ) ) NRN ( n ) ⇔ w N − km X ( k ) 条件 3: x ( N − n ) ⇔ X ( N − k ) 条件 1: X(k)=\sum_{n=0}^{N-1} x( n) w_{N}^{nk}, k = 0,1,\cdots,N-1 \\ 条件 2: x((n+m))_N R_N(n) \Leftrightarrow w_N^{-km}X (k ) \\ 条件 3: x(Nn) \Leftrightarrow X(Nk)条件1 : X ( k )=n = 0N 1x ( n ) wNンクk=0 1 N1条件2 : x (( n+NRN( n )wN−km _X ( k )条件3:× ( Nn )X ( Nk )
2 行目を例にとると、
c 1 w 0 × 1 + c 0 w 1 × 1 + c N − 1 w 2 × 1 + ⋯ + c 2 w N − 1 × 1 = ∑ n であることがわかります。 = 0 N − 1 c ( ( N − n + 1 ) ) NRN ( n ) wn × 1 = w − 1 × 1 ∑ n = 0 N − 1 c ( ( N − n ) ) NRN ( n ) wn × 1 = C ( N − 1 ) w − 1 × 1 このとき k = 1 c_1w^{0 \times 1} +c_0w^{1\times 1}+c_{N-1}w^{2 \times 1} +\cdots+ c_2w^{N-1\times1}=\sum_{n=0}^{N-1}c((N-n+1))_NR_{N}(n)w^{n \times 1 }=w ^{-1 \times 1} \ \sum_{n=0}^{N-1}c((Nn))_NR_{N}(n)w^{n \times 1}=C(N -1) w^{-1 \times 1} \ \ このとき k=1c1w0 × 1+c0w1 × 1+cN 1w2 × 1++c2wN 1 × 1=n = 0N 1c (( Nn+1 ) )NRN( n ) wn × 1=w1 × 1 n = 0N 1c (( NNRN( n ) wn × 1=C ( N1 ) wk場合−1 × 1  =1
など、ii をi はシフトされたmmですmiiDFT 結果ではiもkkkjjjはシリアル番号nn j = 0 N − 1 c ( ( N − j + i ) ) NRN ( n ) wj × i = C ( ( N − i ) ) NRN ( n ) w − i 2 i ( k , m )
j ( n ) = 0 , 1 , 2 , ⋯ , N − 1 \sum_{j=0}^{N-1}c((N-j+i))_N R_{N}(n) w^{ j \times i}=C((Ni))_NR_{N}(n) w^{-i^2} \ \ \ \ i(k,m),j(n)=0,1,2,\ cdots、N-1j = 0N 1c (( Nj+NRN( n ) wj × i=C (( NNRN( n ) w2 i(k,    メートルj ( n )=0 1 2 N1
上記の形式を行列として書きます。つまり
[ c ( ( N − j + i ) ) NRN ( n ) ] [ wi × j ] = [ C ( ( N − i ) ) NRN ( n ) ] [ w − i 2 ] \begin{bmatrix}c((N-j+i))_N R_{N}(n) \end{bmatrix} \begin{bmatrix}w^{i \times j} \end{bmatrix} = \ begin {bmatrix}C((Ni))_NR_{N}(n) \end{bmatrix} \begin{bmatrix}w^{- i^2} \end{bmatrix}[c (( Nj+NRN( n )[wi × j=[C (( NNRN( n )[w2]
を両辺で割ってN \sqrt{N}N 正規化すると、フーリエ行列の形式で書くことができます。
AF = [ C ( 0 ) 0 0 ⋯ 0 0 C ( N − 1 ) 0 ⋯ 0 0 0 C ( N − 2 ) ⋯ 0 ⋮ ⋮ ⋮ ⋱ ⋮ 0 0 0 0 C ( 1 ) ] FH = Λ FH = HFH AF=\begin{bmatrix}C(0) & 0 & 0 & \cdots & 0 \\ 0 & C(N-1) &0 & \cdots & 0 \ \ 0 & 0 & C(N-2) & \cdots & 0 \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & 0 &0 &C(1) \end{bmatrix} F ^{H}=\ラムダ F^H=HF^HA F= C ( 0 )0000C ( N1 )0000C ( N2 )00000C ( 1 ) FH=ΛF _H=HF _Hこの証明プロセスから、 ii
次のこともわかります。ラインiの入力信号シーケンスc ( ( N − j + i ) ) NRN ( n ) c((N-j+i))_NR_{N}(n)c (( Nj+NRN( n )、対応する出力の固有値はC ( ( N − i ) ) NRN ( n ) C((Ni))_NR_{N}(n) です。C (( NNRN( n )これは、通信路応答に相当する畳み込み演算をFFT演算に変換することが目的であり、FFTは演算効率が高い、つまりこのときの固有値が通信路応答に相当するデジタル信号処理技術の進歩が通信技術の進歩の基礎を築き、そのすべてに数学が必要であることがわかります。


循環行列が次の形式で書かれている場合に注意してください。
A = [ c 0 c 1 c 2 … cn − 1 cn − 1 c 0 c 1 ⋯ cn − 2 cn − 2 cn − 1 c 0 ⋯ cn − 3 ⋮ ⋮ ⋮ ⋱ ⋮ c 1 c 2 c 3 … c 0 ] {\displaystyle A={\begin{bmatrix}c_{0}&c_{1}&c_{2}&\dots &c_{n-1}\\c_ {n-1}&c_ {0}&c_{1}& \cdots &c_{n-2}\\c_{n-2}&c_{n-1}&c_{0}&\cdots &c_{n-3} \ \\vdots &\vdots& \vdots&\ddots &\vdots \\c_{1}&c_{2}&c_{3}&\dots &c_{0}\end{bmatrix}}}= c0cn 1cn 2c1c1c0cn 1c2c2c1c0c3cn 1cn 2cn 3c0
次に、得られる固有値はC ( i ) C(i)です。C ( i )。これは、書籍「Toeplitz and Circulant Matrices: A review」に記載されている行列の例でもあります。この本では循環行列の対角化の一般的な証明を示しています (第 3 章) が、ここでは DFT の特性を組み合わせてより単純に説明している点が異なります。

おすすめ

転載: blog.csdn.net/weixin_47305073/article/details/126272965