AI(Artificial Intelligence)/ML(Machine Learning)

[Machine Learning] ๋จธ์‹ ๋Ÿฌ๋‹ workflow, ๋ฐ์ดํ„ฐ์…‹ ๋ถ„๋ฆฌ

ํƒฑ์ ค 2021. 2. 8. 23:10

ahnty0122.tistory.com/58

 

[Deep Learning] ๋”ฅ๋Ÿฌ๋‹/๋จธ์‹ ๋Ÿฌ๋‹/์ธ๊ณต์ง€๋Šฅ์˜ ์ฐจ์ด, ์ธ๊ณต์‹ ๊ฒฝ๋ง ๊ฐœ๋…

๋”ฅ๋Ÿฌ๋‹์— ๋Œ€ํ•ด ์ดํ•ดํ•˜๋ ค๋ฉด ๋จผ์ € ์ธ๊ณต์ง€๋Šฅ, ๋จธ์‹ ๋Ÿฌ๋‹, ๋”ฅ๋Ÿฌ๋‹์˜ ์ฐจ์ด์ ์„ ์•Œ์•„์•ผํ•œ๋‹ค. ์ธ๊ณต์ง€๋Šฅ(AI): ์‚ฌ๋žŒ์˜ ์ง€๋Šฅ์„ ๋ชจ๋ฐฉํ•ด ์‚ฌ๋žŒ์ด ํ•˜๋Š” ๋ณต์žกํ•œ ์ผ์„ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๊ณ„๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ ๋จธ์‹ ๋Ÿฌ๋‹(ML): ์ž…

ahnty0122.tistory.com

Machine Learning Workflow

์œ„์˜ ๊ธ€์—์„œ ์ธ๊ณต์‹ ๊ฒฝ๋ง์„ ํ•™์Šตํ•˜๋Š” ๊ณผ์ •์— ๋Œ€ํ•ด ์ ์–ด๋†จ๋Š”๋ฐ, ์ด ์ธ๊ณต์‹ ๊ฒฝ๋ง์„ ํ•™์Šตํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž.

๋ฏธ๋ฆฌ ์ •ํ•ด์ง„, ๋‹ต์ด ์žˆ๋Š” ํŠธ๋ ˆ์ด๋‹ ๋ฐ์ดํ„ฐ๋กœ ๋จธ์‹ ๋Ÿฌ๋‹ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ•™์Šตํ•ด ๋ชจ๋ธ์„ ์–ป๋Š” training(ํ•™์Šต)๊ณผ์ •์„ ๊ฑฐ์ณ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ํ•™์Šต์ด ๋˜๋Š”์ง€ ์ž„์˜์˜ ์ž…๋ ฅ๋ฐ์ดํ„ฐ๋ฅผ ํ†ตํ•ด ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•˜๋Š” test ๊ณผ์ •์„ ๊ฑฐ์นœ๋‹ค.

 

Data Split

์—ฌ๊ธฐ์„œ ๊ฒฐ๊ณผ๊ฐ€ ์ข‹์€์ง€ ๋‚˜์œ์ง€ ํŒ๋‹จ ํ›„ ๋‹ค์‹œ ํ•™์Šตํ• ์ง€ ๊ฒฐ์ •ํ•˜๋Š”๋ฐ, ์ด ๊ณผ์ •์„ ์œ„ํ•ด ๋ฐ์ดํ„ฐ๋Š” ์„ธ ๊ฐ€์ง€๋กœ ๋ถ„๋ฅ˜๋œ๋‹ค.

dataset split

1. Train data: ๋งค๊ฐœ๋ณ€์ˆ˜(weight, bias)ํ•™์Šต์— ์‚ฌ์šฉ๋˜๋Š” data

2. Test data: ๋ชจ๋ธ ์„ฑ๋Šฅ์„ ์ธก์ •ํ•˜๊ธฐ ์œ„ํ•œ data

3. Validation data: ๊ฒ€์ฆ์šฉ data, training error์™€ validation error๋ฅผ ์ด์šฉํ•ด ์–ด๋Š ์‹œ์ ์— ํ•™์Šต์„ ๋ฉˆ์ถœ์ง€ ๊ฒฐ์ •ํ•œ๋‹ค.


Loss funtion

Training (๋งค๊ฐœ๋ณ€์ˆ˜ ํ•™์Šต ๊ณผ์ •)์—๋Š” loss function์„ ์ด์šฉํ•œ๋‹ค.

Loss function(= cost function)

  loss function

์œ„์˜ ์ˆ˜์‹์—์„œ w: weight, x: input, b: bias, y: ์‹ค์ œ ์ •๋‹ต๊ฐ’ ์ด๋‹ค.

