Machine Learning

[Machine Learning] Hyperparameter Tuning

๊ฐœ๋ฐœ์ž์—ด๋ฌด 2023. 4. 21. 12:54
๋ฐ˜์‘ํ˜•

โœ‹ Hyperparameter Tuning

- ๋ชฉ์  : ํ›ˆ๋ จ ํ‰๊ฐ€ / ๊ฒ€์ฆ ํ‰๊ฐ€ ์‚ฌ์ด์˜ ์ฐจ์ด๊ฐ€ ์ตœ์†Œ๊ฐ€ ๋˜๋„๋ก ๋งŒ๋“œ๋Š” ๊ฒƒ (Overfitting ๋ฐฉ์ง€)

 

๐Ÿ‘‰ Hyperparameter ์˜ ์ˆ˜๊ฐ€ ๋„ˆ๋ฌด ๋งŽ๊ธฐ ๋•Œ๋ฌธ์—, ์ตœ์ ์˜ parameter ๋ฅผ ์ฐพ์•„์ฃผ๋Š” ๋„๊ตฌ๋“ค์„ ์จ์„œ ์ฐพ์•„๋‚ธ๋‹ค

 

https://communities.sas.com/t5/SAS-Tech-Tip

โœ‹ 1) Grid Search

: ๋Œ€์ฒด ๋ชจ๋ธ ๊ตฌ์„ฑ(alternative model configrations) ์„ ํƒ์ƒ‰ํ•˜๋Š” ์ผ๋ฐ˜์ ์ธ ์ ‘๊ทผ ๋ฐฉ์‹์€ ๊ทธ๋ฆฌ๋“œ ๊ฒ€์ƒ‰ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉ

 

๐Ÿ‘‰ ๋ชจ๋ธ ํ•˜์ดํผ ํŒŒ๋ผ๋ฏธํ„ฐ์— ๋„ฃ์„ ์ˆ˜ ์žˆ๋Š” ๊ฐ’๋“ค์„ ์ˆœ์ฐจ์ ์œผ๋กœ ์ž…๋ ฅํ•œ ๋’ค์—,

      ๊ฐ€์žฅ ๋†’์€ ์„ฑ๋Šฅ์„ ๋ณด์ด๋Š” ํ•˜์ดํผ ํŒŒ๋ผ๋ฏธํ„ฐ ๊ฐ’์„ ์ฐพ๋Š” ํƒ์ƒ‰ ๋ฐฉ๋ฒ•

 

๐ŸŽˆ ๊ด€์‹ฌ์žˆ๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜๋“ค์„ ๋Œ€์ƒ์œผ๋กœ ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ์กฐํ•ฉ์„ ์‹œ๋„ํ•˜์—ฌ ์ตœ์ ์˜ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ฐพ๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ

     ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ํŠœ๋‹ํ•˜์—ฌ ์ผ๋ฐ˜ํ™” ์„ฑ๋Šฅ์„ ๊ฐœ์„ 

โœ‹ 2) Random Search

: ํ•˜์ดํผ ํŒŒ๋ผ๋ฏธํ„ฐ ๊ฐ’์„ ๋žœ๋คํ•˜๊ฒŒ ๋„ฃ์–ด๋ณด๊ณ  ๊ทธ ์ค‘ ์šฐ์ˆ˜ํ•œ ๊ฐ’์„ ๋ณด์ด๋Š” ํ•˜์ดํผ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ํ™œ์šฉํ•ด ๋ชจ๋ธ์„ ์ƒ์„ฑ

 

๐Ÿ‘‰ ๊ทธ๋ฆฌ๋“œ ๊ฒ€์ƒ‰ ๋ฐฉ๋ฒ•์€ ๋ชจ๋“  ๊ฐ’์„ ํƒ์ƒ‰ํ•ด์•ผํ•˜๋ฉฐ, ์–ด๋–ค ๊ฐ’์ด ํšจ๊ณผ์ ์ธ์ง€ ์•Œ ์ˆ˜ ์—†์Œ

      But, ๋žœ๋ค ๊ฒ€์ƒ‰ ๋ฐฉ๋ฒ•์€ ๋žœ๋คํ•˜๊ฒŒ ์ˆซ์ž๋ฅผ ๋„ฃ์€ ๋’ค ์ •ํ•ด์ง„ ๊ฐ„๊ฒฉ(grid) ์‚ฌ์ด์— ์œ„์น˜ํ•œ ๊ฐ’๋“ค์— ๋Œ€ํ•ด์„œ๋„

     ํ™•๋ฅ ์ ์œผ๋กœ ํƒ์ƒ‰์ด ๊ฐ€๋Šฅํ•˜์—ฌ ์ตœ์ ์˜ hyper parameter ๊ฐ’์„ ๋” ๋นจ๋ฆฌ ์ฐพ์„ ์ˆ˜ ์žˆ์Œ

โœ‹ 3) Latin HyperCube

: ๋ฐ์ดํ„ฐ๊ฐ€ ๊ณ ๋ฅด๊ฒŒ ๋ถ„ํฌ๋˜์–ด ์žˆ๋Š” ํŠน์ง•์ด ์žˆ์Œ

 

