Mnożenie macierzy

Geometria i algebra odwzorowań liniowych, wektorów i macierzy

Mnożenie macierzy może wydawać się skomplikowane, ale jego znaczenie jest proste: AB to złożenie dwóch transformacji. Zastosuj najpierw B, a potem A. Wynik to jedna macierz, która realizuje oba te przekształcenia w jednym kroku.

Aby policzyć element macierzy AB, weź wiersz macierzy A i pomnóż przez kolumnę macierzy B. Element na pozycji (i, j) to iloczyn skalarny i-tego wiersza z macierzy A oraz j-tej kolumny z macierzy B. To cały algorytm: iloczyny skalarne ułożone w siatkę.

Wyobraź sobie dwie maszyny na linii produkcyjnej. Pierwsza maszyna B zmienia kształt części, a następnie druga maszyna A ponownie go zmienia. Iloczyn AB to pojedyncza połączona maszyna, która wykonuje oba kroki za jednym przejściem — a kolejność na linii jest stała, ponieważ część musi przejść przez B przed A.

Gdzie to występuje w MLSkładanie warstw to właśnie mnożenie macierzy. Dwuczęściowy stos liniowy W₂(W₁x) jest równy (W₂W₁)x; warstwy zlewają się w jedno odwzorowanie. W mechanizmie uwagi wagi (scores) pochodzą z iloczynu QKᵀ, a wyjście z pomnożenia ich przez V. Każde przejście w przód (forward pass) to łańcuch takich iloczynów, a reguła wymiarów to właśnie to, do czego obliczania stworzono układy GPU.
▶ Mnożenie macierzy
← Macierze jako odwzorowania linioweTranspozycja →