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
[Bearbeiten | Quelltext bearbeiten]Ist ein Ring und sind sowie zwei Matrizen über , dann wird das Hadamard-Produkt von und durch
definiert. Das Ergebnis ist damit eine Matrix der gleichen Größe, wobei sich jeder Eintrag durch komponentenweise Multiplikation der Einträge der Matrix mit den Einträgen der Matrix berechnet.[1] Als Operatorsymbol wird für das Hadamard-Produkt gelegentlich auch das Zeichen verwendet.[2]
Beispiel
[Bearbeiten | Quelltext bearbeiten]Das Hadamard-Produkt der beiden reellen (2 × 2)-Matrizen
- und
ist gegeben durch
- .
Eigenschaften
[Bearbeiten | Quelltext bearbeiten]Rechengesetze
[Bearbeiten | Quelltext bearbeiten]Das Hadamard-Produkt erbt im Wesentlichen die Eigenschaften des zugrunde liegenden Rings.[1] Es ist immer assoziativ, das heißt für Matrizen gilt
- ,
und es ist verträglich mit der Multiplikation von Skalaren , also
- .
Ist der zugrunde liegende Ring kommutativ, so ist auch das Hadamard-Produkt kommutativ, das heißt
- ,
worin es sich von dem normalerweise verwendeten Matrizenprodukt unterscheidet. Mit der komponentenweisen Matrizenaddition gelten auch die Distributivgesetze
- und .
Für die transponierte Matrix eines Hadamard-Produkts gilt zudem
- .
Das Hadamard-Produkt zweier symmetrischer Matrizen ist demnach wieder symmetrisch.
Algebraische Strukturen
[Bearbeiten | Quelltext bearbeiten]Die Menge der Matrizen über einem Ring bildet mit der Matrizenaddition und dem Hadamard-Produkt wieder einen Ring . Ist ein unitärer Ring mit Einselement , dann besitzt auch der Matrizenring ein Einselement, die Einsmatrix , bei der alle Elemente gleich sind. Mit der Einsmatrix gilt dann für alle Matrizen
- .
Ist ein Körper, dann heißt eine Matrix Hadamard-invertierbar, wenn alle Einträge von ungleich dem Nullelement sind.[1] Die Menge der Hadamard-invertierbaren Matrizen bildet dann eine Gruppe , wobei die Einträge der Hadamard-Inversen von durch
gegeben sind. Im Weiteren werden nur Matrizen über dem Körper der reellen oder komplexen Zahlen betrachtet.
Positive Definitheit
[Bearbeiten | Quelltext bearbeiten]Sind die quadratischen Matrizen positiv semidefinit, so ist auch ihr Hadamard-Produkt positiv semidefinit und für die Eigenwerte von gilt
- .
Wenn positiv definit ist und positiv semidefinit mit positiven Hauptdiagonaleinträgen ist, dann ist auch das Hadamard-Produkt positiv definit. Diese Aussagen gehen auf Issai Schur zurück, der sie 1911 erstmals formulierte.[3]
Diagonalmatrizen
[Bearbeiten | Quelltext bearbeiten]Ist eine Diagonalmatrix, dann gelten für das Hadamard-Produkt und die Matrixmultiplikation folgende Gleichungen:[4]
Diagonalisierbare Matrizen
[Bearbeiten | Quelltext bearbeiten]Sei eine diagonalisierbare Matrix mit dem Diagonalvektor , den Eigenwerten und der Diagonalisierung , wobei eine Diagonalmatrix und eine reguläre Matrix ist. Dann gilt:[5]
Singulärwertzerlegung
[Bearbeiten | Quelltext bearbeiten]Sei eine Matrix mit Singulärwertzerlegung und den Singulärwerten . Dann gilt:[5]
Abschätzungen
[Bearbeiten | Quelltext bearbeiten]Spektralnorm
[Bearbeiten | Quelltext bearbeiten]Ist die quadratische Matrix positiv definit, dann gilt für die Spektralnorm eines Hadamard-Produkts
- .
Ist das Produkt zweier Matrizen, dann gilt
- ,
wobei die maximale euklidische Norm der Spaltenvektoren von ist. Insgesamt erhält man so die Abschätzung:
- .
Diese drei Abschätzungen gehen ebenfalls auf Issai Schur zurück.[3]
Kronecker-Produkt
[Bearbeiten | Quelltext bearbeiten]Das Kronecker-Produkt liefert als Resultat eine große Matrix, die durch Betrachtung aller möglichen Produkte von Einträgen der beiden Ausgangsmatrizen entsteht. Sind die Matrizen , dann finden sich die Einträge des Hadamard-Produkts genau an den Schnittpunkten der Spalten mit den Zeilen des entsprechenden Kronecker-Produkts. Das Hadamard-Produkt ist somit eine Untermatrix des Kronecker-Produkts. Daher gilt für die Spektralnorm eines Hadamard-Produkts[6]
und für den Rang eines Hadamard-Produkts[6]
- .
Haben zwei Matrizen und nur nichtnegative Einträge, dann gilt dies auch für und . Sind dabei und quadratisch, dann gilt für den Spektralradius (den Betrag des betragsmäßig größten Eigenwerts) eines Hadamard-Produkts[6]
- .
Induzierte Sesquilinearform
[Bearbeiten | Quelltext bearbeiten]Für Diagonalmatrizen (und nur für diese) stimmen das Hadamard-Produkt und das normale Matrizenprodukt überein:
- .
Sind nun beliebig, zwei (Spalten-)Vektoren und zwei Diagonalmatrizen mit den Einträgen von und auf der Diagonalen, dann gilt[7]
- .
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:[7]
- .
Programmierung
[Bearbeiten | Quelltext bearbeiten]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.[8] - In der Programmiersprache Fortran wird das Hadamard-Produkt durch den einfachen Multiplikationsoperator
*
realisiert, während für die Matrizenmultiplikation eine eigene Routinematmul
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.[9]
Analog: Elementweise Division
[Bearbeiten | Quelltext bearbeiten]In derselben Weise kann man auch einen Operator für die komponentenweise bzw. elementweise Division definieren: [10][11]
, mit
Literatur
[Bearbeiten | Quelltext bearbeiten]- Roger A. Horn: The Hadamard Product. In: Charles R. Johnson (Hrsg.): Matrix Theory and Applications (= Proceedings of Symposia in Applied Mathematics. Band 40). American Mathematical Society, Providence RI 1990, ISBN 0-8218-0154-6, S. 87–170.
- Roger A. Horn, Charles R. Johnson: Topics in Matrix Analysis. 1st paperback edition. Cambridge University Press, Cambridge u. a. 1994, ISBN 0-521-46713-6, S. 298–381.
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ a b c Horn: The Hadamard Product. In: Johnson (Hrsg.): Matrix Theory and Applications. 1990, S. 87–170, hier S. 88.
- ↑ Christian Voigt, Jürgen Adamy: Formelsammlung der Matrizenrechnung. Oldenbourg, München u. a. 2007, ISBN 978-3-486-58350-2, S. 13.
- ↑ a b Horn: The Hadamard Product. In: Johnson (Hrsg.): Matrix Theory and Applications. 1990, S. 87–170, hier S. 95.
- ↑ George P. H. Styan, McGill University: Hadamard Products and Multivariate Statistical Analysis
- ↑ a b Elizabeth Million, University of Puget Sound: The Hadamard Product
- ↑ a b c Horn: The Hadamard Product. In: Johnson (Hrsg.): Matrix Theory and Applications. 1990, S. 87–170, hier S. 96–100.
- ↑ a b Horn: The Hadamard Product. In: Johnson (Hrsg.): Matrix Theory and Applications. 1990, S. 87–170, hier S. 100–104.
- ↑ Christoph Überhuber, Stefan Katzenbeisser, Dirk Praetorius: MATLAB 7. Eine Einführung. Springer, Wien u. a. 2005, ISBN 3-211-21137-3, S. 81.
- ↑ John Kessenich, Dave Baldwin, Randi Rost: The OpenGL Shading Language, Version 4.60.8. In: Khronos.org. Khronos Group, 14. August 2023, abgerufen am 29. November 2024 (englisch).
- ↑ Gordon Wetzstein, Douglas Lanman, Matthew Hirsch, Ramesh Raskar: Supplementary Material: Tensor Displays: Compressive Light Field Synthesis using Multilayer Displays with Directional Backlighting. In: MIT Media Lab. , Download als ZIP-Datei, abgerufen am 5. Dezember 2024
- ↑ Boguslaw Cyganek: Object Detection and Recognition in Digital Images: Theory and Practice. John Wiley & Sons, 2013, ISBN 978-1-118-61836-3, S. 109 (google.com).