24.6K Views
January 31, 24
スライド概要
大規模言語モデルに「化学者」的な思考を植え付ける研究(進行中)の暫定結果です。
これまでの予測モデルよりも圧倒的に少数のデータで予測を行える、人間が納得できそうな解釈を付けてくれる、更にはデータベースの自習を始める...などの面白い挙動が見えてきています。
これから論文を書きます。
24/2/22 gpt-4のベースラインをミスってたので、直しました。
化学・材料・データ・AI・ロボット
大規模言語 モデルへの 化学的思考 の教示と 物性予測 Kan Hatakeyama 24/1/31時点で進行中のプロジェクト with 三内先生 @ 京大 です。 論文を執筆中です... 1
背景 人間 vs. 既存のAI 人間: 教科書などを学習 (実験 + 結果 + 説明) ・科学的に正しい思考様式が身につきやすい AI: データの羅列を学習 (実験+結果) ・科学理論を学ばないので、ローカルルールの信奉など、誤った思考様式に陥る恐れ → ありえない提案や解釈不能な予測を引き起こす主要因 → 小規模データセットからの予測が本質的に困難 2
大規模言語モデルにも「教科書」は有効 本研究などをきっかけに、言語モデルに対し、丁寧に物事を教えようという動きが活性化(2023-)。 3
今回のタスク: 融点データベースの学習と予測 Jean-Claude Bradley Open Melting Point Dataset 融点 分子構造(名称) 分子構造(SMILES) • データベースには分子構造+物性のみ記録 • 「科学者の読み物」としては不適格 (なぜそのような結果になったのかについての理由がない) 4
アイデア 言語モデル自身に、実験結果を引き起こす「理由」を考察させる 5
スキーム Q: 沸点は? A: 110℃ Q: 沸点は? GPT-4 R: ベンゼン+メチル基の構造なので… 補完 A: 110℃ 例題データ 例題文章 学習 出題 ローカルLLM Q: 沸点は? Q: 沸点は? 予測 R: カルボニル基にメチル基が2つ… A: 57℃ メインデータ 生成文章
GPT-4による「理由」の自動生成 1.1万件の構造ー物性データについて、GPT-4で「理由」を生成 User: トルエンの沸点が110℃になる理由を考えてください 構造 GPT-4: 理由 物性 沸点: 110℃ トルエンの沸点が約110度である理由を考えるには、分子の構造とその物理的性質に 注目する必要があります。トルエンの分子式はC7H8で、ベンゼン環にメチル基が付 いた構造をしています。この特徴的な構造により、トルエンはいくつかの重要な物理 的性質を持っています。 1.分子間力: トルエン分子は、分子間におけるファンデルワールス力によって互いに 引き付けられます。これらの力は、分子のサイズや形状に依存し、トルエンの場合、比 較的大きな分子量とベンゼン環の存在により、これらの力は中程度の強さです。これ が沸点を上昇させる要因の一つです。 2.極性: トルエンは非極性分子ですが、ベンゼン環の電子密度とメチル基の存在によ り、わずかな極性を持ちます。これにより、分子間にはわずかな引力が働きますが、 これは沸点に大きな影響を与えるほどのものではありません。 3.水素結合: トルエン分子は水素結合を形成しません。水素結合は沸点を大幅に高め る力ですが、トルエンには適した水素と電気陰性原子の組み合わせがないため、この 効果はありません。… 関連研究: 主に数学系のタスクで、理由を自動生成するアイデア(chain-of-thought fine tuning)が2023年頃から出現 (arXiv:2312.02179、arXiv:2305.14045など) 7
(詳細) 実際のプロント例 Provide the quantitative Reason and Prediction so that a scientist, who does not know the melting point, can predict the value. #Commands- You must quantitatively consider how the melting point shifts, focusing on each functional groups. - Actual value and Prediction must match each other. - If Actual value and Prediction differ each other, rethink Reason. - If Prediction does not contain numbers for each functional group effect, rethink Reason #Example reason - Target compound: Toluene- Basic unit, benzene has a boiling point of 80. - Methyl group: +30 (due to larger molecular weight) - Prediction: 110 ※補足: ケモインフォマティクスの文脈では、Group contribution methodを言語レベルで行うイメージ 8
(詳細) 実際のプロント例(日訳) 融点を知らない科学者がその値を予測できるように、定量的な理由と 予測を述べなさい。 #各官能基に着目して、融点がどのように変化するかを定量的に考察すること。 - 実際の値と予測値は一致しなければならない。 - 実際の値とPredictionが異なる場合は、Reasonを再考すること。- Prediction に各官能基の効果の数値が含まれていない場合、Reasonを再考すること。 #理由例 - 対象化合物 トルエン:基本単位であるベンゼンの沸点は80である。 - メチル基: +30(分子量が大きいため)- 予想 110 ※補足: ケモインフォマティクスの文脈では、Group contribution methodを言語レベルで行うイメージ 9
(詳細) 構造ー理由ー物性データの例 #Problem ##Name: 2-Ethoxy-2-methylpropane ##SMILES: CC(C)(C)OCC ##Reason: The target compound, 2-Ethoxy-2-methylpropane, can be seen as derived from propane, which has a melting point of -187.7°C. Adding a methyl group generally increases the melting point due to increased molecular weight and van der Waals forces. For propane, adding a methyl group to become isobutane elevates the melting point to -159.6°C, indicating the effect of a methyl group is an increase of roughly +28°C. The presence of an ethoxy group (-OCC2H5) introduces an oxygen atom which can lead to dipole-dipole interactions and potential hydrogen bonding with trace moisture, increasing the melting point as well. The ethoxy group's effect on the melting point would be less straightforward to quantify without empirical data, but we can predict that it will raise the melting point to some extent. Considering the combined effect of an additional methyl group and an ethoxy group on the basic structure of propane, we can expect the overall melting point to be higher than that of propane, but lower than room temperature because the compound remains aliphatic and does not have strong intermolecular forces such as hydrogen bonding among its own molecules. ##Prediction: -94.0 ##Actual value: -94.0 10
(詳細) 構造ー理由ー物性データの例(日訳) #Problem ##Name: 2-Ethoxy-2-methylpropane ##SMILES: CC(C)(C)OCC ##理由 対象化合物である2-エトキシ-2-メチルプロパンは、-187.7℃の融点を持つプロパンか ら誘導されたと見ることができる。一般に、メチル基を加えると、分子量の増加とファンデル ワールス力により融点が上昇する。プロパンの場合、イソブタンになるためにメチル基を加え ると融点は-159.6℃に上昇し、メチル基の効果はおよそ+28℃の上昇であることがわかる。エ トキシ基(-OCC2H5)の存在は、酸素原子を導入し、双極子-双極子相互作用と微量水分との水 素結合の可能性をもたらし、同様に融点を上昇させる。エトキシ基が融点に及ぼす影響は、経 験的なデータがなければ定量化するのは容易ではないが、融点をある程度上昇させることは 予測できる。プロパンの基本構造に対する追加のメチル基とエトキシ基の複合効果を考慮す ると、この化合物は脂肪族のままであり、分子間の水素結合のような強い分子間力を持たな いため、全体の融点はプロパンの融点より高くなるが、室温よりは低くなると予想できる。 ##Prediction: -94.0 ##Actual value: -94.0 11
GPT-4による 構造ー理由ー物性データセットの 自動構築の結果 予測値 プロセス 1. 構造ー融点データをランダム選択 2. GPT-4を用いて理由を自動生成※ 3. 「構造ー理由」から、GPT-4が融点を予測 4. 予測と実測の誤差が10以下の場合、デー タセットに登録 5. 1に戻る 1万件超の 構造ー理由ー物性データを 自動生成 ※注: 自動生成された理由をもとに行った予測が実測と近ければ、その理由は正しいと自動判定する。 理由が本当に化学的に妥当かどうかは、人間は一切検証しない点に注意。 (検証は行わないが、もし結果的に予測が当たっているのであれば、それは与えられたデータ群をconsistentに記 述するシステム≒理論が得られたということなので、それで良い、というのが本研究のスタンス) 実測の融点 (℃) 12
(詳細) 学習条件 • モデル • • • • Llama2-chat (7, 13, 70b) Mixtral-8x7B-Instruct-v0.1 GPT-3.5(ファインチューニング) GPT-4 (ベースライン) • 母体のデータセット • BradleyMeltingPointDataset • 有機分子の構造(Q)と融点(R)のデータベース • 25k records • うち、11k recordsについて、GPT-4で理由(R)を生成 • 訓練データ • ランダムに選んだN件 • 試験データ • ランダムに選んだ未学習の50件 13
(詳細) 学習結果 • 訓練データの数を変えながら、テストデータに対する融点の予測誤差(MSE)を評価 • 言語を受け付けない既存の機械学習アルゴリズム(Random forest)とも性能を比較 • RDKitモジュールで約200次元の記述子を計算し、回帰 これまでの 定番モデルを 一部凌駕 GPT-4の性能 (MSE=4519) 細かな条件 ・オープン系モデルは16bitで利用 ・5件の例題でプロンプトチューニング ・Llama2-70bのみ、VRAMの都合上、4 bitで動作させ、2件の 例題でプロンプトチューニング 14
ハイライト わずか10件のデータ学習でも予測可能 • 大規模言語モデルMixtralが既存の代表的な手法(Random forest)の性能を凌駕 • 科学的な常識や推論力を活かすことで、わずか10件の学習データから未知化合物の予測が可能※ • 小規模な実験データベースなどにも汎用性高く、運用できる可能性 (with 解釈性) 予測値 予測値 ※理由無しで学習・推論した場合は予測誤差(MSE=14852)が大きかったため、事前学習時での問題のリークは基本的に無視できると考えられる 実測の融点 (℃) 言語モデル (Mixtral-8x7B) 実測の融点 (℃) 普通の機械学習モデル (Random forest + RDKitの分子記述子) 15
7bモデルの予測プロセスの例(日訳) • 1,4-dibromo-2-nitrobenzene • 実測: 84℃ • 予測: 70℃ 融点5.5℃の基本的なベンゼン構造から出発して、 ベンゼン環の1位と4位に2個の臭素原子を導入することにより、分子量が大幅に増加し、ロンドン分散力が増大 し、融点が大幅に上昇すると推定できる。 それぞれの臭素は、その大きさと分散力の増加により、推定+30℃寄与すると考えられる。 ニトロ基は強い電子吸引基であり、分子間力、特に双極子-双極子相互作用に寄与する。また、ニトロ基は酸素原 子の存在により水素結合を形成※し、融点を上昇させる可能性がある。しかし、ニトロ基による融点上昇の寄与 は、一般的に臭素原子による融点上昇の寄与よりも小さい。従って、ニトロ基による+20℃の上昇の見積もりは 妥当である。 ベンゼンの基本融点に対するこれらの調整を組み合わせると、基本ベンゼン(+5.5)、臭素置換(2x+30)、ニトロ 基(+20)となる※。 ※筆者注. 5.5 + 2x30 + 20 = 85.5℃(≒実測)なので、思考過程の妥当性は高そうである。しかし予測値は70なので、今回の予測誤差は足し算のミ スに由来している。また、考察中にある水素結合の記述は本化合物では不適切。 16
比較: 「理由」を考えないと予測精度が低下 • Reasoning: False • 構造から直接、融点を予測するように訓練したモデル • Reasoning: True • 構造ー理由ー融点のステップで予測するように訓練したモデル Testデータに対するMSE 言語モデル(Llama2-13b) の訓練結果 理由付きで予測した モデルの方が誤差小 17
結果の詳細 • 基本的に、Reasoning=Trueで精 度が改善 • Mixtralは数十件程度の学習がベ スト • 学習させすぎると、思考が「バカ」に なる印象 • GPTは性能がイマイチ • ファインチューニングのハイパラを 最適化できないため(?) • めちゃくちゃな足し算を行ったりす るようになる事例を一部観測 18
究極目標: 言語モデルで 「理論体系*」を自動生成 *与えられた観測データ群を矛盾なく記述できる説明の集まり 理論 実験 データ 理論 大規模言語 モデル 19
次のアイデア: 自己学習ループの構築 • ローカルの大規模言語モデル(LLM)が、自分自身が生成したデータを使って学習 • 実験データを上手く説明するための、self-consistentなテキストを自動生成 • データを与えて放置するだけで、言語モデルが「理論体系」を自動生成してくれる可能性 GPT-4 ローカル LLM 初めの指導 ローカル LLM 自習ループ
Q: 沸点は? A: 110℃ Q: 沸点は? GPT-4 R: ベンゼン+メチル基の構造なので… 補完 A: 110℃ 例題データ 例題文章 自己学習(改善)のループ 学習 ランダム 選択 学習 (※正しい予測結果のみを抽出) ローカルLLM Q: 沸点は? Q: 沸点は? 補完・予測 R: カルボニル基にメチル基が2つ… A: 57℃ メインデータ 生成文章
詳細 • モデル: Mixtral-8x7B-Instruct-v0.1 • 訓練データ A) GPT-4が生成したランダムなQ-R-A (10件) B) Mixtral自身が生成したQ-R-A • ループ(generation) 1. 2. 3. 4. モデルの初期化 上記の訓練データA)+B)を3 epoch学習 未学習のテストデータ50件で評価 Mixtral自身で、母体となる訓練データセットからQ-R-Aを生成 100回試行後、予測誤差が25以下のものを抽出し、訓練データB)に追加 5. 1に戻る 22
Mixtralの自己学習ループ • 自己生成したデータの学習でも予測性能が改善 • 精度はGPT-4が生成した説明を学習させた場合と同程度 (更に改善してほしかった..) 性能改善 性能が飽和 (思考様式を既に学習済み) 自己生成した学習データの数 vs. 予測性能 23
(詳細) Llama2-7bの自己学習ループ • Mixtralよりも学習効率が悪い • GPT-4が生成した説明を学習させた場合よりも低精度 → モデル自身の考察力が不足? 性能改善中 自己生成した学習データの数 vs. 予測性能 24
まとめ (これはあくまで基礎研究です。誇大表現や妄想が含まれますので注意) • 大規模言語モデルに化学的な思考法を教え込み、実験結果を予測 • • • • 分子構造から融点を推定するタスクで予測に成功 大半の人間を超える精度と、解釈性を両立 10件程度の小規模データからでも予測可能 化学的な思考をさせないケースやモデルに比べ、精度も向上 • 言語モデルが実験結果を自動解釈していく自己改善ループを構築 • 与えられた実験結果の集合を、整合性よく解釈・予測するシステム • 学習対象を広げていくと、最終的にはAIが観測した自然現象全体を解釈・予測す るシステム、つまり科学理論を自動生成できる可能性 25
TODO・課題・展望 • 直近のTODO • データ整理(他のハイパラでの学習結果など) • 論文執筆 • 課題・今後の展望 • 予測精度の改善に必要なデータ数が、基盤モデルの基礎性能に強く依存 • 今回の学習は、あくまでモデルの性能を引き出すための最終調整という意味合いが強い(?) • 科学に強い基盤モデルの構築が必要 • プロンプトの最適化 • どのような思考様式がベターかについても、自己改善させたい • 適用対象の拡張 • 種々の物性、プロセス、化学以外のタスク、… • 提案タスク (物性 to 構造) • 専門ツールとの連動 • 例: シミュレーションで予測した融点も参考にしながら予測を行う (sim to realを言語的に行う) 26