Mátrixszorzás

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2022. augusztus 10-én felülvizsgált verziótól ; az ellenőrzések 2 szerkesztést igényelnek .

A mátrixszorzás a mátrixok egyik alapvető művelete . A szorzási művelet eredményeként kapott mátrixot mátrixszorzatnak nevezzük . Az új mátrix elemeit a régi mátrixok elemeiből kapjuk az alábbiakban bemutatott szabályok szerint .

A és mátrixok szorozhatók, ha kompatibilisek abban az értelemben, hogy a mátrix oszlopainak száma megegyezik a sorok számával .

A mátrixoknak sok olyan algebrai szorzási tulajdonságuk van, mint a közönséges számoknak, kivéve a kommutativitást .

Négyzetes mátrixoknál a szorzás mellett bevezethető a mátrix hatványra emelésének művelete és az inverz mátrix .

Míg a mátrixokat különösen a matematikai terek transzformációinak leírására használják ( forgás , tükrözés , nyújtás és mások), a mátrixok szorzata a transzformációk összetételét írja le .

Definíció

Legyen két téglalap alakú mátrix és méret , és legyen megadva :

Ezután a mátrix a méretekkel :

ahol:

terméküknek nevezik .

Két mátrix szorzásának művelete csak akkor valósítható meg, ha az első tényező oszlopainak száma megegyezik a második sorainak számával; ebben az esetben a mátrixokat konzisztensnek mondjuk . Különösen a szorzás mindig megvalósítható, ha mindkét tényező azonos sorrendű négyzetmátrix .

Így egy mű létezése egyáltalán nem követi a mű létét.

Illusztráció

Az AB mátrixszorzat az A mátrix sorvektorai és a B mátrix oszlopvektorai belső szorzatainak összes lehetséges kombinációjából áll . Az AB mátrix i, j indexű eleme az A mátrix i-edik sorvektorának és a B mátrix j - edik oszlopvektorának skaláris szorzata .

A jobb oldali ábra két A és B mátrix szorzatának kiszámítását mutatja be, megmutatja, hogy a mátrixszorzat egyes metszéspontjai hogyan felelnek meg az A mátrix sorainak és a B mátrix oszlopainak . A kapott mátrix mérete mindig a lehető legnagyobb, vagyis az A mátrix minden sorához és a B mátrix oszlopához mindig van egy megfelelő metszéspont a mátrix szorzatában.

A körökkel jelölt metszéspontokban a következő értékek lesznek:

Általában a mátrixszorzat nem kommutatív művelet. Például:

A fenti mátrixok szorzatának elemét a következőképpen számítjuk ki

A mátrixjelölésben az első koordináta egy sort, a második koordináta egy oszlopot jelöl; ez a sorrend az indexelésnél és a méretezésnél is használatos. Az eredményül kapott mátrix sorának és oszlopának metszéspontjában lévő elem az első mátrix i-edik sorának és a második mátrix i-edik oszlopának skaláris szorzata . Ez megmagyarázza, hogy a szorzott mátrixok szélességének és magasságának meg kell egyeznie: ellenkező esetben a pontszorzat definiálatlan.

Vita

A mátrixszorzás leírt szabályának okait a vektor mátrixszal való szorzását tekintve a legkönnyebb átlátni .

Ez utóbbit természetesen az a tény vezeti be, hogy a vektorok bázis szerinti felbontásakor az A lineáris operátor (bármely) művelete megadja a v' = A v vektor komponenseinek kifejezését :

Vagyis a lineáris operátort egy mátrix, a vektorokat oszlopvektorokkal, az operátor működését a vektorral pedig a bal oldali oszlopvektor operátormátrixszal való mátrixszorzásával ábrázoljuk (ez a mátrixszorzás speciális esete, ha az egyik mátrix, az oszlopvektor mérete ).

(Ugyanúgy a koordináták megváltoztatásakor bármilyen új bázisra való átmenetet egy teljesen hasonló kifejezés reprezentálja, csak ebben az esetben már nem az új vektor komponensei a régi bázisban, hanem a régi vektor komponensei az új bázisban ebben az esetben az új bázisra való átmenet mátrix  elemei ).

Ha figyelembe vesszük a két operátor vektorán végrehajtott szekvenciális műveletet: először A , majd B (vagy az A bázis transzformációját , majd a B bázis transzformációját ), képletünket kétszer alkalmazva kapjuk:

ahonnan látható, hogy az A és B lineáris operátorok működésének BA összetétele (vagy a bázistranszformációk hasonló összetétele) megfelel egy mátrixnak, amelyet a megfelelő mátrixok szorzatának szabálya alapján számítanak ki:

