Andmeteaduse ja masinõppe oluline lineaaralgebra

Allikasõlm: 1852280

Pildi autor Benjamin O. Tayo.

Lineaaralgebra on matemaatika haru, mis on andmeteaduses ja masinõppes äärmiselt kasulik. Lineaaralgebra on masinõppes kõige olulisem matemaatikaoskus. Enamikku masinõppemudeleid saab väljendada maatriksi kujul. Andmestikku ennast kujutatakse sageli maatriksina. Lineaarset algebrat kasutatakse andmete eeltöötlemisel, andmete teisendamisel ja mudelite hindamisel. Siin on teemad, mida peate tundma:

  • Vektorid
  • maatriksid
  • Maatriksi transponeerimine
  • Maatriksi pöördväärtus
  • Maatriksi determinant
  • Maatriksi jälg
  • Dot toode
  • Omaväärtused
  • Omavektorid

Selles artiklis illustreerime lineaarse algebra rakendamist andmeteaduses ja masinõppes tehnoloogiliste aktsiate andmestiku abil, mille leiate siin.

1. Lineaaralgebra andmete eeltöötluseks

 Alustuseks illustreerime, kuidas lineaarset algebrat kasutatakse andmete eeltöötluses.

1.1 Importige lineaaralgebra jaoks vajalikud teegid

import numpy kui np import pandad pd-na import pylab import matplotlib.pyplot kui plt import merel sündinud sns-na 

 

1.2 Andmestiku ja kuvamisfunktsioonide lugemine

andmed = pd.read_csv("tech-stocks-04-2021.csv") data.head() 

 Tabel 1. Aktsiahinnad valitud aktsiahindade jaoks 16. aasta aprilli esimese 2021 päeva jooksul.

print(andmed.kuju) väljund = (11,5) 

 . andmed.kuju funktsioon võimaldab meil teada andmestiku suurust. Sel juhul on andmekogumil 5 funktsiooni (kuupäev, AAPL, TSLA, GOOGL ja AMZN) ning igal funktsioonil on 11 vaatlust. kuupäev viitab kauplemispäevadele aprillis 2021 (kuni 16. aprillini). AAPL, TSLA, GOOGL ja AMZN on vastavalt Apple'i, Tesla, Google'i ja Amazoni aktsiate sulgemishinnad.

1.3 Andmete visualiseerimine

Andmete visualiseerimiseks peaksime määratlema veergude maatriksid funktsioonide visualiseerimiseks:

x = andmed['kuupäev'] y = andmed['TSLA'] plt.plot(x,y) plt.xticks(np.array([0,4,9]), ['1. aprill','8. aprill ','15. aprill']) plt.title('Tesla aktsia hind (dollarites) aprillis 2021',size=14) plt.show() 

Joonis 1. Tesla aktsiahind esimese 16 päeva jooksul 2021. aasta aprillis.

2. Kovariatsioonimaatriks

. kovariatsioonimaatriks on andmeteaduse ja masinõppe üks olulisemaid maatrikseid. See annab teavet tunnuste vahelise koosliikumise (korrelatsiooni) kohta. Oletame, et meil on funktsioonide maatriks 4 funktsioonid ja tähelepanekud, nagu näidatud Tabel 2:

Tabel 2. Omab 4 muutujaga maatriksit ja n vaatlust.

Funktsioonide vaheliste seoste visualiseerimiseks saame luua hajuvuspaaridiagrammi:

cols=data.columns[1:5] print(cols) output = Indeks(['AAPL', 'TSLA', 'GOOGL', 'AMZN'], dtype='object') sns.pairplot(data[cols] , kõrgus = 3.0) 

Joonis 2. Valitud tehniliste aktsiate hajuvuspaardiagramm.

Tunnuste vahelise korrelatsiooni määra (multikollineaarsus) kvantifitseerimiseks saame arvutada kovariatsioonimaatriksi, kasutades seda võrrandit:

kus ja on vastavalt tunnuse keskmine ja standardhälve. See võrrand näitab, et kui tunnused on standarditud, on kovariatsioonimaatriks lihtsalt punktitoode funktsioonide vahel.

Maatriksi kujul saab kovariatsioonimaatriksit väljendada 4 x 4 reaal- ja sümmeetrilise maatriksina:

Seda maatriksit saab diagonaliseerida, sooritades a ühtne teisendus, mida nimetatakse ka põhikomponentide analüüsi (PCA) teisenduseks, et saada järgmine:

Kuna maatriksi jälg jääb unitaarse teisenduse korral muutumatuks, täheldame, et diagonaalmaatriksi omaväärtuste summa on võrdne tunnustes X sisalduva summaarse dispersiooniga1, X2, X3ja X4.

2.1 Tehnoloogiliste aktsiate kovariatsioonimaatriksi arvutamine

sklearn.preprocessing impordist StandardScaler stdsc = StandardScaler() X_std = stdsc.fit_transform(data[cols].iloc[:,range(0,4)].values) cov_mat = np.cov(X_std.T, bias= True) 

Pange tähele, et see kasutab üle standardmaatriksist.

2.2 Kovariatsioonimaatriksi visualiseerimine

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('Kovariatsioonimaatriks, mis näitab korrelatsioonikordajaid') plt.tight_layout() plt.show() 

Joonis 3. Kovariatsioonimaatriksgraafik valitud tehnoloogiliste aktsiate jaoks.

Jooniselt 3 näeme, et AAPL korreleerub tugevalt GOOGL-i ja AMZN-iga ning nõrgalt TSLA-ga. TSLA korreleerub üldiselt nõrgalt AAPL-i, GOOGL-i ja AMZN-iga, samas kui AAPL, GOOGL ja AMZN on omavahel tugevas korrelatsioonis.

