linear regression 𝑖 𝜶 - kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_machinelearning/03... ·...

47
Machine Learning 2015.06.06. Linear Regression

Upload: others

Post on 13-Sep-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶

Machine Learning

𝑠𝑖𝑔𝑚𝑎 𝜶

2015.06.06.

Linear Regression

Page 2: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 2

Issues

Page 3: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 3

Issues

• https://www.facebook.com/Architecturearts/videos/1107531579263808/

• “8삎짜늬 조칎에게 데읎터베읎슀(DB)가 묎엇읞지 3쀄의 묞장윌로 섀명하시였”

• 6개월동안 최대 25번읎나 되는 멎접시험을 거쳐 구Ꞁ러(구Ꞁ 직원을 음컫는 말)가 될 확률은 0.25%. 하버드대볎닀 25ë°° 듀얎가Ʞ 얎렵닀.

• “우늬는 ‘구Ꞁ닀욎’(Being Googley) 읞재듀만 뜑는닀”• 회사에 뭔가 닀륞 가치나 재능을 가젞닀 쀄 수 있는지

• 새로욎 지식을 받아듀음 쀄 아는 지적읞 겞손·유연핚을 갖췄는지

• 굎러닀니는 쓰레Ʞ륌 슀슀로 쀍는 자발적읞 사람읞지

• 망원겜 성능을 개선하느니 달에 우죌선을 쏘는 게 낫닀는 식의 ‘묞샷싱킹’ 출처: 쀑앙음볎

Page 4: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 4

Issues

• 싀늬윘밞늬의 슀타튞업 ‘로윔몚티람랩슀‘ 읎수읞(39) 대표는 “Ʞ술Ʞ업에선 몚두가 똑같은 귌묎시간을 채우는 것볎닀 최고의 싀력을 가진 1꞉ 개발자듀읎 최고의성곌륌 ë‚Œ 수 있도록 하는 게 더 쀑요하닀.”

• “읎듀읎 읎직하지 않도록 붙잡아 두렀멎 고액연뎉 왞에, ‘자유’ 같은 플러슀 알파의 가치륌 더 쀘알 한닀는 게싀늬윘밞늬의 볎펞적읞 분위Ʞ”

• http://www.washingtonpost.com/graphics/business/robots/

출처: 쀑앙음볎

Page 5: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 5

Issues

Page 6: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 6

Linear Regression

• 임의의 데읎터가 있을 때, 데읎터 자질 간의 상ꎀꎀ계륌 고렀하는 것

친구 1 친구 2 친구 3 친구 4 친구 5

í‚€ 160 165 170 170 175

몞묎게 50 50 55 50 60

Page 7: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 7

Linear Regression

• 슉, 회귀 묞제란..

• 수치형 목적 값을 예잡하는 방법

• 목적 값에 대한 방정식 필요• 회귀 방정식(Regression equation)

• 집 값을 알Ʞ 위핎 아래와 같은 방정식을 읎용

• Ex) 집 값 = 0.125 * 평수 + 0.5 * 역까지의 거늬

• “평수”와 “역까지의 거늬” 입력 데읎터

• “집 값” 추정 데읎터

• 0.125와 0.5의 값 회귀 가쀑치(Regression weight)

• 여자친구의 몞묎게륌 추정하Ʞ 위하여..

• Ex) 몞묎게 = 0.05 * í‚€

• “킀“ 입력 데읎터

• “몞묎게” 추정 데읎터

• 0.05 회귀 가쀑치

Page 8: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 8

Hypothesis

𝑊 = 𝑀𝑥 + 𝑏𝑥입력데읎터: í‚€

𝑊추정데읎터: 몞묎게

𝑀회귀가쀑치: êž°ìšžêž°

Hypothesis

Page 9: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 9

Hypothesis

0

1

2

3

0 1 2 3

0

1

2

3

0 1 2 3

0

1

2

3

0 1 2 3

Andrew Ng

𝑊 = 𝑀𝑥 + 𝑏

Page 10: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 10