์ด loss๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•ด ๊ฐ€์ค‘์น˜์— ๋Œ€ํ•œ loss์˜ ๊ธฐ์šธ๊ธฐ์ธ Gradient๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ์—ฌ๊ธฐ์„œ gradient๋Š” loss์˜ ๊ธฐ์šธ๊ธฐ์ด๋ฏ€๋กœ ๋ฏธ๋ถ„๊ฐ’๊ณผ ๊ฐ™๋‹ค๊ณ  ๋ณด๋ฉด ๋œ๋‹ค.

 

(((์ด ๋•Œ loss function์˜ ๊ฐ’์„ ๊ฐ€๋Šฅํ•œ ํ•œ ๋‚ฎ์ถ”๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜ weight, bias๋ฅผ ์ฐพ๋Š” ๊ฒƒ์ด training์˜ ๋ชฉ์ ์ด๋‹ค.)))

 

Gradient Descent

Gradient Descent

Loss์˜ ๋ฏธ๋ถ„๊ฐ’์ธ Gradient๋ฅผ ์ž˜ ์ด์šฉํ•ด ์˜ค์ฐจ ํ•จ์ˆ˜์˜ ์ตœ์†Ÿ๊ฐ’์„ ์ฐพ๋Š” ๊ฒƒ์ด gradient descent, ๊ฒฝ์‚ฌํ•˜๊ฐ•๋ฒ•์ด๋‹ค.

์ด๋ ‡๊ฒŒ ํ•จ์ˆ˜์˜ ๊ฐ’์„ ์ ์  ์ค„์—ฌ์„œ ์ตœ์ ์˜ ๋งค๊ฐœ๋ณ€์ˆ˜ ์ฐพ๋Š” ๊ฒƒ์ด ํ•™์Šต์˜ ๋ชฉํ‘œ์ธ๋ฐ, ์–ด๋–ป๊ฒŒ ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์–ป๋Š๋ƒ?

 

๋ฐ”๋กœ ์—ญ์ „ํŒŒ ์•Œ๊ณ ๋ฆฌ์ฆ˜(Backpropagation)์ด๋‹ค.

Backpropagation

์—ญ์ „ํŒŒ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๊ฒฐ๊ณผ๊ฐ’์˜ ์˜ค์ฐจ๋ฅผ ์—ญ์œผ๋กœ input์— ๋ณด๋‚ด๋ฉฐ ๊ฐ€์ค‘์น˜๋ฅผ ์—…๋ฐ์ดํŠธ ํ•˜๋Š” ๊ณผ์ •์œผ๋กœ, ๊ฐ€์ค‘์น˜๊ฐ€ ์—…๋ฐ์ดํŠธ ๋˜๋ฉด์„œ ์˜ค์ฐจ๊ฐ€ ์ค„์–ด๋“ ๋‹ค. ์ด ๋•Œ ์ ์ฐจ์ ์œผ๋กœ ์˜ค์ฐจ๋ฅผ ์ค„์ด๋Š” ๊ณผ์ •์— ๊ฒฝ์‚ฌํ•˜๊ฐ•๋ฒ•(gradient descent)๊ฐ€ ์‚ฌ์šฉ๋œ๋‹ค.

weight update

๊ฐ€์ค‘์น˜ ์—…๋ฐ์ดํŠธ ์‹์€ ์œ„์™€ ๊ฐ™์€๋ฐ, ์˜ค์ฐจ๋ฅผ ๊ฐ€์ค‘์น˜๋กœ ๋ฏธ๋ถ„ํ•œ ๊ฐ’์„ ๋นผ์ค€๋‹ค. ์—ฌ๊ธฐ์„œ ํ•™์Šต๋ฅ ์€ ๊ฒฝ์‚ฌํ•˜๊ฐ• ์‹œ ์–ผ๋งŒํผ์˜ ๋ณดํญ์œผ๋กœ ๋‚ด๋ ค๊ฐ€๋Š”์ง€๋ฅผ ๊ฒฐ์ •ํ•œ๋‹ค. ๊ฐ€์ค‘์น˜์— ๋Œ€ํ•œ ์˜ค์ฐจ๋ฅผ ํŽธ๋ฏธ๋ถ„ํ•œ ๊ฐ’์„ ๊ฐ€์ค‘์น˜์—์„œ ๋นผ์„œ ์—…๋ฐ์ดํŠธ๋ฅผ ์ง„ํ–‰ํ•œ๋‹ค.

 

์ถ”ํ›„ ํ•™์Šต์—์„œ ์ดˆ๊ธฐ ๊ฐ€์ค‘์น˜์™€ ํŽธํ–ฅ, ํ•™์Šต๋ฅ ์„ ์ •ํ•˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ์ค‘์š”ํ•˜๊ณ , ์ด ๊ฐ’๋“ค์„ ๋ณ€ํ™”์‹œํ‚ค๋ฉฐ ๋ชจ๋ธ ํŠœ๋‹์— ์‚ฌ์šฉ๋˜๊ธฐ๋„ ํ•œ๋‹ค.

728x90