morijwana
์ˆ˜๋กœ๊ทธ
morijwana
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ
    • ๊ฐ•์˜๋…ธํŠธ
    • Machine Learning
      • Pandas
      • NLP
    • Computer Science
      • Linux
      • TIL
    • Development
      • React
      • Swift
      • Javascript
    • ์Šคํ„ฐ๋”” ๊ธฐ๋ก
      • Clean Code
      • ๊ตฌ๊ธ€ BERT์˜ ์ •์„
      • ๊ฐœ๋ฐœ๋„์„œ
      • ๊ธฐํƒ€
    • Problem Solving
      • Baekjoon
      • ICPC Sinchon
    • ๋„์ 
      • ๋„์ ๋„์ 
      • ์š”๋ฆฌ์™•

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ํ™ˆ
  • ํƒœ๊ทธ
  • ๋ฐฉ๋ช…๋ก

๊ณต์ง€์‚ฌํ•ญ

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • ๊ตฌ๋ถ€์ •์Šคํ„ฐ๋””
  • cs224n
  • ๊ฐœ๋ฐœ๋„์„œ
  • Bert
  • GDSC Sookmyung
  • gdsc
  • ํ”„๋ ˆ์ž„์›Œํฌ์—†๋Š”ํ”„๋ก ํŠธ์—”๋“œ๊ฐœ๋ฐœ
  • ๊ตฌ๊ธ€BERT์˜์ •์„
  • ๋ฏผํŠธํ•˜์ž„์Šคํ„ฐ๋””
  • Pandas
  • nlp
  • ๋ฐ์ดํ„ฐ์‚ฌ์ด์–ธ์Šค
  • ํ”„๋กœ๊ทธ๋ž˜๋ฐ์–ธ์–ด๋ก 
  • word2vec
  • ๋ฐฑ์ค€
  • ํšŒ๊ณ 
  • Python
  • ML
  • ์ž์—ฐ์–ด์ฒ˜๋ฆฌ
  • Solution Challenge

์ตœ๊ทผ ๋Œ“๊ธ€

์ตœ๊ทผ ๊ธ€

ํ‹ฐ์Šคํ† ๋ฆฌ

hELLO ยท Designed By ์ •์ƒ์šฐ.
morijwana

์ˆ˜๋กœ๊ทธ

ํ…์„œํ”Œ๋กœ์šฐ ์ž๊ฒฉ์ฆ(TensorFlow Developer Certificate) ์ค€๋น„ ๊ณผ์ •๊ณผ ์ทจ๋“ ํ›„๊ธฐ, ๋ฏธ์‘์‹œ ์‹œ ํ™˜๋ถˆ ๋ฐฉ๋ฒ•
Machine Learning

ํ…์„œํ”Œ๋กœ์šฐ ์ž๊ฒฉ์ฆ(TensorFlow Developer Certificate) ์ค€๋น„ ๊ณผ์ •๊ณผ ์ทจ๋“ ํ›„๊ธฐ, ๋ฏธ์‘์‹œ ์‹œ ํ™˜๋ถˆ ๋ฐฉ๋ฒ•

2021. 12. 24. 22:56

^ใ……^

 

๐Ÿคท๐Ÿป‍โ™€๏ธ ์„œ๋ก 

๊ณ„๊ธฐ

์ž‘๋…„ DSC์˜ ML ๋‹ด๋‹น Core Member ๋ถ„๊ป˜์„œ ์Šฌ๋ž™์— ํ…์„œํ”Œ๋กœ์šฐ ์ž๊ฒฉ์ฆ ์ทจ๋“ ํ›„๊ธฐ์™€ ๊ณต๋ถ€ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์ž์„ธํ•˜๊ฒŒ ์ ์–ด์ฃผ์‹  ์ ์ด ์žˆ์—ˆ๋‹ค. ๊ทธ ๋•Œ๋Š” ๋จธ์‹ ๋Ÿฌ๋‹์— ๊ด€์‹ฌ์ด 1๋„ ์—†์„ ์‹œ์ ˆ์ด๋ผ ๊ทธ๋ƒฅ ์‹ ๊ธฐํ•˜๊ณ  ๋Œ€๋‹จํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋ฉฐ ๋„˜์–ด๊ฐ”์ง€๋งŒ, ๋จธ์‹ ๋Ÿฌ๋‹์„ ๊ณต๋ถ€ํ•˜๊ณ  ์žˆ๋Š” ์ง€๊ธˆ ํ•œ ๋ฒˆ ML ๊ด€๋ จ ์ž๊ฒฉ์ฆ์— ๋„์ „ํ•ด ๋ณด๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™์•˜๋‹ค.

