結局Kaggleって何を得られるの?

Dca4f8abd1e78940052ee52c85c4d2ed?s=47 shimacos
November 13, 2020

 結局Kaggleって何を得られるの?

Discovery DataScience Meet up (DsDS) #1での登壇資料です。
・なぜ自分がKaggleをしているのか
・普段Kagglerが多くいる職場で働いていく上で感じたこと
・Kaggleが実際どういう点で役に立つのか
などを個人的な観点で話しました。
初級者・中級者向けの内容です。

Dca4f8abd1e78940052ee52c85c4d2ed?s=128

shimacos

November 13, 2020
Tweet

Transcript

  1. 2020.11.14 Naoto Shimakoshi 株式会社ディー・エヌ・エー + 株式会社 Mobility Technologies 結局 Kaggleって何を得られるの?

    DsDS Meetup #1
  2. 2 l ໊લ l ౡӽ ௚ਓ γϚίγ φΦτ l Α͘τϦΰΤͱؒҧ͑ΒΕ·͕͢γϚίγͰ͢ɻ

    l 5XJUUFS l !OU@P l ܦྺ l ಸྑݝग़਎ l ژ౎େֶ ػցཧ޻ֶઐ߈ ଔۀ l d%F/"৽ଔೖࣾ l d.PCJMJUZ5FDIOPMPHJFTग़޲த ࣗݾ঺հ
  3. 3 l ,BHHMF l  TPMP  TPMP l ৭ʑͳυϝΠϯʹ৮ΕΔͷ͕޷͖ͳͷͰɺ৭ʑग़ͯ·͢

    ࣗݾ঺հ
  4. 4 l ࿩͢͜ͱ l Կނࣗ෼͕,BHHMFΛ͍ͯ͠Δͷ͔ l ,BHHMF͕࣮ࡍͲ͏͍͏఺Ͱ໾ʹཱ͍ͬͯΔͷ͔ l Ͳ͏͍͏ϝϯλϦςΟͰ,BHHMFΛͯ͠Δͷ͔ l

    ͲͪΒ͔ͱ͍͏ͱॳڃऀɾதڃऀର৅ͷ಺༰Ͱ͢ l ౰ͨΓલͷ͜ͱ͔͠࿩͠·ͤΜ l ࿩͞ͳ͍͜ͱ l ,BHHMFͷ۩ମతͳղ๏ l Ͳ͏΍ͬͨΒۚϝμϧऔΕΔʁʢڭ͑ͯཉ͍͠ʣ ˞શͯݸਓతͳҙݟͰ͢ ࠓ೔ͷΞδΣϯμ
  5. 5 Agenda 01|なんでKaggleをする? 02|Kaggleによって得られたこと

  6. 6 Agenda 01|なんでKaggleをする? 02|Kaggleによって得られたこと

  7. 7 何故人々はKaggleをするのか?

  8. 8 l σʔλαΠΤϯε৬ʹస৬͍ͨ͠ l σʔλαΠΤϯεͷྗΛ৳͹͍ͨ͠ l ීஈͱҧ͏σʔλΛ৮ͬͯΈ͍ͨ l ΩϟϦΞΞοϓʹͭͳ͍͛ͨ l

    ωτήతʹָ͍͠ l ৆ۚՔ͗ʹͳΓ͍ͨ FUD ਓʑ͕,BHHMFΛ΍Δཧ༝
  9. 9 l σʔλαΠΤϯε৬ʹస৬͍ͨ͠ l σʔλαΠΤϯεͷྗΛ৳͹͍ͨ͠ l ීஈͱҧ͏σʔλΛ৮ͬͯΈ͍ͨ l ΩϟϦΞΞοϓʹͭͳ͍͛ͨ l

    ωτήతʹָ͍͠ l ৆ۚՔ͗ʹͳΓ͍ͨ FUD ਓʑ͕,BHHMFΛ΍Δཧ༝ ࣗ෼͸͜Ε
  10. l σʔλαΠΤϯε৬ʹస৬͍ͨ͠ l σʔλαΠΤϯεͷྗΛ৳͹͍ͨ͠ l ීஈͱҧ͏σʔλΛ৮ͬͯΈ͍ͨ l ΩϟϦΞΞοϓʹͭͳ͍͛ͨ l ωτήతʹָ͍͠

    l ৆ۚՔ͗ʹͳΓ͍ͨ FUD 10 l σʔλαΠΤϯε৬ʹస৬͍ͨ͠ l σʔλαΠΤϯεͷྗΛ৳͹͍ͨ͠ l ීஈͱҧ͏σʔλΛ৮ͬͯΈ͍ͨ l ΩϟϦΞΞοϓʹͭͳ͍͛ͨ l ωτήతʹָ͍͠ l ৆ۚՔ͗ʹͳΓ͍ͨ FUD ਓʑ͕,BHHMFΛ΍Δཧ༝ ࣮ྗ͕਎ʹ͍ͭͯ͘ΔʹͭΕͯ ͜Εʹͳ͍ͬͯͬͯΔؾ΋͢Δ ࣗ෼͸͜Ε
  11. 11 ೖࣾ౰࣌ͷάϧʔϓͷঢ়گ

  12. 12 ೖࣾ౰࣌ͷάϧʔϓͷঢ়گ 私

  13. 13 ೖࣾ౰࣌ͷάϧʔϓͷঢ়گ l ,BHHMFSୡͱಇ͍͍ͯͯɾɾɾ l ٞ࿦ͷεϐʔυ͕଎͍ l ࣗ૸ྗ͕ߴ͍ l ࢥߟϨϕϧ͕ߴ͍

    l ࢥߟϓϩηε͕ஸೡ
  14. 14 Ͳ͏ʹ͔ͯࣾ͠಺ͷ,BHHMFSୡͷϨϕϧʹ௥͍͖͍ͭͨ ٞ࿦ΛަΘͤΔϨϕϧʹͳΓ͍ͨ ,BHHMFΛ΍Δ͔͠ͳ͍ʂ

  15. 15 ݁Ռ ` ೖࣾ࣌఺ ` ` ` ` ` `

    ` େ෼࿩ʹ΋͍͍͚ͭͯΔΑ͏ʹͳΓɺࣗ৴΋͍͖ͭͯͨ TPMP TPMP TPMP TPMP TPMP
  16. 16 Agenda 01|なんでKaggleをする? 02|Kaggleによって得られたこと

  17. 17 ࣮ࡍͷ4PMVUJPO͕࣮຿ʹ໾ʹཱͭ͜ͱ͸ɺ ΑͬΆͲίϯϖͱ࣮຿͕ࣅͯͳ͍ݶΓͳ͍ ͨͩ͠ɺ ʮ,BHHMFʹऔΓ૊Μ্ͩͰͷߟ͑ํ΍ܦݧʯ ͸෼ੳɾϞσϦϯάۀ຿ʹ͓͍ͯ͸࣮֬ʹ໾ʹཱͪ·͢ ݁࿦͔Βݴ͏ͱ

  18. 18 Α͋͘Δ࿩ ,BHHMF͕Ͱ͖Δ͔Βͬͯ ࢓ࣄ͕Ͱ͖Δͱ͸ݶΒͳ͍ΑͶʁ

  19. 19 ͦ΋ͦ΋࿦ͱͯ͠ɻɻɻ ,BHHMFͰ͸਎ʹ͔ͭͳ͍ೳྗ͕ ͋Δͷ΋౰ͨΓલ Կ͔Λ਎ʹ͚ͭΑ͏ͱͯ͠,BHHMFΛ΍Βͳ͍ͱ Կ΋਎ʹ͔ͭͳ͍ͷ͸౰ͨΓલ

  20. 20 ྫ͑͹ ݸਓతͳҙݟͰ͢ l /PUFCPPLΛίϐϖͯ͠ɺύϥϝʔλม͑ͯۜϝμϧɾಔϝμϧ l ϝμϧऩूͷͨΊʹ,BHHMFΛ΍ͬͯΔͳΒ͍͍͕ɻɻ l ͤΊͯࣗ෼ͷܗͰ࣮૷͠௚͢ͱ͔ʮԿނͦͷൃ૝͕ग़ͯ͘Δͷ͔ʯΛ ࣗ෼ͷதʹམͱ͠ࠐΉͱ͔͠ͳ͍ͱ਎ʹͳΒͳ͍

    l ࣮຿ͰϞσϧΛ࡞Δͱ͖͸͓खຊ/PUFCPPL͸ແ͍ l 5FBNNFSHFͨ͠ΒνʔϜϝΠτ͕΄΅ҰਓͰۚऔͬͪΌͬͨɻɻ l ,BHHMF.BTUFS͔ͩΒ࢓ࣄͰ͖ΔΜͰ͠ΐʁͱͳΔ l த్൒୺ͳ࣮੷͕Ұ൪ࣗ෼ͷटΛߜΊΔɻɻ l ,BHHMFS͸Ϗδωεྗ͕ແ͍ l ϏδωεྗΛڝͬͯΔ༁Ͱ͸ͳ͍ͷͰɻɻ l ࢓ࣄͷҰଆ໘ͷೳྗΛ୲อ͍ͯ͠Δͱࢥ͍ͬͯͩ͘͞
  21. 21 ͲͷΑ͏ʹͳΓ͍͔ͨΛߟ͑Δ ࣗ෼ͷ৔߹ l ࣗ૸ྗΛ਎ʹ͚͍ͭͨɺࣗ৴Λ͚͍ͭͨ l ͳΔ΂͘TPMPͰࢀՃ͢Δ l 自分の力でここまでできたと自信を持ちたい l

    ࣮຿Λ૝ఆͯ͠/PUFCPPLͱ͔͸ʢͤΊͯ#BTFMJOF࡞੒·Ͱʣݟͳ͍ l 毎回何も見なかったらこの程度なのかと絶望する l ࢥߟྗΛ਎ʹ͚͍ͭͨ l Կ͔͠ΒͷԾઆΛ࣮࣋ͬͯ૷͢Δ l جຊతͳΤϯδχΞϦϯάྗΛ਎ʹ͚͍ͭͨ l ϞμϯͳπʔϧͳͲ৭ʑࢼͯ͠ΈΔ l ࣮຿ͷίʔυͩͱ޷͖์୊Ͱ͖ͳ͍͔Βࢼ͢৔ͱͯ͠࠷ద l ࣮຿ʹؐݩͰ͖ͨΒ࠷ߴ
  22. 22 ݁Ռ਎ʹ͍ͭͨ͜ͱ ` ೖࣾ࣌఺ ` ` ` ` ` `

    `
  23. 23 ࣗ૸ྗ l ,BHHMFͷίϯϖʹࢀՃ͢Δ͜ͱ͸খ͍͞ϓϩδΣΫτʹࢀՃ͢Δ͘Β͍ମ ྗͱਫ਼ਆྗΛ࢖͏ l Ұ͔Βͷ࣮૷ܦݧ l Ծઆݕূͷϓϩηεͷ܁Γฦ͠ l

    ࣦഊͱ੒ޭͷ܁Γฦ͠ͷܦݧ ࣦഊ ੒ޭ  l Do everythingの精神 (めちゃくちゃ大事) l データに対する勘所が身についてくる ࣮຿Ͱ΋ɺ؆୯ͳ෼ੳɾϞσϦϯά͘Β͍ͳΒ ࣗ৴Λ࣋ͬͯҰਓͰ͜ͳͤΔΑ͏ʹͳͬͨ
  24. 24 ࢥߟྗ l ྑ͋͘Δྫ l $7ྑ͘ͳ͚ͬͨͲɺ1VCMJD͸Լ͕ͬͨɻɻ l $7ྑ͘ͳΓɺ1VCMJD΋ྑ͘ͳ͚ͬͨͲ1SJWBUFͰ4IBLFEPXOͨ͠ɻɻ l 実務では割と気付きにくい

    l ҎલͷίϯϖͰ͏·͍ͬͨ͘ํ๏͕ࠓճ͸͏·͍͔͘ͳ͍ɻɻ l ࿦จͰ4P5"ͷख๏Λ࣮૷͕ͨ͠ɺ͏·͍͔͘ͳ͍ɻɻ ˢͷΑ͏ͳࣄྫʹରͯ͠ԾઆΛ࣋ͬͯ ͔ͬ͠Γߟ͑Δ͜ͱͰࢥߟྗ͕਎ʹ͍͍ͭͯ͘
  25. 25 ΤϯδχΞϦϯάྗ c࣮ݧ؅ཧ l ,BHHMFॳ৺ऀͩͬͨ࣌ ΄ͱΜͲ ಉ͡ϑΝΠϧ utils.pyの一部を書き換えたら全部書き換えなきゃダメ Git上で差分が分かりづらい コードの量が肥大化していき、管理できなくなる

  26. 26 ΤϯδχΞϦϯάྗ c࣮ݧ؅ཧ l ࠓͩͱ (大分基本的なことですが) 共通なものは共通の場所を参照する 実験によって変えたいパラメータはハードコードせずyamlを参照する バージョン管理はgitで ˞DPOGJHQZ೿ͷਓ΋͍ͯͦͷลΓ͸޷Έͩͱࢥ͍·͢

    ͪΌΜͱ؅ཧͰ͖ΔίʔυΛॻ͘͜ͱ͸ όάΛݮΒ͢ɺਖ਼࣮͘͠૷͢Δ্Ͱඇৗʹॏཁ
  27. 27 ΤϯδχΞϦϯάྗ c࣮ݧ؅ཧ l )ZESBͳͲΛ࢖͏ͱZBNMͷ಺༰ΛίϚϯυҾ਺Ͱม͑ΕΔ l PTQBUIKPJO஍ࠈͳͲ͔Β΋ղ์͞ΕΔ yaml内 .shファイル内 https://github.com/facebookresearch/hydra

  28. 28 ΤϯδχΞϦϯάྗ c࣮ݧ؅ཧ l ͍Ζ͍Ζࢼͯࣗ͠෼ͷதͰͷ5JQTΈ͍ͨͳͷ͕ͨ·͍ͬͯ͘ l ($4ʹCBDLVQΛ࢒͓ͯ͘͠ l 74$PEF 3FNPUF%FWFMPQNFOU

    %PDLFSͰ։ൃ؀ڥߏங l 8#Ͱϩά؅ཧ IUUQTXXXXBOECDPN l Lossだけじゃなく、実験を行ったcommit idや引数なども保存してくれる
  29. 29 ΤϯδχΞϦϯάྗ cͦͷଞ l ଞʹ΋৭ʑͳπʔϧͷ࢖͍উखΛࢼ͢৔ॴͱͯ͠ஸ౓ྑ͍ l %FFQ(SBQI-JCSBSZ %(- l 3"1*%4

    l 1ZUPSDI-JHIUOJOH l "*1MBUGPSN
  30. 30 ͦͷଞ ໾ʹཱͭ͜ͱ l ͳΜ͔ͩΜͩ/PUFCPPL΋1BOEBTͷॻ͖ํ΍ՄࢹԽͷ࢓ํͳͲࢀߟʹͳΔ෦ ෼͸݁ߏ͋Δ Ԛ͍ίʔυ΋ଟ͍ l ίϯϖΛ͢Ε͹͢Δ΄Ͳίʔυࢿ࢈͕ஷ·Δɻίʔυ͕ચ࿅͞ΕΔɻ l

    ࣮຿Ͱྲྀ༻Ͱ͖Δ෦෼΋ଟ͍ l ίʔυΛॻ͘ྔ͕࣮຿͚ͩΑΓΊͪΌͪ͘Ό૿͑ΔͷͰɺ࣮૷׳Εͯ͘͠Δ l ॳΊͯ৮ΕΔEPNBJOͷσʔλΛѻ͏࿅शʹͳΔ l 5FBN.FSHF͸ѱͰ͸ͳ͍ l ࣗ෼͸ࣗ૸ྗΛཆ͍͔ͨͬͨͷͰɺTPMPͰࢀՃ͢Δ͜ͱ͕ଟ͔ͬͨͷ Ͱ͕͢ɺ5FBN.FSHFͰͷֶͼ͸ͱͯ΋ଟ͍ͱࢥ͍·͢ l Կ΋ͯ͘͠Εͳ͍ɺνʔτ͞ΕΔ৔߹ѱʹ΋ͳΓಘΔͷͰɺਓΛબΜ Ͱ.FSHF͠·͠ΐ͏
  31. 31 ·ͱΊ l Ͳ͏ͤ,BHHMFΛ΍ΔͳΒʮԿΛ਎ʹ͚͍͔ͭͨʯΛҙࣝ͢Δ l ͪΌΜͱҙࣝͯ͠औΓ૊ΉͷͰ͋Ε͹ɺҎԼͷΑ͏ͳೳྗ͕਎ʹͭ͘ ͍ͭͨ l ࣗ૸ྗ l

    ࢥߟྗ l ࣮ݧ؅ཧೳྗ l ࣮૷ྗ l ʢ΋ͪΖΜ࣮຿Ͱ͔͠਎ʹ͔ͭͳ͍ೳྗ΋͋ΔͷͰ࣮຿΋ؤுΓ·͠ΐ͏ʣ
  32. 32 Mobility Technologiesでは中途入社してくれる方大募集! 配車アプリGOサービスにおいて、需要予測、 経路推薦などでデータサイエンスを活用してい ます。 ドライブレコーダーから得られる映像・センサー データを用いた安全運転支援や、3D地図作成 などにデータサイエンスを活用しています。 •

    Mobility Technologies͸ʮҠಈͰਓΛ޾ͤʹɻʯΛϛογϣϯʹɺ೔ຊͷϞϏϦςΟ࢈ۀΛΞ οϓσʔτ͢Δ༷ʑͳITαʔϏεͷఏڙΛߦ͍ͬͯ·͢ɻ • DeNAΦʔτϞʔςΟϒࣄۀΛձࣾ෼ׂ͠ɺJapanTaxiͱ౷߹ͨ͠ձࣾͰ͢ɻ
  33. 33 Thank you for your listening !!