Maybaygiare.org

Blog Network

alapvető Lineáris Algebra mély tanulás

  • Bevezetés
  • matematikai objektumok
  • számítási szabályok
  • mátrix szorzás tulajdonságok
  • inverz és átültetni
  • összefoglaló
  • források

Bevezetés

Lineáris Algebra egy folyamatos formája a matematika és alkalmazzák az egész tudomány és a mérnöki, mert lehetővé teszi, hogy a modell a természeti jelenségek és hogy hatékonyan kiszámítsuk őket. Mivel ez a folyamatos és nem diszkrét matematika egyik formája, sok számítógépes tudósnak nincs sok tapasztalata ezzel kapcsolatban. A lineáris Algebra központi szerepet játszik a matematika szinte minden területén, mint például a geometria és a funkcionális elemzés. Fogalmai döntő előfeltételei a gépi tanulás mögött meghúzódó elmélet megértésének, különösen, ha mély tanulási algoritmusokkal dolgozik. A gépi tanulás megkezdése előtt nem kell megértenie a lineáris algebrát, de egy bizonyos ponton érdemes jobban megérteni, hogy a különböző gépi tanulási algoritmusok valóban hogyan működnek a motorháztető alatt.
Ez segít abban, hogy jobb döntéseket hozzon a gépi tanulási rendszer fejlesztése során. Tehát, ha valóban profi akar lenni ezen a területen, akkor el kell sajátítania a lineáris Algebra azon részeit, amelyek fontosak a gépi tanuláshoz. A lineáris algebrában az adatokat lineáris egyenletek képviselik, amelyeket mátrixok és vektorok formájában mutatnak be. Ezért többnyire mátrixokkal és vektorokkal foglalkozik, nem pedig skalárokkal (ezeket a kifejezéseket a következő szakaszban tárgyaljuk). Ha rendelkezésére állnak a megfelelő könyvtárak, mint például a Numpy, akkor néhány kódsorral nagyon könnyen kiszámíthatja a komplex mátrixszorzást. (Megjegyzés: ez a blogbejegyzés figyelmen kívül hagyja a lineáris Algebra fogalmait, amelyek nem fontosak a gépi tanulás szempontjából.)

Matematikai Objektumok

Skalár

Egy skalár egyszerűen egy számot. Például 24.

Vektor

A vektor a számok rendezett tömbje, amely lehet sorban vagy oszlopban. A vektornak csak egyetlen indexe van, amely egy adott értékre mutathat a vektoron belül. Például a V2 a vektoron belüli második értékre utal, amely a fenti ábrán -8.

mátrix

a mátrix egy rendezett 2D számtömb, amelynek két indexe van. Az első a sorra, a második az oszlopra mutat. Például az M23 a második sor és a harmadik oszlop értékére utal, amely a fenti sárga ábrán 8. A mátrix több sorból és oszlopból állhat. Vegye figyelembe, hogy a vektor szintén mátrix, de csak egy sorral vagy egy oszloppal rendelkezik.

a sárga ábrán látható példában szereplő mátrix szintén 2-x 3 dimenziós mátrix (sorok x oszlopok). Az alábbiakban egy másik példát láthat egy mátrixra, annak jelölésével együtt:

>

tenzor

a tenzort úgy gondolhatja, mint egy szabályos rácson elrendezett számtömböt, változó tengelyszámmal. A Tenzornak három indexe van, ahol az első a sorra, a második az oszlopra, a harmadik pedig a tengelyre mutat. Például a T232 a második sorra, a harmadik oszlopra és a második tengelyre mutat. Ez az alábbi ábra jobb Tenzorának 0 értékére utal:

a tenzor a fenti fogalmak legáltalánosabb kifejezése, mivel a tenzor többdimenziós tömb, és lehet vektor és mátrix, attól függően, hogy hány indexe van. Például egy elsőrendű tenzor Vektor lenne (1 index). A másodrendű tenzor egy mátrix (2 index), a harmadrendű Tenzorokat (3 index) és a magasabbakat magasabb rendű Tenzoroknak (3 vagy több index) nevezzük.