๋˜, ๋‚˜๋Š” PyTorch๋งŒ ์“ธ ์ค„ ์•Œ๊ณ  TensorFlow๋Š” ํ•˜๋‚˜๋„ ๋ชจ๋ฅด๋Š”๋ฐ, ์ด๋ฒˆ์— ์ž๊ฒฉ์ฆ ์ทจ๋“์„ ๋ชฉํ‘œ๋กœ ํ…์„œํ”Œ๋กœ์šฐ๋ฅผ ํ•œ ๋ฒˆ ๊ณต๋ถ€ํ•ด ๋ณด๊ณ  ์‹ถ์—ˆ๋‹ค. ๋จธ์‹ ๋Ÿฌ๋‹ ์—”์ง€๋‹ˆ์–ด๋ฅผ ๋Œ€์ƒ์œผ๋กœ ์ตœ๊ทผ์— ํ•œ ์„ค๋ฌธ์กฐ์‚ฌ ๊ฒฐ๊ณผ๋ฅผ ๋ณด๋‹ˆ ์•ฝ 70% ์ •๋„๊ฐ€ PyTorch๋ฅผ ์‚ฌ์šฉํ•˜๊ณ , ๋‚˜๋จธ์ง€ 30% ์ •๋„๊ฐ€ TensorFlow๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ๋‹ต๋ณ€ํ–ˆ์ง€๋งŒ, ํ˜„์—…์—์„œ ๋จธ์‹ ๋Ÿฌ๋‹ ์—”์ง€๋‹ˆ์–ด๋กœ ์ผํ•˜๊ณ  ๊ณ„์‹  ๋ถ„๋“ค์˜ ์ด์•ผ๊ธฐ๋ฅผ ๋“ค์–ด๋ณด๋‹ˆ ์•„์ง๊นŒ์ง€ ํ…์„œํ”Œ๋กœ์šฐ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ์—…์ด ๋งŽ์•„ ๊ผญ ๊ณต๋ถ€ํ•ด์•ผ๊ฒ ๋‹ค ์‹ถ์—ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  2022๋…„ Solution Challenge์—์„œ ์ž์—ฐ์–ด ์ฒ˜๋ฆฌ ๋ชจ๋ธ์„ ๋งŒ๋“ค์–ด ๋ณด๋ ค๊ณ  ํ•˜๋Š”๋ฐ, Google์ด ์ฃผ์ตœํ•œ ํ–‰์‚ฌ๋‹ˆ Google์˜ ๊ธฐ์ˆ ์„ ํ•˜๋‚˜๋ผ๋„ ๋” ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์—ˆ๋‹ค.

์‹œํ—˜ ์‘์‹œ ๊ฒฐ๊ณผ

๊ธ€ ์ œ๋ชฉ์— '์ทจ๋“ ํ›„๊ธฐ'๋ผ๊ณ  ์ด๋ฏธ ๋งํ–ˆ์ง€๋งŒ ์•„๋ฌดํŠผ ํ•ฉ๊ฒฉํ–ˆ๋‹ค. ๋ชจ๋ธ ์ œ์ถœ ํ›„ 24์‹œ๊ฐ„ ์ด๋‚ด ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜จ๋‹ค๊ณ  ํ–ˆ๋Š”๋ฐ, ์ œ์ถœํ•˜์ž๋งˆ์ž ๋ฉ”์ผ์ด ์™”๋‹ค. 

ํ•ฉ๊ฒฉ ๋ฉ”์ผ

 

๐Ÿค– TensorFlow Developer Certificate ์ž์„ธํžˆ ์•Œ์•„๋ณด๊ธฐ

 

TensorFlow ๊ฐœ๋ฐœ์ž ์ธ์ฆ์„œ ๋ฐ›๊ธฐ - TensorFlow

TensorFlow ์ธ์ฆ ํ”„๋กœ๊ทธ๋žจ์„ ํ†ต๊ณผํ•˜์—ฌ TensorFlow๋ฅผ ํ™œ์šฉํ•œ ๋”ฅ ๋Ÿฌ๋‹ ๋ฐ ML ๋ฌธ์ œ ํ•ด๊ฒฐ ์ˆ™๋ จ๋„๋ฅผ ์ž…์ฆํ•˜์„ธ์š”.

www.tensorflow.org

 

์‹œํ—˜์— ์‘์‹œํ•˜๊ธฐ ์ „์— ์œ„ ์‚ฌ์ดํŠธ๋ฅผ ๊ผญ ์ •๋…ํ•˜์ž. 

์ด ์‹œํ—˜์„ ํ†ต๊ณผํ•˜๊ฒŒ ๋˜๋ฉด TensorFlow ํŒ€์—์„œ ์ธ์ •ํ•œ ํ…์„œํ”Œ๋กœ์šฐ ๊ฐœ๋ฐœ์ž๋กœ์„œ ํ…์„œํ”Œ๋กœ์šฐ ์ปค๋ฎค๋‹ˆํ‹ฐ์— ๋“ฑ๋กํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค. ์‹œํ—˜ ์‘์‹œ๋น„๋Š” 100๋‹ฌ๋Ÿฌ(์•ฝ 12๋งŒ์›)์ด๋ฉฐ, TrueAbility๋ผ๋Š” ๋Œ€ํ–‰ ์‚ฌ์ดํŠธ๋ฅผ ํ†ตํ•ด ์‹œํ—˜์„ ๋“ฑ๋กํ•  ์ˆ˜ ์žˆ๋‹ค. ์‹œํ—˜์€ PyCharm ํ™˜๊ฒฝ์—์„œ 5์‹œ๊ฐ„๋™์•ˆ ์ง„ํ–‰๋˜๋ฉฐ, ์ด 5๋ฌธ์ œ๊ฐ€ ์ถœ์ œ๋œ๋‹ค. Python 3.8 ์ด์ƒ, TensorFlow๋Š” 2.7.x ๋ฒ„์ „, PyCharm 2021.3 ๋ฒ„์ „์ด ํ•„์š”ํ•˜๋‹ค. ๋” ์ž์„ธํ•œ ์‹œํ—˜ ํ™˜๊ฒฝ์— ๊ด€ํ•œ ์•ˆ๋‚ด๋Š” ์—ฌ๊ธฐ์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. PyCharm์—์„œ TensorFlow Certificate ํ”Œ๋กœ๊ทธ์ธ์„ ์„ค์น˜ํ•˜๋ฉด PyCharm์„ ํ†ตํ•ด ์‹œํ—˜์„ ๋ณผ ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์ด ๋งŒ๋“ค์–ด์ง€๋Š”๋ฐ, ๊ฐ ๋ฌธ์ œ์˜ ์š”๊ตฌ์— ๋”ฐ๋ผ ํ•™์Šต์‹œํ‚จ ๋ชจ๋ธ์„ PyCharm ํ™˜๊ฒฝ์—์„œ ๋ฐ”๋กœ ํ‰๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด 5๊ฐœ์˜ ๋ฌธ์ œ๊ฐ€ ์ถœ์ œ๋˜๋ฉฐ, ๋ฌธ์ œ๋ณ„๋กœ 5์  ๋งŒ์ ์œผ๋กœ ์ ์ˆ˜๊ฐ€ ๋งค๊ฒจ์ง„๋‹ค. ๋’ค๋กœ ๊ฐˆ์ˆ˜๋ก ๋ฌธ์ œ์˜ ๋‚œ์ด๋„๊ฐ€ ๋†’์•„์ง„๋‹ค.

 

