$30 off During Our Annual Pro Sale. View Details »

WebエンジニアがTensorFlowで機械学習に入門しながら顔識別アプリを作ってみた / 2016-05-20 Machine Learning Kotohajime

WebエンジニアがTensorFlowで機械学習に入門しながら顔識別アプリを作ってみた / 2016-05-20 Machine Learning Kotohajime

すぎゃーん

May 20, 2016
Tweet

More Decks by すぎゃーん

Other Decks in Technology

Transcript

  1. 8FCΤϯδχΞ͕
    5FOTPS'MPXͰ
    ػցֶशʹೖ໳͠ͳ͕Β
    إࣝผΞϓϦΛ࡞ͬͯΈͨ
    ػցֶशίτϋδϝ
    ͗͢ΌʔΜ !TVHZBO

    View Slide

  2. ࣗݾ঺հ
    w ໊લ͗͢ΌʔΜ
    w 5XJUUFS!TVHZBO
    w (JUIVCTVHZBO
    w #MPHEIBUFOBOFKQTVHZBO ͗͢ΌʔΜϝϞ

    w ৬ۀ8FCܥΤϯδχΞ
    w +BWB 1FSM 3VCZ (P 1ZUIPO FUD

    w झຯΞΠυϧϮλΫ

    View Slide

  3. ࣗݾ঺հ
    w ػցֶशૉਓ
    w ൒೥લͷࢲʮػցֶशʁͳʹͦΕ͓͍͍͠ͷʯ
    w Ͱ͌ʔ΀ΒʔʹΜ͙ɺ͍ͬͯ͏ͷ͕εΰ͍Β͍͠
    ͱ͍͏ఔ౓ͷ஌ࣝ

    View Slide

  4. 5FOTPS'MPX
    w ػցֶशϥΠϒϥϦ
    w ೥݄ʹ(PPHMF͔Βొ৔
    w 5VUPSJBM΋ॆ࣮ͯ͠ΔͬΆ͍
    ͜ͷػʹͪΐͬͱ৮ͬͯΈΔ͔ɺͱؾܰʹ࢝ΊͯΈͨ
    ࣮ࡍ͜ͷλΠϛϯάͰೖ໳ͯ͠Έͨਓ͕ଟ͔ͬͨ

    View Slide

  5. 5FOTPS'MPX5VUPSJBMT
    w ./*45'PS.-#FHJOOFST
    w %FFQ./*45GPS&YQFSUT
    w 5FOTPS'MPX.FDIBOJDT
    w $POWPMVUJPOBM/FVSBM/FUXPSLT
    w ʜ
    https://www.tensorflow.org/versions/master/tutorials/index.html

    View Slide

  6. ./*450OMJOF%&.0

    View Slide

  7. ./*45
    w ػցֶशͷz)FMMP 8PSMEzతଘࡏ
    w खॻ͖ͷ਺ࣈ ʙ
    Λ൑ผ͢Δ໰୊
    w σʔληοτ͕ఏڙ͞Ε͍ͯΔ
    w Y DIBOOFM
    w GPS5SBJOJOH GPS5FTU

    View Slide

  8. ./*45
    w 4PGUNBY3FHSFTTJPO.PEFM
    w ୯૚ͷ؆୯ͳ΋ͷ ࣝผ཰໿

    w .VMUJMBZFS$POWPMVUJPOBM/FUXPSL
    w ଟ૚ͷ৞ΈࠐΈΛ࢖ͬͨ΋ͷ ࣝผ཰໿

    View Slide

  9. ./*450OMJOF
    ࣝผ཰্͕͕͍ͬͯ͢͝ͷ͸෼͔͚ͬͨͲʜ
    ͍·͍ͪΠϝʔδ͕Θ͔ͳ͍
    ˣ
    ՄࢹԽ࣮ͯ͠ࡍʹࢼͤΔΑ͏ʹ͠Α͏
    8FCͷΠϯλϑΣʔεͰ

    View Slide

  10. ./*450OMJOF
    https://tensorflow-mnist.herokuapp.com/

    View Slide

  11. ./*450OMJOF
    w 1ZUIPO
    w ֶशͨ͠෼ྨϞσϧͷೖग़ྗΛ8FC"1*Խ
    w +BWB4DSJQU
    w )5.-$BOWBTͰϑϦʔඳը
    w "1*΁ͷೖྗʹม׵ͯ͠ग़ྗΛҰཡදࣔ

    ϦΞϧλΠϜʹඳը಺༰ͷ෼ྨ݁Ռ͕ݟ͑Δʂʂ

    View Slide

  12. $*'"3ϞσϧͰ
    إࣝผ

    View Slide

  13. $*'"3
    w ./*45ͷΑ͏ͳσʔληοτ
    w Y DIBOOFMT 3(#

    w DMBTTFT
    w GPS5SBJOJOH GPS5FTU

    View Slide

  14. UFOTPSqPXNPEFMTJNBHFDJGBS
    w 5FOTPS'MPXʹಉࠝ
    w JOQVUTσʔλϑΝΠϧ͔ΒCBUDIੜ੒
    w JOGFSFODF৞ΈࠐΈਪ࿦Ϟσϧ
    w MPTTଛࣦؔ਺
    w USBJOMPTTΛ࠷খԽͤ͞Δ0QUJNJ[FS

    View Slide

  15. طʹ෼ྨϞσϧ͕͋ΔͳΒ
    ҧ͏σʔληοτͰ΋ࢼͯ͠Έ͍ͨ
    ΞχϝͷΩϟϥࣝผͳͲͷઌߦྫ͸طʹଟ਺͋Δʜ
    ˣ
    ͦ͏ͩΞΠυϧͷإࣝผͩʂ
    UFOTPSqPXNPEFMTJNBHFDJGBS

    View Slide

  16. ΞΠυϧإࣝผ
    http://d.hatena.ne.jp/sugyan/20160112/1452558576

    View Slide

  17. ڭࢣσʔλ
    w σʔληοτΛࣗ෼Ͱ༻ҙ͢Δඞཁ͕͋Δ
    w ਺ඦຕʙɺMBCFM*%ͱηοτͰ
    w ˠ͜Ε͕Ұ൪େม
    w $*'"3ޓ׵ͷόΠφϦϑΥʔϚοτ
    w ˠࣗલͰม׵͢Ε͹؆୯ʹ࡞ΕΔ

    View Slide

  18. ڭࢣσʔλ
    w ݸਓϒϩά͔Βը૾ΛεΫϨΠϐϯάͯ͠ऩू
    w إ෦෼Λݕग़ͯ͠੾Γग़͢
    w 0QFO$7ͷ$BTDBEF$MBTTJpFS
    w ࣗࡱΓͳͲ͸܏͍͍ͯΔإ͕ଟ͍ͷͰରԠ൛Λࣗ࡞
    w ճసิਖ਼ͯ͠ਖ਼໘޲͖Ͱอଘ
    w ͋ͱ͸ͻͨ͢Β໨ࢹͰϥϕϧ෇͚

    ؅ཧ༻ΞϓϦΛ3VCZPO3BJMTͰࣗ࡞

    View Slide

  19. ڭࢣσʔλ

    View Slide

  20. ΞΠυϧإࣝผ
    w ݁Ռਖ਼౴཰ऑʜ
    w ֶशσʔλ͕গͳ͍ʁ
    w YͰ͸খ͗͢͞Δʁ
    w Ϟσϧ͕ශऑʁ

    View Slide

  21. ࣗ෼ͰࣝผϞσϧ࡞੒

    View Slide

  22. ΞΠυϧإࣝผ
    w ಉࠝͷDJGBSύοέʔδʹཔΒͣࣗ෼Ͱॻ͘
    w JOQVUTY 5'3FDPSEpMFGPSNBU
    w JOGFSFODFDPOWPMVUJPOMBZFST
    w MPTTTBNFBTDJGBS
    w USBJOVTF"EBN0QUJNJ[FS

    View Slide

  23. ΞΠυϧإࣝผ

    View Slide

  24. ΞΠυϧإࣝผ
    w ݁Ռਖ਼౴཰ͪΐͬͱ্͕ͬͨʜʁ
    w ෼ྨ਺΋ม͑ͯ͠·ͬͯൺֱධՁͰ͖ͣ
    w ΍ͬͺΓσʔλ਺͸ͨ͘͞Μඞཁͦ͏
    w ෼ྨ਺΋΋ͬͱ૿΍ͯ͠ࢼ͍ͨ͠ʜ

    View Slide

  25. إࣝผ

    ର৅ൣғΛ޿͛Δ

    View Slide

  26. ϥΠϒΞΠυϧ
    w ผশ஍ԼΞΠυϧɺΠϯσΟʔζΞΠυϧɺFUD
    w ֤ॴϥΠϒϋ΢εɺళฮΠϯετΞ౳Ͱ׆ಈ
    w ౎಺ɺ஍ํ͞·͟·
    w ਺ઍਓ Ұສਓऑʁ
    ډΔͱݴΘΕ͍ͯΔ
    w 5XJUUFSΞΧ΢ϯτ΍ϒϩά͍࣋ͬͯΔࢠ͸ଟ͍

    View Slide

  27. ΞΠυϧإࣝผ

    View Slide

  28. ΞΠυϧإࣝผ
    w ໨ඪ਺ઍਓͷΞΠυϧͷإΛࣝผ͢Δ
    w ͭ·ΓͦΕ͚ͩͷڭࢣσʔλ͕ඞཁ
    w 5XJUUFS͔Βը૾෇͖5XFFUΛݕࡧ͠ɺͻͨ͢Βऩू
    w Ҏલ·Ͱͱಉ༷ʹͻͨ͢Β໨ࢹͰϥϕϧ෇͚
    w ˠ͜Ε͕ͱͯ΋େม
    w ˠେม͚ͩͲɺ΍Δ͔͠ͳ͍

    View Slide

  29. ΞΠυϧإࣝผ
    w ஌͍ͬͯΔࢠ͔Β༏ઌతʹϥϕϧ෇͚
    w ˠͱ͍ͬͯ΋͍͍ͤͥʙਓఔ౓
    w ஌Βͳ͍ࢠͰ΋ɺஅఆͰ͖Ε͹0,
    w ୯ମͰ͍ࣸͬͯΔը૾5XFFUͳΒ͖ͬͱ౤ߘऀຊਓ
    w ஌͍ͬͯΔࢠͱҰॹʹ͍ࣸͬͯΔ৔߹΋൑ผՄೳ
    w ෳ਺ਓ͍ࣸͬͯͯ൑ผͰ͖ͳ͍৔߹͸ޙճ͠

    View Slide

  30. ΞΠυϧإࣝผ
    Կສ΋ͷإը૾ʹର͠
    ઍԿඦ΋ͷϥϕϧΛબ୒͢Δͷ͸
    ͕͢͞ʹෛ୲͕େ͖͗͢Δ
    ˣ
    ֶशͤͨ͞Ϟσϧʹख఻ͬͯ΋Β͓͏

    View Slide

  31. ΞΠυϧإࣝผ
    ͋Δఔ౓ͷ਺͕ू·ͬͨإը૾Λֶशͤ͞Δ
    ະ෼ྨͷإը૾ʹର͠ਪ࿦ͤ͞Δ
    ݁ՌΛνΣοΫ ݁ہ͸ਓྗͷ໨ࢹखಈʜ

    w ߹ͬͯΕ͹ֶशσʔλ͕૿͑Δ
    w ؒҧͬͯΕ͹௚͢ˠֶशσʔλ͕૿͑Δ
    ͋Δఔ౓ֶशσʔλ͕૿͑ͨΒ·ֶͨश͠ͳ͓͢

    View Slide

  32. ΞΠυϧإࣝผ
    ༧ଌ݁ՌΛ֬ೝ͢Δ͚ͩ

    View Slide

  33. ΞΠυϧإࣝผ
    ʮ͜ͷإ͸୭͔ʯ͔Β
    ʮ͜ͷإ͸˓˓ͬΆ͍͚Ͳ߹͍ͬͯΔ͔ʯʹ
    ߜΔ͜ͱ͕Ͱ͖ͯෛ୲ܰݮ
    ͦΕͰ΋݁ߏͭΒ͍͚Ͳ

    View Slide

  34. ΞΠυϧإࣝผ
    w ࣌఺Ͱ
    w ऩूإը૾໿
    w ϥϕϧ෇͚ࡁΈ໿
    w ϥϕϧ͸໿ छྨ ਓ

    View Slide

  35. ΞΠυϧإࣝผ
    w ࣌఺Ͱ෼ྨ਺ڧ
    w ఺Ҏ্ू·ͬͨ΋ͷ͚ͩΛ෼ྨର৅
    w ͦΕҎ֎ͷ΋ͷ͸ʮର৅֎ʯͱͯ͠෼ྨ
    w ߹ܭͰສڧͷֶशσʔλɺTUFQ΄ͲͰे෼ʹऩଋ
    w ·ͩਖ਼֬ʹධՁ͸Ͱ͖͍ͯͳ͍
    w ͚Ͳɺײ֮తʹ͸͔ͳΓ౰ͨͬͯΔͱࢥ͏
    w ͦΖͦΖ๻ࣗ਎ͷੑೳΛ௒͑ͦ͏

    View Slide

  36. ΞΠυϧإࣝผߟ࡯
    w ޡճ౴ͷ܏޲ਓؒͷײ֮ͱ͚ͬ͜͏ҧ͏
    w ൅ͷ৭͕ࣅ͍ͯΔ͚ͩɺͱ͔
    w มإɾϝΠΫɾϑΟϧλՃ޻ͳͲإࣝผͱͯ͠͸೉қ౓ߴ͍
    w ͕ɺҙ֎ͱࣝผͰ͖Δ ͜ͱ΋͋Δ

    w ͔ͤͬ͘σʔλूΊͯ΋ಥવଔۀͯ͠͠·͏໰୊
    w ͔ͳ͍͠

    View Slide

  37. ΞΠυϧإࣝผߟ࡯
    w ՝୊
    w ਓྗΛഉআͰ͖͍ͯͳ͍
    w ˠ๻͕ࢮΜͰ΋ֶश͠ଓ͚ΔγεςϜʹ͍ͨ͠
    w ࠓޙͷల๬
    w ͪΌΜͱੑೳධՁ
    w Ͳͷఔ౓ͷֶशσʔλ਺ͰͲͷఔ౓ͷਖ਼౴཰͔
    w ύϥϝʔλ਺ͷௐ੔ɺޮ཰Խ

    View Slide

  38. ूΊͨσʔλͰإੜ੒

    View Slide

  39. ΞΠυϧإੜ੒
    http://d.hatena.ne.jp/sugyan/20160516/1463359395

    View Slide

  40. ΞΠυϧإੜ੒
    w %$("/ %FFQ$POWPMVUJPOBM(FOFSBUJWF
    "EWFSTBSJBM/FUXPSLT

    w (FOFSBUPS %JTDSJNJOBUPSͱ͍͏ͭͷϞσϧΛ
    ֶशͤ͞Δ͜ͱͰɺʮֶशσʔλʹ͍ۙը૾ʯ
    Λੜ੒Ͱ͖ΔΑ͏ʹͳΔ
    w ͜͜·Ͱ෼ྨثͱ͔࡞ͬͯ΍͍ͬͯΕ͹ɺࣗ෼Ͱ
    ίʔυॻ͍ͯ5FOTPS'MPXͰ࡞ΕΔ

    View Slide

  41. ·ͱΊ

    View Slide

  42. ·ͱΊ
    ػցֶशͱ͔·ͬͨ͘ԑ͕ແ͔͚ͬͨͲ
    5FOTPS'MPX͖͔͚ͬʹͱΓ͋͑ͣ৮ͬͯΈͨΒ
    ͳΜ͔໘നͯࣗ͘෼Ͱ࡞Γ͍ͨ΋ͷͰ͖ͯ
    ৭ʑࢼߦࡨޡͯͨ͠Βษڧʹͳͬͨ͠
    %FFQ-FBSOJOH͛͢ʔ

    View Slide

  43. ·ͱΊ
    w ػցֶशʹೖ໳͠ͳ͕Β৭ʑͭͬͯ͘Έ·ͨ͠
    w ͿͬͪΌ͚ɺཧ࿦ͱ͔ͦΜͳʹ஌Βͳ͍
    w ͚Ͳௐ΂ͳ͕Βίʔυॻ͚͹Կͱ͔ͳΔ ʁ

    w ઌߦྫ΍υΩϡϝϯτ࿨༁΋ͨ͘͞Μ͋Δ͠
    w 8FCܥͷ஌ࣝΛ׆͔ͯ͠૊Έ߹ΘͤΒΕΔͷ͸ڧΈ
    w ݁ՌͷՄࢹԽɺֶश༻σʔλͷ؅ཧͳͲ

    View Slide

  44. ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠

    View Slide