๐Ÿ‘‰ 1. ๊ฐ ์ •์˜๋œ ๋ถ„ํฌ์—์„œ ๋ฌด์ž‘์œ„๋กœ ๊ฐ’์„ ์„ ํƒํ•˜๊ณ  ๊ท ์ผํ•˜๊ฒŒ ๋ถ„์‚ฐ

      2. ๊ฐ ๊ฐ€์ •์˜ ํ™•๋ฅ  ๋ถ„ํฌ๋ฅผ ๊ฐ๊ฐ ๊ฐ™์€ ํ™•๋ฅ ์˜ ๊ฒน์น˜์ง€ ์•Š์€ ์„ธ๊ทธ๋จผํŠธ๋กœ ๋‚˜๋ˆ”

      3. ์‹œ๋ฎฌ๋ ˆ์ด์…˜์ด ์‹คํ–‰๋˜๋Š” ๋™์•ˆ ์„ธ๊ทธ๋จผํŠธ์˜ ํ™•๋ฅ  ๋ถ„ํฌ์— ๋”ฐ๋ผ ๊ฐ ์„ธ๊ทธ๋จผํŠธ์˜ ๋ฌด์ž‘์œ„ ๊ฐ€์ • ๊ฐ’์„ ์„ ํƒ

      โ–ท ๊ฐ ์„ธ๊ทธ๋จผํŠธ๋ฅผ ์ •ํ™•ํžˆ ํ•œ ๋ฒˆ ์ƒ˜ํ”Œ๋งํ•œ ํ›„์—๋Š” ์‹œ๋ฎฌ๋ ˆ์ด์…˜์ด ์ค‘์ง€๋  ๋•Œ๊นŒ์ง€ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋ฐ˜๋ณต

          ์ „์ฒด ๋ฒ”์œ„์˜ ๋ถ„ํฌ๊ฐ€ ๋ณด๋‹ค ๊ท ์ผํ•˜๊ณ  ์ผ๊ด€๋˜๊ฒŒ ์ƒ˜ํ”Œ๋ง ๋จ

          ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ํ†ต๊ณ„๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ๊ฒฝ์šฐ๋ณด๋‹ค ์ •ํ™•ํ•œ ๊ฒฐ๊ณผ๊ฐ’์„ ๋„์ถœ

โœ‹ 4) Optimization

: ๋จธ์‹ ๋Ÿฌ๋‹๊ณผ scoring ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋ณต์žกํ•œ ๋ธ”๋ž™๋ฐ•์Šค์ด๊ธฐ ๋•Œ๋ฌธ์— ์–ด๋ ค์šด ์ตœ์ ํ™” ๋ฌธ์ œ๋ฅผ ๋งŒ๋“ค์–ด๋ƒ„

 

hyper parameter ์ตœ์ ํ™” ์‹œ ์–ด๋ ค์›€

 

๐Ÿ“ข ๋จธ์‹ ๋Ÿฌ๋‹ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ์ผ๋ฐ˜์ ์œผ๋กœ ์—ฐ์†ํ˜• / ๋ฒ”์ฃผํ˜• / ์ •์ˆ˜ํ˜• ๋ณ€์ˆ˜๋ฅผ ๋ชจ๋‘ ํฌํ•จ

      ์ด๋Ÿฌํ•œ ๋ณ€์ˆ˜๋“ค์€ ๋ชฉํ‘œ์—์„œ ๋งค์šฐ ๋ถˆ์—ฐ์†์ ์ธ ๋ณ€๊ฒฝ(=discrete change)์„ ์ดˆ๋ž˜

 

๐Ÿ“ข Noisy or nondeterministic (= ๊ฒฐ์ •์ ์ด์ง€ ๋ชปํ•œ) : ๋งค๊ฐœ ๋ณ€์ˆ˜ ๊ณต๊ฐ„์ด ๋ถˆ์—ฐ์†์ ์ด๊ณ  ์ปดํ“จํŒ… ๋…ธ๋“œ๊ฐ€ ์‹คํŒจํ•˜์—ฌ ๊ฒ€์ƒ‰ ์ „๋žต์„

                                                                                  ๋ฌด์‚ฐ์‹œํ‚ฌ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ๊ด€์ ์ธ ํ‰๊ฐ€๊ฐ€ ์‹คํŒจ

 

๐Ÿ“ข Flat regions : ๊ณต๊ฐ„์—๋Š” ๋งŽ์€ ๊ตฌ์„ฑ์ด ๋งค์šฐ ์œ ์‚ฌํ•œ ๋ชจ๋ธ์„ ์ƒ์„ฑํ•˜๋Š” ๋งŽ์€ ํ‰ํ‰ํ•œ ์˜์—ญ์ด ํฌํ•จ

 

๐Ÿ“ข ์„œ๋กœ ๋‹ค๋ฅธ ํ•˜์ดํผ ๋งค๊ฐœ ๋ณ€์ˆ˜ ๊ฐ’์„ ์‚ฌ์šฉํ•˜์—ฌ ์˜ˆ์ธก ๋ชจ๋ธ์„ train / validataion ํ•˜๋Š” ์˜ˆ์ธก ๋ถˆ๊ฐ€๋Šฅํ•œ ๊ณ„์‚ฐ ๋น„์šฉ

 

 

๐Ÿ’ก ๋”ฐ๋ผ์„œ, Hyper Parameter ๊ฐ’ ์„ค์ •์— ๋Œ€ํ•œ ์œ ์—ฐํ•˜๊ณ  ํšจ๊ณผ์ ์ธ ์ „๋žต์ด ํ•„์š”!!

๋ฐ˜์‘ํ˜•