๐Ÿ“š ๊ณต๋ถ€ ๋ฐฉ๋ฒ•

๊ณต๋ถ€๋Š” 12์›” 10์ผ์— ์‹œ์ž‘ํ–ˆ๋‹ค. ์ž๊ฒฉ์ฆ ๋ฌธ์ œ๋Š” ์ด 5๊ฐœ์ธ๋ฐ, ๋ณดํ†ต 1๋ฒˆ ๋ฌธ์ œ๋Š” ํ…์„œํ”Œ๋กœ์šฐ ํŠœํ† ๋ฆฌ์–ผ์—์„œ ๋‚˜์˜จ๋‹ค๊ณ  ๋“ค์–ด์„œ ํ…์„œํ”Œ๋กœ์šฐ ํŠœํ† ๋ฆฌ์–ผ์„ ๋”ฐ๋ผ๊ฐ€๋ฉฐ ๊ณต๋ถ€ํ–ˆ๋‹ค. ํŠœํ† ๋ฆฌ์–ผ์— ์žˆ๋Š” ๋ชจ๋“  ์ฑ•ํ„ฐ๋ฅผ ๋ณด์ง€๋Š” ์•Š์•˜์œผ๋ฉฐ, ๋‚ด๊ฐ€ ๋ณธ ์ฑ•ํ„ฐ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ์—ฌ๊ธฐ์„œ ๋‹ค๋ฃจ๋Š” ๋ชจ๋“  ๋‚ด์šฉ์€ ์ดํ›„์— ์†Œ๊ฐœํ•  ์ฝ”์„ธ๋ผ์˜ ํ…์„œํ”Œ๋กœ์šฐ ์ž๊ฒฉ์ฆ ์‹ฌํ™” ๊ณผ์ • ๊ฐ•์˜์—์„œ ๋ชจ๋‘ ๋‹ค๋ฃจ๋ฏ€๋กœ, ์‹œ๊ฐ„์ด ์—†๋‹ค๋ฉด ๊ตณ์ด ํ…์„œํ”Œ๋กœ์šฐ ํŠœํ† ๋ฆฌ์–ผ์€ ๋ณด์ง€ ์•Š์•„๋„ ๋œ๋‹ค. 

  • ์ดˆ๋ณด์ž๋ฅผ ์œ„ํ•œ ๋น ๋ฅธ ์‹œ์ž‘
  • ์ „๋ฌธ๊ฐ€๋ฅผ ์œ„ํ•œ ๋น ๋ฅธ ์‹œ์ž‘
  • ๊ธฐ๋ณธ ๋ถ„๋ฅ˜: ์˜๋ฅ˜ ์ด๋ฏธ์ง€ ๋ถ„๋ฅ˜
  • ์˜ํ™” ๋ฆฌ๋ทฐ๋ฅผ ์‚ฌ์šฉํ•œ ํ…์ŠคํŠธ ๋ถ„๋ฅ˜

ํ…์„œํ”Œ๋กœ์šฐ ์ž๊ฒฉ์ฆ ๊ณต์‹ ์‚ฌ์ดํŠธ๋ฅผ ๋ณด๋ฉด ์ถ”์ฒœํ•˜๋Š” ๊ฐ•์˜๊ฐ€ 2๊ฐœ๊ฐ€ ์žˆ๋‹ค. ํ•˜๋‚˜๋Š” Coursera์˜ deeplearning.ai TensorFlow Developer Certificate ํŠนํ™” ๊ณผ์ •์ด๊ณ , ํ•˜๋‚˜๋Š” Udacity์˜ ๋”ฅ๋Ÿฌ๋‹์„ ์œ„ํ•œ TensorFlow ์ž…๋ฌธ ๊ณผ์ • ๊ฐ•์˜๋‹ค. ๋‚˜๋Š” ์ต์ˆ™ํ•œ ํ”Œ๋žซํผ์ธ Coursera์˜ ํŠนํ™” ๊ณผ์ •์„ ์„ ํƒํ–ˆ๋‹ค. 12์›” 11์ผ์—๋Š” ์ฝ”์„ธ๋ผ 7์ผ ๋ฌด๋ฃŒ ์ฒดํ—˜์„ ์‹ ์ฒญํ•˜๊ณ , ํ•˜๋ฃจ๋Š” ํ…์„œํ”Œ๋กœ์šฐ ์ž๊ฒฉ์ฆ ๊ณต๋ถ€ํ•˜๊ณ  ํ•˜๋ฃจ๋Š” ๋‹ค๋ฅธ ๊ณต๋ถ€ํ•˜๋Š” ์‹์œผ๋กœ ์ฒดํ—˜์šฉ ์ผ์ฃผ์ผ์„ ๊ฝ‰ ์ฑ„์›Œ ์ˆ˜๊ฐ•ํ–ˆ๋‹ค. 

