๋‹ค๋ฅธ AI์™€๋Š” ๋‹ค๋ฅด๊ฒŒ, ๋น„์ „๊ณผ ์ผ๋ถ€ ์–ธ์–ด์ชฝ์€ ํ—ค๋น„ํ•œ GPU์„œ๋ฒ„ ์‚ฌ์šฉ์„ ์š”๊ตฌํ•ด์„œ,

AI๋ฅผ ํ•™์Šตํ•˜๋‹ค๊ฐ€, ์กฐ๊ธˆ๋งŒ ๊นŠ์ด ๋“ค์–ด๊ฐ€๋ฉด ๋…ธํŠธ๋ถ์œผ๋กœ๋Š” ์–ด๋ฆผ๋„ ์—†๋Š” ์ง€๊ฒฝ์— ์ด๋ฅด๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

์ผ๋ฐ˜์ ์ธ ๋ฐ์ดํ„ฐ๋ถ„์„๊ณผ๋Š” ๋‹ฌ๋ฆฌ, ์ด๋ฏธ์ง€ ๋ฐ์ดํ„ฐ๋Š” ์ด๋ฏธ์ง€ ํ•œ์žฅ๋งŒ ํ•˜๋”๋ผ๋„ ๋งŽ์€ ์ •๋ณด๋ฅผ ๋‹ด๊ณ  ์žˆ์–ด์„œ

์ƒ๋Œ€์ ์œผ๋กœ ํ•™์Šต ๋ฐ์ดํ„ฐ์˜ ์Šค์ผ€์ผ์ด ํฌ๊ณ , ํ•™์Šต์— ํ•„์š”ํ•œ ์—ฐ์‚ฐ์˜ ๊ทœ๋ชจ๊ฐ€ ์–ด๋งˆ์–ด๋งˆ ํ•ฉ๋‹ˆ๋‹ค.

 

 

 

[์‚ฌ์ „์กฐ๊ฑด]

๊ฐ„๋‹จํ•œ ํŒŒ์ด์ฌ,

์ฃผํ”ผํ„ฐ ๋…ธํŠธ๋ถ ์‚ฌ์ „์„ค์น˜

์‹œํ”„ํŠธํ‚ค์™€ ์—”ํŠธ๋ฅผ ๋™์‹œ์— ๋ˆ„๋ฅผ ์ˆ˜ ์žˆ๋Š” ๋‘ ์†.

 

์ž...์ด์ œ ํ•œ๋ฒˆ ํ•ด๋ณด์‹œ์ฃ .

์ด์ œ๋ถ€ํ„ฐ์˜ ๋ช…๋ น์–ด๋Š” ์ฃผํ”ผํ„ฐ ๋…ธํŠธ๋ถ์„ ์‹คํ–‰ํ•œ ์ƒํƒœ์—์„œ, ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ž…๋ ฅํ•˜๋Š” ๋ช…๋ น์–ด ์ž…๋‹ˆ๋‹ค.

 

0. ๊ฐœ, ๊ณ ์–‘์ด ๋ฐ์ดํ„ฐ ์ค€๋น„

Datasets : https://www.kaggle.com/c/dogs-vs-cats/data

 

Dogs vs. Cats

Create an algorithm to distinguish dogs from cats

www.kaggle.com

์ฒจ๋ถ€ ํŒŒ์ผ์„ ๋‹ค์šด๋ฐ›์•„์„œ ์•„๋ž˜ ๊ตฌ์กฐ๋กœ ์ €์žฅ์„ ํ•ฉ๋‹ˆ๋‹ค.

(jupyter notebookํŒŒ์ผ๊ณผ ๊ฐ™์€ ๊ฒฝ๋กœ์— ์ €์žฅํ•˜์„ธ์š”)

-- data ---- train (ํ•™์Šต์„ ์œ„ํ•œ ๊ณ ์–‘์ด, ๊ฐœ์‚ฌ์ง„ 25,000์žฅ)

            |__ test1 (ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•œ ๊ณ ์–‘์ด, ๊ฐœ ์‚ฌ์ง„ 25,000์žฅ)

 

1. ์šฐ์„  ํ•„์š”ํ•œ ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ ํ•ฉ๋‹ˆ๋‹ค.

keras์— ๋Œ€ํ•œ ๋‚ด์šฉ์€ ๋ณธ ๊ฒŒ์‹œํŒ ์ œ ๋‹ค๋ฅธ๊ธ€์„ ์ฝ์–ด๋ณด๋ฉด ๊ฐœ๋žต์ ์œผ๋กœ ๋‚˜์˜ต๋‹ˆ๋‹ค.