Hypothesis

𝑊𝑖 = 𝑀0 +𝑀𝑇𝑥𝑖

𝑊𝑖 = 𝑀0 × 1 +

𝑖=1

𝑚

𝑀𝑖𝑥𝑖

𝑊𝑖 = 𝑖=0𝑚 𝑀𝑖𝑥𝑖 𝑀𝑥

𝑊 = 𝑀𝑥 + 𝑏 𝑊 = 𝑀𝑥

Variable Description

𝐜(𝜃), r Cost function vector, residual(r)

y Instance label vector

𝑊, h(𝜃) hypothesis

𝑀0, b Bias(b), y-intercept

𝑥𝑖 Feature vector, 𝑥0 = 1

W Weight set (𝑀1, 𝑀2, 𝑀3, 
 , 𝑀𝑛)

X Feature set (𝑥1, 𝑥2, 𝑥3, 
 , 𝑥𝑛)(generalization)

(generalization)

Page 11: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 11

Regression: statistical example

• 몚집닚: 유통Ʞ간에 따륞 비타믌 C의 파ꎎ량

• 독늜 변수 X가 죌얎졌을 때Y에 대한 Ʞ대 값

유통Ʞ간 (음) : X 15 20 25 30 35

비타믌 C 파ꎎ량 (mg):Y

05

101520

1520253035

3035404550

5055606570

5560657075

𝑊 = 𝑀𝑥 + 𝑏 + 𝜀

𝑊 = 𝜃𝑥 + 𝜀

𝜀: disturbance term, error variable

Page 12: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 12

Regression: statistical example

Random variable of Y

Page 13: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 13

Residual

ㅡ정답몚덞ㅡ추정몚덞

정답데읎터추정데읎터

Residual: 𝑟(= 𝜀)

𝑟1

𝑟2

𝑟3

𝑟4

𝑟5

• 아래의말은서로같은의믞• 정답데읎터와추정데읎터의찚읎• 정답몚덞곌추정몚덞의찚읎

𝑊 = 𝑀𝑥 + 𝑏, 𝑠. 𝑡. min(𝑟)

Page 14: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 14

Least Square Error (LSE)

𝑟1

𝑟2𝑟3

𝑟4𝑟5

𝑟 = 𝑊 − ℎ𝜃(𝑥)

𝑟𝑖 = 𝑊 − 𝑊

𝑟 =

𝑖

(𝑊𝑖 − 𝑊𝑖)

𝑟𝑖 = 𝑊𝑖 − 𝑊𝑖

𝑚𝑖𝑛

𝑖=1

𝑚

𝑟2 = 𝑚𝑖𝑛

𝑖=1

𝑚

𝑊𝑖 − 𝑊𝑖2

Least square𝑟 =

𝑖=1

𝑚

𝑊𝑖 − 𝑀𝑇𝑥𝑖 − 𝑏 2

𝑟 =1

2

𝑖=1

𝑚

𝑊𝑖 − 𝑀𝑇𝑥𝑖 − 𝑏 2

= 𝐜(𝜃) “cost function”

𝑊 − 𝑟 ≅ ℎ𝜃(𝑥)

(residual)

Page 15: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 15

0

1

2

3

0 1 2 3

y

x

(for fixed , this is a function of x) (function of the parameter )

0

1

2

3

-0.5 0 0.5 1 1.5 2 2.5

Cost Function

𝑓 𝑥1 = ℎ𝜃 𝑥1 = 𝜃1𝑥1 = 1 𝐜 𝜃1 = 𝑊1 − 𝑓(𝑥1)

𝐜 𝜃1 = 1 − 1 = 0 = 𝑟

Andrew Ng∎ min 𝐜(𝜃) == min 𝑟

𝑓 𝑥1 = ℎ𝜃 𝑥1 = 𝑀1𝑥1 = 1

Page 16: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 16

Training

• Residual을쀄여알핚 LSE의값을최소화핎알핚

• 2찚핚수하나의최소값(minimum)을가짐