TensorFlow Developer Certificate ํŠนํ™” ๊ณผ์ •์€ ์ด 4๊ฐœ์˜ ๊ฐ•์ขŒ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค. ๋ชจ๋“  ๊ฐ•์ขŒ๋Š” 4์ฃผ์ฐจ ๋ถ„๋Ÿ‰์œผ๋กœ, ๊ฐ•์ขŒ๊ฐ€ ์ฃผ์ฐจ๋ณ„๋กœ ๋‚˜๋ˆ„์–ด์ ธ ์žˆ์ง€๋งŒ ํ•œ ์ฃผ์ฐจ์— ํ•ด๋‹นํ•˜๋Š” ๋‚ด์šฉ์ด ์ ์€ ํŽธ์ด๋ผ ํ•˜๋ฃจ ์•ˆ์— 4์ฃผ์ฐจ ๋ถ„๋Ÿ‰์„ ๋ชจ๋‘ ๋“ค์„ ์ˆ˜ ์žˆ๋‹ค. ์ฒซ ๊ฐ•์ขŒ์ธ Introduction to TensorFlow for Artificial Intelligence, Machine Learning, and Deep Learning์€ ์กฐ๊ธˆ์˜ ์ด๋ก ๊ณผ ๊ฐ„๋‹จํ•œ ๋จธ์‹ ๋Ÿฌ๋‹ ์˜ˆ์ œ๋ฅผ ๋ฐฐ์šฐ๋ฉฐ, ์ปดํ“จํ„ฐ ๋น„์ „๊ณผ ์ž์—ฐ์–ด ์ฒ˜๋ฆฌ๋ฅผ ๋ง›๋ณด๋Š” ์ˆ˜์ค€์œผ๋กœ ๋‹ค๋ฃฌ๋‹ค. Convolutional Neural Networks in TensorFlow์—์„œ๋Š” CNN์„ ์‚ฌ์šฉํ•œ ์ด๋ฏธ์ง€ ๋ถ„๋ฅ˜ ๋ชจ๋ธ์„ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ์„ ์ค‘์‹ฌ ์ฃผ์ œ๋กœ ํ•˜๋ฉฐ Transfer Learning๊ณผ Augmentation์„ ๋ฐฐ์šด๋‹ค. ์„ธ๋ฒˆ์งธ ๊ฐ•์ขŒ์ธ Natural Language Processing in TensorFlow์—์„œ๋Š” ๋‹จ์–ด ์ž„๋ฒ ๋”ฉ๊ณผ ์‹œํ€€์Šค ๋ชจ๋ธ์„ ๋‹ค๋ฃฌ๋‹ค. ๋งˆ์ง€๋ง‰ ๊ฐ•์ขŒ์ธ Sequneces, Time Series and Prediction์—์„œ๋Š” ๋”ฅ๋Ÿฌ๋‹์„ ํ†ตํ•ด ์‹œ๊ณ„์—ด ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์„ํ•˜๊ณ  ๊ฐ’์„ ์˜ˆ์ธกํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์šด๋‹ค. ๋’ค๋กœ ๊ฐˆ์ˆ˜๋ก ๋‚ด์šฉ์ด ์–ด๋ ค์›Œ์ง€๋Š”๋ฐ, ์‹œ๊ณ„์—ด ์˜ˆ์ธก์€ ์ปดํ“จํ„ฐ ๋น„์ „๊ณผ ์ž์—ฐ์–ด ์ฒ˜๋ฆฌ์™€ ๋‹ฌ๋ฆฌ ํ•œ ๋ฒˆ๋„ ์ ‘ํ•ด๋ณธ ์ ์ด ์—†๋Š” ๋ถ„์•ผ๋ผ ํŠนํžˆ ๋” ์–ด๋ ค์› ๋‹ค.

์ฒซ๋ฒˆ์งธ ๊ฐ•์ขŒ์™€ ๋‘๋ฒˆ์งธ ๊ฐ•์ขŒ๋Š” ๊ณผ์ œ๋ฅผ ๊ผญ ์ œ์ถœํ•ด์•ผ ์„ฑ์ทจ๋„๊ฐ€ ์˜ฌ๋ผ๊ฐ€๋Š”๋ฐ, ์„ธ๋ฒˆ์งธ ๊ฐ•์ขŒ์™€ ๋„ค๋ฒˆ์งธ ๊ฐ•์ขŒ๋Š” ๊ณผ์ œ ์ œ์ถœ์ด ์„ ํƒ์‚ฌํ•ญ์ด๋‹ค. ํ•˜์ง€๋งŒ ์ด ๊ณผ์ œ๋ฅผ ํ’€์–ด๋ณด๋Š” ๊ฒƒ์ด ์‹œํ—˜ ํ†ต๊ณผ์— ํฌ๊ฒŒ ๋„์›€์ด ๋˜๋ฏ€๋กœ ๊ผญ ํ•œ ๋ฒˆ์”ฉ ํ’€์–ด๋ณด๊ณ  ๊ฐ€์ž. ๋ชจ๋“  ๊ณผ์ œ๋ฅผ ๋‹ค ํ•˜๊ณ  ๋„˜์–ด๊ฐ€๊ธฐ์—” ๋ฌด๋ฃŒ ์ฒดํ—˜ ๊ธฐ๊ฐ„์ด ๋„ˆ๋ฌด ์งง๋‹ค ์‹ถ์œผ๋ฉด ๊ฐ•์˜๋งŒ ๋ฌด๋ฃŒ ์ฒดํ—˜ ๊ธฐ๊ฐ„์— ๋ชจ๋‘ ๋‹ค ๋“ฃ๊ณ  ๊ฐ•์˜ ๊ณต์‹ GitHub ๋ ˆํฌ์ง€ํ† ๋ฆฌ์—์„œ ๊ณผ์ œ๋งŒ ๋‚˜์ค‘์— ํ’€์–ด๋„ ์ข‹๋‹ค. ๊ณผ์ œ ๋ง๊ณ  ๊ฐ•์˜ ์ค‘๊ฐ„์ค‘๊ฐ„์— ์†Œ๊ฐœํ•ด ์ฃผ๋Š” Laboratory ์ฝ”๋“œ๋“ค๋„ ๋ชจ๋‘ ํ•œ ๋ฒˆ์”ฉ ๋”ฐ๋ผ ์ณ๋ณด๊ฑฐ๋‚˜, ์ ์–ด๋„ ํ•œ ์ค„ ์”ฉ ์ฝ์–ด๋ณด๋ฉฐ ์ดํ•ด๋Š” ํ•˜๊ณ  ๋„˜์–ด๊ฐ€์ž.

