Download as pdf or txt
Download as pdf or txt
You are on page 1of 13

3/23/2021

Inženjerstvo informacionih sistema


Industrijsko inženjerstvo
Inženjerski menadžment

Informacije u multimediji
Linearna regresija sa više promenljivih

dr Andraš Anderla

Višestruke odlike (feature-i)

Veličina (stopa2) Cena ($1000)


x y
2104 460
1416 232
1534 315
852 178
… …

ℎ𝜃 𝑥 = 𝜃0 + 𝜃1 𝑥

Informacije u multimediji

1
3/23/2021

Višestruke odlike (feature-i)


Veličina Broj soba Broj spratova Starost kuće Cena ($1000)
(stopa2) (godine)

2104 5 1 45 460
1416 3 2 40 232
1534 3 2 30 315
852 2 1 36 178
… … … … …

Notacija:
n = broj feature-a (odlika)
x(i) = ulazni feature-i i-tog primera za trening
x j(i) = vrednost feature-a j u i-tom primeru za trening
Informacije u multimediji

Hipoteza:
prethodno: ℎ𝜃 𝑥 = 𝜃0 + 𝜃1 𝑥

Informacije u multimediji

2
3/23/2021

ℎ𝜃 𝑥 = 𝜃0 + 𝜃1 𝑥1 + 𝜃2 𝑥2 + ⋯ + 𝜃𝑛 𝑥𝑛

Zbog pogodnosti notacije, definišemo x0=1

Multivarijantna linearna regresija Informacije u multimediji

Gradijentalno opadanje za višestruke promenljive