• 각 w에대한선형핚수각찚원의최소값을알수있음

• 슉, 전역최소값(global minimum)을알수있음

• 읎최소값을찟Ʞ위핎Ʞ욞Ʞ하강(gradient descent)을사용

𝐜(𝜃) =1

2

𝑖=1

𝑚

𝑊𝑖 −𝑀𝑇𝑥𝑖 − 𝑏 2

Minimum!!

Page 17: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 17

Training: Gradient

• 각 변수에 대한 음찚 펞믞분 값윌로 구성되는 벡터• 벡터: 𝑓(. )의 값읎 가파륞 쪜의 방향을 나타냄

• 벡터의 크Ʞ: 벡터 슝가, 슉 Ʞ욞Ʞ륌 나타냄

• ì–Žë–€ 닀변수 핚수 𝑓(𝑥1, 𝑥2, 
 , 𝑥𝑛)가 있을 때, 𝑓의gradient는 닀음곌 같음

𝛻𝑓 = (𝜕𝑓

𝜕𝑥1,𝜕𝑓

𝜕𝑥2, 
 ,

𝜕𝑓

𝜕𝑥𝑛)

• Gradient륌 읎용한 닀변수 scalar 핚수 𝑓는 점 𝑎𝑘의 귌처에서의 선형 귌사식 (using Taylor expansion)

𝑓 𝑎 = 𝑓 𝑎𝑘 + 𝛻𝑓 𝑎𝑘 𝑎 − 𝑎𝑘 + 𝑜( 𝑎 − 𝑎𝑘 )

Page 18: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 18

Training: Gradient Descent

• Formula

𝑎 𝑘+1 = 𝑎𝑘 − 𝜂𝑘𝛻𝑓 𝑎𝑘 , 𝑘 ≥ 0

𝜂𝑘: 𝑙𝑒𝑎𝑟𝑛𝑖𝑛𝑔 𝑟𝑎𝑡𝑒

• Algorithm

𝒃𝒆𝒈𝒊𝒏 𝑖𝑛𝑖𝑡 𝑎, 𝑡ℎ𝑟𝑒𝑠ℎ𝑜𝑙𝑑 𝜃, 𝜂𝒅𝒐 𝑘 ← 𝑘 + 1

𝑎 ← 𝑎 − 𝜂𝛻𝑓 𝑎𝒖𝒏𝒕𝒊𝒍 𝜂𝛻𝑎 𝑘 < 0

𝒓𝒆𝒕𝒖𝒓𝒏 𝑎𝒆𝒏𝒅

출처: wikipedia

Page 19: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 19

Training: Gradient Descent

min 𝐜(𝜃) =1

2

𝑖=1

𝑚

𝑊𝑖 − 𝑀𝑇𝑥𝑖2

𝜕𝐜(𝜃)

𝜕𝑀=

𝑖=1

𝑚

𝑊𝑖 − 𝑀𝑇𝑥𝑖 (−𝑥𝑖)• 벡터에대한믞분

𝑎 𝑘+1 = 𝑎𝑘 − 𝜂𝑘𝛻𝑓 𝑎𝑘 , 𝑘 ≥ 0

𝑀 ← 𝑀 − 𝜂𝜕𝑟

𝜕𝑀• Weight update

𝑟을최소화하는 𝑀륌찟아띌!!

Page 20: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 20

Training: Gradient Descent

(for fixed , this is a function of x) (function of the parameters )

Andrew Ng

Page 21: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 21

(for fixed , this is a function of x) (function of the parameters )

Training: Gradient Descent

Andrew Ng

Page 22: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 22

(for fixed , this is a function of x) (function of the parameters )

Training: Gradient Descent

Andrew Ng

Page 23: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 23

(for fixed , this is a function of x) (function of the parameters )

Training: Gradient Descent

Andrew Ng

Page 24: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 24

(for fixed , this is a function of x) (function of the parameters )

Training: Gradient Descent

Andrew Ng

Page 25: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 25

(for fixed , this is a function of x) (function of the parameters )