keras๋Š” ๋ฐฑ์—”๋“œ๋กœ tensorflow๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์—, tensorflow๊นŒ์ง€ ์ž๋™์œผ๋กœ ์„ค์น˜๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ํ•™์Šต๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„(๋ฐ์ดํ„ฐ์˜ ๊ตฌ์กฐ๊ฐ€ ์—‘์…€๊ฐ™์€ ํ‘œ ํ˜•ํƒœ๋กœ ๊ตฌ์„ฑ)ํ˜•ํƒœ๋กœ ๋ณ€ํ™˜ํ•˜๊ณ  ์—ฐ์‚ฐํ•˜๊ธฐ ์œ„ํ•œ pandas๊ฐ€ ์„ค์น˜ ๋˜์–ด์•ผ ํ•˜๊ณ ,

๋ฐฐ์—ด ์—ฐ์‚ฐ์„ ์œ„ํ•œ numpy, ์ด๋ฏธ์ง€ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ image ํŒจํ‚ค์ง€, ๊ทธ๋ฆฌ๊ณ  ๋งคํŠธ๋ฆญ์Šค๋ฅผ ๊ทธ๋ž˜ํ”„๋กœ ๋‚˜ํƒ€๋‚ด๊ธฐ ์œ„ํ•œ matplotlib,

๋งˆ์ง€๋ง‰์œผ๋กœ ์ˆ˜์น˜์—ฐ์‚ฐ์„ ์œ„ํ•œ ํŒจํ‚ค์ง€์ธ scikit-learn์„ ์„ค์น˜ ํ•ฉ๋‹ˆ๋‹ค.

 

2. warning ์ถœ๋ ฅ off

์ฃผํ”ผํ„ฐ ๋…ธํŠธ๋ถ ์…€ ์‹คํ–‰์‹œ ์ฃผํ™ฉ์ƒ‰์œผ๋กœ warning์ด ๋งŽ์ด ๋œจ๋Š”๋ฐ, ๋ณด๊ธฐ ์‹ซ์œผ๋‹ˆ ์ถœ๋ ฅํ•˜์ง€ ๋ง๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

 

3. ํ•„์š”ํ•œ ํŒจํ‚ค์ง€ import

๋ณธ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์‹คํ–‰์— ํ•„์š”ํ•œ ํŒจํ‚ค์ง€๋“ค์„ importํ•˜๊ณ ,

0๋ฒˆ์—์„œ ์••์ถ• ํ‘ผ ๋ฐ์ดํ„ฐ๊ฐ€ ์ž˜ ์ €์žฅ ๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธ ํ•ฉ๋‹ˆ๋‹ค.

 

4. ๊ธ€๋กœ๋ฒŒ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธ ํ•ฉ๋‹ˆ๋‹ค.

์•ž์„œ ์••์ถ• ํ’€์–ด๋†“์€ ์ด๋ฏธ์ง€์˜ ๊ฐ€๋กœํฌ๊ธฐ, ์„ธ๋กœํฌ๊ธฐ, ์‚ฌ์ด์ฆˆ(128x128)์™€

์ฑ„๋„(์นผ๋ผ ์‚ฌ์ž”์ด๋ฏ€๋กœR, G, B์„ธ๊ฐœ)์„ ์ •์˜ ํ•ด ๋†“์Šต๋‹ˆ๋‹ค.

๋‚˜์ค‘์— convolution์—ฐ์‚ฐ ์‹œ channel์ •๋ณด๊ฐ€ ํ•„์š”ํ•˜๋ฏ€๋กœ, ๋ฏธ๋ฆฌ ์ •์˜ํ•ด ๋†“์Šต๋‹ˆ๋‹ค.

 

5. ํŒŒ์ผ๋ช…๊ณผ ์ •๋‹ต ์„ค์ •

์••์ถ• ํ‘ผ ๋””๋ ‰ํ† ๋ฆฌ ์ค‘, train๋””๋ ‰ํ† ๋ฆฌ์—๋Š” dogxxx.jpg, catxxx.jpg๋“ฑ, ๊ฐœ์™€ ๊ณ ์–‘์ด๋ฅผ ํŒŒ์ผ ์ด๋ฆ„์œผ๋กœ ๊ตฌ๋ถ„์ง“๋„๋ก