Az így definiált mátrixok szorzata meglehetősen természetesnek és nyilvánvalóan hasznosnak bizonyul (egyszerű és univerzális módot biztosít tetszőleges számú lineáris transzformáció összetételének kiszámítására).

Tulajdonságok

Asszociatív tulajdonság , asszociativitás :

Elosztó tulajdonság , eloszlás az összeadás tekintetében :

.

Egy mátrix és egy megfelelő sorrendű azonosságmátrix szorzata egyenlő magával a mátrixszal:

Egy mátrix és egy megfelelő méretű nulla mátrix szorzata egyenlő a nulla mátrixszal:

Ha  a és azonos sorrendű négyzetmátrixok , akkor a mátrixszorzatnak számos egyéb tulajdonsága is van.

A mátrixszorzás általában nem kommutatív :

Ha , akkor a és mátrixok azt mondják, hogy ingáznak egymással.

A legegyszerűbb példák ingázási mátrixokra:

A szorzat determinánsa és nyoma nem függ a mátrixszorzás sorrendjétől:

Inverz mátrix

Egy négyzetes mátrixot nem szingulárisnak ( nem szingulárisnak ) nevezünk , ha egyedi inverz mátrixa van, és teljesül a következő feltétel:

Egyébként a mátrixot speciálisnak ( degeneráltnak ) nevezik .

Egy sorrendi mátrix akkor és csak akkor nem degenerált, ha ebben az esetben van egy ugyanolyan rendű négyzetmátrix

ahol  az elem algebrai komplementere a determinánsban

Gyors mátrixszorzó algoritmusok

A mátrixok szorzatának kiszámításának bonyolultsága definíció szerint , de vannak hatékonyabb algoritmusok [1] , amelyeket nagy mátrixokhoz használnak. A nagy mátrixok szorzási sebességének korlátozása, valamint a nagy mátrixok szorzására szolgáló leggyorsabb és legstabilabb gyakorlati algoritmusok megalkotásának kérdése továbbra is a lineáris algebra egyik megoldatlan problémája .

Az első algoritmust a nagy mátrixok gyors szorzására Volker Strassen [2] fejlesztette ki 1969-ben. Az algoritmus a mátrixok 2X2 blokkokra való rekurzív felosztásán alapul . Strassen bebizonyította, hogy 2X2 mátrix nem kommutatív módon szorozható hét szorzással, így a rekurzió minden lépésében hét szorzás történik nyolc helyett. Ennek eredményeképpen ennek az algoritmusnak aszimptotikus összetettsége . Ennek a módszernek a hátránya a standard algoritmushoz képest bonyolultabb programozás, rossz numerikus stabilitás és nagyobb memóriahasználat. Számos Strassen-módszeren alapuló algoritmust fejlesztettek ki, amelyek javítják a numerikus stabilitást, az állandó sebességet és egyéb jellemzőket. Ennek ellenére egyszerűsége miatt a Strassen-algoritmus továbbra is az egyik gyakorlati algoritmus a nagy mátrixok szorzására. Strassen a következő Strassen-sejtést is felvetette : tetszőlegesen kicsire létezik egy algoritmus, amely kellően nagy n természetes számok esetén garantálja két méretű mátrix megszorzását műveletekben . A jövőben a nagy mátrixok szorzási sebességére vonatkozó becsléseket többszörösen javították. Ezek az algoritmusok azonban elméletiek voltak, többnyire hozzávetőlegesek. A közelítő szorzási algoritmusok instabilitása miatt a gyakorlatban jelenleg nem használatosak. 1978-ban Pan [3] saját mátrixszorzási módszerét javasolta, melynek összetettsége Θ(n 2,78041 ) volt . 1979-ben olasz tudósok egy csoportja Bini [4] vezetésével algoritmust dolgozott ki tenzoros mátrixszorzáshoz. Bonyolultsága Θ(n 2,7799 ) . 1981-ben Schönhage [5] bevezetett egy módszert, amely Θ(n 2,695 ) sebességgel működik . A becslést a részleges mátrixszorzásnak nevezett megközelítéssel kapjuk meg . Később sikerült megkapnia a Θ(n 2,6087 ) becslést . Ekkor Schönhage megkapta a Θ(n 2,548 ) komplexitásbecslést a közvetlen összegek módszere alapján . Romani képes volt leminősíteni Θ(n 2.5166 ) értékre , míg Pan képes volt visszaminősíteni Θ(n 2.5161 ) értékre . 1990-ben Coppersmith és Winograd [6] közzétett egy algoritmust, amely Williams Wasilewska [7] 2011-ben módosítottaként O(n 2,3727 ) sebességgel szorozza a mátrixokat . Ez az algoritmus Strassen algoritmusához hasonló ötleteket használ. A mai napig a Coppersmith-Winograd algoritmus módosításai aszimptotikusan a leggyorsabbak. De az a tény, hogy a kapott fejlesztések elhanyagolhatóak, lehetővé teszi, hogy az algoritmusok sebességének aszimptotikus becslésében a "Coppersmith-Winograd akadály" létezéséről beszéljünk. A Coppersmith-Winograd algoritmus csak csillagászati ​​méretű mátrixokon hatékony, a gyakorlatban nem alkalmazható. 2003-ban Koch és munkatársai a Strassen és Coppersmith-Winograd algoritmusokat tanulmányaikban [8] a csoportelmélet összefüggésében vizsgálták . Megmutatták, hogy Strassen sejtése érvényes (azaz a minimális komplexitás korlátos bármely ), ha a csoportelméleti hipotézisek [9] egyike teljesül .

