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

#devsumi 自然言語処理・機械学習によるファクトチェック業務の支援

KOMIYA Atsushi
February 19, 2018

#devsumi 自然言語処理・機械学習によるファクトチェック業務の支援

Developers summit 2018 (2018-02-15) での講演資料です。

http://event.shoeisha.jp/devsumi/20180215/session/1613/

一昨年のアメリカ大統領選挙では、意図的な誤情報を含んだニュース、いわゆる「フェイクニュース」がインターネットを中心として拡散し、物議を醸しました。その後も、大統領となったトランプ氏による真偽が定かでない内容のツイートがたびたび世間を賑わせています。一方日本では、医療系キュレーションメディアが医学的根拠に乏しい記事を掲載していたとして非難を浴び、閉鎖する騒動がありました。
このように、誤情報や真偽が不明な情報がインターネット上で流通しうる昨今、新聞社やTVなどが報道するニュース、Webメディアが配信するコンテンツ、また政治家や有識者の発言などを対象に、その内容の真偽を検証する「ファクトチェック」の重要性が高まっています。
このセッションでは、ファクトチェック・イニシアティブ、東北大学の乾・岡崎研究室、スマートニュースらが共同で取り組むファクトチェック業務をテクノロジーで支援する試みと、自然言語処理や機械学習を中心に技術的詳細についてお話いたします。

KOMIYA Atsushi

February 19, 2018
Tweet

More Decks by KOMIYA Atsushi

Other Decks in Technology

