Shumëzimi i Matricave
Rrjetet nervore shumëzojnë numra
Shumëzimi i matricave lejon transformimin e madh të informacionit brenda rrjetit, në një hap të vetëm matematikor. Kliko një qelizë rezultati për të parë saktësisht cilën rresht dhe kolonë u kombinuan.
Ngjyrë qelibar = rreshti nga A që po përdoret. Ngjyrë çian = kolona nga B që po përdoret. Çdo qelizë rezultati është prodhimi skalar (dot product) i atij rreshti me atë kolonë.
Në detaje
Një shtresë e një rrjete nervore ka shumë neurone, dhe secili ka nevojë për një shumë produktesh. Shumëzimi i matricave i llogarit të gjitha njëherësh.
Nëse A ka m rreshta dhe n kolona, dhe B ka n rreshta dhe p kolona, atëherë C = AB ka m rreshta dhe p kolona. Çdo hyrje C[i][j] është prodhimi pikë (dot product) i rreshtit i të A me kolonën j të B: shumëzohen hyrjet përkatëse dhe rezultatet mblidhen. Madhësitë "e brendshme" (n) duhet të përputhen.
Në një shtresë nervore, vektori hyrës x shumëzohet me një matricë peshash W, shtohet një vektor bias-esh dhe rezultati kalon nëpër një funksion aktivizimi: y = f(xW + b).
Dy arsye pse ka rëndësi:
- Shpejtësia. Procesorët grafikë (GPU) janë ndërtuar të kryejnë numra të mëdhenj të këtyre shumëzimeve paralelisht. Pjesa më e madhe e llogaritjes në një transformer është shumëzim matricash.
- Kuptimi i prodhimit pikë. Një prodhim pikë është më i madh kur dy vektorë shënjojnë në drejtim të ngjashëm. Kjo ide është në zemër të attention-it (seksionet 09 dhe 10).
Vër re që rendi ka rëndësi: në përgjithësi AB nuk është e njëjta gjë me BA.
Thjeshtim: matricat këtu janë shumë të vogla. Në modelet reale kanë mijëra rreshta dhe kolona.