ํŒŒ์ผ์ด ์ €์žฅ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋ฅผ ๊ตฌ๋ถ„ํ•˜์—ฌ ๊ฐœ์— ํ•ด๋‹น๋˜๋Š” ํŒŒ์ผ๋ช…๊ณผ ์ •๋‹ต('๊ฐœ', 1)์„, ๊ทธ๋ฆฌ๊ณ  ๊ณ ์–‘์ด์— ํ•ด๋‹น๋˜๋Š” ํŒŒ์ผ๋ช…๊ณผ ์ •๋‹ต('๊ณ ์–‘์ด', 0)์„

dataframe์— ์ €์žฅํ•ด ๋†“์Šต๋‹ˆ๋‹ค.

 

6. ์ €์žฅ์ด ์ž˜ ๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•ด ๋ด…๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ ์…‹์˜ ์ œ์ผ ์•ž 5๊ฐœ์™€ ์ œ์ผ ๋’ค 5๊ฐœ๋ฅผ ์ƒ˜ํ”Œ๋ง ํ•ด์„œ ์‚ดํŽด๋ด…๋‹ˆ๋‹ค.

ํŒŒ์ผ ์ด๋ฆ„์ด ๊ณ ์–‘์ด๋กœ ์‹œ์ž‘๋œ๊ฑด category๊ฐ€ 0์œผ๋กœ,

ํŒŒ์ผ ์ด๋ฆ„์ด dog์œผ๋กœ ์‹œ์ž‘๋˜๋Š” ํŒŒ์ผ์€ category๊ฐ€ 1๋กœ ์ž˜ ์ €์žฅ์ด ๋˜์–ด ์žˆ๊ตฐ์š”. :-)

 

7. ๋ฐ์ดํ„ฐ balanceํ™•์ธ.

๋ถ„๋ฅ˜ ๋ฌธ์ œ์ด ์žˆ์–ด์„œ, ๊ฐ category๋ณ„ ๋ฐ์ดํ„ฐ๊ฐ€ ๊ณ ๋ฃจ ๋ถ„ํฌ๊ฐ€ ๋˜์–ด ์žˆ์–ด์•ผ ํ•™์Šต์ด ์ž˜ ๋ฉ๋‹ˆ๋‹ค.

์ฆ‰, ๋ฐ์ดํ„ฐ ๋‚ด์— ๊ฐœ์™€ ๊ณ ์–‘์ด๊ฐ€ ๊ท ์ผํ•˜๊ฒŒ ๋ถ„ํฌ๊ฐ€ ๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธ์„ ํ•ฉ๋‹ˆ๋‹ค.

๋ณด๋‹ˆ๊นŒ, ๊ณ ๋ฅด๊ฐ€ ์ž˜ ๋ถ„ํฌ๊ฐ€ ๋˜์–ด ์žˆ๋Š”๊ฑฐ ๊ฐ™๋„ค์š”.

 

8. Sample๋ฐ์ดํ„ฐ ํ™•์ธ

๋ฐ์ดํ„ฐ ๋””๋ ‰ํ† ๋ฆฌ์ค‘ ์ž„์˜๋กœ ํ•˜๋‚˜๋ฅผ ๋ฝ‘์•„์„œ ํ™•์ธ ํ•ฉ๋‹ˆ๋‹ค.

์•„๋ฒ ...์•„๋‹ˆ, ๊ฐœ๊ฐ€ ์ž˜ ํ‘œ์‹œ ๋˜๋Š”๊ตฐ์š”.

 

9. ์‹ ๊ฒฝ๋ง ๋ชจ๋ธ ๊ตฌ์„ฑ

๋ชจ๋ธ ๊ตฌ์„ฑ์€...๊ธฐ๋ณธ์ ์ธ ๋ฃฐ์ด ์žˆ๊ธด ํ•˜์ง€๋งŒ, ์—ฌ๋Ÿฌ๋ฒˆ ๊ตฌ์กฐ๋ฅผ ๋ฐ”๊ฟ”๊ฐ€๋ฉฐ,

์ž˜ ๋งž์ถ”๋Š” ๋ชจ๋ธ์ด ๋‚˜์˜ฌ๋•Œ๊นŒ์ง€ ๊ตฌ์กฐ๋ฅผ ๋ณ€๊ฒฝ์‹œํ‚ค๋Š” ๊ฒƒ ์ž…๋‹ˆ๋‹ค.

