Kép: Benjamin O. Tayo.
A lineáris algebra a matematikának egy olyan ága, amely rendkívül hasznos az adattudományban és a gépi tanulásban. A lineáris algebra a legfontosabb matematikai készség a gépi tanulásban. A legtöbb gépi tanulási modell kifejezhető mátrix formában. Magát az adatkészletet gyakran mátrixként ábrázolják. A lineáris algebrát adat-előfeldolgozásban, adattranszformációban és modellértékelésben használják. Itt vannak azok a témák, amelyeket ismernie kell:
- Vektor
- mátrixok
- Egy mátrix transzponálása
- Egy mátrix inverze
- Egy mátrix meghatározója
- Egy mátrix nyoma
- Dot termék
- sajátértékei
- Sajátvektorok
Ebben a cikkben a lineáris algebra adattudományban és gépi tanulásban való alkalmazását mutatjuk be a tech stocks adatkészlet segítségével, amely megtalálható. itt.
1. Lineáris algebra adat-előfeldolgozáshoz
Kezdjük azzal, hogy bemutatjuk, hogyan használják a lineáris algebrát az adatok előfeldolgozásában.
1.1 Importálja a szükséges könyvtárakat a lineáris algebrához
import numpy mint np import panda mint pd import pylab import matplotlib.pyplot mint plt import seaborn as sns
1.2 Adatkészlet és megjelenítési jellemzők olvasása
data = pd.read_csv("tech-stocks-04-2021.csv") data.head()
Táblázat 1. Részvényárak a kiválasztott részvényárfolyamokhoz 16 áprilisának első 2021 napjában.
print(data.shape) kimenet = (11,5)
A adatok.alak A funkció lehetővé teszi az adatkészletünk méretének megismerését. Ebben az esetben az adatkészlet 5 jellemzővel rendelkezik (dátum, AAPL, TSLA, GOOGL és AMZN), és mindegyik jellemzőhöz 11 megfigyelés tartozik. találka a 2021. áprilisi kereskedési napokra vonatkozik (április 16-ig). Az AAPL, a TSLA, a GOOGL és az AMZN az Apple, a Tesla, a Google és az Amazon részvényeinek záró árfolyamai.
1.3 Adatvizualizáció
Az adatvizualizáció végrehajtásához meg kell határoznunk oszlopmátrixok a megjelenítendő funkciókhoz:
x = adat['dátum'] y = adat['TSLA'] plt.plot(x,y) plt.xticks(np.array([0,4,9]), ['ápr. 1.','ápr. 8. ','április 15.']) plt.title('Tesla részvényárfolyama (dollárban) 2021 áprilisában',size=14) plt.show()
Ábra 1. A Tesla részvényárfolyama az első 16 napban 2021 áprilisában.
2. Kovariancia mátrix
A kovariancia mátrix az adattudomány és a gépi tanulás egyik legfontosabb mátrixa. Információt ad a jellemzők közötti együttmozgásról (korrelációról). Tegyük fel, hogy van egy tulajdonságmátrixunk 4 jellemzők és n ábrán látható megfigyeléseket Táblázat 2:
Táblázat 2. 4 változós mátrixot és n megfigyelést tartalmaz.
A jellemzők közötti összefüggések megjelenítéséhez létrehozhatunk egy szóródási párdiagramot:
cols=data.columns[1:5] print(cols) output = Index(['AAPL', 'TSLA', 'GOOGL', 'AMZN'], dtype='object') sns.pairplot(data[cols] , magasság=3.0)
ábra 2. Scatter pairplot kiválasztott technológiai részvényekhez.
A jellemzők közötti korreláció mértékének (multikollinearitás) számszerűsítéséhez kiszámíthatjuk a kovariancia mátrixot a következő egyenlet segítségével:
ahol és a jellemző átlaga és szórása. Ez az egyenlet azt jelzi, hogy amikor a jellemzők szabványosak, a kovariancia mátrix egyszerűen a pont termék jellemzők között.
Mátrix formában a kovariancia mátrix 4 x 4 valós és szimmetrikus mátrixként fejezhető ki:
Ez a mátrix diagonalizálható az a egységes átalakulás, amelyet főkomponens-elemzésnek (PCA) is neveznek, a következők eléréséhez:
Mivel a mátrix nyoma egységes transzformáció esetén invariáns marad, megfigyeljük, hogy az átlós mátrix sajátértékeinek összege megegyezik az X jellemzőkben foglalt teljes varianciával.1, X2, X3és X4.
2.1 A technológiai részvények kovarianciamátrixának kiszámítása
from sklearn.preprocessing import StandardScaler stdsc = StandardScaler() X_std = stdsc.fit_transform(data[cols].iloc[:,range(0,4)].values) cov_mat = np.cov(X_std.T, bias= True)
Vegye figyelembe, hogy ez a transzponálás a szabványosított mátrixból.
2.2 A kovariancia mátrix megjelenítése
plt.figure(figsize=(8,8)) sns.set(font_scale=1.2) hm = sns.heatmap(cov_mat, cbar=True, annot=True, square=True, fmt='.2f', annot_kws={ 'size': 12}, yticklabels=cols, xticklabels=cols) plt.title('Korrelációs együtthatókat mutató kovarianciamátrix') plt.tight_layout() plt.show()
ábra 3. Kovariancia mátrix diagram a kiválasztott technológiai részvényekhez.
A 3. ábrán megfigyelhetjük, hogy az AAPL erősen korrelál a GOOGL-lel és az AMZN-nel, és gyengén a TSLA-val. A TSLA általában gyengén korrelál az AAPL-lel, a GOOGL-lel és az AMZN-nel, míg az AAPL, a GOOGL és az AMZN erősen korrelál egymással.
2.3 Számítsa ki a kovarianciamátrix sajátértékeit
np.linalg.eigvals(cov_mat) output = array([3.41582227, 0.4527295 , 0.02045092, 0.11099732]) np.sum(np.linalg.eigvals(cov_mat))4.000000000000006 output cov_mat) kimenet = 4.000000000000001
Megfigyeljük, hogy a kovarianciamátrix nyomvonala megegyezik a sajátértékek összegével, ahogy azt vártuk.
2.4 Számítsa ki a kumulatív szórást
Mivel a mátrix nyomvonala invariáns marad unitárius transzformáció esetén, megfigyeljük, hogy az átlós mátrix sajátértékeinek összege megegyezik az X jellemzőkben foglalt teljes varianciával.1, X2, X3és X4. Ezért a következő mennyiségeket definiálhatjuk:
Vedd észre, hogy mikor p = 4, a kumulatív variancia a vártnak megfelelően 1 lesz.
eigen = np.linalg.eigvals(cov_mat) cum_var = saját/np.sum(eigen) print(cum_var) output = [0.85395557 0.11318237 0.00511273 0.02774933] print(cu_1.0 varsum) print(np.XNUMX varsum)
Megfigyeljük a kumulatív variancia (cum_var), hogy a variancia 85%-át az első sajátérték, 11%-át a második sajátérték tartalmazza. Ez azt jelenti, hogy a PCA implementálásakor csak az első két fő komponens használható, mivel a teljes variancia 97%-át ez a két komponens adja. Ez lényegében csökkentheti a jellemzőtér méretét 2-ről 4-re, amikor a PCA megvalósul.
3. Lineáris regressziós mátrix
Tegyük fel, hogy van egy adatkészletünk, amely 4 előrejelző tulajdonsággal és n megfigyeléseket, az alábbiak szerint.
Táblázat 3. 4 változós mátrixot és n megfigyelést tartalmaz. Az 5. oszlop a célváltozó (y).
Több regressziós modellt szeretnénk felépíteni a y értékek (5. oszlop). Modellünk tehát a formában fejezhető ki
Mátrix formában ez az egyenlet így írható fel
ahol X az (n x 4) jellemző mátrix, w a (4 x 1) mátrix, amely a meghatározandó regressziós együtthatókat reprezentálja, és y az (n x 1) mátrix, amely az y célváltozó n megfigyelését tartalmazza.
Ne feledje, hogy X egy téglalap alakú mátrix, így a fenti egyenletet nem tudjuk megoldani az inverzével X.
Átalakít X négyzetmátrixba megszorozzuk az egyenletünk bal és jobb oldalát transzponálás of X, azaz
Ez az egyenlet így is kifejezhető
ahol
a (4×4) regressziós mátrix. Nyilvánvaló, hogy ezt megfigyeljük R egy valós és szimmetrikus mátrix. Figyeljük meg, hogy a lineáris algebrában két mátrix szorzatának transzponálása a következő összefüggésnek engedelmeskedik
Most, hogy csökkentettük a regressziós problémánkat, és a (4×4) valós, szimmetrikus és invertálható regressziós mátrixban fejeztük ki R, egyszerűen megmutatható, hogy a regressziós egyenlet pontos megoldása akkor
Példák a folytonos és diszkrét változók előrejelzésére szolgáló regressziós elemzésre a következők:
A lineáris regresszió alapjai abszolút kezdőknek
Perceptron osztályozó készítése a legkisebb négyzetek módszerével
4. Lineáris diszkriminancia-elemző mátrix
Egy másik példa a valós és szimmetrikus mátrixra az adattudományban a Linear Discriminant Analysis (LDA) mátrix. Ez a mátrix a következő formában fejezhető ki:
ahol SW a jellemzőn belüli szórási mátrix, és SB a jellemzők közötti szórási mátrix. Mivel mindkét mátrix SW és a SB valódiak és szimmetrikusak, ebből következik L is valós és szimmetrikus. Az átlósítás L olyan jellemző alteret hoz létre, amely optimalizálja az osztályok szétválaszthatóságát és csökkenti a dimenziót. Ezért az LDA felügyelt algoritmus, míg a PCA nem.
Az LDA megvalósításával kapcsolatos további részletekért tekintse meg a következő hivatkozásokat:
Gépi tanulás: dimenziócsökkentés lineáris diszkriminancia-analízissel
GitHub adattár az LDA megvalósításához Iris adatkészlet használatával
Python gépi tanulás, Sebastian Raschka, 3. kiadás (5. fejezet)
Összegzésként
Összefoglalva, a lineáris algebra számos alkalmazását tárgyaltuk az adattudományban és a gépi tanulásban. A tech stocks adatkészlet segítségével olyan fontos fogalmakat illusztráltunk, mint a mátrix mérete, oszlopmátrixok, négyzetmátrixok, kovarianciamátrix, mátrix transzponálása, sajátértékek, pontszorzatok stb. A lineáris algebra az adattudomány és a gépészet alapvető eszköze. tanulás. Így az adattudomány iránt érdeklődő kezdőknek meg kell ismerkedniük a lineáris algebra alapvető fogalmaival.
Kapcsolódó:
- 11
- 2021
- 7
- 77
- 84
- 9
- Abszolút
- algoritmus
- amazon
- között
- elemzés
- Apple
- Alkalmazás
- alkalmazások
- április
- cikkben
- Alapjai
- épít
- Oszlop
- összetevő
- Kiszámít
- számítástechnika
- hozzájárultak
- dátum
- adat-tudomány
- adatmegjelenítés
- dollár
- stb.
- Funkció
- Jellemzők
- Ábra
- vezetéknév
- forma
- funkció
- itt
- Hogyan
- HTTPS
- információ
- IT
- tanulás
- gépi tanulás
- matematikai
- matematika
- modell
- Más
- ár
- Termékek
- Termékek
- csökkenteni
- regresszió
- Tudomány
- kiválasztott
- Méret
- So
- SOLVE
- Hely
- négyzet
- készlet
- készletek
- cél
- tech
- Tesla
- Tesla állomány
- Témakörök
- Kereskedés
- Átalakítás
- us
- megjelenítés
- X