์š”์•ฝ: ๊ณต๋ถ€ํ•  ๋•Œ ์ฐธ๊ณ ํ•œ ์ž๋ฃŒ๋“ค

  • ์ดˆ๋ณด์ž๋ฅผ ์œ„ํ•œ ๋น ๋ฅธ ์‹œ์ž‘
  • ์ „๋ฌธ๊ฐ€๋ฅผ ์œ„ํ•œ ๋น ๋ฅธ ์‹œ์ž‘
  • ๊ธฐ๋ณธ ๋ถ„๋ฅ˜: ์˜๋ฅ˜ ์ด๋ฏธ์ง€ ๋ถ„๋ฅ˜
  • ์˜ํ™” ๋ฆฌ๋ทฐ๋ฅผ ์‚ฌ์šฉํ•œ ํ…์ŠคํŠธ ๋ถ„๋ฅ˜
  • deeplearning.ai TensorFlow Developer Certificate ํŠนํ™” ๊ณผ์ •
  • ๊ฐ•์˜ ๊ณต์‹ GitHub ๋ ˆํฌ์ง€ํ† ๋ฆฌ

 

์ „์ฒด ์‹œํ—˜ ํ”„๋กœ์„ธ์Šค

TrueAbility์—์„œ ์‘์‹œ ์ž๊ฒฉ์„ ๊ตฌ๋งคํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋ณธ์ธ ์ธ์ฆ์ด ํ•„์š”ํ•˜๋‹ค. ์—ฌ๊ธฐ์„œ ํ•„์š”ํ•œ ๊ฒƒ์€ ์›น์บ ๊ณผ ์ฃผ๋ฏผ๋“ฑ๋ก์ฆ(ํ˜น์€ ์—ฌ๊ถŒ, ์šด์ „๋ฉดํ—ˆ์ฆ)์ด๋‹ค. ์•ˆ๋‚ด๋ง์—๋Š” ์—ฌ๊ถŒ์ด ์•„๋‹ˆ๋ฉด ์•ˆ๋  ๊ฒƒ ๊ฐ™์ด ๋‚˜์™€์žˆ์ง€๋งŒ, ์ฃผ๋ฏผ๋“ฑ๋ก์ฆ์œผ๋กœ๋„ ์ธ์ฆ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ์›น์บ ์œผ๋กœ ์ฃผ๋ฏผ๋“ฑ๋ก์ฆ์˜ ์•ž๋ฉด๊ณผ ๋’ท๋ฉด์„ ์ฐ๊ณ , ๋งˆ์ง€๋ง‰์œผ๋กœ ๋ณธ์ธ ์–ผ๊ตด์ด ๋‚˜์˜ค๋„๋ก ์…€์นด๋ฅผ ์ฐ์–ด์•ผ ํ•œ๋‹ค. ๊ตฌ๋งค ํ›„ ํ•˜๋ฃจ ์ •๋„ ์ง€๋‚˜๋ฉด ๋ณธ์ธ ์ธ์ฆ์ด ๋๋‚˜๋ฉฐ, ์‹œํ—˜์„ ์‘์‹œํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐํšŒ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค.

์‹œํ—˜ ํ™˜๊ฒฝ์„ ์„ธํŒ…ํ•˜๊ธฐ ์œ„ํ•ด ์ฒดํฌํ•ด์•ผ ํ•  ๊ฒƒ์€ PyCharm ๋ฒ„์ „, Python ๋ฒ„์ „๊ณผ TensorFlow ๋ฒ„์ „์ด๋‹ค. ์•ž์„œ ๋งํ–ˆ๋‹ค์‹œํ”ผ ์‹œํ—˜์„ ์œ„ํ•ด์„œ๋Š” Python 3.8, PyCharm 2021.3 ๋ฒ„์ „๊ณผ TensorFlow 2.7.x ๋ฒ„์ „์ด ํ•„์š”ํ•˜๋‹ค. ์œˆ๋„์šฐ ํ™˜๊ฒฝ์—์„œ๋Š” Anaconda ๋ฌธ์ œ๋กœ ํ™˜๊ฒฝ ์„ธํŒ…์ด ๋ณต์žกํ•ด์งˆ ์ˆ˜๋„ ์žˆ๋‹ค๊ณ  ํ•˜์ง€๋งŒ, mac ์œ ์ €์ธ ๋‚˜๋Š” ๋ณ„๋‹ค๋ฅธ ์ด์Šˆ ์—†์ด ํ™˜๊ฒฝ ์„ธํŒ…์„ ๋งˆ์ณค๋‹ค.

๋ชจ๋“  ์ค€๋น„๊ฐ€ ๋๋‚˜๋ฉด PyCharm์„ ์ผœ๊ณ  Plugins์—์„œ TensorFlow Developer Certificate๋ฅผ ์„ค์น˜ํ•ด์•ผ ํ•œ๋‹ค. ์ด ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ํ†ตํ•ด ์‹œํ—˜ ๋ฌธ์ œ๋ฅผ ํ™•์ธํ•˜๊ณ , ๋ชจ๋ธ์„ ๋งŒ๋“ค๊ณ , ๋งŒ๋“  ๋ชจ๋ธ์„ ํ‰๊ฐ€ํ•˜๊ณ  ์ œ์ถœํ•  ์ˆ˜ ์žˆ๋‹ค.