mátrix-skaláris műveletek

ha szorozol, osztasz, kivonszol vagy hozzáadsz egy Skalárt egy mátrixhoz, akkor ezt a mátrix minden elemével megteszed. Az alábbi kép tökéletesen illusztrálja ezt a szorzáshoz:

“2044423508” >

>

mátrix-vektor szorzás

a mátrix vektorral való szorzása úgy tekinthető, hogy a mátrix minden sorát megszorozzuk a vektor oszlopával. A kimenet olyan vektor lesz, amelynek ugyanannyi sora van, mint a mátrixnak. Az alábbi kép azt mutatja, hogyan is működik ez:

ahhoz, Hogy jobban megértsük a koncepció, mi megy át a számítás a második kép. Ahhoz, hogy megkapjuk a kapott Vektor (16) első értékét, vesszük annak a vektornak a számát, amelyet meg akarunk szorozni a Mátrixszal (1 és 5), és megszorozzuk őket a mátrix első sorának (1 és 3) számaival. Ez így néz ki:

1*1 + 3*5 = 16

ugyanezt tesszük a Mátrix második sorában lévő értékekre is:

4*1 + 0*5 = 4

és ismét a Mátrix harmadik sorában:

2*1 + 1*5 = 7

itt van egy másik példa:

And here is a kind of cheat sheet:

Matrix-Matrix Addition and Subtraction

Matrix-Matrix Addition and Subtraction is fairly easy and straightforward. A követelmény az, hogy a mátrixok azonos méretűek legyenek, és az eredmény egy mátrix, amelynek szintén azonos dimenziói vannak. Csak összeadja vagy kivonja az első mátrix minden értékét a megfelelő értékkel a második mátrixban. Lásd alább:

mátrix-mátrix szorzás

két mátrix szorzása sem olyan nehéz, ha tudod, hogyan kell szorozni egy mátrixot egy vektorral. Vegye figyelembe, hogy a mátrixokat csak akkor lehet szorozni, ha az első Mátrix oszlopainak száma megegyezik a második mátrix sorainak számával. Az eredmény egy mátrix lesz, amelynek azonos számú sora van, mint az első mátrixnak, és ugyanannyi oszlopa van, mint a második mátrixnak. Ez a következőképpen működik:

egyszerűen a második mátrixot oszlopvektorokra osztjuk, és az első mátrixot külön-külön megszorozzuk ezen Vektorok mindegyikével. Ezután az eredményeket egy új Mátrixba helyezi (anélkül, hogy összeadná őket!). Az alábbi kép ezt lépésről lépésre magyarázza:

And here is again some kind of cheat sheet:

Matrix Multiplication Properties

Matrix Multiplication has several properties that allow us to bundle a lot of computation into one Matrix multiplication. We will discuss them one by one below. Kezdjük azzal, hogy ezeket a fogalmakat Skalárokkal, majd mátrixokkal magyarázzuk, mert ez jobban megérti a folyamatot.

nem kommutatív

skaláris szorzás kommutatív, de mátrix szorzás nem. Ez azt jelenti, hogy amikor a Skalárokat megszorozzuk, a 7*3 megegyezik a 3*7-tel. De amikor mátrixokat szorozunk egymással, A*B nem ugyanaz, mint B*A.

asszociatív

skalár és mátrix szorzás egyaránt asszociatív. Ez azt jelenti, hogy a skaláris szorzás 3(5*3) ugyanaz, mint a (3*5)3, és hogy a mátrix szorzás a(B*C) ugyanaz, mint (A*B)C.

disztributív

a skalár és a mátrix szorzás szintén disztributív. Ez azt jelenti, hogy
3 (5 + 3) ugyanaz, mint 3*5 + 3*3 és hogy A(B+C) ugyanaz, mint a*B + A*C.

Identitásmátrix

az Identitásmátrix egy speciális mátrix, de először meg kell határoznunk, hogy mi az identitás. Az 1-es szám egy identitás, mert minden, amit 1-gyel szorozol, egyenlő önmagával. Ezért minden mátrix, amelyet Megszorozunk egy Identitásmátrixmal, egyenlő önmagával. Például az a Mátrix szorozva az Identitásmátrixával egyenlő a-Val.

