More Related Content
Similar to ChatGPTの仕組みの解説と実務でのLLMの適用の紹介_latest.pdf
Similar to ChatGPTの仕組みの解説と実務でのLLMの適用の紹介_latest.pdf (20)
ChatGPTの仕組みの解説と実務でのLLMの適用の紹介_latest.pdf
- 1. © DeNA Co., Ltd. 1
ChatGPTの仕組みの解説と
実務でのLLMの適用の紹介
小林 銀兵
DeNA データ統括部 データサイエンス・マーケティングコミュニティグループ
- 2. © DeNA Co., Ltd. 2
自己紹介
キャリア
- 大手検索ポータル → 大手広告代理店 → DeNA(現職)
趣味
- SNS・ブログでの発信が趣味であったが、子供が生まれてからそちらに注力
DeNAでの仕事
- マーケティングをデータサイエンスでブースト
- LLMの以外にデータサイエンスでサポートできる領域は多岐に渡る
- 4. © DeNA Co., Ltd. 4
アイスブレイク
みなさんChatGPTや画像生成AIを使用していますか?
ChatGPTを使用している人はどのユースケースですか?
- レポート
- 学業に関する調査
- その他
画像生成AIを使用している人はどのユースケースですか?
- 個人・サークルなどでの使用
- その他
- 5. © DeNA Co., Ltd. 5
テキスト生成AIは便利
- 非常に便利に使える
- 文章生成AIは膨大なネット情報の文章を学習し、人間の評価を最大化するように調整さ
れたAI
- 常に客観的事実に基づいた正しいことを出力するわけではない
客観的な正しさ ≠ インターネット上の情報 + 人間の評価
- 6. © DeNA Co., Ltd. 6
現代はAIが流行って以来のブーム
- 現代は(産業的な側面で)ディープラーニングが登場して以来のAIブーム
- Google Trend, プレスリリースの分析からわかる
- 生成AIの登場により、AI関連の産業は過去ないほど高い勢いで拡大
- みなさんが研究おいても社会に出たとしても関わってくるだろう技術
- ChatGPTの仕組みの解説、関連する技術の紹介、LLMのDeNAでの適用例をお
伝えするのでぜひご自身の経験にお役立てください
- 7. © DeNA Co., Ltd. 7
RNNの限界とtransformerの登場
- RNNの限界
- RNNの仕組みは簡単な自己回帰型のモデルとして考えられる
- RNNはその系列が長くなればなるほど昔の情報は考慮され無くなる
- 何度も回帰している間に情報が消えてしまう勾配消失現象
図1. RNNよる勾配消失が発生する例
- 8. © DeNA Co., Ltd. 8
RNNの限界とtransformerの登場
- Transformerの登場
- Transformerを構成する中核の技術にattentionというものがあります
- attentionは長期的な関係を捉えることができるようなネットワーク
A. Vaswani, et all. Advances in Neural Information Processing
Systems , page 5998--6008. (2017)
図2. transformerのアーキテクチャ図
- 9. © DeNA Co., Ltd. 9
RNNの限界とtransformerの登場
- attentionの説明
- key, query, valueという3つの要素に分解
- keyとは今までの文章を単語単位で示すベクトル
- queryはある特定の単語のベクトル
- queryとkeyの内積を取るとどこに何をどれだけ着目すればいいかの重みが得られる
- 余談ですがこれは検索エンジンの仕組みとほぼ同一
- この重みをsoftmaxを取って正規化して、valueに掛けることでどの単語をどれだけ強調して参
照すればいいかがわかる
- このvalueの重みをすべて足すことで次にどの単語を予測すればいいかの精緻な情報が得られる
- 10. © DeNA Co., Ltd. 10
RNNの限界とtransformerの登場
RNNに比べて長期の情報を参照することができ、自然言語処理のブレークスルーになった技術
図3. attentionのデータフロー
- 11. © DeNA Co., Ltd. 11
ChatGPTの学習の仕組み
- ChatGPTの学習の4つのプロセス
- GPTモデルを作成
- 教師ありのファインチューニング
- リワード(報酬)モデルの作成
- RLHF(Reinforcement Learning from Human Feedback)の実行
図4. openaiの論文で記された学習プロセス
Ouyang, Long, et al. "Training language models to follow instructions with human feedback."
Advances in Neural Information Processing Systems 35 (2022): 27730-27744.
- 12. © DeNA Co., Ltd. 12
GPTモデルを作成/ChatGPTの学習の仕組み
インターネット上のテキスト情報を学習させる
- 自己教師あり学習という手法
- あるテキストが与えられ、次の単語を予測するというタスクを与える
図5. GPTモデルの推論の概要図
- 13. © DeNA Co., Ltd. 13
教師ありのファインチューニング/ChatGPTの学習の仕組み
期待する応答のテキストでファインチューニング
- これも自己教師あり学習
- 人間が応答(Chatのような)ユースケースで質問とそれに対する期待する回答のペアをた
くさん学習させる
図6. 教師ありのファインチューニングの例
- 14. © DeNA Co., Ltd. 14
リワード(報酬)モデルの作成/ChatGPTの学習の仕組み
リワード(報酬)モデルの作成
- ChatGPTのモデルとは別に人間の評価をまねるモデルの作成
- GPT-3
- リワードモデルは入力に質問と回答をペアで用意する
- 一つの質問に対して複数の回答のペアがある
- 一つの質問の中で複数の回答を与え、どの順序が最適な評価かを学習するランク学習が用いら
れる
ListWiseの損失: 実際のランクと、推論したランクの距離が損失となる
(実際はcombinationを用いた別の損失を用いているが簡略化のため)
- 15. © DeNA Co., Ltd. 15
リワード(報酬)モデルの作成/ChatGPTの学習の仕組み
ランク学習とは
- 同じインスタンス間(ChatGPTの文脈だと同じ質問)で複数の回答に対してランキング
を学習する方法
- 人間が考える正解の並び順には真実性、無害性、有益性がある
図7. ランクの推論の様子
- 16. © DeNA Co., Ltd. 16
RLHFを行う①/ChatGPTの学習の仕組み
RLHF(Reinforcement Learning from Human Feedback)を行う
- リワードモデルを用いて、ChatGPTとして使う予定のモデルを学習
- 基本的な学習フロー
- 質問に対してChatGPTが回答
- 質問とChatGPTの回答を入力に、リワードモデルが値を計算
- リワードモデルの値を報酬としてChatGPTを強化学習
- 評価モデル、評価を最大化するモデルの組み合わせて学習させると、指標を最大化して
しまう簡単な出力に落ち着いてしまう
- PPO(Proximal Policy Optimization)という仕組みを導入
- 17. © DeNA Co., Ltd. 17
RLHFを行う②/ChatGPTの学習の仕組み
PPO(Proximal Policy Optimization)の仕組み
- ChatGPTを学習する前のモデルをA, 学習中のモデルをBがあるとき、AとBの出力する文
章の確率分布に大きな差がないこと
- AとBの確率分布の距離を測るにはKLダイバージェンスが用いられる
- KLダイバージェンスが大きくなりすぎないように、報酬に対してペナルティを加える
- 18. © DeNA Co., Ltd. 18
まとめ/ChatGPTの学習の仕組み
ChatGPTのモデルのまとめ
- 人間の評価した並び順に従ってリワードモデルが学習され、それを用いて
ChatGPTが強化学習で作成される流れ
- しかし、リワードモデル作成時に人間は真実性を考慮しているが、複数ある判
断基準の一つ + AIには客観的にそれが真実か確認する方法はない
- 必ずしも正しいことを出力するわけではない事がわかると思います
- 19. © DeNA Co., Ltd. 19
LoRAの仕組み①
- 画像生成AIを触ったことがある人はわかるかと思いますが、モデルの拡張機能的なもの
- 元々は年々巨大になるLLMのモデルを効率的に学習する仕組み
- 元のモデルとは別に配布可能なので、画像生成AI用のLoRAのウェイトの配信サイトがあ
る
図8. 配信サイトでは特定のメイク、人物、アニメキャラクター、ゲームなどを
学習したウェイトが公開されている
- 20. © DeNA Co., Ltd. 20
LoRAの仕組み②
- 青が元のモデルで、オレンジの部分がLoRA
- 低い次元の情報に一回要約して、再学習したときの効果をシミュレートする
- 再学習は定式化すると、元のWに対して、何
らかの差分を発生させること
- 差分を作ることだけに着目すれば、LoRAのよ
うなアダプタのような使い方でも同様である
- LoRAのパラメータ数は元のLLM(画像生成AI)
に対して少ない
図9. LoRAの概要図
Hu, Edward J., et al. "Lora: Low-rank adaptation of large language models." arXiv
preprint arXiv:2106.09685 (2021).
- 21. © DeNA Co., Ltd. 21
LoRAの仕組み③
- GPT-3の実験では、通常の再学習と同等かそれ以上の性能
Hu, Edward J., et al. "Lora: Low-rank adaptation of large language models." arXiv preprint arXiv:2106.09685 (2021).
表1. 各再学習の手法のパフォーマンスとパラメータの関係
- 22. © DeNA Co., Ltd. 22
LLMの推論の仕組み①
- 一般的にディープラーニングモデルがどのように推論しているのかをお伝えします
- open.aiのAPIの引数の項目の解説
図10. openaiのChatGPTへのリクエストの関数の例
- 23. © DeNA Co., Ltd. 23
LLMの推論の仕組み②
- Tokenizerが対応している単語表現に対してすべての出力をsoftmaxを取る
- tempertureはsoftmax関数に温度の概念を導入するもの
表2. Tを変化させたときのsoftmax関数の出力の違い
- 24. © DeNA Co., Ltd. 24
LLMの推論の仕組み③
top_pという指標
- 確率の高いものから累計してp%のものまでを選択されるターゲットとする方法
図11. top_pを設定しての推論のイメージ図
- 25. © DeNA Co., Ltd. 25
LLMの推論の仕組み④
beam searchについて
図12. Beam searchを用いての推論のイメージ図
- 27. © DeNA Co., Ltd. 27
DeNAでのマーケ事業の紹介
● Google Adsのインハウス運用
○ 一部のアプリ・ゲームの広告を内製で運用している
○ 代表的な広告の一つにGoogle App広告
広告主が入稿した画像・動画・テキス
トを組み合わせ、最大のパフォーマン
スとなる配信を自動的に行う
- 28. © DeNA Co., Ltd. 28
DeNAでのマーケ事業の紹介
● Google App広告とは
○ 広告主は 画像, ショートテキスト, 動画などの素材を提供
○ Googleの最適化アルゴリズムが最適な組み合わせを行う
○ 検索、Display、YouTubeなど多くの配信面に適応可能
● 素材は個々にパフォーマンスが測定される
○ パフォーマンスが高いテキスト、低いテキストがある
● よいテキストクリエイティブとは
○ トレンドの情報を持ったクリエイティブ
■ e.g. ハロウィンの時期なら、”ハロウィンに一人でも寂しくない!”
- 29. © DeNA Co., Ltd. 29
DeNAでのマーケ事業の紹介
● クリエイティブには鮮度が存在する
○ 同じクリエイティブでずっと高いパフォーマンスは維持できない
○ 数十のクリエイティブを配信し、週に一回パフォーマンスが低いクリエイ
ティブを数個入れ替える運用
● 今までのテキストクリエイティブの作り方
○ 複数人であつまってブレスト
■ 人的コストが高い
■ 4~5名程度で考えるので、多様性に限界
- 30. © DeNA Co., Ltd. 30
GPTを用いた広告文生成の紹介
● GPTとは
○ Generative Pre-trained Transformerの頭文字
○ ChatGPTなどが最近は有名
○ テキストを生成することが得意
● GPTの特徴
○ プロンプトと呼ばれる少ない情報に基づき、生成を行うことができる
■ 画像だとMidjourneyなどの生成AIに通じるものがある
- 31. © DeNA Co., Ltd. 31
GPT2を用いた広告文生成の紹介
● Pre-trainedモデルを利用する際の注意点
○ モデルのライセンス
○ モデルに入力するデータと出力物の適切性・著作権
■ 適切性とは、出力物が誰かの権利を侵害したりしないこと
● DeNAで利用する際に気をつけている点
○ 出力物のチェック
■ 関連業界を熟知した社内の運用者の確認と修正
- 32. © DeNA Co., Ltd. 32
GPT2を用いた広告文生成の紹介
ChatGPTでプロントと出力の関係
プロンプト
AIの出力
- 33. © DeNA Co., Ltd. 33
GPT2を用いた広告文生成の紹介
● Human-in-the-Loop
○ 完全なオートメーションではなく、人間が介入する
■ 生成物の確認・評価と同時に、アノテーションを行う役割も
- 34. © DeNA Co., Ltd. 34
GPT2を用いた広告文生成の紹介
● トレンドの計算
○ Twitterトレンドの課題点
■ 2文字のトレンドを取得できない
■ トレンドの時間粒度が細かすぎ意図しない単語が交じる
○ キャンペーンや意図しないバイアスを受けないトレンドの計算の必要
- 35. © DeNA Co., Ltd. 35
GPT2を用いた広告文生成の紹介
● トレンドの計算の具体例
表1. 10月後半から12月前半までの週毎のトレンドとその偏差値
- 36. © DeNA Co., Ltd. 36
GPT2で文章を作成するアプローチ
● プロンプトを使用したアプローチ
○ モデルに対してヒントとなる文章を与えて、続きを生成
○ メリット
■ 少ないサンプルでも生成が可能
○ デメリット
■ 一般化したモデルなので、意図しない例外を起こしやすい
● 再学習を行うアプローチ
○ メリット
■ 専用のモデルを作成可能
○ デメリット
■ 再学習を行えるぐらいのデータ量が必要
用意できるデータの観点から、プロンプトを使用した
アプローチを行った
- 37. © DeNA Co., Ltd. 37
GPT2で文章を作成するアプローチ
● 具体的なプロンプトによる生成手順(1)
○ シードとなるキーワードとクリエイティブの対応を作成
○ ランダムで5件の対応を取得し、プロンプトとする
■ 多様性と正確性の観点から
サンプリング
プロンプト化
キーワードの付与
クリスマス
- 38. © DeNA Co., Ltd. 38
GPT2で文章を作成するアプローチ
● 具体的なプロンプトによる生成手順(2)
○ 作成したプロンプトをGPTに入力し、?の部分を推論する
- 39. © DeNA Co., Ltd. 39
GPT2で文章を作成するアプローチ
● プロンプトとして入力する文章の最適量が存在
○ ブートストラップ法でパラメータの分布を求めるイメージと近い
○ 少なすぎるサンプル
■ 多様性が高いが真値と遠い
○ 多すぎるサンプル
■ 多様性が減るが真値に近い
● 5つのプロンプトが多様性・文章の正確性で最適
1 ~ 10の値を与え、復元抽出を繰り返しサンプルして平均を求めた例
K = 3 K = 8
- 40. © DeNA Co., Ltd. 40
定性評価
● プロンプト・モデルのチューニングする際に確認した視点
○ 文章として破綻していないか
■ 文章作成時の尤度のしきい値調整
■ 繰り返しの表現をできるだけ使用しない
■ 適切な長さのプロンプト
○ 意外性は高いか
■ 人間ができるだけ思いつかないような表現を得られるか
■ プロンプトのシャッフルとサンプリング
- 41. © DeNA Co., Ltd. 41
定量評価(実際に配信した結果)
● 2022/05 ~ 2022/06のPoC
○ たくさん配信される ≒ コストが高い
■ 人間のテキストクリエイティブとAIのパフォーマン
スの比
6倍
● クリエイティブを考える人月コストの削減
- 42. © DeNA Co., Ltd. 42
考察
● クリエイティブ一つあたりのcostが人力の作成物より6倍高い
○ Google Ads App広告で評価されて多く露出できた
● 人間が発想できないテキストクリエイティブを生成できた
● 実際の配信し、定性評価で重要視していた視点が達成できたこと確認
○ 多様性があること
○ 実際に広告に投入可能なレベルであること
- 43. © DeNA Co., Ltd. 43
MVPシステムの紹介
● MVP(minimal viable product)の紹介
○ 社内ツール的なポジションなのでMVPとして作成
● フロントエンド
○ Google Sheets + Google Apps Script
■ 業務でよく使うため
● バックエンド(API)
○ Cloud Run/Vertex AI endpoint + Cloud FunctionのREST API
- 44. © DeNA Co., Ltd. 44
MVPシステムの紹介
● Trend Generator
○ ランダムサンプルしたtweetから隔週・各月のトレンドを計算
● Creative Generator
○ IP情報 + キーワードを引数にテキストクリエイティブを複数計算
● Performance Predictor
○ 生成/作成したテキストクリエイティブのパフォーマンスを推論
- 45. © DeNA Co., Ltd. 45
MVPシステムの紹介
マーケ Cloud Run
Cloud Run
Cloud Functions
トレンドワードを計算
クリエイティブの
パフォーマンスを予測
Vertex AIにクエリを投げる
Vertex AI
キーワードから
クリエイティブを生成
引用: Google Cloud Official Icons & Solution Architectures
- 49. © DeNA Co., Ltd. 49
Appendix: キャラクターの模倣
● 概要
○ キャラクターのセリフを学習
○ キャラクター性の再現ができるかを検討
■ PRアカウントなどでSNSで運用するときに何を投稿するかのヒントになる
● 学習データ
○ ハッカドール3号のウェブアプリのセリフ
■ 性格
● 男の娘
● マイペース
■ 150文
- 50. © DeNA Co., Ltd. 50
Appendix: キャラクターの模倣
● 生成
○ プロンプトとしてカギカッコのはじめ(「)を与えて続きを生成
いずれもデータセットにはないセリフ
- 51. © DeNA Co., Ltd. 51
Appendix: キャラクターの再学習
● 考察と感想
○ プロンプトを十分に与えず少量のデータで学習するのは結構難しい
■ 安定した出力を狙おうとするとオーバーフィットしやすい
● 特定の出力に限定されていく性質がある
○ 現実的にはデータが多くあるときは、プロンプトの入力を期待した上で再
学習が適当そう