MCPで接続 →

計算を入力してください

公式

広告

結果

Hadamard product A ∘ B (matrix C)
5 12
21 32
Each entry c_jk = a_jk × b_jk
演算 要素ごとの積(シューア積)
行列のサイズ 2 × 2

アダマール積とは

アダマール積(要素積、成分ごとの積、シューア積とも呼ばれます)とは、同じサイズをもつ2つの行列 A と B について、対応する成分どうしを掛け合わせて得られる行列 C のことです。記号では \(C = A \circ B\) と表します。ここで重要なのは、これが通常の行列の積(行列積)ではないという点です。内側の添字について和をとることはなく、単純に成分ごとの掛け算を行うだけです。

対応する位置で2つの行列をセルごとに組み合わせて結果の行列を作成
アダマール積は、同じサイズの2つの行列の対応する位置の要素を掛け合わせます。

この計算機の使い方

まず、両方の行列で共通する行数(j)と列数(k)を指定します。次に、行列 A と行列 B を入力します。1行につき1行分の値を書き、各値はスペースまたはカンマで区切ってください。表示する桁数(有効数字)を変えたい場合は、表示精度を選びます。両方の行列はぴったり j 行 k 列でなければなりません。サイズが異なる場合、アダマール積は定義されず、計算機はエラーを返します。

計算式の解説

すべての行番号 j と列番号 k について、結果は $$\left(A \circ B\right)_{jk} = a_{jk} \cdot b_{jk}, \quad j = 1 \ldots \text{Rows}, \; k = 1 \ldots \text{Cols}$$ となります。出力行列 C は入力と同じ \(j \times k\) のサイズを保ちます。この演算は交換法則(\(A \circ B = B \circ A\))と結合法則を満たし、単位元はすべての成分が1の行列です。成分はゼロや負の数を含む任意の実数で構いません。ゼロを掛ければ結果は単純にゼロになります。また、割り算は一切ないため、ゼロ除算の心配もありません。

広告

計算例

\(A = [[1, 2], [3, 4]]\)、\(B = [[5, 6], [7, 8]]\) とします。成分ごとに掛け合わせると、\(c_{11} = 1 \times 5 = 5\)、\(c_{12} = 2 \times 6 = 12\)、\(c_{21} = 3 \times 7 = 21\)、\(c_{22} = 4 \times 8 = 32\) となり、\(C = [[5, 12], [21, 32]]\) が得られます。これに対し、通常の行列積 \(A \cdot B\) は \([[19, 22], [43, 50]]\) となり、明らかに結果が異なります。このことからも、本ツールが要素ごとの積を計算していることが確認できます。

よくある質問

ベクトルやスカラーでも使えますか? はい、使えます。行ベクトル(\(1 \times k\))、列ベクトル(\(j \times 1\))、スカラー(\(1 \times 1\))のいずれも、A と B が同じサイズである限り問題なく計算できます。

A と B のサイズが異なる場合はどうなりますか? アダマール積は定義されません。必ず同じサイズの行列を使う必要があります。サイズが一致しない場合、計算機がエラーを表示します。

表示精度のドロップダウンは何をするものですか? 表示する有効数字の桁数を変えるだけのものです。あくまで表示形式の選択であり、内部の計算自体には影響しません。

最終更新: