๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

DataScience/Machine Learning Basic

Multivariable linear regression

์ง€๋‚œ ์‹œ๊ฐ„๊นŒ์ง€ Linear regression์—์„œ input variable์˜ ๊ฐœ์ˆ˜๊ฐ€ ํ•˜๋‚˜์ผ ๋•Œ์˜ Hypothesis, Cost ํ•จ์ˆ˜, Gradient descent algorithm๊นŒ์ง€ ๋‹ค๋ฃจ์–ด๋ดค๋‹ค. ์‚ฌ์‹ค ํ˜„์‹ค ์„ธ๊ณ„์—์„œ ๋ณ€์ˆ˜ ํ•˜๋‚˜๋กœ ์ข…์† ๋ณ€์ˆ˜๋ฅผ ์˜ˆ์ธกํ•˜๋Š” ๊ฒฝ์šฐ๋Š” ๋งŽ์ง€ ์•Š๋‹ค. ์ฃผ๋กœ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ณ€์ˆ˜๋ฅผ ํ†ตํ•ด ์ข…์† ๋ณ€์ˆ˜๋ฅผ ์˜ˆ์ธกํ•ด๋‚ด๊ณค ํ•œ๋‹ค. 

Multivariable Linear Regression

Input variable์ด ์—ฌ๋Ÿฌ ๊ฐœ๊ฐ€ ๋  ๋•Œ, ์šฐ๋ฆฌ๋Š” ๊ฐ€์„ค์„ ๋ฐ”๊พธ์–ด์ฃผ์–ด์•ผ ํ•œ๋‹ค.

input ๋ณ€์ˆ˜๊ฐ€ 3๊ฐœ์ผ ๋•Œ์˜ hypothesis์™€ cost ํ•จ์ˆ˜
n ๊ฐœ์˜ input variable์„ ๊ฐ€์ง„ ๊ฒฝ์šฐ์˜ hypothesis

์ด ๊ฒฝ์šฐ, ์šฐ๋ฆฌ๋Š” ์ˆ˜์‹์„ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ํ‘œํ˜„ํ•˜๊ธฐ ์œ„ํ•ด ํ–‰๋ ฌ (matrix) ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

ํ–‰๋ ฌ์˜ ๊ณฑ์…ˆ์„ ํ†ตํ•ด ๋‚˜ํƒ€๋‚ธ Hypothesis

x1 x2 x3 Y
73 80 75 152
93 88 93 185
89 91 90 180
96 98 100 196
73 66 70 142

์ด๋Ÿฌํ•œ x1, x2, x3๋ผ๋Š” ์ž…๋ ฅ๋ณ€์ˆ˜์— ๋”ฐ๋ฅธ Y๊ฐ’์„ ๊ฐ€์ง„ ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋‹ค๊ณ  ํ•  ๋•Œ, ์šฐ๋ฆฌ๋Š” ํ•˜๋‚˜์˜ ํ–‰์„ Instance ๋ผ๊ณ  ํ‘œํ˜„ํ•œ

๋‹ค.

Matrix ์˜ ์žฅ์ ์€ ์—ฌ๋Ÿฌ ๊ฐœ์˜ Instance ์— ๋Œ€ํ•œ ์—ฐ์‚ฐ์„ ํ•œ๊บผ๋ฒˆ์— ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์ด๋‹ค.

matrix๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ, ์šฐ๋ฆฌ๋Š” ๊ฐ๊ฐ์˜ instance์— ๋Œ€ํ•ด์„œ instance ์ˆ˜๋งŒํผ์˜ ์—ฐ์‚ฐ์„ ์ง„ํ–‰ํ•ด์•ผ ํ•œ๋‹ค. instance๊ฐ€ 10000๊ฐœ์ธ ๋ฐ์ดํ„ฐ์˜ ๊ฒฝ์šฐ, 10000๋ฒˆ์˜ ์—ฐ์‚ฐ์„ ์‹คํ–‰ํ•ด์•ผ ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. 

ํ•˜์ง€๋งŒ matrix๋ฅผ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ, ์šฐ๋ฆฌ๊ฐ€ ์‹คํ–‰ํ•  ์—ฐ์‚ฐ์€ 1๋ฒˆ์ด๋ฉด ์กฑํ•˜๋‹ค. (๋ฌผ๋ก  ์ปดํ“จํ„ฐ๋Š” ๋˜‘๊ฐ™์€ ์—ฐ์‚ฐ์„ ์ง„ํ–‰ํ•˜๊ธฐ๋Š” ํ•˜๊ฒ ์ง€๋งŒ, ์ฝ”๋“œ์˜ ๋ณต์žก๋„, ์ปดํ“จํ„ฐ์˜ ๊ณ„์‚ฐ ๋ฐฉ์‹์ด ๋‹ฌ๋ผ์ง€๊ฒŒ ๋œ๋‹ค. )

ํ–‰๋ ฌ์„ ์ด์šฉํ•œ ์—ฐ์‚ฐ

 ์šฐ๋ฆฌ๊ฐ€ Matrix๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š”, ๊ฐ€์ค‘์น˜์˜ ํฌ๊ธฐ๋ฅผ ๊ฒฐ์ •ํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค.

๊ฐ€์„ค ํ•จ์ˆ˜

H(x) ์˜ ํฌ๊ธฐ๊ฐ€ (a,b) , X์˜ ํฌ๊ธฐ๊ฐ€ (c,d), W์˜ ํฌ๊ธฐ๊ฐ€ (n,m)์ด๋ผ๊ณ  ํ•ด๋ณด์ž

X๋Š” ๋ฐ์ดํ„ฐ์ด๋ฏ€๋กœ ํฌ๊ธฐ๊ฐ€ ๊ฒฐ์ •๋˜์–ด ์žˆ๋‹ค. ๋ฐ์ดํ„ฐ๊ฐ€ ๋ช‡ ํ–‰ ๋ช‡ ์—ด์ธ์ง€์— ๋”ฐ๋ผ c์™€ d๊ฐ’์€ ๊ฒฐ์ •๋œ๋‹ค. 

c๋Š” instance, ์ฆ‰ ํ–‰์˜ ํฌ๊ธฐ์ด๊ณ  d๋Š” variable, ์ฆ‰ ์—ด์˜ ํฌ๊ธฐ(y๊ฐ’์„ ์ œ์™ธํ•œ)์ด๋‹ค. 

H(x) ์—ญ์‹œ ์šฐ๋ฆฌ๊ฐ€ ๋ณด๊ณ ์ž ํ•˜๋Š” Y๊ฐ’์„ ๋‹ด๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ํฌ๊ธฐ๊ฐ€ ์ •ํ•ด์ ธ ์žˆ๋‹ค. Linear Regression์˜ ๊ฒฝ์šฐ ๊ฒฐ๊ณผ๊ฐ’์ด ํ•˜๋‚˜๋งŒ ๋‚˜์˜ค๊ธฐ ๋•Œ๋ฌธ์— b ๊ฐ’์€ 1๋กœ ์ •ํ•ด์ ธ ์žˆ๋‹ค. ๋˜ํ•œ, ํ•˜๋‚˜์˜ ํ–‰๋ณ„๋กœ Y ๊ฐ’์ด ๋‚˜์˜ค๊ธฐ ๋•Œ๋ฌธ์— a๊ฐ’์€ c์™€ ๊ฐ™์ด instance์˜ ๊ฐœ์ˆ˜์ด๋‹ค. 

์šฐ๋ฆฌ๋Š” ๊ฐ€์ค‘์น˜์ธ W ์˜ ํฌ๊ธฐ๋ฅผ ๊ฒฐ์ •ํ•ด ์ฃผ์–ด์•ผ ํ•œ๋‹ค. 

W์˜ ํฌ๊ธฐ์˜ ๊ฒฐ์ •์€ ํ–‰๋ ฌ์˜ ๊ณฑ์…ˆ์˜ ์›๋ฆฌ๋ฅผ ์ƒ๊ฐํ•ด๋ณด๋ฉด ์‰ฌ์šด๋ฐ, ๊ฒฐ๊ตญ

ํ–‰๋ ฌ์˜ ๊ณฑ์…ˆ์„ ์ƒ๊ฐํ•ด๋ณด์ž

d์™€ n์ด ๊ฐ™์•„์•ผ ํ•˜๊ณ , c์™€ a, m๊ณผ b๊ฐ€ ๊ฐ™์•„์•ผ ํ•œ๋‹ค. 

๊ฒฐ๊ตญ W์˜ ํฌ๊ธฐ ์ค‘ n์€ variable์˜ ๊ฐœ์ˆ˜, m์€ ouput์˜ ์ˆ˜๊ฐ€ ๋œ๋‹ค. 

'DataScience > Machine Learning Basic' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

Linear Regression Cost Function & Gradient Descent Algorithm  (0) 2022.02.20
Tensorflow Linear Regression Implementation  (1) 2022.01.26
Linear Regression  (0) 2022.01.25
Tensorflow ๊ธฐ๋ณธ Operation  (0) 2022.01.21
Tensorflow in Pycharm ๊ทธ๋ฆฌ๊ณ  Google Colab  (0) 2022.01.21