์ฑ์ธ ์ํ ๋ด๋ด ์ ๋ ์๋์ง ๋๋งํฌ์์ต๋๋ค(์๋์, ์ง๊ธ ์ฐ๋ฆฌ๋ ํน์ฑ์ด ๋ชจํธํ ์๋ฃ์ ๋ํด ๋งํ๋ ๊ฒ์ด ์๋๋๋ค).
๋๋ ์ ๋ณด ๊ธฐ์ ์ ์ธ๊ณ์ ํน๋ณํ ๊ด์ฌ์ ๊ฐ์ง ์ ์ด ์์ผ๋ฉฐ ์ข ์ด์ ํ๋ ฌ์ ๊ณฑํ๋ ๊ฒ์กฐ์ฐจ ๊ฑฐ์ ํ ์ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ ๋ ์ด๊ฒ์ด ํ์ํ์ง ์์์ผ๋ฏ๋ก ์ฌ๋ฌ๋ถ์ด ์ ์์ ์ ์ธ๋ถ ์ฌํญ์ ์กฐ๊ธ ์ดํดํ ์ ์๋๋ก ๋ฉ์ง ์ด์ผ๊ธฐ๋ฅผ ๊ณต์ ํ ์ ์์ต๋๋ค. ํ๋ฒ์ ๋๋ฃ๋ค์๊ฒ Excel ์คํ๋ ๋์ํธ์์ ์์ ์ ํ๋ผ๊ณ ์์ฒญํ๋๋ฐ, ๊ทผ๋ฌด์ผ์ ์ ๋ฐ์ด ์ง๋ฌ๊ณ , ๋๋ ๊ทธ๋ค์๊ฒ ๋ค๊ฐ๊ฐ์ต๋๋ค. ๊ทธ๋ค์ ์์์ ๊ณ์ฐ๊ธฐ, ์, ๋ฒํผ์ด ์๋ ์ผ๋ฐ ๊ฒ์์ ๊ณ์ฐ๊ธฐ์ ๋ฐ์ดํฐ๋ฅผ ์์ฝํ๊ณ ์์์ต๋๋ค. ์, ์ดํ์๋ ์ด๋ค ์ ๊ฒฝ๋ง์ ๋ํด ์ด์ผ๊ธฐํ ์ ์์๊น์?.. ๊ทธ๋์ ์ ๋ IT ์ธ๊ณ์ ๋ชฐ์ ํ๊ธฐ ์ํ ํน๋ณํ ์ ์ ์กฐ๊ฑด์ด ์์์ต๋๋ค. ๊ทธ๋ฌ๋ "์ฐ๋ฆฌ๊ฐ ์๋ ๊ณณ์ด ์ข๋ค"๊ณ ๋งํ๋ฉด์ ์น๊ตฌ๋ค์ ์ฆ๊ฐ ํ์ค, ์ ๊ฒฝ๋ง, ํ๋ก๊ทธ๋๋ฐ ์ธ์ด(์ฃผ๋ก Python)์ ๋ํด ๋ด ๊ท๋ฅผ ๋งด๋์์ต๋๋ค.
๋ง๋ก๋ ๋งค์ฐ ๋จ์ํด ๋ณด์๊ณ , ๋๋ ์ด ๋ง๋ฒ์ ์์ ์ ๋ด ํ๋ ๋ถ์ผ์ ์ ์ฉํ๊ธฐ ์ํด ๋ง์คํฐํ๋ ๊ฒ์ด ์ด๋จ๊น ๊ฒฐ์ ํ์ต๋๋ค.
์ด ๊ธฐ์ฌ์์๋ Python์ ๊ธฐ๋ณธ ์ฌํญ์ ์ตํ๋ ค๋ ์๋๋ฅผ ๊ฑด๋๋ฐ๊ณ Udacity์ ๋ฌด๋ฃ TensorFlow ๊ณผ์ ์ ๋ํ ์ธ์์ ์ฌ๋ฌ๋ถ๊ณผ ๊ณต์ ํ๊ฒ ์ต๋๋ค.
์๊ฐ
์ฐ์ , ์๋์ง ์ฐ์ ์์ 11๋ ์ ๋ณด๋ธ ํ, ๋ชจ๋ ๊ฒ์ ์๊ณ ์๊ณ (์ฑ ์์ ๋ฐ๋ผ) ์กฐ๊ธ ๋ ๋ง์ ๊ฒ์ ํ ์ ์์ ๋, ๊ทผ๋ณธ์ ์ผ๋ก ์๋ก์ด ๊ฒ์ ๋ฐฐ์ฐ๋ ๊ฒ์ ํํธ์ผ๋ก๋ ํฐ ์ด์ ์ ๋ถ๋ฌ์ผ์ผํจ๋ค๋ ์ ์ ์ฃผ๋ชฉํ ๊ฐ์น๊ฐ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๋ค๋ฅธ ํํธ์ผ๋ก๋ ์ก์ฒด์ ๊ณ ํต์ผ๋ก ๋ณํฉ๋๋ค. "๋ด ๋จธ๋ฆฌ ์์ ๊ธฐ์ด."
์ ๋ ์์ง ํ๋ก๊ทธ๋๋ฐ๊ณผ ๋จธ์ ๋ฌ๋์ ๊ธฐ๋ณธ ๊ฐ๋ ์ ๋ชจ๋ ์์ ํ ์ดํดํ์ง ๋ชปํ๊ธฐ ๋๋ฌธ์ ๋๋ฌด ๊ฐํนํ๊ฒ ํ๋จํ์ง ์์ผ์ ๋ ๋ฉ๋๋ค. ์ ๊ธ์ด ์ ์ฒ๋ผ ์ํํธ์จ์ด ๊ฐ๋ฐ๊ณผ๋ ๊ฑฐ๋ฆฌ๊ฐ ๋จผ ์ฌ๋๋ค์๊ฒ ํฅ๋ฏธ๋กญ๊ณ ์ ์ฉํ์ผ๋ฉด ์ข๊ฒ ์ต๋๋ค.
๊ณผ์ ๊ฐ์๋ก ๋์ด๊ฐ๊ธฐ ์ ์, ์ด ๊ณผ์ ์ ๊ณต๋ถํ๋ ค๋ฉด ์ต์ํ Python์ ๋ํ ์ง์์ด ํ์ํ๋ค๊ณ ๋ง์๋๋ฆฌ๊ฒ ์ต๋๋ค. ์ด๋ณด์๋ฅผ ์ํ ๋ช ๊ถ์ ์ฑ ์ ์ฝ์ ์ ์์ต๋๋ค. (๋๋ Stepic ๊ณผ์ ์ ์๊ฐํ๊ธฐ ์์ํ์ง๋ง ์์ง ์์ ํ ์ตํ์ง๋ ๋ชปํ์ต๋๋ค.)
TensorFlow ๊ณผ์ ์์ฒด์๋ ๋ณต์กํ ๊ตฌ์ฑ์ด ํฌํจ๋์ด ์์ง ์์ง๋ง ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๊ฐ์ ธ์ค๋ ์ด์ , ํจ์๊ฐ ์ ์๋๋ ๋ฐฉ๋ฒ, ๋ฌด์ธ๊ฐ๊ฐ ์ฌ๊ธฐ์ ๋์ฒด๋๋ ์ด์ ๋ฅผ ์ดํดํ๋ ๊ฒ์ด ํ์ํฉ๋๋ค.
์ TensorFlow์ Udacity๋ฅผ ์ฌ์ฉํ๋์?
๋ด ํ๋ จ์ ์ฃผ์ ๋ชฉํ๋ ์ ๊ฒฝ๋ง์ ์ฌ์ฉํ์ฌ ์ ๊ธฐ ์ค์น ์์์ ์ฌ์ง์ ์ธ์ํ๋ ค๋ ์๊ตฌ์์ต๋๋ค.
์ ๋ ์น๊ตฌ๋ค์๊ฒ์ TensorFlow์ ๋ํด ๋ค์๊ธฐ ๋๋ฌธ์ TensorFlow๋ฅผ ์ ํํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ ๊ฐ ์๊ธฐ๋ก๋ ์ด ๊ฐ์ข๊ฐ ๊ฝค ์ธ๊ธฐ๊ฐ ์๋ ๊ฒ ๊ฐ์์.
๊ณต์ํํ
์ ๋ฐฐ์๋ณด๋ ค๊ณ ํ๋๋ฐ
๊ทธ๋ฌ๋ค๊ฐ ๋ ๊ฐ์ง ๋ฌธ์ ์ ๋ถ๋ชํ์ต๋๋ค.
- ๊ต์ก ์๋ฃ๋ ๋ง๊ณ ์ข ๋ฅ๋ ๋ค์ํฉ๋๋ค. ์ด๋ฏธ์ง ์ธ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ์ ์ด๋ ์ด๋ ์ ๋ ์์ ํ ๊ทธ๋ฆผ์ ๋ง๋๋ ๊ฒ์ ๋์๊ฒ ๋งค์ฐ ์ด๋ ค์ ์ต๋๋ค.
- ๋์๊ฒ ํ์ํ ๋๋ถ๋ถ์ ๊ธฐ์ฌ๋ ๋ฌ์์์ด๋ก ๋ฒ์ญ๋์ง ์์์ต๋๋ค. ์ฐ์ฐํ ๋๋ ์ด๋ ธ์ ๋ ๋ ์ผ์ด๋ฅผ ๋ฐฐ์ ๊ณ ์ง๊ธ์ ๋ง์ ์๋ จ ์ด๋ฆฐ์ด๋ค์ฒ๋ผ ๋ ์ผ์ด๋ ์์ด๋ ๋ชจ๋ฆ ๋๋ค. ๋ฌผ๋ก ์ฑ์ธ์ด ๋์ด์๋ ์์ด๋ฅผ ๋ง์คํฐํ๋ ค๊ณ ๋ ธ๋ ฅํ์ง๋ง ๊ทธ๋ฆผ๊ณผ ๊ฐ์ ๊ฒฐ๊ณผ๊ฐ ๋์์ต๋๋ค.
๊ณต์ ํํ์ด์ง๋ฅผ ๋ค์ ธ๋ณธ ๊ฒฐ๊ณผ ์ถ์ฒํ ๋งํ ๊ณณ์ ์ฐพ์์ต๋๋ค.
์ ๊ฐ ์๊ธฐ๋ก๋ Coursera ๊ฐ์ข๋ ์ ๋ฃ์๊ณ ๊ฐ์ข๋
์ฝ์ค ๋ด์ฉ
์ด ๊ณผ์ ์ 9๊ฐ์ ์์ ์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค.
์ฒซ ๋ฒ์งธ ์น์ ์ ์๊ฐ ๋ถ๋ถ์ผ๋ก, ์์น์ ์ผ๋ก ์ ํ์ํ์ง ์ค๋ช ํฉ๋๋ค.
์์ #2๋ ์ ๊ฐ ๊ฐ์ฅ ์ข์ํ๋ ๊ฒ์ผ๋ก ๋ฐํ์ก์ต๋๋ค. ์ดํดํ๊ธฐ ์ฌ์ ๊ณ ๊ณผํ์ ๊ฒฝ์ด๋ก์๋ ๋ณด์ฌ์ฃผ์์ต๋๋ค. ๊ฐ๋จํ ๋งํด์, ์ด ๊ฐ์์์๋ ์ ๊ฒฝ๋ง์ ๋ํ ๊ธฐ๋ณธ ์ ๋ณด ์ธ์๋ ์ ์์๋ ๋จ์ผ ๋ ์ด์ด ์ ๊ฒฝ๋ง์ ์ฌ์ฉํ์ฌ ์จ๋๋ฅผ ํ์จ์์ ์ญ์จ๋ก ๋ณํํ๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ค๋๋ค.
์ด๊ฒ์ ์ค์ ๋ก ๋งค์ฐ ๋ช ํํ ์์ ๋๋ค. ์ ๋ ์์ง๋ ์ฌ๊ธฐ ์์์ ๋น์ทํ ๋ฌธ์ ๋ฅผ ์๊ฐํด ๋ด๊ณ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ์ ์๊ฐํ๊ณ ์์ต๋๋ค. ํ์ง๋ง ์ ๊ธฐ ๊ธฐ์ ์์๊ฒ๋ง ํด๋น๋ฉ๋๋ค.
๋ถํํ๋, ๋ฏ์ ์ธ์ด๋ก ์ดํดํ ์ ์๋ ๊ฒ์ ๋ฐฐ์ฐ๋ ๊ฒ์ ๊ฝค ์ด๋ ต๊ธฐ ๋๋ฌธ์ ๋ ์ง์ฒด๋์์ต๋๋ค. ๋๋ฅผ ๊ตฌํ ๊ฒ์ Habrรฉ์์ ์ฐพ์ ๊ฒ์ด์์ต๋๋ค.
๋ฒ์ญ์ด ํ๋ฆฌํฐ ์ข๊ฒ ์ ๋๊ณ , ์ฝ๋ฉ ๋ ธํธ๋ ๋ฒ์ญ์ด ๋์ด์ ์๋ฌธ๊ณผ ๋ฒ์ญ๋ณธ์ ๋ชจ๋ ๋ดค์ต๋๋ค.
์ค์ ๋ก 3๋ฒ ๊ฐ์๋ ๊ณต์ TensorFlow ํํ ๋ฆฌ์ผ์ ์๋ฃ๋ฅผ ๊ฐ์ํ ๊ฒ์ ๋๋ค. ์ด ํํ ๋ฆฌ์ผ์์๋ ๋ค์ธต ์ ๊ฒฝ๋ง์ ์ฌ์ฉํ์ฌ ์ท ์ฌ์ง์ ๋ถ๋ฅํ๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์๋๋ค(Fashion MNIST ๋ฐ์ดํฐ์ธํธ).
4๋ฒ๋ถํฐ 7๋ฒ๊น์ง์ ๊ฐ์ ์ญ์ ํํ ๋ฆฌ์ผ์ ๊ฐ์ํ ๊ฒ์ ๋๋ค. ๊ทธ๋ฌ๋ ์ฌ๋ฐ๋ฅด๊ฒ ๋ฐฐ์ด๋์ด ์๊ธฐ ๋๋ฌธ์ ํ์ต ์์๋ฅผ ์ค์ค๋ก ์ดํดํ ํ์๋ ์์ต๋๋ค. ์ด ๊ฐ์์์๋ ์ด์ ๋ฐ ์ ๊ฒฝ๋ง, ํ๋ จ ์ ํ๋๋ฅผ ๋์ด๋ ๋ฐฉ๋ฒ, ๋ชจ๋ธ์ ์ ์ฅํ๋ ๋ฐฉ๋ฒ์ ๋ํด ๊ฐ๋ตํ๊ฒ ์ค๋ช ํฉ๋๋ค. ๋์์ ์ด๋ฏธ์ง ์ ๊ณ ์์ด์ ๊ฐ๋ฅผ ๋ถ๋ฅํ๋ ๋ฌธ์ ๋ ๋์์ ํด๊ฒฐํด ๋๊ฐ๊ฒ ์ต๋๋ค.
8๋ฒ ๋ ์จ์ ์์ ํ ๋ณ๊ฐ์ ์ฝ์ค์ด๊ณ , ์ ์๋๋ ๋ค๋ฅด๋ฉฐ, ์ฝ์ค ์์ฒด๋ ์๋นํ ๊ด๋ฒ์ํฉ๋๋ค. ์์ ์ ์๊ณ์ด์ ๊ดํ ๊ฒ์ ๋๋ค. ์์ง์ ๊ด์ฌ์ด ์์ด์ ๋๊ฐ์ ์ผ๋ก ์ค์บํด๋ดค์ต๋๋ค.
์ด๊ฒ์ TensorFlow Lite์ ๋ํ ๋ฌด๋ฃ ๊ฐ์ข๋ฅผ ์๊ฐํ ์ ์๋ ์ด๋์ธ ๊ฐ์ #9๋ก ๋๋ฉ๋๋ค.
์ข์ํ๋ ๊ฒ๊ณผ ์ข์ํ์ง ์์๋ ๊ฒ
์ ๋ฌธ๊ฐ๋ถํฐ ์์ํ๊ฒ ์ต๋๋ค.
- ๊ฐ์ข๋ ๋ฌด๋ฃ์ ๋๋ค
- ๊ฐ์๋ TensorFlow 2๋ก ๋์ด์์ต๋๋ค. ์ ๊ฐ ๋ณธ ๊ต๊ณผ์๋ ์ธํฐ๋ท์์ ๋ณธ ๊ฐ์ข ์ค ์ผ๋ถ๋ TensorFlow 1๋ก ๋์ด ์์์ต๋๋ค. ํฐ ์ฐจ์ด๊ฐ ์๋์ง๋ ๋ชจ๋ฅด๊ฒ ์ง๋ง, ํ์ฌ ๋ฒ์ ์ ๋ฐฐ์ฐ๋ ์ข๋ค์.
- ์์ ์์ ์ ์๋๋ค์ ์ง์ฆ๋์ง ์์ต๋๋ค. (๊ทธ๋ฌ๋ ๋ฌ์์์ด ๋ฒ์ ์์๋ ์๋ณธ์ฒ๋ผ ์ ์พํ๊ฒ ์ฝ์ง๋ ์์ต๋๋ค.)
- ๊ฐ์ข ์๊ฐ์ ๋ง์ด ๊ฑธ๋ฆฌ์ง ์์ต๋๋ค
- ์ด ๊ณผ์ ์ ๋น์ ์ ์ฌํ๊ฑฐ๋ ์ ๋ง์ ์ผ๋ก ๋๋ผ๊ฒ ๋ง๋ค์ง ์์ต๋๋ค. ๊ณผ์ ์ ์์ ์ ๊ฐ๋จํ๋ฉฐ ๋ช ํํ์ง ์์ ๋ถ๋ถ์ด ์๋ ๊ฒฝ์ฐ ํญ์ Colab ํํ์ ์ฌ๋ฐ๋ฅธ ์๋ฃจ์ ์ ๋ํ ํํธ๊ฐ ์ ๊ณต๋ฉ๋๋ค(์์ ์ ์ ๋ฐ์ด ๋์๊ฒ ๋ช ํํ์ง ์์).
- ์๋ฌด๊ฒ๋ ์ค์นํ ํ์๊ฐ ์์ผ๋ฉฐ, ๊ฐ์ข์ ๋ชจ๋ ์ค์ต ์์ ์ ๋ธ๋ผ์ฐ์ ์์ ์ํํ ์ ์์ต๋๋ค.
์ด์ ๋จ์ :
- ์ค์ ๋ก ์ ์ด ์ฌ๋ฃ๊ฐ ์์ต๋๋ค. ํ ์คํธ๋ ์๊ณ , ๊ณผ์ ๋ ์๊ณ , ์ฝ์ค ์๋ฌ๋๋ฅผ ํ์ธํ๋ ๊ฒ๋ ์์ต๋๋ค.
- ๋ด ๋ฉ๋ชจ์ฅ์ด ๋ชจ๋ ์ ๋๋ก ์๋ํ์ง ์์์ต๋๋ค. ์๋ ์์ด Colab ๊ฐ์ข์ ์ธ ๋ฒ์งธ ์์ ์์ ์ค๋ฅ๊ฐ ๋ฐ์ํ ๊ฒ ๊ฐ์๋ฐ ์ด๋ป๊ฒ ํด์ผ ํ ์ง ๋ชฐ๋์ต๋๋ค.
- ์ปดํจํฐ์์๋ง ์์ฒญํ๊ธฐ ํธ๋ฆฌํฉ๋๋ค. ์ ๊ฐ ์์ ํ ์ดํดํ์ง ๋ชปํ์ ์๋ ์์ง๋ง ์ค๋งํธํฐ์์ Udacity ์ฑ์ ์ฐพ์ ์ ์์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฌ์ดํธ์ ๋ชจ๋ฐ์ผ ๋ฒ์ ์ ๋ฐ์ํ์ง ์์ต๋๋ค. ์ฆ, ํ์ ๋ฉ๋ด๊ฐ ๊ฑฐ์ ์ ์ฒด ํ๋ฉด ์์ญ์ ์ฐจ์งํ์ง๋ง ๊ธฐ๋ณธ ์ฝํ ์ธ ๋ฅผ ๋ณด๋ ค๋ฉด ๋ณด๊ธฐ ์์ญ ๋๋จธ ์ค๋ฅธ์ชฝ์ผ๋ก ์คํฌ๋กคํด์ผ ํฉ๋๋ค. ๋ํ ํด๋ํฐ์์๋ ์์์ ๋ณผ ์ ์์ต๋๋ค. 6์ธ์น๊ฐ ์กฐ๊ธ ๋๋ ํ๋ฉด์์๋ ์ค์ ๋ก ์๋ฌด๊ฒ๋ ๋ณผ ์ ์์ต๋๋ค.
- ์ฝ์ค์ ์ผ๋ถ ๋ด์ฉ์ ์ฌ๋ฌ ๋ฒ ์นํ์ง๋ง ๋์์ ์ปจ๋ณผ๋ฃจ์ ๋คํธ์ํฌ ์์ฒด์์ ์ค์ ๋ก ํ์ํ ๊ฒ๋ค์ ์ฝ์ค์์ ์นํ์ง ์์ต๋๋ค. ๋๋ ์ฌ์ ํ ์ผ๋ถ ์ฐ์ต์ ์ ๋ฐ์ ์ธ ๋ชฉ์ ์ ์ดํดํ์ง ๋ชปํ์ต๋๋ค(์: Max Pooling์ ๋ชฉ์ ).
๊ฐ์
๋ถ๋ช ํ ๋น์ ์ ์ด๋ฏธ ๊ธฐ์ ์ด ์ผ์ด๋์ง ์์๋ค๊ณ ์ง์ํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด ์งง์ ๊ณผ์ ์ ๋ง์น ํ์๋ ์ ๊ฒฝ๋ง์ด ์ด๋ป๊ฒ ์๋ํ๋์ง ์ง์ ์ผ๋ก ์ดํดํ๋ ๊ฒ์ด ๋ถ๊ฐ๋ฅํฉ๋๋ค.
๋ฌผ๋ก ๊ทธ ์ดํ์๋ ์ค์์น์ ๋ฐฐ์ ๋ฐ์ ๋ฒํผ ์ฌ์ง์ ๋ถ๋ฅํ๋ ๋ฌธ์ ๋ฅผ ์ค์ค๋ก ํด๊ฒฐํ ์ ์์์ต๋๋ค.
ํ์ง๋ง ์ ๋ฐ์ ์ผ๋ก ์ด ๊ฐ์ข๋ ์ ์ฉํฉ๋๋ค. TensorFlow๋ก ์ด๋ค ์ผ์ ํ ์ ์๋์ง, ๊ทธ๋ฆฌ๊ณ ์์ผ๋ก ์ด๋ค ๋ฐฉํฅ์ผ๋ก ๋์๊ฐ์ผ ํ๋์ง ๋ณด์ฌ์ค๋๋ค.
๋จผ์ Python์ ๊ธฐ๋ณธ ์ฌํญ์ ๋ฐฐ์ฐ๊ณ ์ ๊ฒฝ๋ง ์๋ ๋ฐฉ์์ ๋ํ ๋ฌ์์์ด ์ฑ ์ ์ฝ์ ๋ค์ TensorFlow๋ฅผ ์ตํ์ผ ํ ๊ฒ ๊ฐ์ต๋๋ค.
๋์ผ๋ก, Habr์ ๋ํ ์ฒซ ๋ฒ์งธ ๊ธฐ์ฌ๋ฅผ ์ฐ๋๋ก ๊ฒฉ๋ คํ๊ณ ํฌ๋งท์ ๋์์ค ์น๊ตฌ๋ค์๊ฒ ๊ฐ์ฌํ๋ค๋ ๋ง์ ์ ํ๊ณ ์ถ์ต๋๋ค.
์ถ์ : ๊ทํ์ ์๊ฒฌ๊ณผ ๊ฑด์ค์ ์ธ ๋นํ์ ํ์ํฉ๋๋ค.
์ถ์ฒ : habr.com