Upgrade to Pro — share decks privately, control downloads, hide ads and more …

実臨床・Webサービス領域での機械学習研究 開発の標準化

実臨床・Webサービス領域での機械学習研究 開発の標準化

パターン認識・メディア理解研究会(PRMU)2021年10月開催にて発表した資料です。
https://www.ieice.org/ken/program/index.php?tgs_regid=afad0a06f26b0ba058f7a46268673bddbbff4c3927f68a0206a4d5b8805f7ef0&tgid=IEICE-PRMU

Daiki Ikeshima

October 08, 2021
Tweet

More Decks by Daiki Ikeshima

Other Decks in Programming

Transcript

  1. WebαʔϏεྖҬʹ͓͚Δػցֶश 8 هࣄϨίϝϯυ ݕࡧ Ϣʔβʔͷੑ֨ڵຯ༧ଌ χϡʔεαΠτͰϢʔβʔ
 1ਓ1ਓͷᅂ޷ʹ߹Θ͓ͤͯ͢ ͢ΊهࣄΛύʔιφϥΠζ m3಺ͷهࣄͱ֎෦αΠτΛ ෳ߹ͨ͠ҩࢣ޲͚ʹಛԽ͠

    ͨݕࡧΤϯδϯ ॅ୐ߪೖ΍స৬ͳͲʹڵຯ ͷ͋ΔϢʔβΛಛఆ͠ɺ ϚʔέςΟϯάʹ׆༻͢Δ χϡʔεA χϡʔεB χϡʔεC χϡʔεA χϡʔεD χϡʔεE ݕࡧ ̋ ॅ୐ߪೖ ☓ స৬ ̋ స৬ ̋ ॅ୐ߪೖ
  2. XXʹڵຯͷ͋Δਓʹ Ξϓϩʔν͍ͨ͠ YYΛങͬͯ͘Εͦ͏ ͳਓΛ஌Γ͍ͨ ୀձͦ͠͏ͳਓʹ
 ࢪࡦΛଧ͍ͪͨ ZZʹߠఆҙݟͷਓΛ ஌Γ͍ͨ ͜ͷલͱಉ͡ײ͡Ͱ ͳΔૣͰʂ

    ࠓिதʹʂ Ϟσϧ ଐਓԽ ฒߦͯ͠૸ΔҊ݅ λΠτͳక੾ MLΤϯδχΞ MLར༻Ҋ݅ͰΑ͋͘Δ̏՝୊ɿWebαʔϏεྖҬͰͷྫ
  3. XXʹڵຯͷ͋Δਓʹ Ξϓϩʔν͍ͨ͠ YYΛങͬͯ͘Εͦ͏ ͳਓΛ஌Γ͍ͨ ୀձͦ͠͏ͳਓʹ
 ࢪࡦΛଧ͍ͪͨ ZZʹߠఆҙݟͷਓΛ ஌Γ͍ͨ ͜ͷલͱಉ͡ײ͡Ͱ ͳΔૣͰʂ

    ࠓिதʹʂ Ϟσϧ ྲྀ༻ ྲྀ༻ ଐਓԽ ฒߦͯ͠૸ΔҊ݅ λΠτͳక੾ MLΤϯδχΞ MLར༻Ҋ݅ͰΑ͋͘Δ̏՝୊ɿWebαʔϏεྖҬͰͷྫ
  4. XXʹڵຯͷ͋Δਓʹ Ξϓϩʔν͍ͨ͠ YYΛങͬͯ͘Εͦ͏ ͳਓΛ஌Γ͍ͨ ୀձͦ͠͏ͳਓʹ
 ࢪࡦΛଧ͍ͪͨ ZZʹߠఆҙݟͷਓΛ ஌Γ͍ͨ ͜ͷલͱಉ͡ײ͡Ͱ ͳΔૣͰʂ

    ࠓिதʹʂ Ϟσϧ ྲྀ༻ ྲྀ༻ όά ʁ ʁ ଐਓԽ ฒߦͯ͠૸ΔҊ݅ λΠτͳక੾ MLΤϯδχΞ MLར༻Ҋ݅ͰΑ͋͘Δ̏՝୊ɿWebαʔϏεྖҬͰͷྫ
  5. ࣮ྟচྖҬͰ΋ಉ͡3՝୊͕ൃੜ Ϩϯτήϯ͔Β XපΛൃݟ͍ͨ͠ CT͔ΒকདྷͷYපͷ ϦεΫΛ༧ଌ͍ͨ͠ ΢ΣΞϥϒϧσʔλ͔ ΒZපΛൃݟ͍ͨ͠ CTͱ݂ӷݕ͔ࠪΒ WපΛ༧ଌ͍ͨ͠ ͳΔૣͰʂ

    1ϲ݄Ҏ಺ʹʂ ৭ʑϞσϧΛࢼ͢ඞཁ Ϟσϧ ྲྀ༻ ྲྀ༻ όά ʁ ʁ ଐਓԽ λΠτͳక੾ MLΤϯδχΞ ฒߦͯ͠૸ΔҊ݅ ML model ML model ML model
  6. ߴ଎ԽɾฒྻԽɾඪ४ԽͰ̏ͭͷ՝୊Λࠀ෰ 24 ਪ࿦ σʔλऩू ಛ௃࡞੒ Ϟσϧ࡞੒ ֶश࣮ߦ ֶश؂ࢹ ֶशධՁ ଐਓԽ

    λΠτͳక੾ ฒߦͯ͠૸ΔҊ݅ ඪ४Խ ฒྻԽ ߴ଎Խ վળΠςϨʔγϣϯ
 Λߴ଎ʹճ͢ ίΞ։ൃऀҎ֎Ͱ΋
 ࣮ߦͰ͖ΔΑ͏ʹ ଟ਺ͷҊ݅Λ
 ฒߦͯ͠ରԠͰ͖Δ
  7. 25 ·ͱΊ: ߴ଎ԽɾฒྻԽɾඪ४ԽͰMLҊ݅3՝୊Λࠀ෰ ߴ଎Խ ඪ४Խ ฒྻԽ σʔλ Πϯϑϥ ख๏ ᶃKubernetesΛ༻

    ͍ͯλεΫΛ෼ࢄ ॲཧ ᶆίʔυͰ
 Πϯϑϥͷ࠶ݱ ੑΛอͭ ᶅઃఆϑΝΠϧ Ͱֶशɾਪ࿦ͷ ڍಈΛ੍ޚ ᶄΑ͘࢖͏ػೳ ΛMLγεςϜࣗ ਎ʹ࣮૷ ᶋίʔσΟϯά ํ๏Λඪ४Խ ᶊ࣮ݧ΍෼ੳͷυ ΩϡϝϯτԽͰख ໭ΓΛݮΒ͢ ᶇGCS+WebDataset Ͱେن໛σʔλΛ औΓѻ͏ ᶈgokartΛ࢖ͬͯ தؒσʔλΛ Ωϟογϡ ᶉσʔλμ΢ϯϩʔυ ΛϥΠϒϥϦԽ
  8. 26 ·ͱΊ: ߴ଎ԽɾฒྻԽɾඪ४ԽͰMLҊ݅3՝୊Λࠀ෰ ߴ଎Խ ඪ४Խ ฒྻԽ σʔλ Πϯϑϥ ख๏ ᶃKubernetesΛ༻

    ͍ͯλεΫΛ෼ࢄ ॲཧ ᶆίʔυͰ
 Πϯϑϥͷ࠶ݱ ੑΛอͭ ᶅઃఆϑΝΠϧ Ͱֶशɾਪ࿦ͷ ڍಈΛ੍ޚ ᶄΑ͘࢖͏ػೳ ΛMLγεςϜࣗ ਎ʹ࣮૷ ᶋίʔσΟϯά ํ๏Λඪ४Խ ᶊ࣮ݧ΍෼ੳͷυ ΩϡϝϯτԽͰख ໭ΓΛݮΒ͢ ᶇGCS+WebDataset Ͱେن໛σʔλΛ औΓѻ͏ ᶈgokartΛ࢖ͬͯ தؒσʔλΛ Ωϟογϡ ᶉσʔλμ΢ϯϩʔυ ΛϥΠϒϥϦԽ
  9. 27 ᶃ KubernetesΛ༻͍ͯ෼ࢄॲཧ ฒྻԽ ߴ଎Խ • λεΫ͕૿͑ͯ͘Δͱෳ਺ͷֶशɾਪ࿦λεΫΛฒྻʹ࣮ߦ͍ͨ͠ • λεΫ͝ͱʹཁٻεϖοΫ͕ҟͳΔ KubernetesͰλεΫΛฒྻʹ࣮ߦ

    • ίϯςφԽͨ͠ଟ਺ͷΞϓϦέʔγϣϯΛ૊Έ߹Θ࣮ͤͯߦΛࢧԉ • AIνʔϜͰ͸GCP্ͷαʔϏεͰ͋ΔGKEΛར༻ • εέʔϦϯά΍ϊʔυͷछྨมߋ͕༰қ
  10. 29 • ཁ݅ʹ߹ΘͤͯϊʔυϓʔϧΛ࢖͍෼͚Δ • GKEͷϓϦΤϯϓςΟϒϧϊʔυʢ೚ҙͷλΠϛϯάͰϊʔυ͕ڧ ੍ऴྃ͢ΔՄೳੑ͕͋Δ൓໘େ෯ʹ͍҆ʣΛ࢖ͬͯྉۚΛઅ໿ • —> ΨϯΨϯ෼ࢄͰ͖Δ •

    ෳ਺ͷֶश΍ਪ࿦Λಉ࣌ฒߦʹճͤΔ • ࣮ݧΠςϨʔγϣϯ͕ߴ଎Խ͠ɺੑೳվળʹूதͰ͖Δ ֶश ਪ࿦ CPU༏ઌϊʔυ ϝϞϦ༏ઌϊʔυ ฒྻԽ ߴ଎Խ ᶃ KubernetesΛ༻͍ͯ෼ࢄॲཧ
  11. 30 ᶄ ֶशɾ෼ੳ༻ػೳΛMLγεςϜࣗ਎ʹ࣮૷ ඪ४Խ 1ʣೋॏͷcross validation
 2ʣstratified train test split

    3ʣShapley஋Λग़ྗ • ֶशํ๏΍༧ଌ݁Ռͷ෼ੳɾධՁ΍࡞ۀऀ͝ͱʹ΍Γํ͕όϥόϥ ʹͳΓ΍͍͢ • ଐਓԽͤ͞ͳ͍Α͏ʹඪ४Խ͍ͨ͠ MLγεςϜࣗ਎ʹֶशɾ෼ੳ༻ͷϝιουΛ࣮૷
  12. 31 ᶄ ֶशɾ෼ੳ༻ػೳΛMLγεςϜࣗ਎ʹ࣮૷ ඪ४Խ 1) ೋॏͷcross validation ී௨ͷCV ೋॏCV ֶश

    ςετ ධՁ
 ϋΠύʔύϥϝʔλ ௐ੔ͳͲʹ࢖༻ ϋΠύʔύϥϝʔλௐ੔΍early stopping ͕ෆ҆ఆʹͳΔ͜ͱ΋ ֶशσʔλͷதΛ͞ΒʹCV͢Δ͜ͱͰ ϋΠύʔύϥϝʔλௐ੔Λ҆ఆͤͨ͞ ֶश ςετ ධՁ ࢀߟ: Cawley, G.C.; Talbot, N.L.C. On over-fitting in model selection and subsequent selection bias in performance evaluation. J. Mach. Learn. Res 2010,11, 2079-2107.
  13. 32 ᶄ ֶशɾ෼ੳ༻ػೳΛMLγεςϜࣗ਎ʹ࣮૷ ඪ४Խ 2) stratified train test split split͝ͱʹਖ਼ྫɾෛྫσʔλͷൺ཰͕ಉ͡ʹͳΔΑ͏ʹ෼ׂ

    Ͳͷಛ௃ͷӨڹͰͦͷ݁Ռʹࢸͬͨͷ͔Λઆ໌Մೳʹ͢Δ 3) Shapley஋Λग़ྗ සൟʹ࢖͏ػೳΛMLγεςϜʹ૊ΈࠐΜͰ࣮૷͓ͯ͘͜͠ͱ Ͱɺ࣮ߦऀʹґΒͣෳࡶͳֶश΍෼ੳ͕Մೳʹͳͬͨ ಛ௃A B C D E ༧ଌ݁Ռɿpositive ֶश ςετ ̋̋̋̋☓☓ ̋̋☓
  14. 34 ᶅ ઃఆϑΝΠϧͰֶशɾਪ࿦ͷڍಈΛ੍ޚ • ڭࢣσʔλͷύε • ಛ௃બ୒ํ๏ • Ϟσϧͷछྨɾύϥϝλ •

    ίʔυͷίϛοτϋογϡɹ౳ ઃఆϑΝΠϧ MLγεςϜ Kubernetes GCR BigQuery GCS docker
 Πϝʔδ ಛ௃
 σʔλ ڭࢣ
 σʔλ • ࣮ݧઃఆΛઃఆϑΝΠϧʹهड़͢Δ͚ͩͰ • ઃఆʹԊͬͯdockerΠϝʔδ/σʔλΛGCR, BigQuery, GCSͳͲ͔Βऔಘ • Kubernetesʹ෼ࢄσϓϩΠ ίʔυ hash: ff34 tag: ff34 push build & push ඪ४Խ
  15. 35 • ڭࢣσʔλͷύε • ಛ௃બ୒ํ๏ • Ϟσϧͷछྨɾύϥϝλ • ίʔυͷίϛοτϋογϡɹ౳ ઃఆϑΝΠϧ

    Kubernetes • ઃఆϑΝΠϧΛॻ͚ͩ͘ͰֶशΛ࣮ߦͰ͖ΔΑ͏ʹͳͬͨ • ։ൃͱ࣮ߦ͕෼཭͠ίʔυΛҙֶࣝͤͣशΛճͤΔ • ➔ίΞ։ൃऀҎ֎Ͱ΋࣮ߦՄೳʹ • ࣮ݧઃఆͱίʔυΛඥ෇͚ • ࠷৽͚ͩͰͳ͘աڈͷίʔυ΋ࢀরͰ͖Δ • ➔࠶ݱੑΛ୲อ ඪ४Խ MLγεςϜ ᶅ ઃఆϑΝΠϧͰֶशɾਪ࿦ͷڍಈΛ੍ޚ
  16. 36 ඪ४Խ ᶆ ίʔυͰΠϯϑϥͷ࠶ݱੑΛอͭ GKE GCR docker
 Πϝʔδ BigQuery ಛ௃


    σʔλ GCS ڭࢣ
 σʔλ GCS΍BigQueryͳͲɺϦιʔεͷ؅ཧ͕ෳࡶ TerraformΛ࢖ͬͯɺίʔυͰΠϯϑϥΛ؅ཧͯ͠ ࠶ݱ΍ϨϏϡʔΛ༰қʹͨ͠
  17. 37 ·ͱΊ: ߴ଎ԽɾฒྻԽɾඪ४ԽͰMLҊ݅3՝୊Λࠀ෰ ߴ଎Խ ඪ४Խ ฒྻԽ σʔλ Πϯϑϥ ख๏ ᶃKubernetesΛ༻

    ͍ͯλεΫΛ෼ࢄ ॲཧ ᶆίʔυͰ
 Πϯϑϥͷ࠶ݱ ੑΛอͭ ᶅઃఆϑΝΠϧ Ͱֶशɾਪ࿦ͷ ڍಈΛ੍ޚ ᶄΑ͘࢖͏ػೳ ΛMLγεςϜࣗ ਎ʹ࣮૷ ᶋίʔσΟϯά ํ๏Λඪ४Խ ᶊ࣮ݧ΍෼ੳͷυ ΩϡϝϯτԽͰख ໭ΓΛݮΒ͢ ᶇGCS+WebDataset Ͱେن໛σʔλΛ औΓѻ͏ ᶈgokartΛ࢖ͬͯ தؒσʔλΛ Ωϟογϡ ᶉσʔλμ΢ϯϩʔυ ΛϥΠϒϥϦԽ
  18. 38 ᶇ GCS+WebDatasetͰେن໛σʔλΛऔΓѻ͏ ߴ଎Խ • ྟচྖҬͷֶशσʔλ͸ը૾ͩͬͨΓͱ༰ྔ͕ڊେ • ϝϞϦ΍ετϨʔδʹ৐Γ੾Βͳ͍ Google Cloud

    Storage (GCS) + WebDatasetΛ׆༻ • ্ཱ͔ͪ͛Βֶश։࢝·Ͱͷμ΢ϯϩʔυͷΦʔόʔϔου͕ͳ͘ͳΔ • ௚઀GCSͷσʔληοτΛಡΈࠐΉͷͰ࠶ݱੑ͕ߴ͍ • ϝϞϦͱετϨʔδΛઅ໿Ͱ͖Δ WebDataset: pytorchʹର͠ɺGCSͳͲ͔ΒετϦʔϛϯάͰσʔλͷऔಘ ΛՄೳʹ͢ΔϥΠϒϥϦ ฒྻԽ
  19. gokartͱ͸ • ΤϜεϦʔൃOSSͷpython༻ύΠϓϥΠϯϥΠϒϥϦ • ॲཧΛTaskͱݺ͹ΕΔΫϥε୯ҐͰґଘؔ܎ͱͱ΋ʹهड़͢Δ • ґଘؔ܎Λղܾ͠ͳ͕ΒॲཧΛ͢͢ΊΔ • ్தܦա͸Ωϟογϡ͞Ε͍ͯΔͨΊɺಉ͡ॲཧ͸̎ճ໨͸লུͰ͖Δ 39

    gokartͱ͍͏ύΠϓϥΠϯπʔϧΛ։ൃ͠
 ڞ௨ͨ͠ಛ௃ྔ͸࢖͍ճ͢ ॲཧ̍ ॲཧ̎ ॲཧ̏ σʔλ̍ σʔλ̎ Ϟσϧ
 ֶश̍ ߴ଎Խ ᶈ gokartΛ࢖ͬͯதؒσʔλΛΩϟογϡ͢Δ ಛ௃ྔΛҊ݅͝ͱʹΠν͔Β࡞Γ௚͢ͷ͸ඇޮ཰
  20. 40 gokartͱ͍͏ύΠϓϥΠϯπʔϧΛ։ൃ͠
 ڞ௨ͨ͠ಛ௃ྔ͸࢖͍ճ͢ ߴ଎Խ ᶈ gokartΛ࢖ͬͯதؒσʔλΛΩϟογϡ͢Δ ॲཧ̍ ॲཧ̎ ॲཧ̏ σʔλ̍

    σʔλ̎ Ϟσϧ
 ֶश̍ Ϟσϧ
 ֶश̎ ಛ௃ྔΛҊ݅͝ͱʹΠν͔Β࡞Γ௚͢ͷ͸ඇޮ཰ gokartͱ͸ • ΤϜεϦʔൃOSSͷpython༻ύΠϓϥΠϯϥΠϒϥϦ • ॲཧΛTaskͱݺ͹ΕΔΫϥε୯ҐͰґଘؔ܎ͱͱ΋ʹهड़͢Δ • ґଘؔ܎Λղܾ͠ͳ͕ΒॲཧΛ͢͢ΊΔ • ్தܦա͸Ωϟογϡ͞Ε͍ͯΔͨΊɺಉ͡ॲཧ͸̎ճ໨͸লུͰ͖Δ
  21. 41 • ಛ௃ྔͷੜ੒ϓϩηε͕ίʔυԽ͞Ε͍ͯΔ • ಛ௃ྔσʔλ͕Ωϟογϡ • ➔ Ҋ݅ʹΑΒͣ࢖͍ճͤΔ • ➔

    ઃఆΛม͑ͨ࠶࣮ݧͰ΋࠶ར༻ʹΑΔ࣌ؒ୹ॖ • ϓϩηε్͕தͰམͪͯ΋్தͷΩϟογϡ͔Β࠶։ • ➔ ҆৺ͯ͠GKEͷϓϦΤϯϓςΟϒϧϊʔυΛ࢖͑Δ • Ωϟογϡ࠶ར༻ʹΑ࣮ͬͯߦ࣌ؒΛ୹ॖͰ͖ͨ • ϓϦΤϯϓςΟϒϧͷ׆༻ͰGKEͷྉۚͷઅ໿͕Ͱ͖ͨ ߴ଎Խ ॲཧ̍ ॲཧ̎ ॲཧ̏ σʔλ̍ σʔλ̎ Ϟσϧ
 ֶश̍ Ϟσϧ
 ֶश̎ ᶈ gokartΛ࢖ͬͯதؒσʔλΛΩϟογϡ͢Δ
  22. BigQuery Ϣʔβ
 σʔλ هࣄӾཡ
 σʔλ ΫϦοΫ
 σʔλ ᶉ νʔϜ಺ڞ௨ͷμ΢ϯϩʔυϥΠϒϥϦͰσʔλಡΈࠐΈ 42

    • ֤MLϓϩμΫτͰ΋࢖͍ͬͯΔσʔλ͸ࣅ͍ͯΔ • BQ͔Βσʔλऔಘ͢ΔͨΊʹͦΕͧΕSQLΛॻ͔ͳ͍ͱ͍͚ͳ͍ ඪ४Խ Ϟσϧ1 Ϟσϧ2 Ϟσϧ3 Ϟσϧ4 SQL SQL SQL SQL SQL SQL SQL SQL SQL SQL SQL SQL
  23. BigQuery Ϣʔβ
 σʔλ هࣄӾཡ
 σʔλ ΫϦοΫ
 σʔλ ᶉ νʔϜ಺ڞ௨ͷμ΢ϯϩʔυϥΠϒϥϦͰσʔλಡΈࠐΈ 43

    • μ΢ϯϩʔυ༻ͷڞ௨ϥΠϒϥϦΛ࢖༻ • طଘͷμ΢ϯϩʔυϝιου͕࢖͍·ΘͤΔ ➔ SQLΛϓϩμΫτ͝ͱʹॻ͔ͳͯ͘ࡁΉ • gokartͰඪ४Խ͞Ε͓ͯΓಡΈॻ͖͠΍͍͢ • ➔ ୭Ͱ΋؆୯ʹ࢖͑Δ ඪ४Խ Ϟσϧ1 mushroom μ΢ϯϩʔυ༻
 ϥΠϒϥϦ SQL ϝιουΛར༻ Ϟσϧ2 Ϟσϧ3 Ϟσϧ4
  24. 44 ·ͱΊ: ߴ଎ԽɾฒྻԽɾඪ४ԽͰMLҊ݅3՝୊Λࠀ෰ ߴ଎Խ ඪ४Խ ฒྻԽ σʔλ Πϯϑϥ ख๏ ᶃKubernetesΛ༻

    ͍ͯλεΫΛ෼ࢄ ॲཧ ᶆίʔυͰ
 Πϯϑϥͷ࠶ݱ ੑΛอͭ ᶅઃఆϑΝΠϧ Ͱֶशɾਪ࿦ͷ ڍಈΛ੍ޚ ᶄΑ͘࢖͏ػೳ ΛMLγεςϜࣗ ਎ʹ࣮૷ ᶋίʔσΟϯά ํ๏Λඪ४Խ ᶊ࣮ݧ΍෼ੳͷυ ΩϡϝϯτԽͰख ໭ΓΛݮΒ͢ ᶇGCS+WebDataset Ͱେن໛σʔλΛ औΓѻ͏ ᶈgokartΛ࢖ͬͯ தؒσʔλΛ Ωϟογϡ ᶉσʔλμ΢ϯϩʔυ ΛϥΠϒϥϦԽ
  25. ᶊ ࣮ݧ΍෼ੳͷυΩϡϝϯτԽͰख໭ΓΛͳ͘͢ 45 ϞσϧͷੑೳվળͰʮ݁Ռͷ෼ੳ -> ࣍ͷΞϓϩʔνΛཱҊʯͷϑΣʔζͰ ͸ɺݕ౼ͷൈ͚࿙Ε΍ޡͬͨ෼ੳʹΑΓख໭Γ͕ൃੜ͠΍͍͢ ෼ੳܭըΛσβΠϯυΩϡϝϯτԽͯ͠slackͰϨϏϡʔΛ΋Β͏ • લͷ࣮ݧͰͷ՝୊

    • ݪҼͷԾઆ • ԾઆΛݕূ͢Δ෼ੳํ๏Ҋ • Ծઆ͕ਖ਼͔ͬͨ͠৔߹ͷnext actionҊ • ݴޠԽ͢Δ͜ͱͰൈ͚࿙Εʹ΋ؾ͕͚ͭͨ • จষԽ͸ख͕͔͔ؒΔ͕ɺख໭Γ͕গͳ͘ɺ݁Ռతʹૣ͍ ߴ଎Խ
  26. 46 ඪ४Խ • ڞ௨෦෼͸ςϯϓϨʔτΛ࢖͑ΔͷͰ޻਺࡟ݮ • ϓϩμΫτ͝ͱͷࠩҟ͕খ͘͞ͳΓɺ୲౰ऀҎ֎Ͱ΋ϨϏϡʔ͠΍͍͢ ᶋ ίʔσΟϯάํ๏Λඪ४Խͯ͠࠶ݱੑΛอͭ ґଘϥΠϒϥϦͷόʔδϣϯ؅ཧ͕೉͍͠ poetryͰ؅ཧ͢Δ͜ͱͰόʔδϣϯΛݻఆͰ͖Δ

    ίʔυͷ඼࣭Λߴ͘ҡ͍࣋ͨ͠ ίʔυͷσΟϨΫτϦߏ଄Λڞ௨Խ͍ͨ͠ GitLab CI Λ࢖ͬͨlinterνΣοΫɾϢχοτςετࣗಈԽ ΧελϚΠζCookiecutterΛ࢖ͬͨϓϩδΣΫτͷඪ४Խ Ϛʔδ࣌ͷίʔυϨϏϡʔΛ௨ͯ͡ίʔυ඼࣭Λอͭ
  27. 47 ·ͱΊ: ߴ଎ԽɾฒྻԽɾඪ४ԽͰMLҊ݅3՝୊Λࠀ෰ ߴ଎Խ ඪ४Խ ฒྻԽ σʔλ Πϯϑϥ ख๏ ᶃKubernetesΛ༻

    ͍ͯλεΫΛ෼ࢄ ॲཧ ᶆίʔυͰ
 Πϯϑϥͷ࠶ݱ ੑΛอͭ ᶅઃఆϑΝΠϧ Ͱֶशɾਪ࿦ͷ ڍಈΛ੍ޚ ᶄΑ͘࢖͏ػೳ ΛMLγεςϜࣗ ਎ʹ࣮૷ ᶋίʔσΟϯά ํ๏Λඪ४Խ ᶊ࣮ݧ΍෼ੳͷυ ΩϡϝϯτԽͰख ໭ΓΛݮΒ͢ ᶇGCS+WebDataset Ͱେن໛σʔλΛ औΓѻ͏ ᶈgokartΛ࢖ͬͯ தؒσʔλΛ Ωϟογϡ ᶉσʔλμ΢ϯϩʔυ ΛϥΠϒϥϦԽ