๋ฌผ๋ก , ํ›Œ๋ฅญํ•˜์‹  ์„ํ•™๋“ค์ด ๋ฏธ๋ฆฌ ๋‹ค ํ•ด๋ณด๊ณ  ์ž˜ ๋˜๋Š” ๊ตฌ์กฐ๋ฅผ ๊ณต๊ฐœํ•ด ๋†“์€๊ฑธ ๊ฐ€์ ธ๋‹ค ์“ฐ๋Š”๊ฒŒ ์ œ์ผ ์ข‹์Šต๋‹ˆ๋‹ค.

 

์šฐ๋ฆฌ์—๊ฒ ์ข‹์€ ๊ตฌ์กฐ๋ฅผ ์ฐพ๊ธฐ ์œ„ํ•œ 100๋Œ€์ด์ƒ์˜ GPU์„œ๋ฒ„๋ฅผ ๊ฐ€์ง„ ์—ฐ๊ตฌ์‹ค์ด ์—†๊ธฐ ๋•Œ๋ฌธ์ด์ฃ .

 

10. ์‹ ๊ฒฝ๋ง ๊ตฌ์กฐ๋ฅผ ์‚ดํŽด๋ด…๋‹ˆ๋‹ค.

์•„๋ž˜์™€ ๊ฐ™์€ ๊ตฌ์กฐ๋กœ ์ƒ๊ฒผ๋Š”๋ฐ, ์•ฝ ์ฒœ์ด๋ฐฑ๋งŒ๊ฐœ์˜ ํŒŒ๋ผ๋ฏธํŠธ๋ฅผ ํ•™์Šตํ•ด์•ผ ํ•˜๋Š”๊ตฐ์š”.

ํ•™์Šต๋ฐ์ดํ„ฐ(๊ฐœ, ๊ณ ์–‘์ด์‚ฌ์ง„)์ด ์ œ์ผ ์œ„๋กœ ๋“ค์–ด์™€์„œ ์ œ์ผ ์•„๋ž˜๋กœ ๋‚˜๊ฐ€๋Š” ๊ตฌ์กฐ ์ž…๋‹ˆ๋‹ค.

 

์ œ์ผ ์ฒ˜์Œ conv2d layer์˜ shape๋ฅผ ๋ณด๋ฉด (None, 126, 126, 32) ์ด๋ ‡๊ฒŒ ๋˜์–ด ์žˆ๋Š”๋ฐ,

๊ฐ€์šด๋ฐ 126, 126 ์ˆซ์ž ๋‘๊ฐœ๊ฐ€ ๋ฐ”๋กœ ์ž…๋ ฅ๋˜๋Š” ๊ฐœ, ๊ณ ์–‘์ด ์‚ฌ์ง„์˜ ๊ฐ€๋กœ, ์„ธ๋กœ ํฌ๊ธฐ ์ž…๋‹ˆ๋‹ค.

 

์ œ์ผ ์•„๋ž˜ Dense Layer์— ๋ณด๋ฉด shape์— ์ˆซ์ž 2๊ฐ€ ์žˆ๋Š”๋ฐ, ์ด๊ฒŒ ๋ฐ”๋กœ ๊ฐœ๋ƒ ๊ณ ์–‘์ด๋ƒ ํ•˜๋Š” ๋‘๊ฐ€์ง€ ์ผ€์ด์Šค๊ฐ€

์žˆ๊ธฐ ๋•Œ๋ฌธ์— shape๊ฐ€ 2๋กœ ๋œ ๊ฒƒ ์ž…๋‹ˆ๋‹ค.

 

11. ์ฝœ๋ฐฑ ์ •์˜

์Œ..์ฝœ๋ฐฑ์€ ๋‹ค ์•„์‹ค๊ฑฐ๊ณ ...

์šฐ์„  ์กฐ๊ธฐ์ข…๋ฃŒ(Early Stopping)์™€ ํ•™์Šต์œจ ํ•˜ํ–ฅ์กฐ์ •์„ ์œ„ํ•ด ๋‘ ์ฝœ๋ฐฑ ํด๋ž˜์Šค๋ฅผ importํ•ฉ๋‹ˆ๋‹ค.

 

12. Early Stopping ์ •์˜

Early Stopping์ด ๋ญ๋ƒ ํ•˜๋ฉด...

์ „์ฒด ๊ฐœ, ๊ณ ์–‘์ด ๋ฐ์ดํ„ฐ๊ฐ€์ง€๊ณ  ์กฐ๊ธˆ์”ฉ ๋‚˜๋ˆ ์„œ ์—ฌ๋Ÿฌ์ฐจ๋ก€ ํ•™์Šต์„ ํ•˜๋Š”๋ฐ,

