# Hadamard-Produkt

Das Hadamard-Produkt, Schur-Produkt, komponentenweises Produkt oder elementweises Produkt ist in der Mathematik ein spezielles Produkt zweier Matrizen gleicher Größe. Die resultierende Matrix ergibt sich dabei durch Multiplikation der jeweils entsprechenden Einträge der beiden Ausgangsmatrizen. Das Hadamard-Produkt ist assoziativ, mit der Matrizenaddition distributiv und kommutativ, falls der zugrunde liegende Ring ebenfalls kommutativ ist.
Das Hadamard-Produkt weist einige interessante Eigenschaften auf. So ist beispielsweise das Hadamard-Produkt zweier positiv semidefiniter Matrizen wieder positiv semidefinit. Weiter lassen sich verschiedene Kenngrößen (wie Norm, Rang oder Spektralradius) des Hadamard-Produkts über das Produkt der jeweiligen Kenngrößen der Ausgangsmatrizen abschätzen. Im Vergleich zum komplexeren Matrizenprodukt ist das Hadamard-Produkt allerdings in der Praxis weniger bedeutsam. Es ist nach den Mathematikern Jacques Hadamard und Issai Schur benannt.

## Definition

Ist $(R,+,\cdot )$ ein Ring und sind $A=(a_{ij})\in R^{m\times n}$ sowie $B=(b_{ij})\in R^{m\times n}$ zwei Matrizen über $R$, dann wird das Hadamard-Produkt von $A$ und $B$ durch
    $A\circ B=(a_{ij}\cdot b_{ij})={\begin{pmatrix}a_{11}\cdot b_{11}&\cdots &a_{1n}\cdot b_{1n}\\\vdots &\ddots &\vdots \\a_{m1}\cdot b_{m1}&\cdots &a_{mn}\cdot b_{mn}\end{pmatrix}}\in R^{m\times n}$
definiert. Das Ergebnis ist damit eine Matrix der gleichen Größe, wobei sich jeder Eintrag durch komponentenweise Multiplikation der Einträge der Matrix $A$ mit den Einträgen der Matrix $B$ berechnet. Als Operatorsymbol wird für das Hadamard-Produkt gelegentlich auch das Zeichen $\odot$ verwendet.

## Beispiel

Das Hadamard-Produkt der beiden reellen (2 × 2)-Matrizen
    $A={\begin{pmatrix}3&2\\0&1\end{pmatrix}}$ und $B={\begin{pmatrix}1&2\\3&1\end{pmatrix}}$
ist gegeben durch
    $A\circ B={\begin{pmatrix}3\cdot 1&2\cdot 2\\0\cdot 3&1\cdot 1\end{pmatrix}}={\begin{pmatrix}3&4\\0&1\end{pmatrix}}$.

## Eigenschaften
### Rechengesetze

Das Hadamard-Produkt erbt im Wesentlichen die Eigenschaften des zugrunde liegenden Rings. Es ist immer assoziativ, das heißt für Matrizen $A,B,C\in R^{m\times n}$ gilt
    $A\circ (B\circ C)=(A\circ B)\circ C$,
und es ist verträglich mit der Multiplikation von Skalaren $a\in R$, also
    $a\,(A\circ B)=(a\,A)\circ B=A\circ (a\,B)$.
Ist der zugrunde liegende Ring kommutativ, so ist auch das Hadamard-Produkt kommutativ, das heißt
    $A\circ B=B\circ A$,
worin es sich von dem normalerweise verwendeten Matrizenprodukt unterscheidet. Mit der komponentenweisen Matrizenaddition $A+B$ gelten auch die Distributivgesetze
    $(A+B)\circ C=A\circ C+B\circ C$ und $A\circ (B+C)=A\circ B+A\circ C$.
Für die transponierte Matrix eines Hadamard-Produkts gilt zudem
    $(A\circ B)^{T}=A^{T}\circ B^{T}$.
Das Hadamard-Produkt zweier symmetrischer Matrizen ist demnach wieder symmetrisch.

### Algebraische Strukturen

Die Menge der Matrizen über einem Ring bildet mit der Matrizenaddition und dem Hadamard-Produkt wieder einen Ring $(R^{m\times n},+,\circ )$. Ist $R$ ein unitärer Ring mit Einselement $1$, dann besitzt auch der Matrizenring ein Einselement, die Einsmatrix $J\in R^{m\times n}$, bei der alle Elemente gleich $1$ sind. Mit der Einsmatrix gilt dann für alle Matrizen $A\in R^{m\times n}$
    $A\circ J=J\circ A=A$.
