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

MIROSTAT で意外さを コントロールした文章生成

MIROSTAT で意外さを コントロールした文章生成

NLP Hacks vol.2 の LT 資料です。

Ryokan RI

March 07, 2022
Tweet

More Decks by Ryokan RI

Other Decks in Technology

Transcript

  1. ࣗવݴޠॲཧͱ͸ɺࣗવݴޠΛॲཧ͢Δٕज़Ͱ͋Δɻ ࣗવݴޠॲཧͱ ͸ɺࣗવݴޠΛॲཧ͢Δٕज़Ͱ͋Δɻ ࣗવݴޠॲཧͱ͸ɺࣗવݴޠΛ ॲཧ͢Δٕज़Ͱ͋Δɻ ࣗવݴޠॲཧͱ͸ɺࣗવݴޠΛॲཧ͢Δٕज़Ͱ ͋Δɻ ࣗવݴޠॲཧͱ͸ɺࣗવݴޠΛॲཧ͢Δٕज़Ͱ͋Δɻ ࣗવݴޠ ॲཧͱ͸ɺࣗવݴޠΛॲཧ͢Δٕज़Ͱ͋Δɻ

    ࣗવݴޠॲཧͱ͸ɺࣗવ ݴޠΛॲཧ͢Δٕज़Ͱ͋Δɻ ࣗવݴޠॲཧͱ͸ɺࣗવݴޠΛॲཧ͢Δ ٕज़Ͱ͋Δɻ ࣗવݴޠॲཧͱ͸ɺࣗવݴޠΛॲཧ͢Δٕज़Ͱ͋Δɻ ࣗ વݴޠॲཧͱ͸ɺࣗવݴޠΛॲཧ͢Δٕज़Ͱ͋Δɻ ࣗવݴޠॲཧͱ ͸ɺࣗવݴޠΛॲཧ͢Δٕज़Ͱ͋Δɻ ࣗવݴޠॲཧͱ͸ɺࣗવݴޠΛ ॲཧ͢Δٕज़Ͱ͋Δɻ ࣗવݴޠॲཧͱ͸ɺࣗવݴޠΛॲཧ͢Δٕज़Ͱ ͋Δɻ ग़ྗྫ rinna/japanese-gpt2-medium {“num_beams”: True}
  2. ࣗવݴޠॲཧͱ͸ɺਓؒͷࣗવݴޠσʔλΛऩू͠ɺਪ࿦ΞϧΰϦζ ϜΛߏங͢Δ͜ͱɻ ਓ͕ؒձ࿩Λೝࣝɾݕࡧ͢Δࡍʹ͸ɺݴޠʹม ׵͞ΕΔ(ม׵ର৅ͷݴ༿)ɻ ӳޠ͸ɺෳ਺ͷޠΛؚΉಈࢺ͕͍ͭ͘ ͔ଘࡏ͕ͨ͠ɺӳޠ͸͜ΕΒΛಈࢺͱͯ͠ѻ͏ɻ ·ͨʮʙʙ͢Δʯ ͱ͍ͬͨӳޠΛɺ೔ຊޠͱΑ͘ࣅ͍ͯΔ୯ޠΛ༻͍Δɻ ·ͨ೔ຊޠ ͸ɺ୯ޠ͕୯ޠͷͭͳ͕ΓͰ۠੾ΒΕ͍ͯΔ͕ɺӳޠ͸۠੾Ε͓ͯΒ

    ͣɺ·ͨҙຯ͕ҧ͏৔߹͕͋Δɻ ྫ͑͹ʮʙ͠ʯͰ༗໊ͳΞϝϦΧ ӳޠɺΞϝϦΧӳޠΛʮseeʯͱ͍͏ͱɺʮseeʯͱʮseeʯͷൃԻ ͕ҧ͍ɺʮseeʯ͕ʮ-ʯʮ-seeʯʹͳΔɺͳͲ͕͋Δɻ ·ͨɺݴ ༿ͷ੒Γ্ཱͪɺಉ͡ݴޠͰ΋ҟͳΔҙຯΛ΋ͭ΋ͷ͕ଘࡏ͢Δɻ ग़ྗྫ rinna/japanese-gpt2-medium {“do_sample”: True}
  3. ࣗવݴޠॲཧͱ͸ɺࣗવݴޠॲཧͱ͸ɺࣗવݴޠ͔Β௚઀ϓϩάϥϜ Λߏ੒͠ɺ֤छूܭ݁Ռ(ίϝϯτɺίϝϯτೖྗͷॲཧ)Λϓϩάϥ Ϝʹݻ༗ͷ໊લΛ͚ͭͯอଘ͠ɺ͔ͦ͜Βݺͼग़͞Ε࣮ͨߦϓϩάϥ Ϝ͸ࣗಈతʹϓϩάϥϜͷ࣮ߦ݁ՌʹదԠ͢Δ͜ͱ͕Ͱ͖Δ͜ͱͰ͋ Δɻ ݴޠॲཧɺࣗવݴޠॲཧ͸େ͖͘෼͚ͯ4ͭͷ෼໺ʹஔ͔Ε Δɻ 1ͭ໨͸ʮݴޠॲཧʯͰ͋Γɺ͜Εʹؔ͢Δઐ໳༻ޠͱͯ͠ʮࣗ વݴޠॲཧʯ(nlog)ͱ͍͏ݺশ͕༻͍ΒΕΔɻ ֎෦΁ͷग़ྗΛॲཧ

    ͢Δݴޠॲཧɺ৘ใͷத͔Β৘ใͷσʔλΛ෼ੳ͢Δݴޠॲཧɺػց ֶशɺ͞ΒʹσʔλϕʔεΛ࡞Δͱ͖ͷ͋Δछͷapiʹա͗ͳ͍γε ςϜݴޠ͕͋Δɻ 2ͭ໨͸ʮݴޠॲཧʯͰ͋Γɺ͜͜Ͱ͸೔ຊޠΛओ ͱͨ͠ݴޠΛॲཧ͢ΔݴޠॲཧΛࢦ͢ɻ ग़ྗྫ rinna/japanese-gpt2-medium {“do_sample”: True, “top_k”: 800}
  4. 🙆 ྑ͍ͱ͜Ζ • ଟ༷ͳจষΛੜ੒͢Δ͜ͱ͕Ͱ͖Δɻ • ֬཰ͷ௿͍બ୒ࢶΛ੾ΓࣺͯΔͷͰɺ׬શͳϥϯμϜΑΓ͔͸ Ұ؏ੑͷ͋Δ΋ͷΛੜ੒͢Δɻ 🙅 ѱ͍ͱ͜Ζ •

    Ͳ͏΍ͬͯ k ΛબΜͰ͍͍͔Α͘Θ͔Βͳ͍ɻ • k ʹΑͬͯ͸ɺ֬཰ͷ௿͗͢Δબ୒ࢶ͕࢒Δ͜ͱʹͳΔɻ Top-k sampling ͷಛ௃
  5. ࣗવݴޠॲཧͱ͸ɺίϯϐϡʔλʔʹݴ༿΍ݴ༿ͷҙຯΛਪ࿦͞ ͤΔΑ͏ʹϓϩάϥϜ͢Δ͜ͱɻ ਓ͕ؒࣗવʹߦ͍ͬͯΔΑ͏ ʹɺػց͕ίϯϐϡʔλʔͷࢥߟͷσʔλΛૢ࡞͢Δͷʹ͸ɺί ϯϐϡʔλ্ͰਓؒͷΑ͏ͳߦಈΛ͢Δਓ޻஌ೳͳͲ͕ඞཁʹͳ Δɻ ࣗવݴޠॲཧ͸ɺओʹਓ͕ؒߦ͏ʮߟ͑Δʯ͜ͱΛαϙʔτ ͢ΔΑ͏ʹ։ൃ͞Εͨɻ ྫ͑͹ɺจষ΍ਤܗͷσʔλΛίϯ ϐϡʔλʹॲཧͤ͞ΔͱɺͦͷσʔλΛίϯϐϡʔλʹอଘ͠

    ͯɺ͋ͱ͸ਓؒͷΑ͏ʹػց͕উखʹॲཧ͢Δɻ ίϯϐϡʔλͰ ਓؒͷΑ͏ͳ͜ͱΛ͢Δͱɺίϯϐϡʔλ͕ͦͷϓϩάϥϜΛ࣮ ߦ͢Δͨͼʹͦͷσʔλ͕ॻ͖׵͑ΒΕͯ͠·͏ͷͰɺਓؒ͸ਓ ؒͱͯ͠ػցʹ໋ྩ͢Δ͜ͱ͸Ͱ͖ͳ͘ͳΔɻ ग़ྗྫ rinna/japanese-gpt2-medium {“do_sample”: True, “top_p”: 0.9}
  6. Top-k vs. Top-p Top-k sampling Top-p sampling ෼෍ͷܗʹ߹Θͤͯ બ୒ࢶΛௐ੔ͯ͘͠ΕΔɻ ͲΜͳ෼෍Ͱ΋ಉ͡

    top-kɻ → ྑ͍બ୒ࢶΛऔΓಀ͕ͨ͠Γɺ ѱ͍બ୒ࢶΛؚΊͯ͠·͏Մೳੑ ͕͋Δɻ
  7. จϨϕϧͷ surprisal ͸֤୯ޠͷ surprisal ͷฏۉɻ Surprisal ͱ͸ʁ S(X) = −

    1 n n ∑ t log pLM (xt |x<t ) X = {x1 , . . . , xn }
  8. ͳͥ surprisal Λίϯτϩʔϧ͍ͨ͠ͷ͔ʁ จষͷ suprisal ͕௿͗͢Δͱ… ⤵ • ͋Γ͖ͨΓͳ಺༰ʹͳΓ͕ͪ •

    ୯ޠͷ܁Γฦ͕͠ݱΕΔΑ͏ʹͳΔ จষͷ suprisal ͕ߴ͗͢Δͱ… ⤴ • શମͷҰ؏ੑ͕ଛͳΘΕ͕ͪ
  9. Ϟσϧ͸ rinna/japanese-gpt2-mediumɻ จ຺ͱͯ͠ҎԼͷจষΛ࠷ॳʹϞσϧʹೖྗ͢Δɻ ͍Ζ͍Ζੜ੒ͯ͠ΈΔ 第2次⼤戦中 、英国 ・ ⾳声通信 暗号化 取

    組 、⽶国 暗号理論 ⼈⼯知能 研究 先 。 電信電話 時代 、情報 統計分析 基 、帯域幅 拡⼤ CD、DVD、 放送 可能 、 上 世界 広 理論的 ⽰ 。
  10. top-p sampling (p = 0.7) ࠷ॳ͸͍͍ײ͕ͩ͡… 、次 述 。「通信 ⾼速

    性 、仮想的 ⼈間 能⼒ 限界 超 。 、 能⼒ 、⼈間 知性 超 」。 研究 、⾳声認識 画像認識 実験的 ⾏ 、 分野 応⽤可能 ⼈⼯知能(ai) 提⽰ 。 surprisal 100 step ʹΘͨΔ Ҡಈฏۉ஋ ʢ ) time step
  11. top-p sampling (p = 0.7) surprisal ͕௿͘ͳΔͱ୯ޠΛ܁Γฦ͢Α͏ʹͳΔ 、 、⼈間 理解

    超 、⼈間 知性 超 、 述 。 、 、⼈間 理解 超 、⼈間 知性 超 、 述 。 、⼈⼯知能(ai) 、 surprisal 100 step ʹΘͨΔ Ҡಈฏۉ஋ ʢ ) time step
  12. top-p sampling (p = 0.9) ࠷ॳ͸τϐοΫʹԊ͍ͬͯΔ͕… surprisal 100 step ʹΘͨΔ

    Ҡಈฏۉ஋ ʢ ) time step 、 基盤 普及 、世界中 情報 ⼊ 来 、⼈間 情報 分 合 問題(複⾏性) 発⽣ 。
  13. top-p sampling (p = 0.9) ޙ൒͸΍΍ҧ͏࿩୊ʹ surprisal 100 step ʹΘͨΔ

    Ҡಈฏۉ஋ ʢ ) time step 坂本⽒ 、発電所 ⾵⼒ 太陽光 両⽅ 運 転 、電⼒ 割合 平均1% 以下 落 。 、製造 難 、電⼒会社 安価 「 発電」 採⽤ 。
  14. MIROSTAT ͷΞϧΰϦζϜ ੜ੒͢Δจষ͕ɺશମͱͯ͠ࢦఆͨ͠ surprisal Λ࣋ͭΑ ͏ʹ୯ޠΛग़ྗ͍ͯ͘͠ɻ ͦͷͨΊʹ… • ֤λΠϜεςοϓͰ top-k

    sampling Λ͢Δ͕ɺk Λຖ ճௐ੔͢Δɻ • લͷग़ྗͷ surprisal ʹԠͯ࣍͡ͷ k Λௐઅ͢Δɻ - લʹҙ֎ͳ୯ޠΛग़ͨ͠Β࣍͸͋Γ͖ͨΓͳ΋ͷΛɻ - લʹ͋Γ͖ͨΓͳ୯ޠΛग़ͨ͠Β࣍͸ҙ֎ͳ୯ޠ΋ग़ͤΔΑ͏ʹɻ
  15. ύϥϝʔλ จશମͷ surprisal: ݱλΠϜεςοϓͷ࠷େ surprisal ͷॳظ஋: MIROSTAT ͷΞϧΰϦζϜ ֤λΠϜεςοϓ t

    Ͱ… ᶃ k ൪໨ͷ୯ޠͷ surprisal ͕ ʹͳΔΑ͏ʹ top-k ͷ k Λௐ੔ ᶄ ୯ޠ Λ top-k sampling Ͱग़ྗ ᶅ ͷ surprisal Λ΋ͱʹ Λௐ੔: τ μ0 μt+1 = μt − (S(xt ) − τ) xt μt+1 xt μt
  16. MIROSTAT ͷΞϧΰϦζϜ S(xk t ) ≒ μt xt μt+1 =

    μt − (S(xt ) − τ) ᶃ ᶄ ᶅ
  17. MIROSTAT (target_surprisal=3.0) surprisal 100 step ʹΘͨΔ Ҡಈฏۉ஋ ʢ ) time

    step 1975年 電⼦通信学会(aec) 創⽴ 、 初代会⻑ 。 後1989年 電⼦通信学会 aec 脱退 、2007年 ieee society of computers 。
  18. MIROSTAT (target_surprisal=3.0) surprisal 100 step ʹΘͨΔ Ҡಈฏۉ஋ ʢ ) time

    step 「第2 aec」 構築 計画 、5年後 1999年 ibm aac 、access 「 ・ 」 命名 。 、 、協業 ⽶hp社(現・hp社) 移植 。
  19. • ੜ੒͞Εͨจষͷ surprisal ͸ɺͦͷจষͷಛ௃Λࣔ͢ॏཁͳࢦඪͱͳΔɻ • MIROSTAT ͸ suprisal Λίϯτϩʔϧͯ͠จষΛੜ੒͢Δख๏ɻ •

    top-p ΍ top-k ΑΓ΋ύϥϝʔλͷҙຯ͕௚ײతʹΘ͔Δɻ • ύϥϝʔλΛνϡʔχϯάͯ͠ൺֱ͢ΔͱɺจষͷΫΦϦςΟ͸ top-p sampling ͱେࠩͳ͍ɻ ·ͱΊ
  20. ɾTop-k sampling Hierarchical Neural Story Generation, Angela Fan, Mike Lewis,

    Yann Dauphin, ACL 2018. ɾTop-p (Nucleus) sampling The Curious Case of Neural Text Degeneration, Ari Holtzman, Jan Buys, Li Du, Maxwell Forbes, Yejin Choi, ICLR 2020. ɾMIROSTAT MIROSTAT: A NEURAL TEXT DECODING ALGORITHM THAT DIRECTLY CONTROLS PERPLEXITY, Sourya Basu ~Sourya_Basu1 , Govardana Sachitanandam Ramachandran, Nitish Shirish Keskar, Lav R. Varshney, ICLR 2021. ࢀߟจݙ
  21. ࿦จͷϝΠϯͰઆ໌͞Ε͍ͯΔΞϧΰϦζϜɺ͓Αͼ Github ͷஶऀ࣮૷ Ͱ͸ɺk ͷܭࢉʹ୯ޠͷස౓෼෍͕ zipf ଇʹै͏ͱ͍͏ԾఆΛར༻ɻ ➡︎ ਖ਼௚͜Ε͸ෆඞཁͳԾఆͰɺ࿦จͷઆ໌Λ΍΍͍ͯ͘͜͠͠Δؾ͕… Appendix

    ʹ zipf ଇΛԾఆ͠ͳ͍γϯϓϧͳΞϧΰϦζϜΛࡌ͍ͤͯΔɻ ੑೳ͸ಉ͡ɻϝΠϯͷΞϧΰϦζϜͷํ͕গ͠଎͍ͱ͍͏͕ඍʑͨΔࠩɻ ิ଍ɿMIROSTAT ͷ k ͷܭࢉ