Hipoteza: ℎ𝜃 𝑥 = 𝜃 𝑇 𝑥 = 𝜃0 𝑥0 + 𝜃1 𝑥1 + 𝜃2 𝑥2 + ⋯ + 𝜃𝑛 𝑥𝑛
Parametri: 𝜃0 , 𝜃1 , 𝜃2 … + 𝜃𝑛
Troškovna funkcija: 𝑚
1 𝑖
𝐽(𝜃0 , 𝜃1 , … 𝜃𝑛 ) = ෍(ℎ𝜃 (𝑥 − 𝑦 𝑖 )2
2𝑚
𝑖=1

Gradijentalno opadanje:
Ponavljaj {
𝜕
𝜃𝑗 ≔ 𝜃𝑗 − 𝛼 𝐽(𝜃0 , … , 𝜃𝑛 )
𝜕𝜃𝑗
} simultano ažuriraj za svako j=0,…,n Informacije u multimediji

3
3/23/2021

Gradijentalno opadanje Novi algoritam (n≥1):


Prethodno (n=1): Ponavljaj {
𝑚
Ponavljaj { 1 (𝑖)
𝑚 𝜃𝑗 ≔ 𝜃𝑗 − 𝛼 ෍(ℎ𝜃 (𝑥 𝑖 ) − 𝑦 𝑖 )𝑥𝑗
1 𝑚
𝜃0 ≔ 𝜃0 − 𝛼 ෍(ℎ𝜃 (𝑥 𝑖 ) − 𝑦 𝑖 ) 𝑖=1
𝑚 (simultano ažuriraj θj, za j=0,…,n)
𝑖=1
}
𝜕
𝐽(𝜃) 𝑚
𝜕𝜃0 1 (𝑖)
𝑚 𝜃0 ≔ 𝜃0 − 𝛼 ෍(ℎ𝜃 (𝑥 𝑖 ) − 𝑦 𝑖 )𝑥0
1 𝑚
𝜃1 ≔ 𝜃1 − 𝛼 ෍(ℎ𝜃 (𝑥 𝑖 ) − 𝑦 𝑖 )𝑥 (𝑖) 𝑖=1
𝑚
𝑚 1 (𝑖)
𝑖=1 𝜃1 ≔ 𝜃1 − 𝛼 ෍(ℎ𝜃 (𝑥 𝑖 ) − 𝑦 𝑖 )𝑥1
𝑚
(simultano ažuriraj θ0, θ1) 𝑖=1
𝑚
1 (𝑖)
} 𝜃2 ≔ 𝜃2 − 𝛼 ෍(ℎ𝜃 (𝑥 𝑖 ) − 𝑦 𝑖 )𝑥2
𝑚
𝑖=1
… Informacije u multimediji

Gradijentalno opadanje u praksi: Skaliranje feature-a


Ideja: napraviti da su feature-i slične razmere
veličina (stopa2 )
𝑥1 =
x1= veličina (0-2000 stopa2) 2000
x2= broj spavaćih soba (1-5) broj spavaćih soba
𝑥2 =
5

Informacije u multimediji

4
3/23/2021

Skaliranje feature-a
Postaviti svaki feature približno u opseg vrednosti -1 ≤ xi ≤ 1

Informacije u multimediji

Normalizacija srednje vrednosti


Zamenuti xi sa xi-μi tako da feature-i imaju približno prosek 0 (ne odnosi se
na x0=0)
veličina − 1000
𝑥1 =
2000
#spavaćih soba − 2
𝑥2 =
5
−0.5 ≤ 𝑥1 ≤ 0.5, −0.5 ≤ 𝑥2 ≤ 0.5

Informacije u multimediji

5
3/23/2021

Gradijentalno opadanje u praksi: Stepen učenja


𝜕
𝜃𝑗 ≔ 𝜃𝑗 − 𝛼 𝐽(𝜃0 )
𝜕𝜃𝑗

- „Debagovanje“: Kako biti siguran da


gradijentalno opadanje radi ispravno.

- Kako izabrati stepen učenja α

Informacije u multimediji

Provera da gradijentalno opadanje radi ispravno

Primer automatskog testa za


konvergenciju:

Proglasiti konvergenciju ako se J(θ)


smanjuje za manje od 10-3 tokom
jedne iteracije

Broj iteracija

Informacije u multimediji

6
3/23/2021

Provera da gradijentalno opadanje radi ispravno


Gradijentalno opadanje ne radi.
Koristiti manju vrednost za α.

- Za dovoljno malo α, J(θ) treba da se smanjuje nakon svake iteracije.


- Ali ako je α suviše malo, gradijentalno opadanje može sporo konvergirati
Informacije u multimediji

Provera da gradijentalno opadanje radi ispravno


Rezime:
- Ako je α suviše malo: spora konvergencija.
- Ako je α suviše veliko: J(θ) se ne mora smanjivati nakon
svake iteracije; može da ne dođe do konvergencije.

Da bi se izabralo α, probati
…, 0.001, ,0.01, ,0.1, ,1,…

Informacije u multimediji

7
3/23/2021

Feature-i i polinomijalna regresija


Predviđanje cene kuća

ℎ𝜃 𝑥 = 𝜃0 + 𝜃1 × 𝑓𝑟𝑜𝑛𝑡 + 𝜃2 × 𝑑𝑢𝑏𝑖𝑛𝑎

Informacije u multimediji

Polinomijalna regresija
𝜃0 + 𝜃1 𝑥 + 𝜃2 𝑥 2

𝜃0 + 𝜃1 𝑥 + 𝜃2 𝑥 2 + 𝜃3 𝑥 3

ℎ𝜃 𝑥 = 𝜃0 + 𝜃1 𝑥1 + 𝜃2 𝑥2 + 𝜃3 𝑥3
= 𝜃0 + 𝜃1 (𝑣𝑒𝑙𝑖č𝑖𝑛𝑎) + 𝜃2 (𝑣𝑒𝑙𝑖č𝑖𝑛𝑎)2 + 𝜃3 (𝑣𝑒𝑙𝑖č𝑖𝑛𝑎)3
𝑥1 = (𝑣𝑒𝑙𝑖č𝑖𝑛𝑎)
𝑥2 = (𝑣𝑒𝑙𝑖č𝑖𝑛𝑎)2
𝑥3 = (𝑣𝑒𝑙𝑖č𝑖𝑛𝑎)3
Informacije u multimediji

8
3/23/2021

Polinomijalna regresija
Izbor feature-a

ℎ𝜃 𝑥 = 𝜃0 + 𝜃1 (𝑣𝑒𝑙𝑖č𝑖𝑛𝑎) + 𝜃2 (veličina)2

ℎ𝜃 𝑥 = 𝜃0 + 𝜃1 (𝑣𝑒𝑙𝑖č𝑖𝑛𝑎) + 𝜃2 (veličina)

Informacije u multimediji

Normalna jednačina

Gradijentalno opadanje

Normalna jednačina: metod da se


analitički izračuna vrednost za θ

Informacije u multimediji

9
3/23/2021

Normalna jednačina

Intuicija: ako je 1D (𝜃 ∈ ℝ)
𝐽 𝜃 = 𝑎𝜃 2 + 𝑏𝜃 + 𝑐

𝑚
1 𝑖
𝜃 ∈ ℝ𝑛+1 𝐽(𝜃0 , 𝜃1 , … 𝜃𝑚 ) = ෍(ℎ𝜃 (𝑥 − 𝑦 𝑖 )2
2𝑚
𝑖=1

𝜕
𝐽 𝜃 =⋯=0 (za svako j)
𝜕𝜃𝑗

Rešiti za θ0, θ1,…, θn


Informacije u multimediji

Normalna jednačina
Primeri: m=4
Veličina Broj soba Broj spratova Starost kuće Cena ($1000)
(stopa2) (godine)
x0 x1 x2 x3 x4 y
1 2104 5 1 45 460
1 1416 3 2 40 232
1 1534 3 2 30 315
1 852 2 1 36 178

1 2104 5 1 45 460
𝑋 = 1 1416 3 2 40 y = 232
1 1534 3 2 30 315
1 852 2 1 36 178

𝜃 = (𝑋 𝑇 𝑋)−1 𝑋 𝑇 𝑦 Informacije u multimediji

10
3/23/2021

Normalna jednačina
m primera (x(1),y(1)),…,(x(m),y(m)); n feature-a
(𝑖)
𝑥0
(𝑖)
𝑥1
𝑥 (𝑖) = (𝑖) ∈ ℝ𝑛+1
𝑥2

(𝑖)
𝑥𝑛

1
Npr. Ako je 𝑥 (𝑖) = (𝑖)
𝑥1

𝜃 = (𝑋 𝑇 𝑋)−1 𝑋 𝑇 𝑦
Informacije u multimediji

Normalna jednačina

𝜃 = (𝑋 𝑇 𝑋)−1 𝑋 𝑇 𝑦
(𝑋 𝑇 𝑋)−1 je inverzna matrica od 𝑋 𝑇 𝑋

Informacije u multimediji

11
3/23/2021

m trening primera, n feature-a

Gradijentalno opadanje Normalna jednačina

• Treba izabrati α • ne treba izabrati α


• Treba mnogo iteracija • ne treba iteracija
• Radi dobro čak i kada je • Treba izračunati (XTX)-1
n veliko • Sporo kada je n veoma
veliko

Informacije u multimediji

Ne-invertabilnost normalne jednačine


Normalna jednačina
𝜃 = (𝑋 𝑇 𝑋)−1 𝑋 𝑇 𝑦

- Šta ako XTX nije invertabilno? (singularna/degenerativna)

Informacije u multimediji

12
3/23/2021

Ne-invertabilnost normalne jednačine

Šta ako XTX nije invertabilno?

• Redundantni feature-i (linearno zavisni)


• npr. x1 = veličina u stopama2
x2= veličina u m2

• Previše feature-a (npr. m≤n)


• obrisati neke feature-e ili koristiti regularizaciju

Informacije u multimediji

13

You might also like