Training: Gradient Descent

Andrew Ng

Page 26: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 26

(for fixed , this is a function of x) (function of the parameters )

Training: Gradient Descent

Andrew Ng

Page 27: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 27

(for fixed , this is a function of x) (function of the parameters )

Training: Gradient Descent

Andrew Ng

Page 28: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 28

(for fixed , this is a function of x) (function of the parameters )

Training: Gradient Descent

Andrew Ng

Page 29: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 29

Training: Solution Derivation

• 분석적 방법(analytic method)• 𝐜(𝜃)륌 각 몚덞 파띌믞터듀로 펞믞분한 후에 ê·ž 결곌륌 0윌로

하여 연늜방정식 풀읎

• 𝑓 𝑥 = 𝑀𝑥 + 𝑏 읞 겜우에는 몚덞 파띌믞터 𝑀와 𝑏로 펞믞분

𝜕𝑟

𝜕𝑀=

𝑖=1

𝑚

𝑊𝑖 − 𝑀𝑇𝑥𝑖 − 𝑏 (−𝑥𝑖) = 0

𝜕𝑟

𝜕𝑏=

𝑖=1

𝑚

𝑊𝑖 − 𝑀𝑇𝑥𝑖 − 𝑏 (−1) = 0

𝑀에대한펞믞분

𝑏에대한펞믞분

Page 30: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 30

Training: Solution Derivation

𝜕𝑟

𝜕𝑏=

𝑖=1

𝑚

𝑊𝑖 − 𝑀𝑇𝑥𝑖 − 𝑏 (−1) = 0

𝑏에대한펞믞분

𝜕𝑟

𝜕𝑏=

𝑖=1

𝑚

𝑊𝑖 − 𝑀𝑇

𝑖=1

𝑚

𝑥𝑖 − 𝑏𝑚 = 0

𝜕𝑟

𝜕𝑏=

𝑖=1

𝑚

𝑊𝑖 − 𝑀𝑇

𝑖=1

𝑚

𝑥𝑖 = 𝑏𝑚

𝜕𝑟

𝜕𝑏= 𝑊 − 𝑀𝑇 𝑥 = 𝑏

Page 31: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 31

Training: Solution Derivation

𝜕𝑟

𝜕𝑀=

𝑖=1

𝑚

𝑊𝑖 − 𝑀𝑇𝑥𝑖 − 𝑏 (−𝑥𝑖) = 0

𝑀에대한펞믞분

0 =

𝑖=1

𝑚

𝑊𝑖𝑥𝑖 − 𝑀𝑇𝑥𝑖𝑥𝑖 − 𝒃𝑥𝑖

0 =

𝑖=1

𝑚

𝑊𝑖𝑥𝑖 − 𝑀𝑇𝑥𝑖𝑥𝑖 − ( 𝑊 − 𝑀𝑇 𝑥)𝑥𝑖

0 =

𝑖=1

𝑚

𝑊𝑖𝑥𝑖 − 𝑀𝑇𝑥𝑖𝑥𝑖 − 𝑊𝑥𝑖 + 𝑀𝑇 𝑥𝑥𝑖

𝑖=1

𝑚

(𝑀𝑇 𝑥𝑥𝑖 −𝑀𝑇𝑥𝑖𝑥𝑖) =

𝑖=1

𝑚

𝑊𝑖𝑥𝑖 − 𝑊𝑥𝑖

(

𝑖=1

𝑚

𝑥𝑥𝑖 − 𝑥𝑖𝑥𝑖 𝑀𝑇) =

𝑖=1

𝑚

𝑊𝑖𝑥𝑖 − 𝑊𝑥𝑖

𝑀𝑇 =

𝑖=1

𝑚

𝑥𝑥𝑖 − 𝑥𝑖𝑥𝑖

−1

𝑖=1

𝑚

𝑊𝑖𝑥𝑖 − 𝑊𝑥𝑖

𝑊 − 𝑀𝑇 𝑥 = 𝑏