์ž˜ ํ•™์Šต๋˜๋‹ค๊ฐ€ ์–ด๋Š์‹œ์  ์ง€๋‚˜๋ฉด ์ •ํ™•๋„๊ฐ€ ์˜คํžˆ๋ ค ๋–จ์–ด์ง€๋Š” case๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

์ด๋•Œ 10๋ฒˆ๊นŒ์ง€ ์ฐธ๋‹ค๊ฐ€, 10๋ฒˆ ์ง€๋‚˜์„œ๋„ ๊ณ„์† ๋–จ์–ด์ง€๋ฉด ๊ณ ๋งŒ ํ•™์Šตํ•˜๊ณ  ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ๋‚ด๋ผ๋Š” ๋ง ์ž…๋‹ˆ๋‹ค.

 

13. Learning Rate ์กฐ์ • ์ •์˜

์ด ํด๋ž˜์Šค๋Š” ํ•™์Šตํ•˜๋Š” ๋™์•ˆ ์ •ํ™•๋„๋ฅผ ์ž˜ ๊ฐ์‹œํ•˜๊ณ  ์žˆ๋‹ค๊ฐ€ ์–ด๋Š ๊ธฐ์ค€์ด ๋˜๋ฉด ํ•™์Šต์œจ์„ ์กฐ์ •ํ•ด์ฃผ๋Š” ํด๋ž˜์Šค ์ž…๋‹ˆ๋‹ค.

 

14. callback ์„ค์ •

์•ž์„œ ์ •์˜ํ•œ ๋‘ ์ฝœ๋ฐฑ ํด๋ž˜์Šค๋ฅผ callbacks์— ๋‹ด์•„ ๋†“์Šต๋‹ˆ๋‹ค.

15. ๊ฐœ, ๊ณ ์–‘์ด๋ฅผ string์œผ๋กœ ๋ณ€ํ™˜

์•„๊นŒ ํŒŒ์ผ์ด๋ฆ„๊ณผ ๊ฐœ์ธ์ง€ ๊ณ ์–‘์ด ์ธ์ง€๋ฅผ ์ €์žฅํ•ด๋†“์€ dataframe์—์„œ

category๋ฅผ ๊ฐœ์ธ ๊ฒฝ์šฐ 1๋กœ, ๊ณ ์–‘์ด ์ธ ๊ฒฝ์šฐ 0์œผ๋กœ ๋ณ€๊ฒฝํ•ด ์ค๋‹ˆ๋‹ค.

๋‚˜์ค‘์— one-hot ์ธ์ฝ”๋”ฉ์œผ๋กœ ๋ณ€ํ™˜์„ ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์ž…๋‹ˆ๋‹ค.

 

16. train-validation ๋ฐ์ดํ„ฐ ๋ถ„๋ฆฌ

์ด์ œ, train๋ฐ์ดํ„ฐ์ค‘ 20%๋ฅผ ์ชผ๊ฐœ์„œ ํ•™์Šต์ค‘ ํŒŒ๋ผ๋ฏธํ„ฐ ๊ฒ€์ฆ์„ ์œ„ํ•œ validation์…‹์„ ๋งˆ๋ จํ•ด ๋†“์Šต๋‹ˆ๋‹ค.

 

17. train๋ฐ์ดํ„ฐ์˜ ๋ถ„ํฌ ํ™•์ธ

train๋ฐ์ดํ„ฐ์— ์กด์žฌํ•˜๋Š” ๊ฐœ์™€ ๊ณ ์–‘์ด ์ˆ˜๋ฅผ ๊ทธ๋ž˜ํ”„๋กœ ๊ทธ๋ ค ๋ด…๋‹ˆ๋‹ค.

 

18. validation ๋ถ„ํฌ ํ™•์ธ

์•„๊นŒ ์ž˜๋ผ๋‚ธ 20%์˜ ๋ฐ์ดํ„ฐ์—๋„ ๊ฐœ์™€ ๊ณ ์–‘์ด์˜ ๋ถ„ํฌ๋ฅผ ํ™•์ธ ํ•ฉ๋‹ˆ๋‹ค.

19. ํ•™์Šต, ๊ฒ€์ฆ๋ฐ์ดํ„ฐ์˜ ํ™•์ธ

