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

Elix, CBI 2023, ランチョンセミナー, 大規模言語モデルの基本から最前線へ

Avatar for Elix Elix
October 25, 2023

Elix, CBI 2023, ランチョンセミナー, 大規模言語モデルの基本から最前線へ

Avatar for Elix

Elix

October 25, 2023
Tweet

More Decks by Elix

Other Decks in Research

Transcript

  1. Copyright © Elix, Inc. All rights reserved. ⼤規模⾔語モデル (Large Language

    Model, LLM) が世間⼀般の注⽬を集めている • 特にChatGPT (右図) が話題に ⼤規模⾔語モデル = ⼤規模な⾔語モデル • ⼤規模 ◦ モデルパラメータ数が多い ◦ ⼤量のテキストデータで訓練される • ⾔語モデル ◦ ⾃然⾔語の⽂の現れ⽅をモデル化したもの ◦ (意味のある) ⽂字列を⽣成できる ⼤規模⾔語モデルの台頭 2
  2. Copyright © Elix, Inc. All rights reserved. • トークン: ⽂字列の最⼩の構成単位

    ◦ ⾃然⾔語 ➔ 単語 ◦ 化合物のSMILES⽂字列 ➔ 原⼦・結合を表す記号 ◦ タンパク質のアミノ酸配列 ➔ アミノ酸コード • ⾔語モデルでは⼊⼒されたトークン列に続くトークンが何かを予測 ◦ 出⼒された確率に従ってトークンをサンプリング ➔ 列の末尾に追加 ◦ この操作を⽣成終了まで繰り返すことで⽂字列⽣成 • 訓練サンプルをうまく⽣成できるように (i.e., 次時刻のトークンを正確に予測できるように) モデルを訓練 ➔ 訓練サンプルらしいトークン列が⽣成できる ⾔語モデルによる⽂字列の⽣成と訓練 3 Cl c 1 c c c c ⼊⼒ (⽣成途中) ⾔語モデル c: 40 % C: 7 % n: 10 % ộ [EOS]: 0.2% 出⼒ (各操作の選択確率) Cl c 1 c c c c c 修正された⼊⼒ サンプリング 再⼊⼒
  3. Copyright © Elix, Inc. All rights reserved. ⼊⼒された系列から、それに対応する別の系列を⽣成するネットワーク • エンコーダ:

    トークン列をベクトル (潜在変数) の列に変換 ◦ 潜在変数は対応するトークンの情報を反映 • デコーダ: エンコーダの出⼒を利⽤してトークン列に変換 (⾔語モデル) 例) 機械翻訳 エンコーダに「私は学⽣です。」を⼊⼒ ➔ エンコーダの出⼒をもとに、デコーダから “Iʼm a student.” が⽣成 LLMでは基本的にTransformerのアーキテクチャが利⽤されている Transformer[1] 4 [1] A. Vaswani, et al. NeurIPS, 30 (2017). エンコーダ デコーダ 図: 論⽂[1]のFigure 1
  4. Copyright © Elix, Inc. All rights reserved. ü 使い⽅次第で様々なタスクに利⽤可能 ü

    注意機構 (Attention) により、⻑期的な⽂脈を考慮した特徴抽出が可能 ü 全結合型ニューラルネットワークのみを組み合わせてできているため、 (RNNとは違って) 訓練時に系列を⼀気に処理できる ü ⼤規模にすればするほど性能改善が期待される (スケーリング則[2]) Transformer[1]の利点 5 [1] A. Vaswani, et al. NeurIPS, 30 (2017). [2] J. Kaplan, et al. arXiv preprint, arXiv:2001.08361 (2020). エンコーダ デコーダ 図: 論⽂[1]のFigure 1 私 は 学⽣ です。 私 は 学⽣ です。
  5. Copyright © Elix, Inc. All rights reserved. パラメータ数の多いTransformerを⼤規模なデータで訓練すれば良い性能が得られる 教師あり学習をする場合は、⼊⼒に対して正解ラベルが定まったサンプルが必要! ✘

    ラベル付きのサンプルを集めるのは⼤変…… ◦ 特に、ライフサイエンスの分野では、データ収集に実験が必要な場合も多い ü ラベルなしのデータであれば、⽐較的集めやすい ◦ Web上にデータベースとしてまとまっていることも ➔ ラベルなしデータを利⽤した教師なし学習でモデルを事前訓練して、訓練済みモデルを⽬的のタスクに 応じて調整する (ファインチューニング) 「⼤規模なデータ」はどう集めるのか? 6
  6. Copyright © Elix, Inc. All rights reserved. Transformerのデコーダ部分 (の亜種) を⾔語モデルとみて訓練

    • 訓練⽅法 (とモデル構造の微妙な違い) によって、GPT-1, GPT-2, GPT-3, GPT-4と進化中 ü 次のトークンをうまく予測できるように訓練するので、 ラベルなしサンプルのみで訓練できる ü 訓練済みモデルで⽂字列を⽣成できるだけでなく、 ファインチューニングすれば予測タスクにも利⽤できる Generative Pre-trained Transformer (GPT)[1] 7 図: Wikipedia「GPT (⾔語モデル)」のページより [1] A. Radford, et al. Technical report, OpenAI (2018).
  7. Copyright © Elix, Inc. All rights reserved. Transformerのエンコーダ部分を⾃⼰教師あり学習で訓練 • ⾃⼰教師あり学習:

    ラベルなしサンプルから⾃動⽣成した ラベルを予測するタスク (プレテキストタスク) で訓練 • BERTのプレテキストタスク: マスク復元タスク ◦ ⼊⼒されたトークンの⼀部をランダムに隠し、 隠されているトークンが何かを当てる: An ( apple ) is a round, red, and sweet fruit. ü データのもつ構造 (⽂法など) や特徴を捉えた潜在変数 を計算できる ü ファインチューニングで様々なタスクに利⽤可能 Bidirectional Encoder Representations from Transformers (BERT)[1] 8 [1] J. Devlin, et al. arXiv preprint, arXiv:1810.04805 (2018). 図: 論⽂[1]のFigure 1
  8. Copyright © Elix, Inc. All rights reserved. プロパティの予測・分⼦構造の⽣成・化学反応の予測など、幅広く⽤いられている • MolGPT[1]

    ◦ ChEMBL・ZINCから取得した約350万個のSMILES⽂字列を⽤いて、GPT-1の軽量版を訓練 ➔ スキャフォールドやプロパティを指定した構造⽣成に成功 • MolBERT[2] ◦ ChEMBLから取得した約160万個のSMILES⽂字列を⽤いて、BERTの要領で事前学習 ➔予測タスクごとに訓練済みモデルをファインチューニングしたモデルが良い予測性能を⽰した • Molecular Transformer[3] ◦ USPTOデータセットの化学反応データで訓練したモデルによる反応⽣成物予測 これらはTransformerを多数の化合物データで訓練することで活⽤した例 ➔ ⾃然⾔語で訓練したLLMを活⽤している例もある (以降で紹介) Transformerの化学への応⽤例 9 [1] V. Bagal, et al. J. Chem. Inf. Model., 62.9, 2064-2076 (2021). [2] B. Fabian, et al. arXiv preprint, arXiv:2011.13230 (2020). [3] P. Schwaller, et al. ACS Cent. Sci., 5.9, 1572-1583 (2019).
  9. Copyright © Elix, Inc. All rights reserved. • 化合物構造とタスクを与えて、条件に合う構造を ⽣成するシステム

    (ChatDrug) を提案 ◦ ⼊⼒構造と類似の構造を出⼒するよう指定 ◦ 条件に合わない場合、データベースから 条件に合うものを提⽰し、修正するよう指⽰ ◦ 対話的に条件に合うまで反復 • ChatGPTに演じてもらう役割を設定 (GPT-3.5) ◦ 化学の専⾨家 • ⼩分⼦・ペプチド・タンパク質の構造編集タスク 39種類で検証 ➔ ⾼い割合で条件に合うものをうまく提⽰できた ChatDrugによる医薬品構造の編集[1] 10 [1] S. Liu, et al. arXiv preprint, arXiv:2305.18090 (2023).
  10. Copyright © Elix, Inc. All rights reserved. • ChatGPTに相談しながら、Langevin⽅程式を活⽤した 構造⽣成のための新規⼿法を開発

    ➔ 構造⽣成の結果、15個のリード化合物を得た • ChatGPTに演じてもらう役割を設定 (GPT-4, プラグイン利⽤) ◦ AI創薬を専⾨とする教授 ◦ 拡散モデルなどの統計的⼿法に詳しい研究者 ◦ AI関連技術に強みのあるプロPythonコーダー • ChatGPTはとても強⼒ではあるが、説明に誤りを含む 場合があるため、利⽤に注意も必要 ◦ 誤りがあることを指摘して正しい説明を与えたうえで、 説明を修正するようにすると効果的 ➔ 利⽤者の専⾨知識と照合させながら、⾃⾝の研究のサポートに 利⽤するのが良い ChatGPTを活⽤した対コカイン中毒医薬品の開発[1] 11 [1] R. Wang, et al. arXiv preprint, arXiv:2308.06920 (2023).
  11. Copyright © Elix, Inc. All rights reserved. • ChatGPTで役割を演じてもらったとしても、不正確な情報を 出⼒することがある

    • ChemCrow: GPT-4から化学関連の外部ツールを呼び出し、 ある程度化学的に正しく推論できるようにする ◦ 各ツールの概要は事前に知らせておく ◦ ツールは計画→ツール選択→ツール利⽤→解析の形で利⽤ • 合成経路予測・新規構造提案・反応機構の説明タスクなど 14のタスクで (化学者ロールの) GPT-4と⽐較 ◦ 4⼈の化学者による評価 ➔ 複雑なタスクではChemCrowの評価が⾼い • 外部ツールを利⽤したとしても、誤った結論を導くことがある ◦ 性能は、GPT-4の訓練やツールの性能に依存 ➔ 依然として内容のチェックは必要 外部ツールを活⽤した化学的推論[1] 12 [1] A. M. Bran, et al. arXiv preprint, arXiv:2304.05376 (2023).
  12. Copyright © Elix, Inc. All rights reserved. • LLMではTransformerのアーキテクチャが利⽤される •

    化学分野でのLLMの使われ⽅ ◦ 多数の化合物構造を利⽤して事前訓練したTransformerを⽤いるもの ◦ 多数の⾃然⾔語⽂で訓練したモデル (GPT) を活⽤して対話的に利⽤するもの • ChatGPTをはじめとする対話型LLMは、研究のサポートに利⽤することができる ◦ どういった役割を演じてほしいかを具体的に指定すると良い ◦ 情報が誤っている場合もあるので、⽣成された結果の検証は必要 ▪ 外部ツールとの連携をとることで、⽣成される情報の質を⾼めることができる まとめ 13