Mátrixok hatványai

A négyzetes mátrixok önmagukban sokszorosára szorozhatók, ugyanúgy, mint a közönséges számok, mivel azonos számú sorból és oszlopból állnak. Az ilyen szekvenciális szorzást egy mátrix hatványra emelésének nevezhetjük  - ez a több mátrix szokásos szorzásának speciális esete lesz. A téglalap alakú mátrixok sorai és oszlopai eltérőek, ezért soha nem emelhetők hatványra. A hatványra emelt n × n A mátrixot a képlet határozza meg

és a következő tulajdonságokkal rendelkezik ( λ  valamilyen skalár):

Nulla fokozat:

ahol E az azonosságmátrix . Ez analóg azzal a ténnyel, hogy bármely szám nulla hatványa egyenlő eggyel.

Szorzás skalárral:

Döntő:

A mátrix fokszámának kiszámításának legegyszerűbb módja az A mátrix k - szoros szorzása az előző szorzás eredményével, az identitásmátrixból kiindulva, ahogy ezt gyakran teszik skalároknál. A diagonalizálható mátrixok esetében van egy jobb módszer, amely az A mátrix spektrális dekompozícióján alapul . Egy másik módszer, amely a Hamilton-Cayley-tételen alapul , egy hatékonyabb kifejezést alkot Ak -ra , amelyben a skalárt a kívánt teljesítményre emeljük , és nem a teljes mátrixot .

Az átlós mátrixok speciális esetet alkotnak . Mivel az átlós mátrixok szorzatát a megfelelő átlóelemek szorzatára redukáljuk, így az A átlós mátrix k - edik hatványa a szükséges hatványra emelt elemekből áll:

Így nem nehéz egy átlós mátrixot hatványra emelni. Egy tetszőleges (nem feltétlenül átlós) mátrix hatványra emelésekor gyakran hasznos először a diagonalizálható mátrixok tulajdonságait használni .

A mátrixok mátrixszorzásával és hatványozásával más műveletek is definiálhatók a mátrixokon. Például a mátrix kitevője definiálható hatványsor formájában , a mátrix logaritmus  a mátrix kitevőjének inverzeként , és így tovább.

Lásd még

Irodalom

Jegyzetek

  1. Kibernetikus gyűjtemény. Új sorozat. Probléma. 25. Szo. cikkek 1983-1985: Per. angolról. - M .: Mir, 1988 - V.B. Aleksev. A mátrixszorzás összetettsége. Felülvizsgálat.
  2. Strassen V. A Gauss-elimináció nem optimális  // Szám . Math / F. Brezzi - Springer Science + Business Media , 1969. - Vol. 13, Iss. 4. - P. 354-356. — ISSN 0029-599X ; 0945-3245 - doi:10.1007/BF02165411
  3. Pan V. Ya, Strassen algoritmusa nem optimális – aggregáló egyesítés és törlés trilineáris technikája a mátrixműveletek gyors algoritmusainak felépítéséhez. — Proc. 19th Annual Symposium on Foundations of Computer Science, Ann Arbor, Mich., 1978
  4. Bini D., Capovani M., Lotti G., Romani F. — komplexitás közelítő mátrixszorzáshoz. - tájékoztat. folyamat. Lett., 1979
  5. Schonhage A. Részleges és teljes mátrixszorzás. – SIAM J. Comput., 1981
  6. Don Coppersmith és Shmuel Winograd. Mátrixszorzás aritmetikai progresszióval. Journal of Symbolic Computation , 9:251-280, 1990.
  7. Williams, Virginia (2011), Multiplying matices in O(n 2,3727 idő Archivált : 2014. október 26. a Wayback Machine -nél
  8. Csoportelméleti algoritmusok mátrixszorzáshoz . Letöltve: 2009. szeptember 26. Az eredetiből archiválva : 2011. augusztus 6..
  9. Egy optimális mátrixszorzási algoritmus felé (lefelé irányuló kapcsolat) . Letöltve: 2009. szeptember 26. Az eredetiből archiválva : 2010. március 31..