ํ•™์Šต๋ฐ์ดํ„ฐ ๋ฐ validation์˜ ํ˜•์ƒ์„ ํ™•์ธํ•˜๊ณ ,

ํ•œ๋ฒˆ์— ํ•™์Šตํ•  batch์˜ size๋ฅผ ์„ค์ • ํ•ฉ๋‹ˆ๋‹ค.

 

20. ํ•™์Šต๋ฐ์ดํ„ฐ ๋ปฅํŠ€๊ธฐ

์•„์‹œ๋‹ค ์‹œํ”ผ ํ•™์Šต์€ ๋ฐ์ดํ„ฐ๊ฐ€ ๋งŽ์„์ˆ˜๋ก ์ž˜ ๋  ๊ฐ€๋Šฅ์„ฑ์ด ํฝ๋‹ˆ๋‹ค.

ํ•™์Šต๋ฐ์ดํ„ฐ๋ฅผ augmentationํ•ด์„œ ์ˆ˜๋ฅผ ๋Š˜๋ฆฝ๋‹ˆ๋‹ค.

๋ถ€ํ’€๋ฆฌ๊ธฐ๋Š” ์ด๋ฏธ์ง€๋ฅผ ์•ฝ๊ฐ„ ํšŒ์ „์‹œํ‚ค๊ฑฐ๋‚˜, ์คŒ์„ ํ•˜๊ฑฐ๋‚˜, ์ƒํ•˜/์ขŒ์šฐ ๋ฐ˜์ „์„ ์‹œํ‚ค๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ๋Š˜๋ฆฝ๋‹ˆ๋‹ค.

 

21. Validation๋ฐ์ดํ„ฐ ๋ปฅํŠ€๊ธฐ

validation์ด๋ฏธ์ง€๋„ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ž‘์—…์„ ํ•ด์ค๋‹ˆ๋‹ค.

 

22. ์ƒ˜ํ”Œ ํ™•์ธ

์œ„์— ๋ฐ์ดํ„ฐ ๋ถ€ํ’€๋ฆฌ๊ธฐ๊ฐ€ ์ž˜ ๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•œ ๋ถ€ํ’€๋ฆฌ๊ธฐ๋ฅผ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

 

23. ์ด๋ฏธ์ง€ ํ™•์ธ

์ž‘์—…๋œ ์ด๋ฏธ์ง€๋ฅผ ํ™•์ธ ํ•ด ๋ด…๋‹ˆ๋‹ค.

์ž์„ธํžˆ ๋ณด๋ฉด ๊ฐ™์€ ๊ฐœ์ธ๋ฐ, ์ขŒ์šฐ ๋ฐ˜์ „์ด๋‚˜ ์คŒ์ด ๋˜์–ด ์žˆ๋Š”๊ฑธ ๋ณผ ์ˆ˜ ์žˆ์ฃ .

 

24. ํ•™์Šต์‹œ์ž‘

์ž, ์ด์ œ ํ•™์Šต์„ ํ•ด๋ด…์‹œ๋‹ค.

GPU์„œ๋ฒ„์—์„œ ํ•œ Epoch๋‹น ๋Œ€๋žต 5๋ถ„์ •๋„๊ฐ€ ๊ฑธ๋ฆฐ๊ฑฐ ๊ฐ™์Šต๋‹ˆ๋‹ค.

ํšŒ์‚ฌ์—์„œ ์ง€๊ธ‰๋œ ๋…ธํŠธ๋ถ์œผ๋กœ๋Š” 15๋ถ„์—์„œ 30๋ถ„ ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค. (๊ณฑํ•˜๊ธฐ 50๋ฒˆ์„ ํ•ด์•ผ ํ•จ)

ํœด๊ฐ€ ๊ฐˆ๋•Œ ๊ฑธ์–ด๋†“๊ณ  ๊ฐ€์‹œ๊ธธ...

 

ํ•™์Šต์ด ์ž˜ ๋˜์—ˆ๊ณ  31๋ฒˆ์งธ Epoch์—์„œ ReduceLROnPlateau์ฝœ๋ฐฑ์ด ์ผ์–ด๋‚ฌ๊ตฐ์š”.

1e-50 ํ•™์Šต์œจ์— ๋„๋‹ฌํ•œ ๋ชจ์–‘์ž…๋‹ˆ๋‹ค.

 

25. ๋ชจ๋ธ ์ €์žฅ

