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

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

Elix
October 25, 2023

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

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