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

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

#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. ԿΛ΍͍ͬͯΔͷ͔ʁ • όοΫΤϯυΤϯδχΞ • ӡ༻ܕ޿ࠂͷ޿ࠂ഑৴γεςϜ • ޿ࠂΦʔΫγϣϯ/ ࠷దԽ໰୊ / ػցֶश

    • A/B ςετ / ෼ੳ • ϑΝΫτνΣοΫࢧԉγεςϜ • ϑϩϯτ / όοΫΤϯυͷΞϓϦέʔγϣϯ࣮૷͔Β
 γεςϜͷӡ༻·Ͱ
  2. HuffPost ͷهࣄ͔ΒͷҾ༻ • “ϋϑϙετ೔ຊ൛Ͱ͸ɺπΠʔτͰڍ͛ΒΕͨશͯͷืۚͷӡӦओମʹऔࡐ͠ ͨ” • “ςϨϏே೔޿ใ෦ࣨ͸ࠓճͷπΠʔτʹ͍ͭͯɺʮ͝ࢦఠͷΑ͏ͳࣄ࣮͸͋Γ· ͤΜʯͱ্ͨ͠Ͱɺ͜͏౴͑ͨɻʮυϥ͑΋Μืۚ͸ɺNTT౦೔ຊ͕ద༻͍ͯ͠ Δࡂ֐ืۚαʔϏεΛར༻͍ͯ͠·͢ɻ࢖్ͳͲʹ͍ͭͯ͸ɺͦͷ౎౓ϗʔϜϖʔ δͳͲͰ͝ใࠂ͍͍͓ͤͯͨͩͯ͞Γ·͢ʯ”

    • “ϑδςϨϏاۀ޿ใࣨ͸ɺʮࠓճى͖ͨ୆࿷஍਒ʹؔͯ͠ɺαβΤ͞Μืۚ͸࣮ ࢪ͓ͯ͠Γ·ͤΜʯͱ্ͨ͠ͰɺFAXจॻͰҎԼͷΑ͏ʹճ౴ͨ͠ɻʮաڈʹ࣮ ࢪͨ͠αβΤ͞ΜืۚͰɺશࠃͷօ༷͔Β͝د෇͍͍ͨͩͨوॏͳืۚ͸ɺશֹ Λ೔ຊ੺ेࣈࣾ΍ެӹࡒஂ๏ਓ೔ຊϢχηϑڠձͳͲʹد෇͓ͯ͠Γ·͢ʯ”
  3. ϑΝΫτνΣοΫͷྲྀΕ ൃ৴৘ใ Πϯλʔωοτ ςϨϏ ϥδΦ ৽ฉʜ ϑΝΫτ νΣοΧʔ ୳ࡧ৘ใ ୺ॹ৘ใ

    ϑΝΫτνΣοΫهࣄ ݕࡧɾϑΟϧλϦϯάʹΑΔऩू ਓखʹΑΔεΫϦʔχϯά ༧උௐࠪɾຊௐࠪɾهࣄԽ
  4. ༻ޠͷఆٛ • ൃ৴৘ใ • ΠϯλʔωοτɺςϨϏɺϥδΦɺ৽ฉͳͲͷൃ৴ഔମΛ௨ͯ͡ਓ ͕ൃ৴ͨ͠৘ใ • ୳ࡧ৘ใ • ൃ৴৘ใΑΓɺ୺ॹ৘ใʹͳΓಘΔ΋ͷͱͯ͠ػցతʹัଊ͞Εͨ

    ৘ใ • ୺ॹ৘ใ • ୳ࡧ৘ใͷ͏ͪɺϑΝΫτνΣοΫͷର৅ͱͳΓಘͳ͍΋ͷ΍ϑΝ ΫτνΣοΫͷඞཁੑ͕ೝΊΒΕͳ͍΋ͷΛ আ֎ͨ͠ ৘ใ
  5. ϑΝΫτνΣοΫۀ຿ʹ͓͚Δ՝୊ • ൃ৴ഔମͱͯ͠Πϯλʔωοτ͚ͩʹண໨ͯ͠΋ɺৗʹଟ͘ͷ৘ใ ͕ൃ৴͞Ε͍ͯΔ • ϑΟϧλϦϯάͰߜΓࠐΉͱ͸ݴ͑Ͳ΋ɺ୳ࡧ৘ใ͸ͦΕͳΓͷن ໛ʹͳΔ • 1 ೔͋ͨΓ

    1 ສ݅Ҏ্ • ୳ࡧ৘ใͷྔʹରͯ͠ɺ୺ॹ৘ใ͸͔ᷮ͘͝Ͱ͋Δ • ୳ࡧ৘ใ 1,000 ݅͋ͨΓ୺ॹ৘ใ͸਺݅ఔ౓ • ୳ࡧ৘ใͷத͔Β୺ॹ৘ใΛ୳͠ग़͢ͷ͸ྔతʹݫ͍͠
  6. ϑΝΫτνΣοΫɾΠχγΞςΟϒ / FIJ • ໨త (http://fij.info/about ΑΓ) • ϑΝΫτνΣοΫͷීٴɺܒൃ౳ʹؔ͢Δࣄ ۀΛߦ͍ɺࣾձʹޡͬͨ৘ใ͕֦͕ΔͷΛ๷

    ͙࢓૊ΈΛ࡞Γɺࢢຽ͕ࣄ࣮ͱҟͳΔ৘ใʹ ࿭Θ͞Εͳ͍Α͏ͳࣾձΛߏங͢Δ͜ͱΛ໨ తͱ͢Δ • ϑΝΫτνΣοΫΛ࣮ࢪ͢ΔओମͰ͸ͳ͍
  7. ϑΝΫτνΣοΫɾΠχγΞςΟϒ / FIJ • ׆ಈํ਑ (هऀձݟ࣌ͷ഑෍ࢿྉ 
 fij.info/archives/news_event/17062201 ΑΓ) •

    ϑΝΫτνΣοΫͷཧղɺख๏ͷڞ༗Խ • ϑΝΫτνΣοΧʔΛࢧԉ͢Δ࢓૊Έͮ͘ Γ
  8. ϑΝΫτνΣοΫࢧԉγεςϜ • 3 ૊৫ʹΑΔڞಉϓϩδΣΫτ • ϑΝΫτνΣοΫɾΠχγΞςΟϒ • ౦๺େֶ סɾԬ࡚ݚڀࣨ •

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

    • ࣗવݴޠॲཧɾػցֶशʹΑΔϑΝΫτνΣοΫۀ຿Λޮ཰Խ ͢ΔΞϧΰϦζϜͷ։ൃ • εϚʔτχϡʔε • ϑΝΫτνΣοΫࢧԉγεςϜͷߏஙɾӡ༻
  10. 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
  11. جຊํ਑ • ೔ຊใಓݕূػߏʹ͓͚ΔϑΝΫτνΣοΫۀ຿ͷϞσϧΛϕʔεͱ͢Δ • ൃ৴ഔମΛΠϯλʔωοτʹݶఆ͠ɺ͞Βʹ Twitter Λσʔλιʔεͱ͠ ͯར༻͢Δ • πΠʔτ͕୳ࡧ৘ใɺ୺ॹ৘ใͱͳΔ

    • Կ͔͠Βͷ URL ʹݴٴɾϦϓϥΠ͍ͯ͠ΔπΠʔτΛऩूର৅ͱ͢Δ • ϑΝΫτνΣοΫର৅͸ Web ্ͷهࣄ (χϡʔε΍ϒϩάɺςΩετίϯ ςϯπͳͲ) ʹݶఆ͢Δ • ಛʹϘτϧωοΫͱͳΔ࡞ۀʹ͍ͭͯɺࣗવݴޠॲཧɾػցֶशΛ׆༻͠ ͨޮ཰ԽΛࢼΈΔ
  12. ࣗવݴޠॲཧɾػցֶशʹΑΔޮ཰Խ • ໨త: 1 ೔͋ͨΓ਺ઍ݅Ҏ্ൃੜ͢Δ୳ࡧ৘ใ (πΠʔτ) ͷεΫ ϦʔχϯάΛޮ཰Խ͍ͨ͠ • ண૝:

    ࣄલʹʮ֬ೝ͢ΔՁ஋ͷ͋Δ୳ࡧ৘ใʯͱͦ͏Ͱͳ͍୳ࡧ ৘ใʹ෼ྨ͔ͯ͠ΒεΫϦʔχϯά͢Ε͹Α͍ͷͰ͸ͳ͍͔ʁ • ࣌ؒతɾਓత༨༟͕͋Δঢ়گͰ͋Ε͹ɺશ݅εΫϦʔχϯά ͢Ε͹Α͍ • ͦ͏Ͱͳ͍ͳΒɺ֬ೝ͢ΔՁ஋ͷ͋Δ୳ࡧ৘ใΛ༏ઌతʹε ΫϦʔχϯά͢Δ
  13. ϑΝΫτ νΣοΧʔ ιʔγϟϧ ϝσΟΞ ᶃऩू ᶄهࣄຖʹ πΠʔτΛू໿ ᶅ༧ଌϞσϧͰ ୺ॹ৘ใ֬཰Λ༧ଌ ɾɾɾ

    ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ᶆ֬཰ॱʹ ιʔτ    ᶇهࣄຖʹ ֬ೝ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ    ᶈ֬ೝ݁ՌΛ ࣍ճͷֶशʹར༻
  14. ϑΝΫτ νΣοΧʔ ιʔγϟϧ ϝσΟΞ ᶃऩू ᶄهࣄຖʹ πΠʔτΛू໿ ᶅ༧ଌϞσϧͰ ୺ॹ৘ใ֬཰Λ༧ଌ ɾɾɾ

    ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ᶆ֬཰ॱʹ ιʔτ    ᶇهࣄຖʹ ֬ೝ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ    ᶈ֬ೝ݁ՌΛ ࣍ճͷֶशʹར༻
  15. લॲཧ • ಛ௃ྔͱͯ͠ར༻Ͱ͖Δͷ͸ςΩετσʔλ (πΠʔτ) ͷ Έ • πΠʔτ͔ΒɺهࣄͷλΠτϧ΍ϋογϡλάͳͲɺϊΠ ζͱͳΓ͏Δ৘ใΛআڈ͢Δ •

    πΠʔτதͷهࣄλΠτϧ͸Ұ෦͕লུ͞Ε͍ͯΔ͜ͱ ΋͋ΔͨΊɺ׬શҰகͰͷআڈ͕೉͍͠ • ۙࣅจࣈྻর߹ΞϧΰϦζϜʹΑΓɺҰఆͷฤूڑ཭Ҏ ԼͷྨࣅจࣈྻΛݕग़ͯ͠আڈ͢Δ
  16. લॲཧ • ܗଶૉղੳثͰ෼͔ͪॻ͖ & ݪܗʹஔ׵͢Δ • ܗଶૉղੳث: MeCabɺࣙॻ: NEologd •

    Ұ෦ޠ۟ (৽ฉ໊ࣾͳͲ) Λআڈ͢Δ • ෼͔ͪॻ͖݁ՌΛಛ௃ϕΫτϧͱͯ͠දݱ͢Δ • ผ్ֶशͨ͠ Word2Vec ϞσϧͰ embedding ͢Δ • Word2Vec ͷֶशʹ͸ gensim Λར༻͢Δ
  17. ֶश / ༧ଌ • LSTM (Long short-term memory) Λ༻͍ͨ
 ༧ଌϞσϧΛߏங͢Δ

    • DNN ϑϨʔϜϫʔΫ͸ Keras / TensorFlow Λར༻͢Δ • ग़ྗ૚͸ softmax ͱ͢Δ
  18. ֶश / ༧ଌͷॲཧύΠϓϥΠϯ ֶशσʔλ 8PSE7FD༻  ֶशσʔλ ༧ଌϞσϧ༻ ෼͔ͪॻ͖ .F$BC

    &NCFEEJOH ༧ଌ ༧ଌର৅ͷ σʔλ ֶश ֶश 8PSE7FD Ϟσϧ ༧ଌϞσϧ -45.ˠ TPGUNBY ༧ଌ݁Ռ ֶशϑΣʔζ ༧ଌϑΣʔζ
  19. ϑΝΫτ νΣοΧʔ ιʔγϟϧ ϝσΟΞ ᶃऩू ᶄهࣄຖʹ πΠʔτΛू໿ ᶅ༧ଌϞσϧͰ ୺ॹ৘ใ֬཰Λ༧ଌ ɾɾɾ

    ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ᶆ֬཰ॱʹ ιʔτ    ᶇهࣄຖʹ ֬ೝ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ    ᶈ֬ೝ݁ՌΛ ࣍ճͷֶशʹར༻
  20. ϑΝΫτ νΣοΧʔ ιʔγϟϧ ϝσΟΞ ᶃऩू ᶄهࣄຖʹ πΠʔτΛू໿ ᶅ༧ଌϞσϧͰ ୺ॹ৘ใ֬཰Λ༧ଌ ɾɾɾ

    ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ᶆ֬཰ॱʹ ιʔτ    ᶇهࣄຖʹ ֬ೝ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ ɾɾɾ    ᶈ֬ೝ݁ՌΛ ࣍ճͷֶशʹར༻ Collector Web console Predictor Learner
  21. Collector • Twitter API (REST / Streaming) Λར༻ͯ͠୳ࡧ৘ใ (πΠʔτ) Λऩू͢Δ

    • ٙٛΛࣔࠦ͢ΔΩʔϫʔυ (ӕ, ϑΣΠΫ, σϚ, ͳͲ) Λࢦఆͯ͠ Streaming API Ͱৗ࣌औಘ͢Δ • ৽ฉࣾɺWeb ϝσΟΞͷެࣜΞΧ΢ϯτ͔ΒൃͤΒΕΔهࣄʹର͢Δ
 ϦϓϥΠΛ REST API Ͱఆظతʹऔಘ͢Δ • πΠʔτʹؚ·ΕΔ URL Λḷͬͯهࣄͷϝλσʔλ (OGP ͳͲ) Λऩू͢Δ • ୺ॹ৘ใͰ͋Δ֬཰ͷ༧ଌ͸ Predictor ͷ Web API ܦ༝Ͱ࣮ݱ͢Δ • ࣗવݴޠॲཧɾػցֶशΛར༻ͨ͠ػೳͱ͸ૄ݁߹Λอͭ
  22. Predictor • Collector ޲͚ʹɺ༩͑ΒΕͨ୳ࡧ৘ใ͕୺ॹ৘ใͰ͋Δ֬ ཰Λ༧ଌ͢Δ API Λ HTTP Ͱఏڙ͢Δ •

    ֶशࡁΈͷϞσϧͱલॲཧͷύΠϓϥΠϯΛϝϞϦ্ʹϩʔ υͯ͠ར༻͢Δ • ࣮ࡍʹ༧ଌॲཧ͕ඞཁͳΞϓϦέʔγϣϯ͔Β༧ଌػೳΛ੾ Γ཭ͯ͠ஔ͘͜ͱͰɺΞϧΰϦζϜͷ੾Γସ͑Λ༰қʹ͢Δ • API Λܦ༝͢Δ͜ͱͰɺ༧ଌʹ͔͔ΔϨΠςϯγ͕एׯѱ Խ͢ΔσϝϦοτ͕ੜ͡Δ
  23. ϓϩϏδϣχϯάɾσϓϩΠ • Docker / Kubernetes Λར༻͢Δ • ಛʹࣗવݴޠॲཧɾػցֶशͷػೳΛ׆༻ͨ͠ΞϓϦέʔγϣ ϯ͸ɺ։ൃͱϓϩμΫγϣϯͷ؀ڥࠩҟͰ໰୊ΛҾ͖ى͔͜͠ Ͷͳ͍

    • ֤छػցֶशϥΠϒϥϦΛϓϩϏδϣχϯάࡁΈͷ Docker Π ϝʔδ͔ΒɺΞϓϦέʔγϣϯͷ Docker ΠϝʔδΛ࡞੒͢Δ • ༨ஊ: Python ͷެࣜ Docker ΠϝʔδΛར༻͢Δ৔߹͸ alpine ΑΓ debian (jessie ͳͲ) ͕͓͢͢Ί
  24. কདྷͷల։ • ୳ࡧ৘ใͷΧόϨοδ֦େ • Twitter Ҏ֎ͷൃ৴ഔମ͔Β΋୳ࡧ৘ใΛऩू͢Δ • ܧଓతͳϞσϧͷ࠶ֶश • ϑΝΫτνΣοΧʔʹΑΔΞϊςʔγϣϯ݁ՌͷϑΟʔυόοΫ

    • ༧ଌਫ਼౓ͷϞχλϦϯά • ֶश࣌ͷධՁϝτϦΫε • Ξϊςʔγϣϯ݁ՌʹΑΔ࣮ࡍͷ༧ଌਫ਼౓ • Ώ͘Ώ͘͸ϑΝΫτνΣοΫͷݕূ࡞ۀ (༧උௐࠪɾຊௐࠪ) ࣗମ΋ࢧԉ͍ͨ͠