PyTorchとCaffe2とONNXと深層学習モデルのデプロイについて

 PyTorchとCaffe2とONNXと深層学習モデルのデプロイについて

7dc8611c26c3ca62c551109c65d04270?s=128

Yuichiro Someya

January 27, 2018
Tweet

Transcript

  1. 1Z5PSDIͱ$B⒎Fͱ0//9ͱ
 ਂ૚ֶशϞσϧͷσϓϩΠʹ͍ͭͯ ΫοΫύουגࣜձࣾݚڀ։ൃ෦છ୩༔Ұ࿠
 

  2. ࣗݾ঺հ  છ୩༔Ұ࿠<:VJDIJSP4PNFZB>  ΫοΫύουגࣜձࣾݚڀ։ൃ෦
 ϦαʔνΤϯδχΞ೥݄d  "84ͱ͔ػցֶशͱ͔  .-NJOVUFT͸ճ໨

    UXJUUFSDPN!BZFNPT@Z HJUIVCDPNBZFNPT IUUQTXXXBZFNPTNF
  3. None
  4. Ϩγϐ਺ɿສ඼Ҏ্ ࠃ಺ͷ݄ؒར༻ऀ਺ɿ໿ສਓ

  5. ରԠݴޠɿݴޠϲࠃ ւ֎ͷ݄ؒར༻ऀ਺ɿ໿ສਓ

  6. "HFOEB  ࿩͢͜ͱ  χϡʔϥϧωοτϫʔΫϞσϧͷσϓϩΠͷݱঢ়ͱ՝୊ʹ͍ͭͯ  1Z5PSDIͱ$B⒎Fͱ0//9  χϡʔϥϧωοτϫʔΫͷதؒදݱͱ͸ 

    ࿩͞ͳ͍͜ͱ  1Z5PSDIɺ$B⒎Fɺ0//9ͷ࢖͍ํ  σϞ
  7. ϞσϧσϓϩΠͷݱঢ়ͱ՝୊

  8. എܠ  ػցֶशΛར༻͢Δ જࡏ ਓ਺͕૿͍͑ͯΔ  ྫΫοΫύουגࣜձࣾݚڀ։ൃ෦  ೥݄ͷൃ଍౰࣌͸໊ͷϝϯόʔ 

    ೥݄ݱࡏ͸ࠃ಺ʹ໊ ւ֎ʹ໊  ϞσϧͷσϓϩΠ࡞ۀ͕ϘτϧωοΫʹͳ͖ͬͯͨ
  9. 5SBJO  5SBJO*OGFSͱ͍͏ॱ൪  ͋Δ͍͸ͦΕΛ܁Γฦ͢ ྫϓϩτλΠϓɺ1P$   ͳΔ΂ָ͘ʹ଎͘΍Γ͍ͨ *OGFS

    σʔλऩू .PEFM ܇࿅ લॲཧ "1*࣮૷ ෼ੳ %PDLFSԽ όον࣮૷ ςετʗ؂ࢹ
  10. ϞσϧͷσϓϩΠख๏ྫ  ΞϓϦέʔγϣϯίʔυʹ૊ΈࠐΉ  1ZUIPOQBDLBHFʹ͢Δ  "1*Խ͢Δ

  11. ΞϓϦέʔγϣϯίʔυʹ૊ΈࠐΉ  ͍͍ͱ͜Ζ  ௨৴Φʔόʔϔου౳͕ආ͚ΒΕΔ  Α͘ͳ͍ͱ͜Ζ  ΞϓϦέʔγϣϯίʔυΛ͍͡Δඞཁ͕͋Δ 

    1ZUIPO؀ڥʹݶΒΕΔPSม׵͢Δඞཁ͕͋Δ
 Ұํ1Z$BMMͱ͍͏ͷ΋͋Δ    άϧʔίʔυ͕ॏෳ͢Δ
 ͔͠΋݁ߏάϧʔ͕෼ް͔ͬͨΓ͢Δ IUUQTHJUIVCDPNNSLOQZDBMMSC
  12. 1ZUIPOQBDLBHFʹ͢Δ  άϧʔ෦෼ΛؚΊͯ1ZUIPOQBDLBHFԽͯ͠ଞॴͰར༻Ͱ͖Δ Α͏ʹ͢Δ  ެ։Ͱ͖ͳ΋ͷʹ͍ͭͯ͸1Z1*$MPVE  ͳͲΛࣾ಺ʹ
 ཱͯΔͱ͍͏ख͕͋Δ IUUQTHJUIVCDPNTUFWFBSDQZQJDMPVE

  13. 1ZUIPOQBDLBHFʹ͢Δ  ͍͍ͱ͜Ζ  άϧʔίʔυͷॏෳ͕ආ͚ΒΕΔ  Α͘ͳ͍ͱ͜Ζ  ґવ1ZUIPO؀ڥʹݶΒΕΔ 

    ख͕͔͔ؒΔ  //ϑϨʔϜϫʔΫͷ஌ࣝɺ1ZUIPOͷQBDLBHJOHʹؔ͢Δ஌͕ࣝඞཁʹ ͳΔ ୭͕΍Δͷ͔໰୊ IUUQTHJUIVCDPNTUFWFBSDQZQJDMPVE
  14. "1*Խ͢Δ  Ϟσϧ୯ମΛ"1*Խ  ϞσϧΛಡΈࠐΜͰɺ֎෦ϦΫΤετʹԠͯ͡ϞσϧΛ
 ݺͼग़͢ബ͘খ͞ͳ"1*Λ࣮૷͢Δ NJDSPTFSWJDF   पลͷϩδοΫ

    FHʰϞσϧ͕εύϜ൑ఆͨ͠Β%#ʹϑϥ άΛཱͯΔʱ ͸֎෦Ͱ࣮૷
  15. "1*Խ͢Δ  ͍͍ͱ͜Ζ  Ϟσϧ࣮૷ͱΞϓϦέʔγϣϯ࣮૷Λ্ख͘੾Γ཭ͤΔ
 ։ൃऀ΋্ख͘෼͚ΒΕΔ  ΞϓϦέʔγϣϯ͸1ZUIPOͰͳͯ͘΋Α͍ NJDSPTFSWJDF 

     Α͘ͳ͍ͱ͜Ζ  ख͕͔͔ؒΔ
  16. "1*αʔόʔ  ʰ1ZUIPOQBDLBHFԽɺ"1*Խ͍ͣΕ͔ͷํ๏ʹΑΓɺϞσϧ ͷ࣋ͪग़͕͠ग़དྷΔʱ  ͍ͣΕ΋ख͕͔͔ؒΓɺ1P$౳ͷ৔߹ಛʹࠔΔ
 ੾Γग़ͯ͠ڞ௨ج൫Խ͢Δʁ ͪΐͬͱͨ͠ϝλσʔλKTPO NPEFMQC .PEFMͷμϯϓϑΝΠϧ

    NPEFMQC ͳʹ͔ 1ZUIPOQBDLBHF NPEFMQC
  17. "1*αʔόʔ  ͜Ε͸ݫ͍͠ NPEFMQC ͳʹ͔ 1ZUIPOQBDLBHF NPEFMQC

  18. ͪͳΈʹ  (PPHMF$MPVE.-&OHJOFͱ͍͏෺͕͋Δ
 IUUQTDMPVEHPPHMFDPNNMFOHJOF   5FOTPSqPXɺ($1റΓ͸͋Δ͕Α͘ಈ͘  ެࣜʮόον༻ɻϦΞϧλΠϜਪ࿦͸#FUBͰ4-"ͳ͍Αʯ "1*αʔόʔ

    ͪΐͬͱͨ͠ϝλσʔλ NPEFMQC .PEFMͷμϯϓϑΝΠϧ NPEFMQC
  19. ͜͜·Ͱ·ͱΊ  Ϟσϧ։ൃऀ͕૿͖͑ͯͨ݁ՌɺϞσϧͷσϓϩΠͱ͍͏
 ϘτϧωοΫ͕ݟ͖͑ͯͨ  σϓϩΠ࡞ۀΛڞ௨ج൫ͱ͍͏ܗͰ࢓૊ΈԽ͍ͨ͠ͱ͜Ζ  ޓ͍ʹޓ׵ੑͷ ΄ͱΜͲ ͳ͍//ϑϨʔϜϫʔΫ͕


    ୔ࢁ͋Δ
  20. 1Z5PSDIͱ$B⒎Fͱ0//9

  21. //ϑϨʔϜϫʔΫͷಛੑͱબ୒  ͳͥ//ϑϨʔϜϫʔΫ͸ෳ਺͋Δʁ

  22. //ϑϨʔϜϫʔΫͷಛੑͱબ୒  ʰ࣮ݧ౳ͷඇϓϩμΫγϣϯ؀ڥʹ͓͍ͯ͸ਪ࿦ͷ࣮ߦ଎౓
 ΑΓॊೈੑ͕༏ઌ͞ΕΔʱ  ʰσϓϩΠઌͰ͸ɺ࣮ߦ؀ڥ αʔόʔʗΤοδ ʹద͠ɺ
 ਪ࿦ʹ࠷దԽ͞ΕͨϑϨʔϜϫʔΫ͕๬·͍͠ʱ 

    ॊೈੑͱ͸ʁ  Α͘࿦఺ʹͳΔͷ͸ɺ੩తμΠφϛοΫ
  23. 1Z5PSDIͱ$B⒎F  1Z5PSDI  ໋ྩతͰ μΠφϛοΫɺ࣮ݧ޲͖  $B⒎F  એݴతͰ

    ੩తͳϑϨʔϜϫʔΫ  ΫϩεϓϥοτϑΥʔϜͰ࣮ߦՄೳ FHJ04 "OESPJE   ࣮ݧͱਪ࿦࢖͍෼͚ΔϞσϧͷՄൖੑ͕ॏཁࢹ͞Εͯ͘Δ
  24. 0//9   χϡʔϥϧωοτϫʔΫͷΦʔϓϯͳ*3 தؒදݱ ఆٛ  ࣮ମ͸1SPDPM#V⒎FS  

     ྫ͑͹  1Z5PSDI ࣮ݧ 0//9$B⒎F ϓϩμΫγϣϯ IUUQTSFTFBSDIGCDPNGBDFCPPLBOENJDSPTPGUJOUSPEVDFOFXPQFOFDPTZTUFNGPSJOUFSDIBOHFBCMFBJGSBNFXPSLT IUUQTEFWFMPQFSTHPPHMFDPNQSPUPDPMCV⒎FST 0//9'SPOUFOE 0//9#BDLFOE
  25. ࣅͨΑ͏ͳऔΓ૊Έ IUUQUWNMBOHPSH IUUQTHJUIVCDPNENMDUWN IUUQTHJUIVCDPNENMDOOWN IUUQTXXXLISPOPTPSHOOFG 57.4UBDL 57. //7.

  26. ͦͷଞͷରԠϑϨʔϜϫʔΫ  μΠφϛοΫ $IBJOFS 1Z5PSDI ͸FYQPSUରԠॏࢹ  ੩త 5' $B⒎F

     ɺΤοδ༻ $PSF.-  ౳͸JNQPSUରԠॏࢹ IUUQTHJUIVCDPNPOOYUVUPSJBMT
  27. ͦͷଞͷରԠϑϨʔϜϫʔΫ  ྫ͑͹$B⒎Fͷ࣮ߦ؀ڥΛ༻ҙ͓͚ͯ͠͹ɺ$B⒎F 1ZUPSDI $IBJOFSͷϞσϧ͕࣮ߦͰ͖Δɻ  ڞ௨࣮ߦ؀ڥ΋ເͰ͸ͳ͍ 5FOTPSqPXؤுΕ IUUQTHJUIVCDPNPOOYUVUPSJBMT

  28. 0//9CBDLFOE "1*αʔόʔ  ເ NPEFMQC ͳʹ͔ 1ZUIPOQBDLBHF 0//9GSPOUFOE NPEFMPOOY ͪΐͬͱͨ͠ϝλσʔλKTPO

  29. ·ͱΊ  ϞσϧͷσϓϩΠʹ·ͭΘΔ՝୊ͷͭͱͯ͠ɺͦΕͧΕʹ
 ಛੑ͕ҟͳΔʰෳ਺ͷ//ϑϨʔϜϫʔΫ͕ଘࡏ͢ΔࣄʱΛڍ ͛ͨ  0//9Λར༻ͯ͠ϞσϧΛσϓϩΠ͢Δҝͷڞ௨ج൫Λߏங
 ͢ΔΞΠσΞΛ঺հͨ͠

  30. એ఻  ͦΜͳج൫ΛҰॹʹ࡞Γ·ͤΜ͔  IUUQTDPPLQBEKPCT

  31. ࢀߟจݙ  IUUQTSFTFBSDIGCDPNQVCMJDBUJPOTBQQMJFENBDIJOF MFBSOJOHBUGBDFCPPLBEBUBDFOUFSJOGSBTUSVDUVSF QFSTQFDUJWF  IUUQTSFTFBSDIGCDPNGBDFCPPLBOENJDSPTPGU JOUSPEVDFOFXPQFOFDPTZTUFNGPSJOUFSDIBOHFBCMFBJ GSBNFXPSLT 

    IUUQTHJUIVCDPNPOOYUVUPSJBMT