µü óÀ½ Ã¥À» Á¢ÇßÀ» ¶§´Â ¹¹¶ö±î... ±×¸²Ã¥ °°¾Ò´Ù. °Å±â´Ù°¡ Ã¥Á¦¸ñºÎÅÍ ´Ù¸¥ Ã¥°ú Â÷º°¼ºÀÌ ÀÖ´Â µíÇß´Ù. ÀϹÝÀûÀ¸·Î "... ù°ÉÀ½", "Introduction to ..." ¿Í °°ÀÌ Á¤ÇüÈµÈ Á¦¸ñÀ» °®Ãß°í ÀÖ¾ú´Âµ¥, ÀÌ Ã¥Àº ªÀº ½Ã°£ÀÓÀ» °Á¶ÇÑ "3ºÐ" À̶ó´Â ´Ü¾î¸¦ Á¦¸ñ¿¡ Æ÷ÇÔÇØ ½±°í ªÀº ½Ã°£¾È¿¡ Ã¥À» ¼³¸íÇϰí ÀÖ´Ù´Â ´À³¦À» ÁÖ°í ÀÖ¾ú´Ù. ¹º°¡ ÀÌ·± ºÎºÐ¿¡¼´Â ´Ù¸¥ ÃâÆÇ»ç¿¡¼ ³ª¿À´Â µö·¯´× °ü·Ã ¼Àû°ú´Â ´Ù¸¥ ³ª¸§´ë·ÎÀÇ Æ¯Â¡À» º¸¿©Áá´Ù.
»ç½Ç ÀÌÀü Ã¥ ¸®ºä¸¦ ÇÒ¶§µµ ¾ð±ÞÇß´ø ºÎºÐÀ̱ä ÇÏÁö¸¸, ³ ÀÌ·¸°Ô...
´õº¸±â
µü óÀ½ Ã¥À» Á¢ÇßÀ» ¶§´Â ¹¹¶ö±î... ±×¸²Ã¥ °°¾Ò´Ù. °Å±â´Ù°¡ Ã¥Á¦¸ñºÎÅÍ ´Ù¸¥ Ã¥°ú Â÷º°¼ºÀÌ ÀÖ´Â µíÇß´Ù. ÀϹÝÀûÀ¸·Î "... ù°ÉÀ½", "Introduction to ..." ¿Í °°ÀÌ Á¤ÇüÈµÈ Á¦¸ñÀ» °®Ãß°í ÀÖ¾ú´Âµ¥, ÀÌ Ã¥Àº ªÀº ½Ã°£ÀÓÀ» °Á¶ÇÑ "3ºÐ" À̶ó´Â ´Ü¾î¸¦ Á¦¸ñ¿¡ Æ÷ÇÔÇØ ½±°í ªÀº ½Ã°£¾È¿¡ Ã¥À» ¼³¸íÇϰí ÀÖ´Ù´Â ´À³¦À» ÁÖ°í ÀÖ¾ú´Ù. ¹º°¡ ÀÌ·± ºÎºÐ¿¡¼´Â ´Ù¸¥ ÃâÆÇ»ç¿¡¼ ³ª¿À´Â µö·¯´× °ü·Ã ¼Àû°ú´Â ´Ù¸¥ ³ª¸§´ë·ÎÀÇ Æ¯Â¡À» º¸¿©Áá´Ù.
»ç½Ç ÀÌÀü Ã¥ ¸®ºä¸¦ ÇÒ¶§µµ ¾ð±ÞÇß´ø ºÎºÐÀ̱ä ÇÏÁö¸¸, ³ ÀÌ·¸°Ô °æ·®ÈµÈ Ã¥ÀÌ ÁÁ´Ù. È޴뼺 ºÎºÐ¿¡¼³ª ÇÊ¿äÇÒ ¶§ ¾ðÁ¦µç µé°í º¼ ¼ö ÀÖ´Â »çÀÌÁîÀ̱⿡ ȸ»ç Ãâ±ÙÇÒ ¶§³ª ««È÷ ¿©À¯½Ã°£ÀÌ ÀÖÀ» ¶§ ²¨³»º¸±â°¡ ÁÁ±â ¶§¹®ÀÌ´Ù. ¹°·Ð ÀÚ¼¼ÇÑ ¼³¸í°ú ¿Ïº®ÇÑ ¿¹Á¦°¡ "¸¹ÀÌ" ´ã°ÜÀÖ´Â °ÍÀ» ¿øÇÏ´Â »ç¶÷µµ ÀÖ°ÚÁö¸¸, Àû¾îµµ ¹º°¡ "¸À"ÀÌ¶óµµ ºÁ¾ß ÀÔ¹®ÀÚµµ óÀ½ Á¢±ÙÇϱ⠽¬¿ï ¿©Áö¸¦ ÁÖÁö ¾ÊÀ»±î... Àú ¾ãÀº Ã¥¾È¿¡ µö·¯´×À» ¼³¸íÇÏ´Â °Í ÀÚü°¡ ³Í¼¾½ºÀÏÁö¶óµµ ¸»ÀÌ´Ù.
ÀÌ Ã¥¿¡¼ ÇÙ½ÉÀûÀ¸·Î ´Ù·ç°í ÀÖ´Â Tensorflow´Â 2015³â Google Brain ÆÀ¿¡¼ ¸¸µç Data handlingÀ» À§ÇÑ SW LibraryÀÌ´Ù. ¾Æ¸¶ µö·¯´× ¼Ò½ÄÀ» ¸¹ÀÌ Á¢ÇÑ»ç¶÷À̶ó¸é Tensorflow À̿ܿ¡µµ Caffe³ª Theano, Keras °°Àº libraryµéµµ µé¾îºÃÀ»ÅÙµ¥, ½ÃÁß¿¡µµ ã¾Æº¸¸é °¢ Library¸¦ ´ë»óÀ¸·Î ÇÑ Ã¥µéµµ ±²ÀåÈ÷ ¸¹´Ù. ÀÌ Ã¥µµ ±×·± ¸Æ¶ô¿¡¼ Tensorflow package »ç¿ë¹ý(tensorflow¿¡¼ Á¦°øÇÏ´Â API³ª Tensorboard ¿¡ ´ëÇÑ ³»¿ë)À» ´Ù·é´Ù. ±×¸®°í ±× »ç¿ë¹ýÀ» ÀÌ¿ëÇØ MNIST, CNN, AutoEncoder °°Àº °ÍÀ» ½ÇÁ¦·Î ´Ù·ïº¸´Â °ÍÀ» ÁÖ ³»¿ëÀ¸·Î »ï°í ÀÖ´Ù.
ÀÌ Ã¥Àº ¹«½¼ ¸ÀÀϱî?
À½½ÄÀÌ Àα⸦ ²ø±â À§Çؼ´Â ´Ù¸§ À½½Ä°ú Â÷º°È½Ãų ¼ö ÀÖ´Â "¸À"ÀÌ ÀÖ¾î¾ß ÇÑ´Ù. Á¦¸ñ¿¡¼µµ ¾ð±ÞµÇ¾î ÀÖ´Â °Íó·³ Tensorflow¸¦ ¼³¸íÇϴ åÀ̶ó°í Çϴµ¥, ´Ü¼øÈ÷ ±× ¸À¸¸À¸·Î´Â ´©±º°¡¸¦ ÀڱؽÃŰ±â¿£ ºÎÁ·ÇÒ µíÇÏ´Ù. ±×·¡¼ ³ª¸§ Ã¥À» Àо¸é¼ Ãß·Áº» ¸ÀÀ» ¼Ò°³Çغ¸°íÀÚ ÇÑ´Ù.
1. ¼ö½Ä°ú º¹ÀâÇÑ ¼³¸íÀÌ ¾ø´Ù.
Ã¥ÀÇ ¼µÎ¿¡¼µµ ¹àÈù ³»¿ëÀÌÁö¸¸, ¼ö½Ä°ú ±× ¼ö½ÄÀ» Áõ¸íÇϱâ À§ÇÑ º¹ÀâÇÑ ¼³¸íÀÌ ¾ø´Ù. ÀÇ·Ê»ó µö·¯´×À» ¼³¸íÇϱâ À§Çؼ´Â ÇʼöÀûÀ¸·Î ³ª¿À´Â ¼ö½ÄÀÌ ¹ÌºÐ°ú ÀûºÐÀÏÅÙµ¥, ÀÌÃ¥¿¡¼´Â ±×·± ¼ö½ÄÀû ÀÌÇØ°¡ Tensorflow¿¡¼ Ä¿¹öÇÑ´Ù°í °¡Á¤ÇÑ »óÅ¿¡¼ µö·¯´× ¾Ë°í¸®ÁòÀÇ µ¿ÀÛ ¿ø¸® ¼³¸í¿¡ Ä¡ÁßÇß´Ù.
°¡·É CNNÀ» ¼³¸íÇÒ ¶§µµ ¹Ýµå½Ã ³ª¿Í¾ß ÇÒ ³»¿ëÀÌ Convolution ¿¬»êÀ̰í, À̸¦ Áõ¸íÇϱâ À§ÇÑ °ø½ÄÀÌ Âß ¸¹Áö¸¸ ½ÇÁ¦·Î ±× ¾Ë°í¸®ÁòÀ» ÀÌÇØÇÏ°í °³¼±Çϱ⿡´Â ³Ê¹« ¸¹Àº ½Ã°£ÀÌ µç´Ù. À̸¦ °í·ÁÇÑµí ´Ü¼øÈ÷ Convolution ¿¬»êÀÌ ¾î¶²°ÇÁö ±×¸²°ú ÄÚµå·Î ¼³¸íÇÏ°í ½ÇÁ¦·Î Tensorflow·Î ±¸ÇöÇϱâ À§Çؼ ¾î¶² API°¡ »ç¿ëµÇ¾î¾ß ÇÏ´ÂÁö¸¦ ¼³¸íÇÏ´Â Çü½ÄÀ¸·Î ±ÛÀÌ ÁøÇàµÇ°í ÀÖ´Ù. °è¼Ó ¾ê±âÇÑ ºÎºÐÀÌÁö¸¸, ´Ü¼øÈ÷ ±ÛÀ» ÀÐ°í ¾Ë°í¸®ÁòÀ» °£´ÜÈ÷ ÀÌ¿ëÇÏ´Â µ¥ ÁÁÀº ¿ä¼ÒÀÌÁö¸¸, Á»´õ ±íÀÌÀÖ´Â ÇнÀÀ» À§Çؼ´Â ºÐ¸í À̸¦ ÀÚ¼¼È÷ ´Ù·ç´Â Âü°í ¼ÀûÀÌ ²À ÇÊ¿äÇÏ´Ù.
2. ÇÖÇÑ ¾Ë°í¸®ÁòµéÀÌ ´ã°ÜÀÖ´Ù.
ÀÌÃ¥¿¡¼ ¼³¸íÇϰí ÀÖ´Â µö·¯´× ¾Ë°í¸®ÁòÀº ¾ÆÁÖ ±âº»ÀûÀÎ Neural NetworkºÎÅÍ ½ÃÀÛÇØ¼ Deep mind¿¡¼ °³¹ßÇÑ Deep Q-Network(DQN)±îÁö ÃֽŠtrendÀÇ °æÇâÀ» Æ÷ÇÔÇϰíÀÚ ³ë·ÂÇß´Ù. ¹°·Ð µö·¯´× trendÀÇ ¹ßÀüÀÌ ¹«Ã´ ºü¸£±â¿¡ À̰͵µ ¾î¼¸é ±¸½ÄÀÇ ±â¼úÀÌ µÇ¾úÀ» ¼öµµ ÀÖ°ÚÁö¸¸, Àû¾îµµ ¸î³â°£ ÇÖÇß´ø ¾Ë°í¸®ÁòÀ» ½ÇÁ¦·Î ±¸ÇöÇØº¼ ¼ö ÀÖ´Â ±âȸ¸¦ Á¦°øÇÑ´Ù.
»ç½Ç ³ªµµ ³»°¡ Á¦ÀÏ °ü½ÉÀ» °¡Áö´Â ¾Ë°í¸®ÁòÀÌ Generative Adversarial Network(GAN) À̶ó´Â ¾Ë°í¸®ÁòÀ̾ú´Ù. °£´ÜÈ÷ ¼³¸íÇϸé, ÇнÀÀ» À¯µµ½ÃŰ´Â ¸ðµâ°ú ÇнÀµÈ °á°ú¹°À» ±¸º°ÇÏ´Â ¸ðµâ°£¿¡ °æÀïÀ» ½ÃÅ´À¸·Î½á ÃÖ´ëÇÑ ½ÇÁ¦¿Í À¯»çÇÑ °á°ú¹°À» ³»°Ô²û ¸¸µé¾îÁÖ´Â ¾Ë°í¸®ÁòÀε¥, ¾Æ¸¶ ÀÎÅÍ³Ý °Ô½ÃÆÇ µ¹¾Æ´Ù´Ï´Ùº¸¸é ±â°è°¡ ¸¸µé¾î³½ ¸ÚÀÖ´Â À̹ÌÁö¶ó´ø°¡ ³ë·¡°°Àº°Ô GANÀ» °ÅÄ£ °á°ú¹°À̶ó°í º¸¸é µÉ°Å °°´Ù. ¾Æ¹«Æ° ÀÌ·± °á°ú°¡ ½Ã°¢ÀûÀ¸·Î ³ª¿À°Ô µÈ´Ù¸é ¹º°¡ Èï¹Ì¸¦ À¯¹ßÇÒ ¼ö ÀÖ´Â ¿©Áö°¡ ÁÖ¾îÁö´Â °Í °°´Ù. ÀÌ·±µ¥¿¡¼ Èï¹Ì¸¦ ´À³¢¸é ÀÌ Ã¥ÀÌ Ãß±¸ÇÏ´Â ¸ñÇ¥¿¡ µµ´ÞÇÒ ¼ö ÀÖÁö ¾ÊÀ»±î ÇÏ´Â »ý°¢ÀÌ µç´Ù.
3. Line-By-Line ÄÚµå ¼³¸í°ú Àüü ¸Æ¶ô ºÐ¼®
°¢ ÆÄÆ®º°·Î ³»¿ë ÁøÇàÀº Å©°Ô ´ÙÀ½°ú °°ÀÌ ±¸¼ºµÈ´Ù.
1) ¿ø¸® ¼³¸í2) ÄÚµå ±¸Çö½Ã ¼³¸íÀÌ ÇÊ¿äÇÑ ºÎºÐ¿¡ ´ëÇÑ ºÎ¿¬ ¼³¸í3) °á°ú Ãâ·Â°ú ¼³¸í4) Àüü ÄÚµå
±×·¸±â ¶§¹®¿¡ Äڵ带 Á÷Á¢ 󺸸鼵µ ´Ù½Ã Àüü Äڵ带 º¸±â À§Çؼ °è¼Ó ¾ÕµÚ·Î À̵¿ÇØ¾ß ÇÒ ºÒÆíÇÔÀÌ ¾ø´Ù. ¶ÇÇÑ µ¶ÀÚ°¡ ±Ã±ÝÇØÇÒ ºÎºÐ¿¡ ´ëÇØ¼ Áß°£Áß°£ Note Çü½ÄÀ¸·Î ÁÖ¼®À» ´Þ¾Æ³ù±â ¶§¹®¿¡ Ã¥¿¡ ÁýÁßÇÒ ¼ö ÀÖ´Ù´Â ÀåÁ¡ÀÌ ÀÖ´Ù. ´Ù¸¸ ±× ³»¿ëÀÌ ±×·¸°Ô ÀÚ¼¼ÇÏÁö´Â ¾Ê´Ù. ºÐ¸í ´õ ¾Ë°í ½ÍÀº »ç¶÷À̶ó¸é Á» °¥ÁõÀ» ¾ß±âÇÒ ¼öµµ ÀÖÀ» ¹ýÇÑ ³»¿ëµéÀÌ Á¾Á¾ µé¾îÀÖ´Ù. (¿¹¸¦ µé¾î ¼±ÅÃÇÑ ºÎºÐ¿¡ ´ëÇÑ "why" °°Àº ºÎºÐ...)
°á·ÐÀº?
¾Æ¹«·¡µµ Ã¥ Á¦¸ñ¿¡ ¸ÀÀ̶ó´Â ´Ü¾î°¡ µé¾îÀÖÀ¸´Ï Ã¥À» ÀÐÀº ¼Ò°¨µµ À½½ÄÀ¸·Î Ç¥ÇöÇØº¼±î ÇÑ´Ù. ³»°¡ ÀÐÀº ¼Ò°¨À» Ç¥ÇöÇÏÀÚ¸é, ¸¶Ä¡ ÀÌ Ã¥Àº "»õÄÞ´ÞÄÞ"°ú °°´Ù´Â ´À³¦ÀÌ µç´Ù. ¾ðÁ¦µç µé°í´Ù´Ï±â¿¡µµ ÆíÇÏ°í ¾ðÁ¦µç ÀÔ¿¡ ³Ö°í ¸ÀÀ» º¼ ¼ö ÀÖ´Ù. ±× ¸ÀÀÌ ±æ°Ô À¯ÁöµÇÁö´Â ¸øÇÏÁö¸¸, Àû¾îµµ ¾Ã´Â µ¿¾È¿¡´Â ±× ¸ÀÀ» ´À³¢°í, ¹º°¡¿¡ ÁýÁßÇÒ ¼ö ÀÖ°Ô²û ÇØÁØ´Ù. µ¶ÀÚÀÇ ½ºÅ¸Àϸ¶´Ù ´Ù¸¥ ºÎºÐÀ̰í, ¸í¹éÈ÷ ¸»ÇÏ´Â ³»¿ëÀÌÁö¸¸ ÀÌ Ã¥Àº main dish ¼º°ÝÀÇ Ã¥Àº Àý´ë ¾Æ´Ï´Ù. ±×·¡µµ Àдٺ¸¸é µö·¯´×¿¡ ´ëÇÑ È£±â½É°ú ±× ÀÔ¸ÀÀ» ºÎ¿©ÇÏ´Â µ¥´Â ³ª¸§ ±× ¸ñÀû¼ºÀ» ´ÙÇÒ ¼ö Àִ åÀ̶ó°í »ý°¢ÇÑ´Ù. ¿¹»ó µ¶ÀÚÃþÀ̶ó¸é.. ¾Æ¸¶ µö·¯´×ÀÌ ¹ºÁö´Â ¾Ë°í ½Í°í, ½ÇÁ¦·Î ±¸Çöµµ ÇØº¸°í ½ÍÀºµ¥, ¹¹°¡ ¹ºÁö ¸ô¶ó¼ ½ÃÀÛÁ¶Â÷ ÇÒ ¼ö ¾ø´ø »ç¶÷µéÇÑÅ×´Â ÃÖÀûÀÇ Ã¥ÀÌ µÇÁö ¾ÊÀ»±î ½Í´Ù. Âü°í·Î ³ª´Â »õÄÞ´ÞÄÞ ÁøÂ¥ ÁÁ¾ÆÇÑ´Ù :)(ÀÌ Ã¥ÀÇ ÈļӯíÀ¸·Î keras Æíµµ ÃßÈÄ¿¡ Ãâ½ÃµÇ´Â °Í °°´Ù. ³ªµµ »ç½Ç µè´ø °Àǰ¡ keras·Î ÁøÇàµÇ´Â°Ô ¸¹¾Æ¼ ±×°Ô ´õ Àͼ÷Çߴµ¥, Ãâ°£ÈÄ Çѹø Àо °ÍÀ» °èȹÇϰí ÀÖ´Ù.)
- ÀÌÃ¥ÀÇ repositoryµµ °ø°³µÇ¾î ÀÖÀ¸´Ï Äڵ常 Âü°íÇÏ°í ½ÍÀº ºÐ²²¼´Â ¾Æ·¡ ¸µÅ©¸¦ Âü°íÇϽñ⠹ٶø´Ï´Ù.: https://github.com/golbin/TensorFlow-Tutorials<ÇØ´ç Æ÷½ºÆ®¿¡¼ ´Ù·ç°í ÀÖ´Â "°ñºóÇØÄ¿ÀÇ 3ºÐ µö·¯´× : ÅÙ¼Ç÷θÀ" Ã¥Àº ÇѺû ¹Ìµð¾î·ÎºÎÅÍ Áö¿øÀ» ¹Þ°í ÀÌ¿¡ ´ëÇÑ ¼ÆòÀ» ¾´ °ÍÀÓÀ» ¾Ë·Áµå¸³´Ï´Ù.>Ãâó: http://talkingaboutme.tistory.com/862?category=488131 [Àڽſ¡ ´ëÇÑ °íÂû]
´Ý±â