์ด ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ์„ค์น˜ํ•˜๋ฉด PyCharm ๋ฉ”์ธ ํ™”๋ฉด์— ์‹œํ—˜ ์‘์‹œ ๋ฒ„ํŠผ์ด ์ƒ๊ธด๋‹ค. ์ด ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅธ ์‹œ์ ์œผ๋กœ๋ถ€ํ„ฐ 5์‹œ๊ฐ„์˜ ์‹œ๊ฐ„์ด ์ฃผ์–ด์ง€๋ฉฐ, 5์‹œ๊ฐ„์ด ์ง€๋‚˜๋ฉด ์ž๋™์œผ๋กœ ๋‚ด ๋ชจ๋ธ๋“ค์ด ์ฑ„์  ์„œ๋ฒ„๋กœ ์ œ์ถœ๋œ๋‹ค(ํ•œ ๋ฒˆ์ด๋ผ๋„ Test๋ฅผ ๋Œ๋ฆฐ ๋ชจ๋ธ๋“ค๋งŒ ์ œ์ถœ๋˜๋Š” ๊ฑด์ง€ ์•„๋‹ˆ๋ฉด ์ƒ์„ฑ๋งŒ ํ•ด๋‘” ๋ชจ๋ธ๋„ ์ œ์ถœ๋˜๋Š”์ง€๋Š” ๋ชจ๋ฅด๊ฒ ๋‹ค). ์ด 5๋ฌธ์ œ๊ฐ€ ์ถœ์ œ๋˜๊ณ  ๋ชจ๋“  ๋ฌธ์ œ์—์„œ 4์  ํ˜น์€ 5์ ์„ ๋ฐ›์•„์•ผ ์•ˆ์ „ํ•˜๊ฒŒ ์‹œํ—˜์„ ํ†ต๊ณผํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด ์ ์ˆ˜๋Š” ๊ฐ™์€ ๋ชจ๋ธ์ด๋ผ ํ•˜๋”๋ผ๋„ ํ…Œ์ŠคํŠธ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅผ ๋•Œ๋งˆ๋‹ค ๋‹ค๋ฅด๊ฒŒ ๋‚˜์˜ค๊ธฐ๋„ ํ•œ๋‹ค. ๋งค ํ…Œ์ŠคํŠธ๋งˆ๋‹ค ์ž…๋ ฅ์ด ๋‹ฌ๋ผ์ง€๋Š” ๊ฒƒ ๊ฐ™์œผ๋‹ˆ ๋‹น์žฅ ๋‚ด๊ฐ€ 5์ ์„ ๋ฐ›์•˜๋‹ค๊ณ  ํ•˜๋”๋ผ๋„ ๊ณ„์† ํ…Œ์ŠคํŠธ๋ฅผ ๋Œ๋ ค๋ณด๋ฉฐ ํ˜น์‹œ๋‚˜ 3์ ์ด๋‚˜ 4์ ์ด ๋‚˜์˜ค์ง€๋Š” ์•Š๋Š”์ง€ ํ™•์ธํ•ด ๋ณด์ž.

๋‚˜๋Š” ๊ฐ„๋‹จํ•œ ์„ ํ˜• ํšŒ๊ท€ ๋ชจ๋ธ / ์ด๋ฏธ์ง€ ๋ถ„๋ฅ˜ / CNN / ํ…์ŠคํŠธ ๋ถ„๋ฅ˜ / ์‹œ๊ณ„์—ด ์˜ˆ์ธก ๋ฌธ์ œ๋ฅผ ๋ฐ›์•˜์œผ๋ฉฐ, test์—์„œ ๊ฐ๊ฐ 5 / 5 / 5 / 4 / 5์ ์„ ๋ฐ›๊ณ  ์ œ์ถœํ–ˆ๋‹ค. ๋ชจ๋ธ์„ ์ œ์ถœํ•˜๊ธฐ ์ „์— ๋ชจ๋“  ๋ชจ๋ธ๋“ค์„ 3~4๋ฒˆ์”ฉ ํ…Œ์ŠคํŠธํ•ด๋ดค๋Š”๋ฐ 2๋ฒˆ ๋ฌธ์ œ์—์„œ ์ญ‰ 5์ ์ด ๋‚˜์˜ค๋‹ค๊ฐ€ ํ•œ ๋ฒˆ 3์ ์ด ๋‚˜์™”์—ˆ๋‹ค. ๋‹นํ™ฉํ•ด์„œ ๊ณ„์† ํ…Œ์ŠคํŠธ๋ฅผ ๋Œ๋ ค๋ณด๋‹ˆ ์ดํ›„์—๋Š” ๊ณ„์† 5์ ์ด ๋‚˜์˜ค๊ธธ๋ž˜ ๊ทธ๋ƒฅ ์ œ์ถœํ–ˆ๋Š”๋ฐ ํ†ต๊ณผํ•œ ๊ฑธ ๋ณด๋‹ˆ ํ…Œ์ŠคํŠธ ์ค‘ ์–ด์ฉŒ๋‹ค ํ•œ ๋ฒˆ ์ ์ˆ˜๊ฐ€ ๋‚ฎ๊ฒŒ ๋‚˜์˜ค๋Š” ๊ฑด ๊ดœ์ฐฎ์€ ๊ฒƒ ๊ฐ™๋‹ค. PyCharm ์ƒ๋‹จ์˜ End Exam ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ๋ชจ๋ธ๋“ค์ด ์ž๋™์œผ๋กœ ์ œ์ถœ๋˜๋ฉฐ ์‹œํ—˜์ด ์ข…๋ฃŒ๋œ๋‹ค. ๋ฒ„ํŠผ ์˜†์˜ ์•„๋ž˜๋ฐฉํ–ฅ ์‚ผ๊ฐํ˜•์„ ๋ˆ„๋ฅด๋ฉด ๋‚จ์€ ์‹œํ—˜ ์‹œ๊ฐ„์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. 