Transcript

  1. ࣗવݴޠॲཧɾػցֶशΛ׆༻ͨ͠
    ϑΝΫτνΣοΫۀ຿ͷࢧԉ
    SmartNews, Inc.
    KOMIYA Atsushi

    View Slide

  2. @komiya_atsushi / খٶ ಞ࢙

    View Slide

  3. View Slide

  4. ԿΛ΍͍ͬͯΔͷ͔ʁ
    • όοΫΤϯυΤϯδχΞ
    • ӡ༻ܕ޿ࠂͷ޿ࠂ഑৴γεςϜ
    • ޿ࠂΦʔΫγϣϯ/ ࠷దԽ໰୊ / ػցֶश
    • A/B ςετ / ෼ੳ
    • ϑΝΫτνΣοΫࢧԉγεςϜ
    • ϑϩϯτ / όοΫΤϯυͷΞϓϦέʔγϣϯ࣮૷͔Β

    γεςϜͷӡ༻·Ͱ

    View Slide

  5. ʮϑΣΠΫχϡʔεʯ
    ͱ
    ʮϑΝΫτνΣοΫʯ

    View Slide

  6. http://therightists.com/hillary-clinton-in-2013-i-would-like-to-see-people-
    like-donald-trump-run-for-office-theyre-honest-and-cant-be-bought/

    View Slide

  7. ϑΣΠΫχϡʔε:
    ҙਤతʹڏِͷݴઆ͕
    ؚ·Ε͍ͯΔ৘ใ

    View Slide

  8. https://www.snopes.com/people-like-donald-trump/

    View Slide

  9. ϑΝΫτνΣοΫ:
    ެද͞Ε͍ͯΔݴઆʹରͯ͠

    ͦΕ͕ࣄ࣮ͱͯ͠ਖ਼͔֬Λ

    ݕূ͢Δ͜ͱ

    View Slide

  10. ϑΝΫτνΣοΫͷର৅͸
    ϑΣΠΫχϡʔεʹݶఆ͞Εͳ͍

    View Slide

  11. ϑΝΫτνΣοΫͷର৅ͱͳΓ͏Δ΋ͷ
    • ͞·͟·ͳݴઆ͕ϑΝΫτνΣοΫͷର৅ͱͳΓ͏Δ
    • Լه͸Ұྫ
    • ৽ฉࣾ΍ςϨϏہͳͲͷใಓػ͕ؔൃ৴͢Δχϡʔε
    • ੓࣏Ո΍༗ࣝऀͳͲࣾձతʹӨڹྗΛ࣋ͭਓͷݴઆ
    • Web ϝσΟΞ͕ൃ৴͢ΔςΩετίϯςϯπ
    • ιʔγϟϧϝσΟΞʹ͓͚ΔҰൠਓͷൃݴ

    View Slide

  12. ઌ೔ Twitter Ͱ࿩୊ʹͳͬͨσϚ
    ※ը૾͸ HuffPost ͷهࣄΑΓ
    http://www.huffingtonpost.jp/2018/02/08/taiwan-bokin-dema_a_23356081/

    View Slide

  13. ֤͕ࣾਅِΛݕূͨ͠هࣄΛ഑৴
    http://www.huffingtonpost.jp/2018/02/08/taiwan-bokin-dema_a_23356081/

    View Slide

  14. ֤͕ࣾਅِΛݕূͨ͠هࣄΛ഑৴
    https://www.buzzfeed.com/jp/kensukeseya/taiwan-earthquake-3

    View Slide

  15. HuffPost ͷهࣄ͔ΒͷҾ༻
    • “ϋϑϙετ೔ຊ൛Ͱ͸ɺπΠʔτͰڍ͛ΒΕͨશͯͷืۚͷӡӦओମʹऔࡐ͠
    ͨ”
    • “ςϨϏே೔޿ใ෦ࣨ͸ࠓճͷπΠʔτʹ͍ͭͯɺʮ͝ࢦఠͷΑ͏ͳࣄ࣮͸͋Γ·
    ͤΜʯͱ্ͨ͠Ͱɺ͜͏౴͑ͨɻʮυϥ͑΋Μืۚ͸ɺNTT౦೔ຊ͕ద༻͍ͯ͠
    Δࡂ֐ืۚαʔϏεΛར༻͍ͯ͠·͢ɻ࢖్ͳͲʹ͍ͭͯ͸ɺͦͷ౎౓ϗʔϜϖʔ
    δͳͲͰ͝ใࠂ͍͍͓ͤͯͨͩͯ͞Γ·͢ʯ”
    • “ϑδςϨϏاۀ޿ใࣨ͸ɺʮࠓճى͖ͨ୆࿷஍਒ʹؔͯ͠ɺαβΤ͞Μืۚ͸࣮
    ࢪ͓ͯ͠Γ·ͤΜʯͱ্ͨ͠ͰɺFAXจॻͰҎԼͷΑ͏ʹճ౴ͨ͠ɻʮաڈʹ࣮
    ࢪͨ͠αβΤ͞ΜืۚͰɺશࠃͷօ༷͔Β͝د෇͍͍ͨͩͨوॏͳืۚ͸ɺશֹ
    Λ೔ຊ੺ेࣈࣾ΍ެӹࡒஂ๏ਓ೔ຊϢχηϑڠձͳͲʹد෇͓ͯ͠Γ·͢ʯ”

    View Slide

  16. ʮਖ਼͍͠ / ؒҧ͍ͬͯΔʯΛ
    ൑ผ͢Δ͚͕ͩϑΝΫτνΣοΫ
    Ͱ͸ͳ͍

    View Slide

  17. ϑΝΫτνΣοΫͷΞ΢τϓοτ಺༰
    • ϑΝΫτνΣοΫର৅ͷݴઆ͸Կ͔ʁ
    • ݕূ݁Ռ: ࣄ࣮ͳͷ͔ʁ ໌Β͔ͳޡ৘ใ͔ʁ

    ෆਖ਼֬ͳදݱͳͷ͔ʁ
    • ࠜڌ: ͦͷݕূ݁Ռʹࢸͬͨɺཪ෇͚ΔͱͳΔ
    ৘ใ͸Կ͔ʁ

    View Slide

  18. ϑΝΫτνΣοΫ
    ࠃ಺֎ͷঢ়گ

    View Slide

  19. View Slide

  20. View Slide

  21. View Slide

  22. View Slide

  23. View Slide

  24. View Slide

  25. View Slide

  26. ϑΝΫτνΣοΫͷཪଆ

    View Slide

  27. ೔ຊใಓݕূػߏʹΑΔ༻ޠఆٛɾ
    ۀ຿Ϟσϧʹج͍ͮͯઆ໌

    View Slide

  28. ϑΝΫτνΣοΫͷྲྀΕ
    ൃ৴৘ใ Πϯλʔωοτ ςϨϏ ϥδΦ ৽ฉʜ

    ϑΝΫτ
    νΣοΧʔ
    ୳ࡧ৘ใ
    ୺ॹ৘ใ
    ϑΝΫτνΣοΫهࣄ
    ݕࡧɾϑΟϧλϦϯάʹΑΔऩू
    ਓखʹΑΔεΫϦʔχϯά
    ༧උௐࠪɾຊௐࠪɾهࣄԽ

    View Slide

  29. ༻ޠͷఆٛ
    • ൃ৴৘ใ
    • ΠϯλʔωοτɺςϨϏɺϥδΦɺ৽ฉͳͲͷൃ৴ഔମΛ௨ͯ͡ਓ
    ͕ൃ৴ͨ͠৘ใ
    • ୳ࡧ৘ใ
    • ൃ৴৘ใΑΓɺ୺ॹ৘ใʹͳΓಘΔ΋ͷͱͯ͠ػցతʹัଊ͞Εͨ
    ৘ใ
    • ୺ॹ৘ใ
    • ୳ࡧ৘ใͷ͏ͪɺϑΝΫτνΣοΫͷର৅ͱͳΓಘͳ͍΋ͷ΍ϑΝ
    ΫτνΣοΫͷඞཁੑ͕ೝΊΒΕͳ͍΋ͷΛ আ֎ͨ͠ ৘ใ

    View Slide

  30. ϑΝΫτνΣοΫۀ຿ʹ͓͚Δ՝୊
    • ൃ৴ഔମͱͯ͠Πϯλʔωοτ͚ͩʹண໨ͯ͠΋ɺৗʹଟ͘ͷ৘ใ
    ͕ൃ৴͞Ε͍ͯΔ
    • ϑΟϧλϦϯάͰߜΓࠐΉͱ͸ݴ͑Ͳ΋ɺ୳ࡧ৘ใ͸ͦΕͳΓͷن
    ໛ʹͳΔ
    • 1 ೔͋ͨΓ 1 ສ݅Ҏ্
    • ୳ࡧ৘ใͷྔʹରͯ͠ɺ୺ॹ৘ใ͸͔ᷮ͘͝Ͱ͋Δ
    • ୳ࡧ৘ใ 1,000 ݅͋ͨΓ୺ॹ৘ใ͸਺݅ఔ౓
    • ୳ࡧ৘ใͷத͔Β୺ॹ৘ใΛ୳͠ग़͢ͷ͸ྔతʹݫ͍͠

    View Slide

  31. ϑΝΫτνΣοΫࢧԉγεςϜͷ
    ࣮ূ࣮ݧϓϩδΣΫτ

    View Slide

  32. https://digiday.jp/publishers/factcheck-initiative-japan-launched/

    View Slide

  33. ϑΝΫτνΣοΫɾΠχγΞςΟϒ / FIJ
    • ໨త (http://fij.info/about ΑΓ)
    • ϑΝΫτνΣοΫͷීٴɺܒൃ౳ʹؔ͢Δࣄ
    ۀΛߦ͍ɺࣾձʹޡͬͨ৘ใ͕֦͕ΔͷΛ๷
    ͙࢓૊ΈΛ࡞Γɺࢢຽ͕ࣄ࣮ͱҟͳΔ৘ใʹ
    ࿭Θ͞Εͳ͍Α͏ͳࣾձΛߏங͢Δ͜ͱΛ໨
    తͱ͢Δ
    • ϑΝΫτνΣοΫΛ࣮ࢪ͢ΔओମͰ͸ͳ͍

    View Slide

  34. ϑΝΫτνΣοΫɾΠχγΞςΟϒ / FIJ
    • ׆ಈํ਑ (هऀձݟ࣌ͷ഑෍ࢿྉ 

    fij.info/archives/news_event/17062201 ΑΓ)
    • ϑΝΫτνΣοΫͷཧղɺख๏ͷڞ༗Խ
    • ϑΝΫτνΣοΧʔΛࢧԉ͢Δ࢓૊Έͮ͘
    Γ

    View Slide

  35. ϑΝΫτνΣοΫࢧԉγεςϜ
    • 3 ૊৫ʹΑΔڞಉϓϩδΣΫτ
    • ϑΝΫτνΣοΫɾΠχγΞςΟϒ
    • ౦๺େֶ סɾԬ࡚ݚڀࣨ
    • εϚʔτχϡʔε
    • ໨త
    • ϑΝΫτνΣοΫۀ຿ΛςΫϊϩδʔͰࢧԉ͠ɺޮ཰ԽΛਤΔ
    • ϑΝΫτνΣοΫ݁ՌʢϨϏϡʔσʔλʣΛΦʔϓϯʹར༻Ͱ
    ͖ΔΑ͏ʹ͢Δ

    View Slide

  36. ֤૊৫ͷ໾ׂ
    • ϑΝΫτνΣοΫɾΠχγΞςΟϒ
    • ϑΝΫτνΣοΫۀ຿ͷφϨοδఏڙ
    • ϑΝΫτνΣοΫࢧԉγεςϜͷར༻ɾධՁɾϑΟʔυόοΫ
    • ౦๺େֶ סɾԬ࡚ݚڀࣨ
    • ࣗવݴޠॲཧɾػցֶशʹΑΔϑΝΫτνΣοΫۀ຿Λޮ཰Խ
    ͢ΔΞϧΰϦζϜͷ։ൃ
    • εϚʔτχϡʔε
    • ϑΝΫτνΣοΫࢧԉγεςϜͷߏஙɾӡ༻

    View Slide

  37. ςΫϊϩδʔʹΑΔ
    ϑΝΫτνΣοΫࢧԉͷ
    ઌߦࣄྫ

    View Slide

  38. View Slide

  39. View Slide

  40. View Slide

  41. ClaimBuster: 

    Automated Live Fact-checking
    • ੓࣏Ոͷ౼࿦΍εϐʔνͳͲΛର৅ʹɺϦΞϧλΠϜʹ
    จষ୯ҐͰϑΝΫτνΣοΫ͢ΔՁ஋ͷ༗ແΛ൑ผ͢Δ
    • ٕज़ৄࡉ͸ KDD ’17 ͷ࿦จʹͯެ։͞Ε͍ͯΔ
    • Toward Automated Fact-Checking: Detecting Check-
    worthy Factual Claims by ClaimBuster
    • http://www.kdd.org/kdd2017/papers/view/toward-
    automated-fact-checking-detecting-check-worthy-
    factual-claims-by-cla

    View Slide

  42. ϑΝΫτνΣοΫࢧԉγεςϜʹ
    ͓͚Δٕज़తΞϓϩʔν

    View Slide

  43. جຊํ਑
    • ೔ຊใಓݕূػߏʹ͓͚ΔϑΝΫτνΣοΫۀ຿ͷϞσϧΛϕʔεͱ͢Δ
    • ൃ৴ഔମΛΠϯλʔωοτʹݶఆ͠ɺ͞Βʹ Twitter Λσʔλιʔεͱ͠
    ͯར༻͢Δ
    • πΠʔτ͕୳ࡧ৘ใɺ୺ॹ৘ใͱͳΔ
    • Կ͔͠Βͷ URL ʹݴٴɾϦϓϥΠ͍ͯ͠ΔπΠʔτΛऩूର৅ͱ͢Δ
    • ϑΝΫτνΣοΫର৅͸ Web ্ͷهࣄ (χϡʔε΍ϒϩάɺςΩετίϯ
    ςϯπͳͲ) ʹݶఆ͢Δ
    • ಛʹϘτϧωοΫͱͳΔ࡞ۀʹ͍ͭͯɺࣗવݴޠॲཧɾػցֶशΛ׆༻͠
    ͨޮ཰ԽΛࢼΈΔ

    View Slide

  44. ϑΝΫτνΣοΫͷྲྀΕ
    Πϯλʔωοτ্ͷ৘ใ 5XJUUFS

    ϑΝΫτ
    νΣοΧʔ
    ୳ࡧ৘ใ
    ୺ॹ৘ใ
    ϑΝΫτνΣοΫهࣄ
    ݕࡧɾϑΟϧλϦϯάʹΑΔऩू
    ਓखʹΑΔεΫϦʔχϯά
    ༧උௐࠪɾຊௐࠪɾهࣄԽ

    View Slide

  45. ࣗવݴޠॲཧɾػցֶशʹΑΔޮ཰Խ
    • ໨త: 1 ೔͋ͨΓ਺ઍ݅Ҏ্ൃੜ͢Δ୳ࡧ৘ใ (πΠʔτ) ͷεΫ
    ϦʔχϯάΛޮ཰Խ͍ͨ͠
    • ண૝: ࣄલʹʮ֬ೝ͢ΔՁ஋ͷ͋Δ୳ࡧ৘ใʯͱͦ͏Ͱͳ͍୳ࡧ
    ৘ใʹ෼ྨ͔ͯ͠ΒεΫϦʔχϯά͢Ε͹Α͍ͷͰ͸ͳ͍͔ʁ
    • ࣌ؒతɾਓత༨༟͕͋Δঢ়گͰ͋Ε͹ɺશ݅εΫϦʔχϯά
    ͢Ε͹Α͍
    • ͦ͏Ͱͳ͍ͳΒɺ֬ೝ͢ΔՁ஋ͷ͋Δ୳ࡧ৘ใΛ༏ઌతʹε
    ΫϦʔχϯά͢Δ

    View Slide

  46. ࣗવݴޠॲཧɾػցֶशʹΑΔޮ཰Խ
    • ʮ֬ೝ͢ΔՁ஋ͷ͋Δ୳ࡧ৘ใʯ

    㲈ʮ୺ॹ৘ใͰ͋ΔՄೳੑͷߴ͍୳ࡧ৘ใʯ
    • ʮ୳ࡧ৘ใ͕୺ॹ৘ใͰ͋Δ͔൱͔Λ༧ଌ͢Δ໰୊ʯͱ͠
    ͯଊ͑ɺ༧ଌϞσϧΛߏங͢Δ
    • ೖྗ: ୳ࡧ৘ใ (ςΩετ)
    • ਖ਼ྫ: ୺ॹ৘ใͰ͋Δɺෛྫ: ୺ॹ৘ใͰ͸ͳ͍
    • ग़ྗ: ୺ॹ৘ใͷՄೳੑΛද֬͢཰

    View Slide

  47. ࣗવݴޠॲཧɾػցֶशʹΑΔޮ཰Խ
    • ୺ॹ৘ใͰ͋Δ͔൱͔ͷ༧ଌ݁Ռ͸ɺهࣄ୯ҐͰू໿͢Δ
    • ϑΝΫτνΣοΧʔ͸ݸผͷ୳ࡧ৘ใ (πΠʔτ) Λ֬ೝ
    ͭͭ͠ɺهࣄ୯ҐͰٙٛͷ༗ແΛ൑அͰ͖Δ
    • ୺ॹ৘ใͰ͋ΔՄೳੑ (֬཰) ͕ߴ͍هࣄ΄Ͳ༏ઌͯ֬͠
    ೝͰ͖Δ
    • ϑΝΫτνΣοΧʔ͕֬ೝͯ͠ϥϕϧ෇͚͞Εͨ݁Ռ͸ɺ
    ࣍ճͷֶशσʔλͱͯ͠ར༻͢Δ

    View Slide

  48. ϑΝΫτ
    νΣοΧʔ
    ιʔγϟϧ
    ϝσΟΞ
    ᶃऩू
    ᶄهࣄຖʹ
    πΠʔτΛू໿
    ᶅ༧ଌϞσϧͰ
    ୺ॹ৘ใ֬཰Λ༧ଌ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ᶆ֬཰ॱʹ
    ιʔτ



    ᶇهࣄຖʹ
    ֬ೝ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ



    ᶈ֬ೝ݁ՌΛ
    ࣍ճͷֶशʹར༻

    View Slide

  49. ୺ॹ৘ใ͔൱͔Λ༧ଌ͢Δ
    ΞϧΰϦζϜ

    View Slide

  50. ϑΝΫτ
    νΣοΧʔ
    ιʔγϟϧ
    ϝσΟΞ
    ᶃऩू
    ᶄهࣄຖʹ
    πΠʔτΛू໿
    ᶅ༧ଌϞσϧͰ
    ୺ॹ৘ใ֬཰Λ༧ଌ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ᶆ֬཰ॱʹ
    ιʔτ



    ᶇهࣄຖʹ
    ֬ೝ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ



    ᶈ֬ೝ݁ՌΛ
    ࣍ճͷֶशʹར༻

    View Slide

  51. http://www.anlp.jp/nlp2018/

    View Slide

  52. ౦๺େֶ סɾԬ࡚ݚڀࣨʹΑΔ
    ੒Ռ෺Λجʹઆ໌

    View Slide

  53. ୳ࡧ৘ใ (πΠʔτ) Λೖྗͱͯ͠༩͑ɺ
    ୺ॹ৘ใͰ͋Δ֬཰Λग़ྗͱͯ͠ಘΔ
    ༧ଌϞσϧΛߏங͢Δ

    View Slide

  54. લॲཧ
    • ಛ௃ྔͱͯ͠ར༻Ͱ͖Δͷ͸ςΩετσʔλ (πΠʔτ) ͷ
    Έ
    • πΠʔτ͔ΒɺهࣄͷλΠτϧ΍ϋογϡλάͳͲɺϊΠ
    ζͱͳΓ͏Δ৘ใΛআڈ͢Δ
    • πΠʔτதͷهࣄλΠτϧ͸Ұ෦͕লུ͞Ε͍ͯΔ͜ͱ
    ΋͋ΔͨΊɺ׬શҰகͰͷআڈ͕೉͍͠
    • ۙࣅจࣈྻর߹ΞϧΰϦζϜʹΑΓɺҰఆͷฤूڑ཭Ҏ
    ԼͷྨࣅจࣈྻΛݕग़ͯ͠আڈ͢Δ

    View Slide

  55. લॲཧ
    • ܗଶૉղੳثͰ෼͔ͪॻ͖ & ݪܗʹஔ׵͢Δ
    • ܗଶૉղੳث: MeCabɺࣙॻ: NEologd
    • Ұ෦ޠ۟ (৽ฉ໊ࣾͳͲ) Λআڈ͢Δ
    • ෼͔ͪॻ͖݁ՌΛಛ௃ϕΫτϧͱͯ͠දݱ͢Δ
    • ผ్ֶशͨ͠ Word2Vec ϞσϧͰ embedding ͢Δ
    • Word2Vec ͷֶशʹ͸ gensim Λར༻͢Δ

    View Slide

  56. ֶश / ༧ଌ
    • LSTM (Long short-term memory) Λ༻͍ͨ

    ༧ଌϞσϧΛߏங͢Δ
    • DNN ϑϨʔϜϫʔΫ͸ Keras / TensorFlow
    Λར༻͢Δ
    • ग़ྗ૚͸ softmax ͱ͢Δ

    View Slide

  57. ֶश / ༧ଌͷॲཧύΠϓϥΠϯ
    ֶशσʔλ
    8PSE7FD༻

    ֶशσʔλ
    ༧ଌϞσϧ༻

    ෼͔ͪॻ͖
    .F$BC
    &NCFEEJOH
    ༧ଌ
    ༧ଌର৅ͷ
    σʔλ
    ֶश
    ֶश
    8PSE7FD
    Ϟσϧ
    ༧ଌϞσϧ
    -45.ˠ
    TPGUNBY

    ༧ଌ݁Ռ
    ֶशϑΣʔζ
    ༧ଌϑΣʔζ

    View Slide

  58. γεςϜͷߏஙɾӡ༻

    View Slide

  59. ϑΝΫτ
    νΣοΧʔ
    ιʔγϟϧ
    ϝσΟΞ
    ᶃऩू
    ᶄهࣄຖʹ
    πΠʔτΛू໿
    ᶅ༧ଌϞσϧͰ
    ୺ॹ৘ใ֬཰Λ༧ଌ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ᶆ֬཰ॱʹ
    ιʔτ



    ᶇهࣄຖʹ
    ֬ೝ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ



    ᶈ֬ೝ݁ՌΛ
    ࣍ճͷֶशʹར༻

    View Slide

  60. ϑΝΫτ
    νΣοΧʔ
    ιʔγϟϧ
    ϝσΟΞ
    ᶃऩू
    ᶄهࣄຖʹ
    πΠʔτΛू໿
    ᶅ༧ଌϞσϧͰ
    ୺ॹ৘ใ֬཰Λ༧ଌ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ᶆ֬཰ॱʹ
    ιʔτ



    ᶇهࣄຖʹ
    ֬ೝ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ
    ɾɾɾ



    ᶈ֬ೝ݁ՌΛ
    ࣍ճͷֶशʹར༻
    Collector
    Web console
    Predictor
    Learner

    View Slide

  61. Web console
    • ϑΝΫτνΣοΧʔ޲͚ʹఏڙ͢Δ Web

    ΠϯλϑΣʔε
    • ୳ࡧ৘ใͷҰཡදࣔ
    • هࣄɾ୳ࡧ৘ใʹର͢ΔΞϊςʔγϣϯ
    • ϢʔβΠϯλϑΣʔεͷྑ͠ѱ͕͠ϑΝΫτ
    νΣοΧʔͷ࡞ۀޮ཰ʹ௚݁͢Δ…

    View Slide

  62. Collector
    • Twitter API (REST / Streaming) Λར༻ͯ͠୳ࡧ৘ใ (πΠʔτ) Λऩू͢Δ
    • ٙٛΛࣔࠦ͢ΔΩʔϫʔυ (ӕ, ϑΣΠΫ, σϚ, ͳͲ) Λࢦఆͯ͠
    Streaming API Ͱৗ࣌औಘ͢Δ
    • ৽ฉࣾɺWeb ϝσΟΞͷެࣜΞΧ΢ϯτ͔ΒൃͤΒΕΔهࣄʹର͢Δ

    ϦϓϥΠΛ REST API Ͱఆظతʹऔಘ͢Δ
    • πΠʔτʹؚ·ΕΔ URL Λḷͬͯهࣄͷϝλσʔλ (OGP ͳͲ) Λऩू͢Δ
    • ୺ॹ৘ใͰ͋Δ֬཰ͷ༧ଌ͸ Predictor ͷ Web API ܦ༝Ͱ࣮ݱ͢Δ
    • ࣗવݴޠॲཧɾػցֶशΛར༻ͨ͠ػೳͱ͸ૄ݁߹Λอͭ

    View Slide

  63. Learner
    • ֶश༻σʔληοτΛجʹɺ֤छϞσϧΛ

    ߏங͢Δ
    • ֶशΛऴ͑ͨϞσϧ͚ͩͰͳ͘લॲཧͷ

    ύΠϓϥΠϯ΋γϦΞϥΠζ͢Δ
    • ֶश࣌ͱಉ͡લॲཧΛ༧ଌ࣌ʹ࠶ݱ͢Δ

    ͨΊ

    View Slide

  64. Predictor
    • Collector ޲͚ʹɺ༩͑ΒΕͨ୳ࡧ৘ใ͕୺ॹ৘ใͰ͋Δ֬
    ཰Λ༧ଌ͢Δ API Λ HTTP Ͱఏڙ͢Δ
    • ֶशࡁΈͷϞσϧͱલॲཧͷύΠϓϥΠϯΛϝϞϦ্ʹϩʔ
    υͯ͠ར༻͢Δ
    • ࣮ࡍʹ༧ଌॲཧ͕ඞཁͳΞϓϦέʔγϣϯ͔Β༧ଌػೳΛ੾
    Γ཭ͯ͠ஔ͘͜ͱͰɺΞϧΰϦζϜͷ੾Γସ͑Λ༰қʹ͢Δ
    • API Λܦ༝͢Δ͜ͱͰɺ༧ଌʹ͔͔ΔϨΠςϯγ͕एׯѱ
    Խ͢ΔσϝϦοτ͕ੜ͡Δ

    View Slide

  65. ͓͢͢ΊͷҰ࡭

    View Slide

  66. ϓϩϏδϣχϯάɾσϓϩΠ
    • Docker / Kubernetes Λར༻͢Δ
    • ಛʹࣗવݴޠॲཧɾػցֶशͷػೳΛ׆༻ͨ͠ΞϓϦέʔγϣ
    ϯ͸ɺ։ൃͱϓϩμΫγϣϯͷ؀ڥࠩҟͰ໰୊ΛҾ͖ى͔͜͠
    Ͷͳ͍
    • ֤छػցֶशϥΠϒϥϦΛϓϩϏδϣχϯάࡁΈͷ Docker Π
    ϝʔδ͔ΒɺΞϓϦέʔγϣϯͷ Docker ΠϝʔδΛ࡞੒͢Δ
    • ༨ஊ: Python ͷެࣜ Docker ΠϝʔδΛར༻͢Δ৔߹͸ alpine
    ΑΓ debian (jessie ͳͲ) ͕͓͢͢Ί

    View Slide

  67. CloudSQL instance
    Kubernetes cluster
    Collector
    Predictor
    Web console

    View Slide

  68. কདྷͷల։
    • ୳ࡧ৘ใͷΧόϨοδ֦େ
    • Twitter Ҏ֎ͷൃ৴ഔମ͔Β΋୳ࡧ৘ใΛऩू͢Δ
    • ܧଓతͳϞσϧͷ࠶ֶश
    • ϑΝΫτνΣοΧʔʹΑΔΞϊςʔγϣϯ݁ՌͷϑΟʔυόοΫ
    • ༧ଌਫ਼౓ͷϞχλϦϯά
    • ֶश࣌ͷධՁϝτϦΫε
    • Ξϊςʔγϣϯ݁ՌʹΑΔ࣮ࡍͷ༧ଌਫ਼౓
    • Ώ͘Ώ͘͸ϑΝΫτνΣοΫͷݕূ࡞ۀ (༧උௐࠪɾຊௐࠪ) ࣗମ΋ࢧԉ͍ͨ͠

    View Slide

  69. ࠷ޙʹ

    View Slide

  70. http://fij.info/chuck-in

    View Slide

  71. Thank you!

    View Slide