Teknologian jakaminen

SyväoppiminenSyväoppiminen Useita lineaarisia regressiotutkimuksia koskevia huomautuksia

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Moniulotteiset ominaisuudet

Muuttujat ja ehdot

Sarakkeen attribuutti xjAttribuuttien lukumäärä n x ⃗ vec{x}x (i)rivivektoritietty arvo x ⃗ ji vec{x}_j^ix jiYlös ja alas
tarkoittaa μstandardointiKeskihajonta σsigma (σ)

kaava

w ⃗ vec{w}w = [w1 w2 w3 …]
x ⃗ vec{x}x = [x1 x2 x3 …]

fw ⃗ , b ( x ⃗ ) = w ⃗ ∗ x ⃗ + b = w 1 x 1 + w 2 x 2 + … + wnxn + b f_{vec{w},b} (vec{x}) = vec{ w} * vec{x} + b = w_1x_1 + w_2x_2 + … + w _nx_n + bfw ,b(x )=w x +b=w1x1+w2x2++wnxn+b

moninkertainen lineaarinen regressio

import numpy
f = np.dot(w, x) + b
  • 1
  • 2

Huomautus: Se on erittäin nopea, kun n on suuri (rinnakkaiskäsittely)

normaali yhtälömenetelmä

  1. Yli 1000 on tehotonta
  2. Sitä ei voida yleistää muihin algoritmeihin, kuten logistiseen regressioon, hermoverkkoihin tai muihin.
  3. ei iteraatiota

wn = wn − α 1 m ∑ i = 1 mfw ⃗ , b ( x ⃗ ( i ) − y ( i ) ) xn ( i ) w_n = w_n - αdfrac{1}{m} sumlimits_{i=1}^mf_ {vec{w},b}(vec{x}^{(i)}-y^{(i)})x_n^{(i)}wn=wnαm1i=1mfw ,b(x (i)y(i))xn(i)

b = b − α 1 m ∑ i = 1 m ( fw ⃗ , b ( x ⃗ ( i ) − y ( i ) ) b = b - α{dfrac{1}{m}}sumlimits_{i=1}^ m(f_{vec{w},b}(vec{x}^{(i)}-y^{(i)})b=bαm1i=1m(fw ,b(x (i)y(i))

Suuremmalla alueella riippumattomia muuttujia vastaavat painot ovat yleensä pienempiä, ja pienemmällä alueella riippumattomia muuttujia vastaavat painot ovat yleensä suurempia.

Tarkoittaa normalisointia

Jakamalla alueen maksimiarvolla saat selville riippumattoman muuttujan painon vs. [0, 1]

Abskissa: x 1 = x 1 − μ 1 2000 − 300 x_1 = dfrac{x_1-μ_1}{2000-300}x1=2000300x1μ1 Y-akseli: x 2 = x 2 − μ 2 5 − 0 x_2 = dfrac{x_2 - μ_2}{5-0}x2=50x2μ2

− 0,18 ≤ x 1 ≤ 0,82 -0,18 le x_1le0,820.18x10.82 − 0,46 ≤ x 2 ≤ 0,54 -0,46 le x_2le0,540.46x20.54

Z-pisteiden normalisointi

300 ≤ x 1 ≤ 2000 300le x_1le2000300x12000 0 ≤ x 2 ≤ 5 0le x_2le50x25

x 1 = x 1 − μ 1 σ 1 x1 = dfrac{x_1-μ_1}{σ_1}x1=σ1x1μ1 − 0,67 ≤ x 1 ≤ 3,1 -0,67 le x_1 le3,10.67x13.1

Pyri pitämään kaikkien ominaisuuksien arvot samalla alueella skaalauksen avulla, jotta niiden muutosten vaikutus ennustettuihin arvoihin on lähellä (-3,3)

Jos kustannusfunktio J kasvaa suureksi, se tarkoittaa, että askelkoko (oppimisnopeus) on sopimaton tai koodi on väärä.

Lisää kuvan kuvaus tähän

Huomautus: Iteraatioiden määrä vaihtelee koneittain

Käyrien piirtämisen lisäksi iteraatiopisteen määrittämiseksi voidaan käyttää myös automaattista konvergenssitestausta
Olkoon ε yhtä suuri 1 0 − 3 10^{-3} 103, jos J:n lasku on pienempi kuin tämä pieni luku, sen katsotaan konvergoivan.

Aseta sopiva oppimisnopeus

  1. Testattaessa voit asettaa hyvin pienen arvon nähdäksesi, pieneneekö J.
  2. Oppimisnopeus iteroinnin aikana ei saa olla liian suuri tai liian pieni.
  3. Valitse aina * 3 testauksen aikana mahdollisimman suuri oppimisnopeus tai hieman pienempi kuin kohtuullinen arvo

Ominaisuussuunnittelu

Rakenna ominaisuussuunnittelua muunnoksen tai yhdistelmän avulla tarjotaksesi enemmän vaihtoehtoja

fw ⃗ , b ( x ⃗ ) = le 1 x 1 + le 2 x 2 + le 3 x 3 + b f_{vec{w},b}(vec{x}) = w_1x_1+l_2x_2+w_3x_3+bfw ,b(x )=w1x1+w2x2+w3x3+b

Huomautus: Polynomiregressiota voidaan käyttää lineaariseen ja epälineaariseen sovitukseen