์‹œํ—˜ ๋‚ด์šฉ์€ Coursera ๊ฐ•์˜ ๋‚ด์šฉ์—์„œ ํฌ๊ฒŒ ๋ฒ—์–ด๋‚˜์ง€ ์•Š๋Š”๋‹ค. ๋‹ค๋งŒ ๋ชจ๋ธ์„ ๊ฐ•์˜ ๋‚ด์šฉ ๊ทธ๋Œ€๋กœ ์ž‘์„ฑํ•˜๋ฉด ๋†’์€ ์ ์ˆ˜๋ฅผ ๋ฐ›์„ ์ˆ˜ ์—†์œผ๋ฉฐ, ๋ฐฐ์šด ๊ฒƒ์„ ํ™œ์šฉํ•ด์„œ ์กฐ๊ธˆ ๋” ๊ณ ์ฐจ์›์ ์ธ ๋ชจ๋ธ์„ ๋งŒ๋“ค์–ด์•ผ ํ•œ๋‹ค. ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ์ ์ˆ˜๋ฅผ ์˜ฌ๋ฆด ์ˆ˜ ์žˆ์„ ์ง€ ๊ฐ์ด ์žกํžˆ์ง€ ์•Š์œผ์‹œ๋Š” ๋ถ„๋“ค์„ ์œ„ํ•ด ์ž‘์€ ํŒ์„ ์ค€๋น„ํ–ˆ๋‹ค. 

๐Ÿ“ˆ ๋ชจ๋ธ ์ ์ˆ˜ ์˜ฌ๋ฆฌ๋Š” ํŒ

  1. ๋ฌธ์ œ ์กฐ๊ฑด์— ๋งž๋Š” input/output shape์„ ๊ฐ€์ง€๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ
  2. ํ•™์Šต epoch ์ˆ˜ ๋Š˜๋ฆฌ๊ธฐ
  3. learning rate ์กฐ๊ธˆ์”ฉ ํ‚ค์›Œ๋ณด๊ธฐ - epoch์„ ๋Š˜๋ฆฌ๊ธฐ์—” ํ•™์Šตํ•  ์‹œ๊ฐ„์ด ๋ถ€์กฑํ•  ๋•Œ ์ด ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜๋ฉด ์ข‹๋‹ค.
  4. Dropout ์‚ฌ์šฉํ•˜๊ธฐ
  5. ๋ ˆ์ด์–ด ๊ตฌ์„ฑ ๋ฐ”๊ฟ”๋ณด๊ธฐ
  6. ReLU ๋Œ€์‹  LeakyReLU ์‚ฌ์šฉํ•˜๊ธฐ

 

๐Ÿ’ธ ๋ฏธ์‘์‹œ ์‹œํ—˜ ํ™˜๋ถˆ ๋ฐฉ๋ฒ•

๋งˆ์ง€๋ง‰์œผ๋กœ ๋ฏธ์‘์‹œ ์‹œํ—˜ ํ™˜๋ถˆ ๋ฐฉ๋ฒ•์„ ์•Œ๋ ค๋“œ๋ฆฌ๋ ค ํ•œ๋‹ค. ๊ธ‰ํ•œ ๋ถ„๋“ค์„ ์œ„ํ•ด ๊ฒฐ๋ก ๋ถ€ํ„ฐ ๋งํ•˜์ž๋ฉด TrueAbility์˜ support ๋ฉ”์ผ(support@trueability.com)๋กœ ๊ฐ„๋‹จํ•œ ํ™˜๋ถˆ ์ด์œ ์™€ ํ•จ๊ป˜ ์ทจ์†Œํ•˜๋ ค๋Š” ์‹œํ—˜์˜ ID๋ฅผ ์ ์–ด ๋ณด๋‚ด๋ฉด ์ ˆ์ฐจ์— ๋”ฐ๋ผ ํ™˜๋ถˆ์ด ์ง„ํ–‰๋œ๋‹ค.

์‹ค์ˆ˜๋กœ ์‹œํ—˜ ์‘์‹œ๋น„๋ฅผ ๋‘ ๋ฒˆ ๊ฒฐ์ œํ•˜๋Š” ๋ฐ”๋žŒ์— ์‹œํ—˜ ์‘์‹œ๊ถŒ์ด 2๊ฐœ๋‚˜ ์ƒ๊ฒจ๋ฒ„๋ ธ๋‹ค. ๊ทธ๋ ‡๊ฒŒ ํ†ต์žฅ์—์„œ 25๋งŒ์›์ด ์ˆœ์‹๊ฐ„์— ์—†์–ด์ง€๋Š” ๊ด‘๊ฒฝ์„ ๋ˆˆ ์•ž์—์„œ ๋ณด๋‹ˆ ์ •์‹ ์ด ์•„์ฐ”ํ–ˆ๋‹ค. ๐Ÿ™€  ๊ฒฐ์ œ๋ฅผ ์ง„ํ–‰ํ–ˆ๋˜ TrueAbility ์‚ฌ์ดํŠธ๋ฅผ ์•„๋ฌด๋ฆฌ ์‚ดํŽด๋ด๋„ ํ™˜๋ถˆ๊ณผ ๊ด€๋ จ๋œ ๋ฉ”๋‰ด๋Š” ์—†์—ˆ๊ณ , ํ…์„œํ”Œ๋กœ์šฐ ์‘์‹œ์ž ์•ˆ๋‚ด์„œ(์˜๋ฌธ ๋ฒ„์ „)์—๋Š” Refund Policy๊ฐ€ ์žˆ์—ˆ์ง€๋งŒ ํ™˜๋ถˆ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ๋Š” ์•„๋ฌด๋Ÿฐ ์„ค๋ช…์ด ์—†์—ˆ๋‹ค. ๊ฒฐ๊ตญ TrueAbility์˜ support ๋ฉ”์ผ(support@trueability.com)๋กœ ์ง์ ‘ ํ™˜๋ถˆ์„ ์š”์ฒญํ•˜๋Š” ๋ฉ”์ผ(๊ฑฐ์˜ ํ˜ธ์†Œ๋ฌธ)์„ ์ ์–ด ๋ณด๋ƒˆ๋‹ค. ๋ฉ”์ผ ๋‚ด์šฉ์€ ํ•˜์ฐฎ์€ ๋‚ด ์˜์–ด ์‹ค๋ ฅ์„ ์ ๋‚˜๋ผํ•˜๊ฒŒ ๋ณด์—ฌ์ฃผ๋ฏ€๋กœ ๋ธ”๋Ÿฌ ์ฒ˜๋ฆฌํ–ˆ๋‹ค.