ํ•™์Šต์ด ๋๋‚˜๋ฉด, ์ œ์ผ๋จผ์ € ํ• ์ผ์€ ๋ชจ๋ธ์„ ์ €์žฅํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ชจ๋ธ์„ ์ €์žฅํ•ด ๋†“์œผ๋ฉด, ๋‹ค์Œ์— 24๋ฒˆ์˜ ์˜ค๋ž˜์˜ค๋ž˜ ๊ฑธ๋ฆฌ๋Š” ํ•™์Šต ๋‹จ๊ณ„๋ฅผ ์ƒ๋žตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

26. ํ•™์Šต ๋‚ด์šฉ ํ™•์ธ

์ด์ œ ๊ทธ๋™์•ˆ ํ•™์Šต์‹œํ‚จ ๋‚ด์šฉ์„ ํ™•์ธํ•ด๋ด์•ผ๊ฒ ์ฃ .

train loss, validation loss์™€ train accuracy, validation accuracy ๊ทธ๋ž˜ํ”„๋ฅผ ๊ทธ๋ ค๋ด…๋‹ˆ๋‹ค.

 

27. ๊ทธ๋ž˜ํ”„ ํ™•์ธ

์•„์ฃผ ์˜ˆ์˜๊ฒŒ ์ž˜ ํ™•์ธ ๋œ๊ฑฐ ๊ฐ™์Šต๋‹ˆ๋‹ค.

ํŒŒ๋ž€์ƒ‰ ๊ทธ๋ž˜ํ”„๋Š” ํ•™์Šตํ• ๋•Œ์˜ ๊ทธ๋ž˜ํ”„๊ณ , ๋นจ๊ฐ„์ƒ‰์€ validation ๊ทธ๋ž˜ํ”„ ์ž…๋‹ˆ๋‹ค.

์ฒซ๋ฒˆ์งธ ๊ทธ๋ž˜ํ”„๋ฅผ ๋ณด๋ฉด ์ฒ˜์Œ ํ•™์Šต์‹œ์ ์—๋Š” ์˜ค๋‹ต์œจ์ด ๋†’๋‹ค๊ฐ€, ์ ์  ํ•™์Šต์„ ์ง€์†ํ•  ์ˆ˜๋ก

์˜ค๋‹ต์ด ๋‚ฎ์•„์ง€์ฃ . ๊ทธ๋ฆฌ๊ณ  validation๋„ ์ž˜ ๋‚ฎ์•„์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

 

๋‘๋ฒˆ์งธ ๊ทธ๋ž˜ํ”„๋Š” ์ •ํ™•๋„์ธ๋ฐ,

๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ฒ˜์Œ ํ•™์Šต ์‹œ์ ์—๋Š” ์ •ํ™•๋„๊ฐ€ ๋‚ฎ๋‹ค๊ฐ€ ์ ์  ์ž˜ ๋งŸ์ถฐ๊ฐ€๋Š”๊ฑธ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

์ค‘๊ฐ„์ค‘๊ฐ„ ํŠ€๋Š” ๋ถ€๋ถ„์€ ์•„๋งˆ๋„, ๊ฐœ๊ฐ™์€ ๊ณ ์–‘์ด๋‚˜ ๊ณ ์–‘์ด์ง“์„ ํ•˜๋Š” ๊ฐœ๊ฐ€ ์„ž์—ฌ์žˆ๋Š”๊ฑฐ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜๋„ train, validation์˜ ์ฐจ์ด๊ฐ€ ํฌ์ง€ ์•Š์•„์„œ overfitting์ด ์ผ์–ด๋‚˜์ง€ ์•Š์€๊ฒƒ ๊ฐ™๋„ค์š”.

ํ•™์Šต๋„ ์ž˜ ๋˜์—ˆ๊ตฌ์š”.

 

 

28. Test

์ด์ œ ํ•™์Šต๋œ ๋ชจ๋ธ์„ ๊ฐ€์ง€๊ณ  test๋ฐ์ดํ„ฐ๋ฅผ ํ•œ๋ฒˆ ๋งž์ถฐ๋ด…์‹œ๋‹ค.

test1 ๋””๋ ‰ํ† ๋ฆฌ์— ์žˆ๋Š” ๊ฐœ์™€ ๊ณ ์–‘์ด ์‚ฌ์ง„์œผ๋กœ ํ•œ๋ฒˆ ํ‰๊ฐ€๋ฅผ ํ•ด ๋ด…๋‹ˆ๋‹ค.

 

29. ํ‰๊ฐ€ ๋ฐ์ดํ„ฐ ์ค€๋น„