Ist $R$ ein Körper, dann heißt eine Matrix $A$ Hadamard-invertierbar, wenn alle Einträge von $A$ ungleich dem Nullelement sind. Die Menge der Hadamard-invertierbaren Matrizen bildet dann eine Gruppe $(R^{m\times n},\circ )$, wobei die Einträge der Hadamard-Inversen ${\hat {A}}=({\hat {a}}_{ij})$ von $A$ durch
    ${\hat {a}}_{ij}=a_{ij}^{-1}$
gegeben sind. Im Weiteren werden nur Matrizen über dem Körper $\mathbb {K}$ der reellen oder komplexen Zahlen betrachtet.

### Positive Definitheit

Sind die quadratischen Matrizen $A,B\in \mathbb {K} ^{n\times n}$ positiv semidefinit, so ist auch ihr Hadamard-Produkt $A\circ B$ positiv semidefinit und für die Eigenwerte von $A\circ B$ gilt
    $\left(\min _{1\leq i\leq n}a_{ii}\right)\lambda _{\min }(B)\leq \lambda {_{\min }}(A\circ B)\leq \lambda {_{\max }}(A\circ B)\leq \left(\max _{1\leq i\leq n}a_{ii}\right)\lambda {_{\max }}(B)$.
Wenn $B$ positiv definit ist und $A$ positiv semidefinit mit positiven Hauptdiagonaleinträgen ist, dann ist auch das Hadamard-Produkt $A\circ B$ positiv definit. Diese Aussagen gehen auf Issai Schur zurück, der sie 1911 erstmals formulierte.

### Diagonalmatrizen

Ist $D\in \mathbb {K} ^{n\times n}$ eine Diagonalmatrix, dann gelten für das Hadamard-Produkt und die Matrixmultiplikation folgende Gleichungen:
    $D\cdot (A\circ B)=(D\cdot A)\circ B=A\circ (D\cdot B)$
    $(A\circ B)\cdot D=(A\cdot D)\circ B=A\circ (B\cdot D)$
    $D\cdot (A\circ B)\cdot D=(D\cdot A\cdot D)\circ B=A\circ (D\cdot B\cdot D)=(D\cdot A)\circ (B\cdot D)=(A\cdot D)\circ (D\cdot B)$

### Diagonalisierbare Matrizen

Sei $A\in \mathbb {K} ^{n\times n}$ eine diagonalisierbare Matrix mit dem Diagonalvektor $(a_{11},a_{22},\ldots ,a_{nn})^{T}$, den Eigenwerten $\lambda _{1},\lambda _{2},\ldots ,\lambda _{n}$ und der Diagonalisierung $A=SDS^{-1}$, wobei $D$ eine Diagonalmatrix und $S$ eine reguläre Matrix ist. Dann gilt:
    ${\begin{pmatrix}a_{11}\\a_{22}\\\vdots \\a_{nn}\end{pmatrix}}=(S\circ (S^{-1})^{T}){\begin{pmatrix}\lambda _{1}\\\lambda _{2}\\\vdots \\\lambda _{n}\end{pmatrix}}$

### Singulärwertzerlegung

Sei $A\in \mathbb {K} ^{n\times n}$ eine Matrix mit Singulärwertzerlegung $A=U\Sigma V^{*}$ und den Singulärwerten $\sigma _{1},\sigma _{2},\ldots ,\sigma _{n}$. Dann gilt:
    ${\begin{pmatrix}a_{11}\\a_{22}\\\vdots \\a_{nn}\end{pmatrix}}=(U\circ (V^{*})^{T}){\begin{pmatrix}\sigma _{1}\\\sigma _{2}\\\vdots \\\sigma _{n}\end{pmatrix}}$

## Abschätzungen
### Spektralnorm

Ist die quadratische Matrix $A\in \mathbb {K} ^{n\times n}$ positiv definit, dann gilt für die Spektralnorm eines Hadamard-Produkts
    $\|A\circ B\|_{2}\leq \left(\max _{1\leq i\leq n}a_{ii}\right)\|B\|_{2}$.
Ist $A=X^{H}Y$ das Produkt zweier Matrizen, dann gilt
    $\|A\circ B\|_{2}\leq c(X)c(Y)\|B\|_{2}$,
wobei $c(Z)$ die maximale euklidische Norm der Spaltenvektoren von $Z$ ist. Insgesamt erhält man so die Abschätzung:
    $\|A\circ B\|_{2}\leq \|A\|_{2}\cdot \|B\|_{2}$.