észlelhetünk egy Azonosságmátrixot azzal, hogy az átlói mentén is vannak, és minden más érték nulla. Ez egy “négyzet alakú mátrix” is, ami azt jelenti, hogy a Sorok száma megegyezik az oszlopok számával.

korábban megbeszéltük, hogy a mátrix szorzás nem kommutatív, de van egy kivétel, nevezetesen, ha egy mátrixot megszorozunk egy identitás mátrixszal. Ezért a következő egyenlet igaz: A*I = I*a = A

inverz és Transzponálás

a Mátrix inverz és a Mátrix transzponálás két speciális mátrix tulajdonság. Ismét azzal kezdjük, hogy megbeszéljük, hogyan kapcsolódnak ezek a tulajdonságok a valós számokhoz, majd hogyan kapcsolódnak a mátrixokhoz.

inverz

először is, mi az inverz? Az inverzével szorzott szám egyenlő 1-vel. Vegye figyelembe, hogy a 0 kivételével minden számnak inverzje van. Ha megszorozunk egy mátrixot az inverzével, az eredmény az Identitásmátrix. Az alábbi példa megmutatja, hogy néz ki a skalárok inverze:

de nem minden mátrixnak van inverze. Kiszámíthatja a mátrix inverzét, ha ez egy” négyzet Mátrix”, és ha van inverz. Annak megvitatása, hogy mely Mátrixoknak van inverzük, sajnos nem tartozik e bejegyzés hatálya alá.

miért van szükségünk inverzre? Mert nem oszthatjuk meg a mátrixokat. A Mátrixszal való osztásnak nincs fogalma, de a mátrixot inverzsel megszorozhatjuk, ami lényegében ugyanazt eredményezi.

az alábbi kép egy Mátrixot mutat, szorozva annak inverzével, ami 2×2-es identitásmátrixot eredményez.

könnyen kiszámíthatja a mátrix inverzét (ha van ilyen) a numpy használatával. Itt található a dokumentáció linkje: https://docs.scipy.org/doc/numpy-1.14.0/reference/generated/numpy.linalg.inv.html.

átültetni

és végül megvitatjuk a Mátrix átültetni tulajdonság. Ez alapvetően egy mátrix tükörképe, egy 45 fokos tengely mentén. Meglehetősen egyszerű a Mátrix átültetése. Első oszlopa a Mátrix Transzponálásának első sora, a második oszlop pedig a Mátrix Transzponálásának második sora. Az m * N mátrix n * m Mátrixgá alakul. Ezenkívül az Aij eleme megegyezik az Aji (transpose) elemmel. Az alábbi kép ezt szemlélteti:

összefoglaló

ebben a bejegyzésben megismerte a lineáris algebra matematikai objektumait, amelyeket a gépi tanulásban használnak. Megtanultad, hogyan kell szorozni, osztani, összeadni és kivonni ezeket a matematikai objektumokat. Továbbá megismerte a mátrixok legfontosabb tulajdonságait, és azt, hogy miért teszik lehetővé számunkra a hatékonyabb számításokat. Ezen felül megtanultad, hogy mik az inverz és transzponált mátrixok, és mit tehetsz velük. Bár a gépi tanulásban a lineáris Algebra más részei is vannak, ez a bejegyzés megfelelő bevezetést adott a legfontosabb fogalmakhoz.

források

mély tanulás (könyv) — Ian Goodfellow, Joshua Bengio, Aaron Courville

Linear Algebra for Machine Learning

Andrew Ng gépi tanulási kurzusa a Courserán

https://en.wikipedia.org/wiki/Linear_algebra

https://www.mathsisfun.com/algebra/scalar-vector-matrix.html

https://www.quantstart.com/articles/scalars-vectors-matrices-and-tensors-linear-algebra-for-deep-learning-part-1

Understanding Scalar and Vector Quantities

Ez a bejegyzés eredetileg megjelent a blogomban (https://machinelearning-blog.com).

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.