0의값을갖는읎유는몚든 instance의값을더하는것곌평균을 n번더하는것은같은값을갖게하Ʞ때묞

Page 32: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 32

Training: Solution Derivation

𝜕𝑟

𝜕𝑀=

𝑖=1

𝑚

𝑊𝑖 − 𝑀𝑇𝑥𝑖 − 𝑏 (−𝑥𝑖) = 0

𝑀에대한펞믞분

𝑀𝑇 =

𝑖=1

𝑚

𝑥𝑥𝑖 − 𝑥𝑖𝑥𝑖

−1

𝑖=1

𝑚

𝑊𝑖𝑥𝑖 − 𝑊𝑥𝑖

𝑀𝑇 =

𝑖=1

𝑚

𝑥𝑖𝑥𝑖𝑇 − 𝑥𝑇𝑥𝑖 + ( 𝑥 𝑥𝑇 − 𝑥𝑥𝑖

𝑇)

−1

𝑖=1

𝑚

𝑊𝑖𝑥𝑖 − 𝑊𝑥𝑖 + ( 𝑊 𝑥 − 𝑊𝑖 𝑥)

𝑀𝑇 =

𝑖=1

𝑚

𝑥𝑖 − 𝑥)(𝑥𝑖 − 𝑥 𝑇

−1

𝑖=1

𝑚

𝑥𝑖 − 𝑥 (𝑊𝑖 − 𝑊)

𝑀𝑇 =

𝑖=1

𝑚

𝑣𝑎𝑟(𝑥𝑖)

−1

𝑖=1

𝑚

𝑐𝑜𝑣(𝑥𝑖 , 𝑊𝑖)

solution

𝑀𝑇 =

𝑖=1

𝑚

𝑥𝑖 − 𝑥)(𝑥𝑖 − 𝑥 𝑇

−1

𝑖=1

𝑚

𝑥𝑖 − 𝑥 (𝑊𝑖 − 𝑊)

𝑏 = 𝑊 − 𝑀𝑇 𝑥

Page 33: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 33

Training: Algorithm

Page 34: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 34

Regression: other problems

Page 35: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 35

Regression: Multiple variables

• 친구에 대한 정볎가 많은 겜우

í‚€ 나읎 발크Ʞ 닀늬Ꞟ읎 몞묎게

친구1 160 17 230 80 50

친구2 165 20 235 85 50

친구3 170 21 240 85 55

친구4 170 24 245 90 60

친구5 175 26 250 90 60

Features Label

Instance → 𝑖

ℎ 𝑥 = 𝑀0𝑥0 +𝑀1𝑥1 + 𝑀2𝑥2 + 𝑀3𝑥3 + 𝑀4𝑥4 + 𝑀5𝑥5Hypothesis:

𝑀0, 𝑀1, 𝑀2, 𝑀3, 𝑀4, 𝑀5Parameters:

𝑥0, 𝑥1, 𝑥2, 𝑥3, 𝑥4, 𝑥5Features:

𝑊𝑥1 𝑥2 𝑥3 𝑥4

𝑖1

𝑖2

𝑖3

𝑖4

𝑖5

Page 36: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 36

Regression: Multiple variables

• Hypothesis:

• Parameters:

• Features:

• Cost function:

ℎ 𝑥 = 𝑀𝑇𝑥 = 𝑀0𝑥0 + 𝑀1𝑥1 + 𝑀2𝑥2 +⋯+𝑀𝑛𝑥𝑛

𝑀0, 𝑀1, 𝑀2, 𝑀3, 𝑀4, 
 , 𝑀𝑛

𝑥0, 𝑥1, 𝑥2, 𝑥3, 𝑥4, 
 , 𝑥𝑛

∈ ℛ𝑛+1

∈ ℛ𝑛+1

𝐜 𝑀0, 𝑀1, 
 , 𝑀𝜃 =1

2

𝑖=1

𝑚

𝑊𝑖 − ℎ(𝑥𝑖)2

𝑥 =

𝑥0𝑥1𝑥2𝑥3 𝑥𝑛

∈ ℛ𝑛+1 𝑀 =

𝑀0

𝑀1

𝑀2

𝑀3

 𝑀𝑛

∈ ℛ𝑛+1

Page 37: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 37

Multiple variables: Gradient descent

• Gradient descent

𝜕𝐜(𝜃)

𝜕𝑀=

𝑖=1

𝑚

𝑊𝑖 − 𝑀𝑇𝑥𝑖 (−𝑥𝑖)

Standard (n=1), n: num. of features

Repeat {

}

𝑀0 = 𝑀0 − 𝜂

𝑖=1

𝑚

𝑊𝑖 −𝑀𝑇𝑥𝑖

−𝑥𝑖𝑗 → −𝑥𝑖0 = 1

𝑀1 = 𝑀1 − 𝜂

𝑖=1

𝑚

𝑊𝑖 −𝑀𝑇𝑥𝑖 −𝑥𝑖1

Multiple (n>=1)

Repeat {

}

𝑀𝑗 = 𝑀𝑗 − 𝜂

𝑖=1

𝑚

𝑊𝑖 − 𝑀𝑇𝑥𝑖 −𝑥𝑖𝑗

𝑀0 = 𝑀0 − 𝜂

𝑖=1

𝑚

𝑊𝑖 − 𝑀𝑇𝑥𝑖 −𝑥𝑖0

𝑀1 = 𝑀1 − 𝜂

𝑖=1

𝑚

𝑊𝑖 −𝑀𝑇𝑥𝑖 −𝑥𝑖1

𝑀2 = 𝑀2 − 𝜂

𝑖=1

𝑚

𝑊𝑖 −𝑀𝑇𝑥𝑖 −𝑥𝑖2




Page 38: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 38

Multiple variables: Feature scaling

• Feature scaling

• 각각의 자질 값 범위듀읎 서로 닀늄• í‚€: 160~175, 나읎: 17~26, 발 크Ʞ: 230~250, 닀늬 Ꞟ읎:

80~90

• Gradient descent 할 때 최소 값윌로 수렎하는데 였래걞늌

í‚€ 나읎 발크Ʞ 닀늬Ꞟ읎 몞묎게

친구1 160 17 230 80 50

친구2 165 20 235 85 50

친구3 170 21 240 85 55

친구4 170 24 245 90 60

친구5 175 26 250 90 60

Page 39: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 39

Multiple variables: Feature scaling

• Feature scaling

• 자질 값 범위가 너묎 컀서 귞늌곌 같읎 믞분을 많읎 하게 됚, 슉 iteration을 많읎 수행하게 됚

• 예륌 듀얎• 읎 정도 찚읎의 자질듀은 ꎜ찮음

• 읎 정도 찚읎의 자질듀읎 묞제

−0.5 ≀ 𝑥1 ≀ 0.5

−2 ≀ 𝑥2 ≀ 3

−1000 ≀ 𝑥1 ≀ 2000

0 ≀ 𝑥2 ≀ 5000

Page 40: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 40

Multiple variables: Feature scaling

• Feature scaling

• 따띌서 자질 값 범위륌 −1 ≀ 𝑥𝑖 ≀ 1 사읎로 재정의

Feature scaling

• Scaling: 𝑥𝑖: 𝑓𝑒𝑎𝑡𝑢𝑟𝑒 𝑑𝑎𝑡𝑎

𝑆𝑖: 𝑟𝑎𝑛𝑔𝑒 𝑜𝑓 𝑓𝑒𝑎𝑡𝑢𝑟𝑒 𝑑𝑎𝑡𝑎𝑠𝑆𝑖 = max 𝑓𝑒𝑎𝑡. − min(𝑓𝑒𝑎𝑡. )

𝑆𝑖 = 230 ≀ 𝑥𝑖 ≀ 250→ range: 250 − 230 = 20

𝑥𝑖 − 𝜇𝑖𝑆𝑖 𝜇𝑖: 𝑚𝑒𝑎𝑛 𝑜𝑓 𝑓𝑒𝑎𝑡𝑢𝑟𝑒 𝑑𝑎𝑡𝑎𝑠

𝑥𝑖 − 240

20𝜇𝑖 = 240

Example

𝑥1 = 230 →230 − 240

20= −0.5

𝑥5 = 230 →250 − 240

20= 0.5

Page 41: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 41

Multiple variables: Feature scaling

• Feature scaling

• Feature scaling을 통하여 정규화

• ê°„ë‹ší•œ 연산

• 결국에 Gradient descent가 빠륎게 수렎할 수 있음

Page 42: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 42

Linear Regression: Normal equation

• 앞에서 닀뀘던 방법은 닀항식을 읎용한 분석적 방법

• 분석적 방법은 ê³ ì°š 핚수나 닀변수 핚수가 되멎 계산읎얎렀움

• 따띌서 대수적 방법윌로 ì ‘ê·Œ Normal equation

분석적방법:

• Gradient Descent 필요

𝜂와 many iteration 필요

• 𝑛읎많윌멎좋은성능

Such as, 𝑚 training examples, 𝑛 features

대수적방법:

• Gradient Descent 필요없음

𝜂와many iteration 필요없음

• 𝑋𝑇𝑋 −1의계산만필요 𝑂(𝑛3)

• 𝑛읎많윌멎속도느늌

Page 43: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 43

Size (feet2) Number of bedrooms Number of floors Age of home (years) Price ($1000)

1 2104 5 1 45 4601 1416 3 2 40 2321 1534 3 2 30 3151 852 2 1 36 178

Examples:

Linear Regression: Normal equation

𝑊 =

𝑀0

𝑀1

𝑀2

𝑀3

𝑀4

∎ 𝑊𝑋 = 𝑊

Page 44: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 44

Size (feet2) Number of bedrooms Number of floors Age of home (years) Price ($1000)

1 2104 5 1 45 4601 1416 3 2 40 2321 1534 3 2 30 3151 852 2 1 36 1781

Examples:

Linear Regression: Normal equation

𝑊 = 𝑋𝑇𝑋 −1𝑋𝑇𝑊𝑊𝑋 = 𝑊 →

Page 45: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 45

Linear Regression: Normal equation

“𝑊 = 𝑋𝑇𝑋 −1𝑋𝑇𝑊”가정말 𝑟𝑒𝑠𝑖𝑑𝑢𝑎𝑙2 합을최소로하는몚덞읞가?얎떻게유도하는가?

𝑟 = 𝑊 − 𝑊 → 𝑌 −𝑊𝑋 2

min( 𝑌 −𝑊𝑋 2)을만족하는𝑊륌구하띌

∎ 𝑊을펞믞분한후 0윌로놓윌멎

−2𝑋𝑇 𝑌 −𝑊𝑋 = 0

−2𝑋𝑇𝑌 + 2𝑋𝑇𝑊𝑋 = 0

2𝑋𝑇𝑊𝑋 = 2𝑋𝑇𝑌

∎ 𝑊 = 𝑋𝑇𝑋 −1𝑋𝑇𝑌

𝑋𝑇𝑊𝑋 = 𝑋𝑇𝑌

Page 46: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 46

References

• https://class.coursera.org/ml-007/lecture

• http://deepcumen.com/2015/04/linear-regression-2/

• http://www.aistudy.com/math/regression_lee.htm

• http://en.wikipedia.org/wiki/Linear_regression

Page 47: Linear Regression 𝑖 𝜶 - Kangwoncs.kangwon.ac.kr/~parkce/seminar/2015_MachineLearning/03... · 2016. 6. 17. · 𝑖 𝜶7 Linear Regression •슉, 회귀묞제란.. •수치형목적값을예잡하는방법

𝑠𝑖𝑔𝑚𝑎 𝜶 47

QA

감사합니닀.

박천음, 박찬믌, 최재혁, 박섞빈, 읎수정

𝑠𝑖𝑔𝑚𝑎 𝜶 , 강원대학교

Email: [email protected]