ํ…Œ์ŠคํŠธ ๋ฐ์ดํ„ฐ์™€ validation๋ฐ์ดํ„ฐ์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ค€๋น„ ํ•ฉ๋‹ˆ๋‹ค.

 

30. ๋ชจ๋ธ ์˜ˆ์ธก

์•„๊นŒ ํ•™์Šตํ•œ ๋ชจ๋ธ๋กœ, ์œ„์—์„œ ์ƒ์„ฑํ•œ test ์…‹์„ ๋„ฃ์–ด ๋ด…๋‹ˆ๋‹ค.

 

31. ํ‰๊ฐ€ ์ƒ์„ฑ

prediction์˜ ๊ฒฐ๊ณผ๋Š” ๊ฐ record๋ณ„, ๊ฐœ์ผํ™•์œจ ์–ผ๋งˆ, ๊ณ ์–‘์ด์ผ ํ™•์œจ ์–ผ๋งˆ ์ด๋Ÿฐ์‹์œผ๋กœ ๊ฒฐ๊ณผ๊ฐ€ ๋‹ด๊ฒจ์ ธ ์žˆ์Šต๋‹ˆ๋‹ค.

ํŽธ์˜์„ฑ๊ณผ ์ •ํ™•๋„ ๊ฒ€์ฆ์„ ์œ„ํ•ด ๊ฐœ์™€ ๊ณ ์–‘์ด์ผ ํ™•๋ฅ ์ค‘ ๋ณด๋‹ค ํฐ๊ฐ’์— ํ•ด๋‹นํ•˜๋Š” ๋ ˆ์ด๋ธ”์„ ์„ ํƒํ•ด์„œ ๊ฐ’์„ ์น˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

(๊ฐœ์ผ ํ™•์œจ 0.73, ๊ณ ์–‘์ด์ผ ํ™•๋ฅ  0.27์ด๋ฉด, '๊ฐœ'์˜ label์ธ dog์„ ๋„ฃ์Šต๋‹ˆ๋‹ค.)

 

 

32. ๋ ˆ์ด๋ธ” ๋ณ€ํ™˜

ํ‰๊ฐ€๋ฅผ ์œ„ํ•ด์„œ dog, cat ์ด๋ ‡๊ฒŒ ๋“ค์–ด๊ฐ€ ์žˆ๋˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค์‹œ 1, 0์œผ๋กœ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.

 

33. ์ •๋‹ต๋น„์œจ ํ™•์ธ

๊ฐœ์™€ ๊ณ ์–‘์ด๋ฅผ ์–ด๋Š์ •๋„ ๋น„์œจ๋กœ ์˜ˆ์ธกํ–ˆ๋Š”์ง€ ํ•œ๋ฒˆ ์‚ดํŽด ๋ด…๋‹ˆ๋‹ค.

 

34. ์ •๋‹ต ํ™•์ธ

์˜ˆ์ธกํ•œ ๊ฒฐ๊ณผ๋ฅผ ๋ˆˆ์œผ๋กœ ํ™•์ธํ•ด ๋ด…๋‹ˆ๋‹ค.

์ž˜ ๋งž์ถ”๋„ค์š”...

 

์‹ค์ œ๋กœ๋Š” ๋” ์ข‹์€ ๋ชจ๋ธ์„ ์ฐพ๊ธฐ ์œ„ํ•ด ์ธ๊ณ ์˜ ์‹œ๊ฐ„(๋ช‡์‹œ๊ฐ„, ๋ช‡์ผ์”ฉ)์„ ๋ฐ˜๋ณต์ ์œผ๋กœ ์ฐธ์•„๋‚ด๋ฉฐ

๊ธฐ๋‹ค๋ฆฌ๋Š” ์ธ๋‚ด์˜ ์‹ธ์›€์ธ๊ฑฐ ๊ฐ™์Šต๋‹ˆ๋‹ค.

 

๋…ธํŠธ๋ถ์œผ๋กœ ํ•œ๋ฒˆ ๋Œ๋ ค๋ณด์‹œ๋ฉด...

AWS๋‚˜ GCP๊ฐ™์€ ์„œ๋น„์Šค๊ฐ€ ์–ผ๋งˆ๋‚˜ ๊ณ ๋งˆ์šด์ง€ ๋ผˆ์ €๋ฆฌ๊ฒŒ ๋Š๋ผ์‹ค ๊ฒ๋‹ˆ๋‹ค. ^^

+ Recent posts