


アダマール変換(ウォルシュ・アダマール変換、アダマール・ラデマッハー・ウォルシュ変換、ウォルシュ変換、またはウォルシュ・フーリエ変換とも呼ばれる)は、フーリエ変換の一般化されたクラスの一例です。これは、 2 m 個の数値のタプルに対して、直交、対称、対合、線形演算を実行します。
アダマール変換は、サイズ2の離散フーリエ変換(DFT)から構築されていると見なすことができ、実際にはサイズ2×2×⋯×2×2の多次元DFTと同等である。[ 2 ]これは任意の入力ベクトルをウォルシュ関数 の重ね合わせに分解する。
この変換は、フランスの数学者ジャック・アダマール(フランス語: [ adamaʁ ])、ドイツ系アメリカ人の数学者ハンス・ラデマッハー、アメリカの数学者ジョセフ・L・ウォルシュにちなんで名付けられました。
アダマール変換H mは、2 m × 2 m行列、つまり正規化係数でスケーリングされたアダマール行列であり、2 m 個の実数x n を2 m 個の実数X kに変換します。アダマール変換は、再帰的に定義するか、インデックスnとkのバイナリ(基数-2) 表現を使用するかの 2 つの方法で定義できます。
再帰的に、1 × 1 アダマール変換H 0を恒等式H 0 = 1で定義し、次にm > 0 に対してH m を次のように定義します。 ここで、 2m /2 で割ることは正規化のためのものであり、省略される場合もある。
m > 1の場合、 H m は次のように定義することもできます。 どこはクロネッカー積を表します。したがって、この正規化係数を除けば、アダマール行列はすべて 1 と -1 で構成されています。
同様に、アダマール行列は、( k , n )番目の要素 によって次のように定義できます。
ここで、k jとn jはそれぞれkとnのビット要素 (0 または 1) です。左上隅の要素については、次のように定義します。この場合、以下のようになります。
これはまさに多次元入力と出力がそれぞれn jとk jでインデックス付けされた多次元配列とみなされる場合、ユニタリに正規化された DFT 。
以下に、アダマール行列の例をいくつか示す。 どこは、数値 i と j のバイナリ表現のビットごとのドット積です。たとえば、、 それから上記に同意する(全体の定数は無視する)。行列の最初の行、最初の列の要素は、で表されます。。
H 1はまさにサイズ 2 の DFT です。これはZ /(2)の2 要素加法群に対するフーリエ変換とみなすこともできます。
アダマール行列の行はウォルシュ関数である。
アダマール変換は、2 × 2 × ⋯ × 2 × 2サイズの多次元 DFT と同等である。[ 2 ]
正式には、アダマール変換はブール群上のフーリエ変換である。[ 3 ] [ 4 ]有限(アーベル)群に対するフーリエ変換を用いると、 関数のフーリエ変換は関数は定義される どこは各文字は、一部の人にとってここで、乗算はビット列のブールドット積なので、入力を識別できます。と(ポントリャーギン双対性)を定義し、による
これはアダマール変換です入力を考慮するとそしてブール文字列として。
上記の定式化では、アダマール変換はベクトルを乗算します。複素数左側はアダマール行列によって表される。等価性は、要素のインデックスに対応するビット列を入力として受け取る、そして対応する要素を出力する。
ベクトルに適用された通常の離散フーリエ変換の複素数では、代わりに巡回群の指標を使用する。したがって、DFTはアダマール変換よりもはるかに複雑な演算を必要とします。DFTとは異なり、アダマール変換は純粋に実数であり、実際には乗算は必要なく、符号反転のみが必要です。
古典領域では、アダマール変換は次のように計算できます。操作()高速アダマール変換アルゴリズムを使用する。
アダマール変換は量子コンピューティングで広く用いられている。2 × 2アダマール変換は、アダマールゲートとして知られる量子論理ゲートであり、各量子ビットにアダマールゲートを適用すると、並列の量子ビットレジスタはアダマール変換に相当する。
量子コンピューティングにおいて、アダマールゲートは1量子ビットの回転であり、量子ビット基底状態をマッピングする。そして計算基底状態の重みが等しい2つの重ね合わせ状態へそして通常、フェーズは次のように選択されます。
ディラック記法では、これは変換行列に対応します。 で基底、計算基底とも呼ばれる。そしてとして知られていますそしてそれぞれ、そしてこれらが合わさって量子コンピューティングにおける極性基底を構成する。
0または1の量子ビットにアダマールゲートを1回適用すると、観測された場合に0または1になる確率が等しい量子状態が生成されます(最初の2つの操作で示されているとおり)。これは、標準的な確率的計算モデルにおける公平なコイン投げとまったく同じです。しかし、アダマールゲートを2回連続して適用すると(最後の2つの操作で実際に行われているように)、最終状態は常に初期状態と同じになります。
量子アダマール変換の計算は、アダマール変換のテンソル積構造のため、各量子ビットに個別にアダマールゲートを適用するだけで済みます。この単純な結果は、量子アダマール変換には操作は、従来のケースと比較して、業務。
のために-量子ビットシステム、各量子ビットに作用するアダマールゲート量子ビット(それぞれが) は、均一な量子重ね合わせ状態を準備するために使用できます。形式はこの場合は量子ビット、結合アダマールゲートは、アダマールゲート:
その結果得られる均一な量子重ね合わせ状態は次のようになる。 これは、アダマールゲートを用いた均一量子状態の準備方法を一般化するものである。[ 5 ]
この均一な量子状態の測定により、ランダムな状態が得られます。そして。
多くの量子アルゴリズムは、アダマール変換を初期ステップとして使用します。これは、前述のように、初期化されたn個の量子ビットをマッピングするためです。2 n 個の直交状態すべての重ね合わせへ等しい重みを持つ基底。例えば、これは、Deutsch–Jozsa アルゴリズム、Simon のアルゴリズム、Bernstein–Vazirani アルゴリズム、およびGrover のアルゴリズムで使用されています。Shorのアルゴリズムは、初期 Hadamard 変換と量子フーリエ変換の両方を使用していることに注意してください。これらはどちらも有限群上のフーリエ変換の一種です。そして2番目は。
一般の場合における均一な量子重ね合わせ状態の準備≠ これは容易ではなく、より多くの作業を必要とする。重ね合わせ状態を準備するための効率的かつ決定論的なアプローチ ゲートの複雑さと回路の深さはわずかすべての人々のために最近発表された。[ 6 ] このアプローチでは、 量子ビット。重要なことに、このアプローチでは、均一な重ね合わせ状態を生成するために、補助量子ビットも多重制御の量子ゲートも必要ありません。 。
アダマール変換は量子機械学習、特にハイブリッド量子古典ニューラルネットワークにおいて応用されています。2 つのベクトル間の二進畳み込みは、それらのアダマール変換表現の要素ごとの乗算に相当します。したがって、畳み込み層は、アダマール変換を取得し、乗算し、アダマール変換を反転させることで効率的に実行できます。アダマール変換の古典的な計算には、高速アダマール変換アルゴリズムを使用して O( n log n ) の演算が必要ですが、量子実装では、すべての量子ビットに同時にアダマールゲートを適用することで、O(1) 時間で変換を計算できます。[ 7 ]
アダマール変換は、分子データから系統樹を推定するために使用できます。[ 8 ] [ 9 ] [ 10 ]原理的には、アダマール変換はさまざまな配列進化モデル に適用できますが、最も興味深いケースは核酸(NA)のデータを使用するケースです。[ 8 ] [ 11 ]
形式的には、4 つの可能な鎖核酸塩基を、それ自身に作用するクライン 4 グループV の要素とみなします。一方のC 2軸は遷移に対応し、もう一方は転位に対応します。長さkの NA 配列はV kの要素であり、これらの長さk の配列への特定のインデックスはサイトと呼ばれます。系統樹Tは、あるrを根とする木であり、各点が NA 配列と識別されています。[ 12 ]
生物学的応用では、 Tの各エッジの突然変異率を指定し、その結果としてTを観測する確率を計算したい。理想的には、このプロセスは容易に可逆であるべきであり、最適化アルゴリズムによって、観測された DNA 配列を最大尤度で生成する (木、突然変異率) のペアを見つけることができる。実際、これは次のようにアダマール変換を使用して行うことができる。[ 12 ] [ 13 ]
I をT \{ r }の冪集合とし、次のI 2インデックス付きベクトルxを考える。各サイトjはσ 1 ∈ Iを決定する。σ 1 ∈ I は、サイトjにおいてrに対して遷移を持つ点の集合である。同様に、転位は各サイトに対して別のσ 2 ∈ Iを決定する。すると、x ( σ 1 , σ 2 )は( σ 1 , σ 2 )を決定するサイトの割合 ( {1,..., k }のうち) となる。[ 12 ]
線形演算子H :ℝ I 2 → ℝ I 2は、 ( σ , τ )番目の係数( − 1) | σ 1 ∩ τ 1 |+| σ 2 ∩ τ 2 |を持つアダマール行列です。実際、 I がある順序で列挙されている場合 、アダマール変換を定義します。 [ 9 ]
ここで、⊗ I 2 は、対数がベクトルの各成分に作用することを示しています。すると、γは、観測された確率分布x を生成するために必要な突然変異率mとほぼ同じになります。[ 12 ] [ 14 ]
4種類の核酸すべてを区別した完全な木村モデルでは、各エッジに3つの自由パラメータがあります。これらの値をγの対応するエントリに変換するには、 3 × 3行列で別の対数を共役する必要があります。[ 12 ]
配列がRYコード化されている場合、関係ははるかに単純になります。この場合、xとγはI ( I 2ではなく)でインデックス付けされ、mも同様です。偶数サイズのσ ∈ Iの場合、E(σ)= σとします。奇数サイズのσ ∈ Iの場合、E(σ)= σ ⊔ {r}とします。そして、m σをσをTの残りの部分から切り離すエッジ上の突然変異率とします。(mは、復帰突然変異の確率を含むため、厳密には測定量ではありません。これは、観察された形質変化の確率と関連しています。
ここでpは観測された確率である。)するとγ = mとなる。[ 9 ]
この手法は、異なる部位が異なる速度で変異する場合にも一般化できる。[ 15 ]
いずれの場合も、ツリーを決定する時間計算量はアダマール変換によって支配され、 O(| T |2 | T | )のステップを要します。[ 16 ]ただし、アルゴリズムは、 T のサブセットから構築されたより小さなツリーを組み合わせることによってツリーを再構築できます。[ 17 ]
アダマール変換は、データ暗号化だけでなく、JPEG XRやMPEG-4 AVCなどの多くの信号処理およびデータ圧縮アルゴリズムにも使用されています。ビデオ圧縮アプリケーションでは、通常、変換された差分の絶対値の和の形で使用されます。また、量子コンピューティングにおける多数のアルゴリズムの重要な部分でもあります。アダマール変換は、NMR、質量分析、結晶学などの実験技術にも応用されています。さらに、擬似乱数行列回転を得るために、局所性敏感ハッシュのいくつかのバージョンでも使用されています。
{{cite journal}}: CS1 maint: 複数名: 著者リスト (リンク) CS1 maint: 数値名: 著者リスト (リンク){{cite journal}}: CS1 maint: 複数名: 著者リスト (リンク) CS1 maint: 数値名: 著者リスト (リンク){{cite journal}}:ジャーナルを引用するには|journal=(ヘルプ) CS1 maint: 複数の名前: 著者リスト (リンク) CS1 maint: 数値名: 著者リスト (リンク)