2.3 Kovariatsioonimaatriksi omaväärtuste arvutamine

np.linalg.eigvals(cov_mat) output = array([3.41582227, 0.4527295, 0.02045092, 0.11099732]) np.sum(np.linalg.eigvals(cov_mat)4.000000000000006ce4.000000000000001nXNUMXn.XNUMXp.XNUMX) cov_mat) väljund = XNUMX 

Jälgime, et kovariatsioonimaatriksi jälg on ootuspäraselt võrdne omaväärtuste summaga.

2.4 Arvutage kumulatiivne dispersioon

Kuna maatriksi jälg jääb unitaarse teisenduse korral muutumatuks, siis täheldame, et diagonaalmaatriksi omaväärtuste summa on võrdne tunnustes X sisalduva summaarse dispersiooniga.1, X2, X3ja X4. Seega saame määratleda järgmised kogused:

 

Pange tähele, et millal p = 4, muutub kumulatiivne dispersioon ootuspäraselt võrdseks 1-ga.

eigen = np.linalg.eigvals(cov_mat) cum_var = eigen/np.sum(eigen) print(cum_var) output = [0.85395557 0.11318237 0.00511273 0.02774933] print (np.1.0 varsum) print(np.XNUMX varsum) 

 Vaatleme kumulatiivsest dispersioonist (cum_var), et 85% dispersioonist sisaldub esimeses omaväärtuses ja 11% teises. See tähendab, et PCA rakendamisel saab kasutada ainult kahte esimest põhikomponenti, kuna 97% kogu dispersioonist moodustavad need kaks komponenti. See võib PCA rakendamisel oluliselt vähendada funktsiooniruumi mõõtmeid 2-lt 4-le.

3. Lineaarne regressioonimaatriks

Oletame, et meil on andmestik, millel on 4 ennustavat funktsiooni ja n tähelepanekud, nagu allpool näidatud.

Tabel 3. Omab 4 muutujaga maatriksit ja n vaatlust. 5. veerg on sihtmuutuja (y).

Tahaksime luua mitme regressioonimudeli prognoosimiseks y väärtused (5. veerg). Meie mudelit saab seega väljendada vormis

Maatriksi kujul saab selle võrrandi kirjutada järgmiselt

kus X on (nx 4) tunnuste maatriks, w on (4 x 1) maatriks, mis esindab määratavaid regressioonikoefitsiente ja y on (nx 1) maatriks, mis sisaldab sihtmuutuja y n vaatlust.

Pange tähele, et X on ristkülikukujuline maatriks, seega ei saa me ülaltoodud võrrandit lahendada, võttes pöördväärtuse X.

Teisendada X ruutmaatriksiks korrutame võrrandi vasaku ja parema külje väärtusega üle of X, see on

Seda võrrandit saab väljendada ka kui

kus

on (4×4) regressioonimaatriks. On selge, et me jälgime seda R on reaalne ja sümmeetriline maatriks. Pange tähele, et lineaaralgebras järgib kahe maatriksi korrutise transponeerimine järgmist seost

Nüüd, kui oleme oma regressiooniprobleemi vähendanud ja väljendanud seda (4 × 4) reaalse, sümmeetrilise ja pööratava regressioonimaatriksina R, on lihtne näidata, et regressioonivõrrandi täpne lahendus on siis

Pidevate ja diskreetsete muutujate prognoosimise regressioonanalüüsi näited on toodud järgmiselt.

Lineaarse regressiooni põhitõed absoluutselt algajatele

Perceptroni klassifikaatori loomine vähimruutude meetodil

4. Lineaarne diskrimineeriva analüüsi maatriks

Teine näide reaalsest ja sümmeetrilisest maatriksist andmeteaduses on lineaarse diskrimineerimisanalüüsi (LDA) maatriks. Seda maatriksit saab väljendada järgmisel kujul:

kus SW on funktsioonisisene hajuvusmaatriks ja Son funktsioonidevaheline hajuvusmaatriks. Kuna mõlemad maatriksid SW ja SB on reaalsed ja sümmeetrilised, järeldub sellest L on ka reaalne ja sümmeetriline. Diagonaliseerimine L loob funktsioonide alamruumi, mis optimeerib klasside eraldatavust ja vähendab dimensioonilisust. Seega on LDA kontrollitud algoritm, PCA aga mitte.

LDA rakendamise kohta lisateabe saamiseks vaadake järgmisi viiteid:

Masinõpe: mõõtmete vähendamine lineaarse diskrimineeriva analüüsi abil

GitHubi hoidla LDA juurutamiseks, kasutades Irise andmestikku

Pythoni masinõpe, Sebastian Raschka, 3. väljaanne (5. peatükk)

kokkuvõte

Kokkuvõttes oleme arutanud mitmeid lineaarse algebra rakendusi andmeteaduses ja masinõppes. Tehnoloogiliste aktsiate andmestiku abil illustreerisime olulisi mõisteid, nagu maatriksi suurus, veerumaatriksid, ruutmaatriksid, kovariatsioonimaatriks, maatriksi transponeerimine, omaväärtused, punktkorrutised jne. Lineaaralgebra on andmeteaduses ja masinates oluline tööriist. õppimine. Seega peavad andmeteadusest huvitatud algajad end kurssi viima lineaaralgebra oluliste mõistetega.

Seotud:

Allikas: https://www.kdnuggets.com/2021/05/essential-linear-algebra-data-science-machine-learning.html

Ajatempel:

Veel alates KDnuggets