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

BERTを用いた自然言語処理プロダクトの開発・運用

 BERTを用いた自然言語処理プロダクトの開発・運用

近江崇宏、「BERTを用いた自然言語処理プロダクトの開発・運用」
TensorFlow User Group Meetup #12
https://tfug-tokyo.connpass.com/event/204504/

Takahiro Omi

March 23, 2021
Tweet

More Decks by Takahiro Omi

Other Decks in Technology

Transcript

  1. ετοΫϚʔΫגࣜձࣾ
    ۙߐਸ޺
    #&35Λ༻͍ͨࣗવݴޠॲཧϓϩμΫτͷ
    ։ൃɾӡ༻
    5'6(NFFUVQ

    View Slide

  2. ࠓ೔ͷ಺༰ɿ
    2
    ü ࣗવݴޠॲཧΛͲͷΑ͏ʹϏδωεʹԠ༻͍ͯ͠Δ͔
    ü #&35Λ༻͍ͨࣗવݴޠॲཧɿݻ༗දݱநग़
    ü #&35ΛͲͷΑ͏ʹӡ༻͍ͯ͠Δ͔

    View Slide

  3. ࠓ೔ͷ಺༰ɿ
    3
    ü ࣗવݴޠॲཧΛͲͷΑ͏ʹϏδωεʹԠ༻͍ͯ͠Δ͔
    ü #&35Λ༻͍ͨࣗવݴޠॲཧɿاۀ໊நग़
    ü #&35ΛͲͷΑ͏ʹӡ༻͍ͯ͠Δ͔

    View Slide

  4. ˜4UPDLNBSL *OD
    ձ໊ࣾ ετοΫϚʔΫגࣜձࣾ
    4UPDLNBSL *OD
    ΦϑΟε ౦ژ౎ߓ۠ೆ੨ࢁஸ໨
    -*'03,.*/".*"0:"."4
    ઃ ཱ ೥݄೔
    ૑ۀऀ ୅දऔక໾$&0 ྛ ୡ
    औక໾$50 ༗അ ޾հ
    ࣄۀ಺༰ ࣗવݴޠॲཧٕज़Λ׆༻ͨ͠
    "*4BB4ϓϩμΫτͷఏڙ
    ैۀһ਺ ໊ ೥݄ ݱࡏ

    63- IUUQTTUPDLNBSLDPKQ
    ձࣾ঺հ

    View Slide

  5. എܠ
    5
    ü ࣗવݴޠॲཧΛ༻͍ͯɺେྔͷจষ͔Βޮ཰తʹՁ஋ͷ͋Δ৘ใΛಘΔͨ
    Ίͷ4BB4Λల։
    ü ೔ຊޠɾӳޠͷ̏ສϝσΟΞ͔ΒχϡʔεهࣄΛऩूɿ
    • ຖ೔ɺ਺ສ݅ͷهࣄΛऩूɿ
    Ϣʔβʔͷᅂ޷ʹԠͨ͡χϡʔεهࣄͷϨίϝϯσʔγϣϯɿ"OFXT
    • ਺ઍສ݅ͷաڈهࣄɿ
    "*ʹΑΔࢢ৔ௐࠪࢧԉɿ"TUSBUFHZ

    View Slide

  6. "OFXT
    6
    ɾੈքதͷສϝσΟΞ͔ΒඞཁͳχϡʔεΛຖ೔഑৴
    ɾ࠷ઌ୺ͷࣗવݴޠॲཧͰݟམͱ͕ͪ͠ͳχϡʔε΋र͍ɺ
    ڭཆ͚ͩͰͳ͘ݸਓ΍૊৫ͷϛογϣϯʹଈͨ͠χϡʔεΛ
    Ϩίϝϯυ
    Ϣʔβ͕ઃఆͨ͠Ωʔϫʔυ΍ӾཡཤྺΛجʹ
    هࣄΛϥϯΫ෇͚
    ྫɿʮ1ZUIPOʯͰݕࡧ͢Δͱɺϓϩάϥϛϯάʹؔ
    ͢Δهࣄ͚ͩͰͳ͘ɺʮ.POUZ1ZUIPOʯʢӳίϝ
    σΟʔάϧʔϓʣͷهࣄ·Ͱώοτͯ͠͠·͏͕ɺ
    Ϣʔβʔͷᅂ޷ʹԠͯ͡ʮ.POUZ1ZUIPOʯͷهࣄ
    ͷϥϯΫΛ/-1Ͱ௿͘͢Δɻ

    View Slide

  7. "TUSBUFHZ
    7
    /-1㗫㘈㘋㘾㙘㖽㘬াԫ㗮࿴ிʷ
    • 㘠㖽㙢㖽㘼פ̈
    • ΆุΤפ̈
    • ˖௝ʱᗳ
    • ᗳЧ˖οΐණߒ
    ϣ㗮㘮㘢㘪㙚㙦㗧㗯ΆุΤפ̈㗫
    㗤㗄㗦༉㗗㗏༆説㗗㗾㗙f
    "*㗫㘈㘋ɽඎ㗮㘾㙘㖽㘬াԫ㗫ਿ㗥㗏̹ఙሜ査

    View Slide

  8. ࠓ೔ͷ಺༰ɿ
    8
    ü ࣗવݴޠॲཧΛͲͷΑ͏ʹϏδωεʹԠ༻͍ͯ͠Δ͔
    ü #&35Λ༻͍ͨࣗવݴޠॲཧɿاۀ໊நग़
    ü #&35ΛͲͷΑ͏ʹӡ༻͍ͯ͠Δ͔

    View Slide

  9. จষͷߏ଄Խ
    9
    ੜͷςΩετσʔλΛίϯϐϡʔλͰ෼ੳ͠΍͍͢Α͏ʹɺݻ༗໊ࢺ
    ΍Ωʔϫʔυͷநग़΍ɺςΩετͷ෼ྨΛߦ͏ɻ
    χϡʔεهࣄ
    ΧςΰϦʔ ݻ༗໊ࢺ
    اۀ໊ ετοΫϚʔΫגࣜձࣾ
    ਓ໊ ۙߐਸ޺
    ஍໊ ౦ژ
    ݻ༗දݱநग़
    ෼ྨ ΧςΰϦʔ Ϋϥε
    χϡʔε෼ྨ
    ࣾձɺܦࡁɺ੓࣏ɺࠃࡍɺ
    *5ɾՊֶɺͦͷଞ
    ࠓ೔͸ओʹʮݻ༗දݱநग़ʯ
    Λѻ͍·͢ɻ
    จষͷߏ଄ԽΛࣗಈత
    ʹߦ͍͍ͨʂ
    キーワード ⾃然⾔語処理
    Ωʔϫʔυ
    நग़

    View Slide

  10. ϓϩμΫτͰͷݻ༗දݱநग़ͷ׆༻ࣄྫ
    提案資料
    ニュース
    記事
    企業名
    企業名
    商材名
    業界
    商材分類
    クロス集計
    業界構造分析 企業間⽐較
    推移解析
    ݻ༗දݱநग़
    #&35

    ෼ྨ
    ݻ༗දݱநग़
    #&35

    提案業界・商材のカテゴリー
    によるスライドの検索
    業界
    ෼ྨ
    "TUSBUFHZ
    "TBMFT

    View Slide

  11. ݻ༗දݱநग़͸ػցʹ͸೉͍͠
    11
    üφΠʔϒͳํ๏ɿاۀ໊ͷϦετΛ࡞͓͖ͬͯɺͦΕʹҰக͢Δจࣈྻ
    ͕ݱΕͨΒɺͦΕΛاۀ໊ͱΈͳ͢ɻ
    • Ұൠ໊ࢺͱಉҰͷاۀ໊Ͱ͸ɺޡݕग़͕ଟ͘ىͬͯ͜͠·͏ɻ
    ʢྫɿγφϞϯɿاۀ໊ɾ߳ਏྉͷ྆ํͷҙຯΛ࣋ͭʣ
    • ະ஌ͷاۀ໊͸ͦ΋ͦ΋நग़Ͱ͖ͳ͍ɻ
    üاۀ໊Λਖ਼͘͠நग़͢ΔͨΊʹ͸จ຺Λ౿·͑ͨॲཧ͕ඞཁ

    View Slide

  12. χϡʔϥϧωοτϫʔΫʹΑΔ୯ޠͷ෼ࢄදݱ
    12
    ü จষΛػցֶशͷϞσϧʹೖྗ͢ΔͨΊʹɺ୯ޠΛϕΫτϧʢ෼ࢄදݱʣ
    ʹม׵͢Δɻ
    単Ⴇ
    㙌㘢㘻㙞
    3// PS-45.j
    Ԩΐ㗫ࠇၑ㗧㗍㗪㗄f
    ڗ㗄˖௝㗮䕎୦㗌ᗭ㗗㗄f
    8PSE7FDj
    ˖এ㘒Ͻᅇ㗧㗍㗪㗄

    View Slide

  13. #&35ͱ͸ [J. Devlin et al., 2018]
    13
    ü ೥ʹ(PPHMFʹΑΓఏҊ͞Εͨࣗ
    વݴޠॲཧͷχϡʔϥϧωοτϫʔΫ
    ɻ༷ʑͳݴޠλεΫͰطଘͷϞσϧΛ
    ௒͑ΔύϑΥʔϚϯεΛࣔ͢ɻ
    ü 5SBOTGPSNFSΛϕʔεͱͨ͠ϞσϧͰ
    "UUFOUJPOʹΑΓ޿ൣғͷจ຺ΛಡΉ͜
    ͱ͕Ͱ͖Δɺܭࢉޮ཰ੑ͕ߴ͍ɺͱ͍
    ͬͨಛ௃͕͋Δɻ
    ü େྔͷจষΛ༻͍ͨʮࣄલֶशʯͱɺ
    ݸผͷλεΫͷϥϕϧ෇͖σʔλΛ༻
    ͍ͨʮϑΝΠϯνϡʔχϯάʯͷೋͭ
    ͷֶशͷεςʔδ͕͋Δɻ

    View Slide

  14. #&35ʹΑΔݻ༗දݱநग़
    14
    ü #&35ͷग़ྗΛ·ͨ͸ͷϥ
    ϕϧʹม׵͢ΔࣝผثΛಋೖ
    ü ͸اۀ໊ʹؚ·ΕΔ͜ͱΛҙ
    ຯ͠ɺ͸ͦΕҎ֎Λද͢ɻ
    ü ֶशσʔλʢτʔΫϯͱਖ਼͠
    ͍ϥϕϧͷϖΞʣΛେྔʹ༻
    ҙ͠ɺֶश͢Δɻ
    ݻ༗දݱநग़ͷྫʢاۀ໊ʣ
    [Tech Blog] Wikipediaを⽤いた⽇本語の固有表現抽出データセットの公開
    (https://tech.stockmark.co.jp/blog/202012_ner_dataset/)

    View Slide

  15. ϓϩμΫτͰͷݻ༗දݱநग़ͷ׆༻
    15
    ü 4UPDLNBSLͰ͸#&35Λ࢖ͬͨاۀ໊ɾ঎ࡐ໊ͳͲͷݻ༗දݱந
    ग़ͱɺͦͷϏδωεԠ༻ʹྗΛೖΕͯऔΓ૊ΜͰ͍Δɻ
    ü χϡʔεهࣄΛ΋ͱʹֶशσʔλΛ࡞੒͢Δ͜ͱͰɺχϡʔεه
    ࣄʹಛԽͨ͠ߴਫ਼౓ͳاۀ໊நग़ϞσϧΛ։ൃ
    正しく抽出できた企業 企業以外を誤検出
    Stockmark BERT 93% 9%
    Ύତଟ
    ቇΥଟ

    View Slide

  16. ࠓ೔ͷ಺༰ɿ
    16
    ü ࣗવݴޠॲཧΛͲͷΑ͏ʹϏδωεʹԠ༻͍ͯ͠Δ͔
    ü #&35Λ༻͍ͨࣗવݴޠॲཧ
    ü #&35ΛͲͷΑ͏ʹӡ༻͍ͯ͠Δ͔

    View Slide

  17. #&35ͷӡ༻ͷ՝୊
    17
    o #&35͸จ຺Λߟྀͨ͠ॲཧ͕ՄೳͳχϡʔϥϧωοτϫʔΫͰɺ༷ʑͳݴ
    ޠλεΫͰਫ਼౓Λେ෯ʹվળɻࣗવݴޠॲཧʹϒϨΠΫεϧʔΛى͜͢ɻ
    ͔͠͠ɺॲཧ͕ॏ͍ɺɺɺ
    ࣾ಺(16αʔόͰσʔλϕʔεʹ͋Δχϡʔεهࣄͷશ݅ॲཧ ਺ઍສ
    ݅
    Λߦ͏ͱ̍िؒҎ্͔͔Δɻ
    ü ($1্ʹ#&35ͷॲཧج൫ΠϯϑϥΛ։ൃ
    ਺ઍສ݅ͷهࣄͷશ݅ॲཧΛ೔Ҏ಺ʹ׬ྃ͢ΔΑ͏ʹͳͬͨɻ

    View Slide

  18. ΞʔΩςΫνϟʔ
    18
    参考:「Cloud TPUを⽤いたBERT推論処理基盤の開発」 (Stockmark Tech Blog)
    https://tech.stockmark.co.jp/blog/202010_tpu_gcp_system/
    ü ($1্ʹ#&35ਪ࿦ॲཧج൫Λߏங

    View Slide

  19. ࢪࡦ̍ɿ516ͷར༻
    19
    ü ͜Ε·Ͱ#&35ͷॲཧʹ͸(16Λ
    ༻͍͍͕ͯͨɺ516Λ࠾༻ͨ͠ɻ
    ü 516͸(PPHMF͕։ൃͨ͠ػցֶश
    ͷॲཧʹಛԽͨ͠νοϓɻ(16ʹ
    ൺ΂ͯɺҰ౓ʹଟ͘ͷσʔλΛॲ
    ཧͰ͖Δɻ
    ü 516Λ࠾༻͢Δ͜ͱͰɺίετɾ
    ॲཧ࣌ؒͱ΋ʹ࡟ݮͰ͖ͨɻ
    ສهࣄͷॲཧ

    View Slide

  20. ࢪࡦ̍ɿ516ͷར༻
    20
    ü ඪ४తͳϥΠϒϥϦͰ͋Δ)VHHJOHGBDFࣾͷ5SBOTGPSNFSTͰ͸ɺ#&35ͷLFSBT
    ϞσϧΛఏڙ͍ͯ͠Δɻ
    ü ༰қʹ#&35Λ516্Ͱಈ͔͢͜ͱ͕Ͱ͖Δɻ
    おまじない

    View Slide

  21. ࢪࡦɿ$MPVE3VOʹΑΔલɾޙॲཧͷฒྻԽ
    21
    ü શ݅ॲཧ࣌ʹ͸ɺલॲཧɾޙॲཧʹ΋௕͍͕͔͔࣌ؒΔʢ਺೔ఔ౓ʣ
    ü $MPVE 3VOΛ༻͍ͯલॲཧɾޙॲཧΛฒྻԽͯ͠ɺߴ଎ԽΛਤΔʢ̎࣌ؒఔ౓ʣ
    ü $MPVE3VO͸ίϯςφ্ͷΞϓϦέʔγϣϯΛ࣮ߦ͢ΔαʔόϨεͷαʔϏεɻ
    ࣗಈεέʔϦϯάʹ΋ରԠ͓ͯ͠Γɺ਺ඦఔ౓ͷฒྻॲཧ͕༰қʹ࣮ߦͰ͖Δɻ

    View Slide

  22. ࢪࡦɿ&MBTUJDTFBSDIͷσʔλߋ৽ͷࣗಈԽ
    22
    ü શ݅ߋ৽ͷ৔߹ɺߋ৽͢Δσʔλ͸਺ඦ(#ʹٴͿɻ
    ü &MBTUJDTFBSDIʹେྔͷσʔλͷߋ৽Λ͠Α͏ͱ͢Δͱɺߴ͍ෛՙ͕͔͔Γɺ࠷
    ѱͷ৔߹ɺ&MBTUJDTFBSDI͕Ϋϥογϡͯ͠͠·͏͜ͱ΋ɻ
    ü ߋ৽ॲཧʹ͓͍ͯɺ&MBTUJDTFBSDIͷঢ়ଶʢ$MVTUFSTUBUVT .JOJNVNGSFF
    TUPSBHFTQBDFʣΛ؂ࢹ͠ɺߴෛՙ࣌ʹ͸ਖ਼ৗঢ়ଶʹ໭Δ·ͰॲཧΛҰ࣌తʹఀ
    ࢭ͢Δ࢓૊ΈΛಋೖɻ
    େ͖ͳσʔλͷߋ৽ॲཧͷࣗಈԽɺຊ൪؀ڥͷ҆ఆӡ༻

    View Slide

  23. ·ͱΊ
    23
    üϓϩμΫτʹ͓͚Δ#&35ͳͲͷ࠷ઌ୺ͷࣗવݴޠॲཧٕज़ͷ׆༻
    üσʔλΛzຏ͘zʢจষͷߏ଄Խʣ͜ͱͰσʔλͷར༻Մೳੑɾ෇Ճ
    Ձ஋ΛߴΊΔ͜ͱ͕Ͱ͖Δɿ"*ͷར༻
    üػցֶशͷಛੑʹԠͨ͡Πϯϑϥͷઃܭ

    View Slide

  24. ࠷ۙͷهࣄɿ
    https://tech.stockmark.co.jp/
    ΤϯδχΞืूதʂ
    ü ϓϩμΫτͰͷ#&35ͷ׆༻ͱӡ༻ʢࠓ೔ͷ಺༰ʂʣ
    • #&35ʹΑΔχϡʔεهࣄͷߏ଄Խɿاۀ໊நग़
    [email protected]@[email protected]
    • $MPVE516Λ༻͍ͨ#&35ਪ࿦ॲཧج൫ͷ։ൃ
    [email protected]@[email protected]
    ü ೔ຊޠͷࣄલֶशࡁΈݴޠϞσϧͷެ։ʢ#&35 9-/&5 "-#&35 (15ʣ
    ü ݻ༗දݱநग़σʔληοτͷެ։

    View Slide

  25. ˜4UPDLNBSL *OD

    View Slide