Diese drei Abschätzungen gehen ebenfalls auf Issai Schur zurück.

### Kronecker-Produkt

Das Kronecker-Produkt $A\otimes B$ liefert als Resultat eine große Matrix, die durch Betrachtung aller möglichen Produkte von Einträgen der beiden Ausgangsmatrizen entsteht. Sind die Matrizen $A,B\in \mathbb {K} ^{m\times n}$, dann finden sich die Einträge des Hadamard-Produkts $A\circ B$ genau an den Schnittpunkten der Spalten $1,n+2,2n+3,\ldots ,n^{2}$ mit den Zeilen $1,m+2,2m+3,\ldots ,m^{2}$ des entsprechenden Kronecker-Produkts. Das Hadamard-Produkt ist somit eine Untermatrix des Kronecker-Produkts. Daher gilt für die Spektralnorm eines Hadamard-Produkts
    $\|A\circ B\|_{2}\leq \|A\otimes B\|_{2}=\|A\|_{2}\cdot \|B\|_{2}$
und für den Rang eines Hadamard-Produkts
    $\operatorname {rang} (A\circ B)\leq \operatorname {rang} (A\otimes B)=\operatorname {rang} (A)\cdot \operatorname {rang} (B)$.
Haben zwei Matrizen $A$ und $B$ nur nichtnegative Einträge, dann gilt dies auch für $A\circ B$ und $A\otimes B$. Sind dabei $A$ und $B$ quadratisch, dann gilt für den Spektralradius (den Betrag des betragsmäßig größten Eigenwerts) eines Hadamard-Produkts
    $\rho (A\circ B)\leq \rho (A\otimes B)=\rho (A)\cdot \rho (B)$.

### Induzierte Sesquilinearform

Für Diagonalmatrizen $A,B\in \mathbb {K} ^{n\times n}$ (und nur für diese) stimmen das Hadamard-Produkt und das normale Matrizenprodukt überein:
    $A\circ B=A\cdot B$.
Sind nun $A,B\in \mathbb {K} ^{n\times n}$ beliebig, $x,y\in \mathbb {K} ^{n}$ zwei (Spalten-)Vektoren und $D_{x},D_{y}\in \mathbb {K} ^{n\times n}$ zwei Diagonalmatrizen mit den Einträgen von $x$ und $y$ auf der Diagonalen, dann gilt
    $x^{H}(A\circ B)y=\operatorname {spur} (D_{x}^{H}\cdot A\cdot D_{y}\cdot B^{T})$.
Demnach kann die Sesquilinearform, die durch das Hadamard-Produkt erzeugt wird, als Spur geschrieben werden. Hieraus folgt beispielsweise die Submultiplikativität der Frobeniusnorm bezüglich des Hadamard-Produkts:
    $\|A\circ B\|_{F}\leq \|A\|_{F}\cdot \|B\|_{F}$.

## Programmierung

Das Hadamard-Produkt ist in Programmiersystemen auf unterschiedliche Weise integriert:
* In dem numerischen Softwarepaket Matlab wird das Hadamard-Produkt durch die Symbolkombination .* dargestellt, während * für das Matrizenprodukt steht.
* In der Programmiersprache Fortran wird das Hadamard-Produkt durch den einfachen Multiplikationsoperator * realisiert, während für die Matrizenmultiplikation eine eigene Routine matmul zur Verfügung steht. Diese Benennungen wurden auch für NumPy in Python übernommen.
* In der Statistiksoftware R wird das Hadamard-Produkt durch * dargestellt, während die Matrizenmultiplikation durch %*% realisiert wird.
* In Shader-Programmiersprachen wie GLSL berechnet der Operator * zwischen zwei Vektoren das Hadamard-Produkt von eben diesen. Ebenso berechnet der Operator / die Hadamard-Division zwischen zwei Vektoren. Allerdings dient der Operator * auch dazu, um das Matrix-Matrix- und das Matrix-Vektor-Produkt zu berechnen.

## Analog: Elementweise Division

In derselben Weise kann man auch einen Operator für die komponentenweise bzw. elementweise Division definieren:
$A\oslash B=(a_{ij}/b_{ij})={\begin{pmatrix}a_{11}/b_{11}&\cdots &a_{1n}/b_{1n}\\\vdots &\ddots &\vdots \\a_{m1}/b_{m1}&\cdots &a_{mn}/b_{mn}\end{pmatrix}}\in R^{m\times n}$, mit $b_{ij}\neq 0$