์ทจ์†Œํ•ด ์ฃผ์„ธ์š”(ใ…œใ…œ)

๋ฉ”์ผ์„ ๋ณด๋‚ด์ž๋งˆ์ž ๋‹ต์žฅ์ด ์™”๋‹ค. '๋‹ˆ ๋ฉ”์ผ์€ ์ž˜ ๋ฐ›์•˜๊ณ  ๋‹ด๋‹น์ž ๋ฐฐ์ •๋˜๋ฉด ๋‹ค์‹œ ์•Œ๋ ค์ค„๊ฒŒ' ๋ญ ์ด๋Ÿฐ ๋‚ด์šฉ์ด์—ˆ๋‹ค. ์ž๋™ ์‘๋‹ต ๋ฉ”์ผ์ด๊ฒ ๊ฑฐ๋‹ˆ ํ•˜๊ณ  ๊ทธ๋ฆฌ๊ณ  ํ•œ 30๋ถ„์„ ์žˆ๋‹ค๊ฐ€ ๋˜ ๋ฐ”๋กœ ๋‹ด๋‹น์ž๊ฐ€ ๋ฐฐ์ •๋˜์—ˆ๋‹ค๋ฉฐ ๋‹ด๋‹น์ž์˜ ์ธ์‚ฌ ๋ฉ”์ผ์ด ์™”๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ฐ”๋กœ ํ™˜๋ถˆ ์ ˆ์ฐจ๊ฐ€ ์‹œ์ž‘๋˜์—ˆ๊ณ , ๊ทธ ๋‹ค์Œ๋‚  ์ ์‹ฌ์—๋Š” 7์ผ ๋‚ด์— ๊ฒฐ์ œ ์ˆ˜๋‹จ์œผ๋กœ ํ™˜๋ถˆ๋  ๊ฑฐ๋ผ๋Š” ๋ฉ”์ผ์ด ์™”๋‹ค.

์†”์งํžˆ ์ด๋ ‡๊ฒŒ ๋น ๋ฅผ ๊ฑฐ๋ผ๊ณค ๊ธฐ๋Œ€ ์•ˆํ–ˆ๋Š”๋ฐ ์ƒ๊ฐ๋ณด๋‹ค ์—„์ฒญ ๋น ๋ฅด๊ณ  ์ฟจํ–ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‹ˆ ํ˜น์‹œ๋‚˜ ๋‚˜์ฒ˜๋Ÿผ ๊ฒฐ์ œ๋ฅผ ๋‘ ๋ฒˆ ํ•˜๊ฒŒ ๋˜๋Š” ๋ถˆ์ƒ์‚ฌ๊ฐ€ ์ผ์–ด๋‚˜๋„ ๋‹นํ™ฉํ•˜์ง€ ๋ง๊ณ  TrueAbility ํŒ€์— ๋ฉ”์ผ์„ ๋ณด๋‚ด์ž. ์ƒ๊ฐ๋ณด๋‹ค ์ฐฉํ•œ ์‚ฌ๋žŒ๋“ค์ด๋‹ค. ๋ฉ”์ผ ๋ณด๋‚ธ์ง€ 4์ผ๋งŒ์— ๋ฌด์‚ฌํžˆ ํ™˜๋ถˆ๋ฐ›์„ ์ˆ˜ ์žˆ์—ˆ๋‹ค. 

 

๐ŸŽ„ ํ›„๊ธฐ

์งง์€ ์‹œ๊ฐ„ ์•ˆ์— ๋ชฉํ‘œ๋ฅผ ๊ฐ€์ง€๊ณ  ์ง‘์ค‘ํ•ด์„œ ๊ณต๋ถ€ํ•˜๋‹ˆ ์žฌ๋ฏธ์žˆ์—ˆ๋‹ค. ์•„์ง์€ ํ…์„œํ”Œ๋กœ์šฐ๋ฅผ ์ž˜ ์“ด๋‹ค๊ณ  ๋ง ํ•  ๋‹จ๊ณ„๋Š” ์•„๋‹ˆ์ง€๋งŒ ๊ฐ€๋ฒผ์šด ๋ชจ๋ธ๋“ค์€ ์‰ฝ๊ฒŒ ๋งŒ๋“ค ์ •๋„๋Š” ๋œ ๊ฒƒ ๊ฐ™์•„ ๋งŒ์กฑํ•œ๋‹ค. 

์ €์ž‘์žํ‘œ์‹œ (์ƒˆ์ฐฝ์—ด๋ฆผ)

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

[2021 ๋…ผ๋ฌธ ๋ฆฌ๋ทฐ ์Šคํ„ฐ๋””] Understanding the difficulty of training deep feedforward neural networks  (2) 2021.07.18
[2021 ๋…ผ๋ฌธ ๋ฆฌ๋ทฐ ์Šคํ„ฐ๋””] ImageNet classification with deep convolutional neural networks  (0) 2021.07.18
[ML Study Jam in DSC Sookmyung] Intro to Machine Learning(Kaggle)  (2) 2021.03.29
    'Machine Learning' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [2021 ๋…ผ๋ฌธ ๋ฆฌ๋ทฐ ์Šคํ„ฐ๋””] Understanding the difficulty of training deep feedforward neural networks
    • [2021 ๋…ผ๋ฌธ ๋ฆฌ๋ทฐ ์Šคํ„ฐ๋””] ImageNet classification with deep convolutional neural networks
    • [ML Study Jam in DSC Sookmyung] Intro to Machine Learning(Kaggle)
    morijwana
    morijwana
    ํ–‰๋ณตํ•œ ํœดํ•™์ƒ์˜ devlog

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”