21.7K Views
June 10, 23
スライド概要
2023/6/9 :23-1水素・燃料電池材料研究会の発表スライドより抜粋
化学・材料・データ・AI・ロボット
化学・有機材料研究における AI・GPTなどの利用 2023/6/9 23-1水素・燃料電池材料研究会の発表スライドより抜粋 東京工業大学 物質理工学院 助教 畠山 歓 1
アウトライン 化学研究における 生成系AIの面白さ • 生成系AIとは? • 画像生成 • ChatGPTの便利な使い方 • GPT-4の化学研究への展開 • ベンチマークの紹介 • 有機材料の階層構造の解析に向 けた展開 (屈折率の予測) 2
3
• 画像生成AIの例 • Midjourney • 桜の木の下でスマホを使う 女性, 葛飾スタイル 4
画像生成AI(抜粋) • Stable diffusion • 最も有名。 個人的には、ちょっと微妙な出来映え • Midjourney • 最近、有料化。芸術的な作品が多い • Bing AI • Microsoftが公開。そこそこに綺麗な画像が生成される • Adobe Firefly • Adobeが公開。イラスト系のセンスはgood 5
ChatGPT 化学研究における GPT-4の実力 6
英語翻訳に 使う
日本語で下書き作成 →英訳(10分程度で完了) 論文執筆の速度が一気に向上 ChemRxiv 2023 8
英訳に関する感想 • これまでの自動翻訳よりも遙かに高精度 • 単語のチョイス、英語論文としての格式など • 当然ながら文法ミスなどのヒューマンエラーは無し • 畠山よりもセンスgood • 筆者: 日本人の中では、英語が(自称)出来る部類 • 1 st authorで30報以上、論文を書きました • TOEIC: > 700点(大学入学時) → >900点 (大学院修了時) • しかしレビュアーには、しばしば、英語が酷いという指摘を受ける • “英語のセンス”は、GPTの方が畠山よりも上(?) • 論理的な日本語の文章が書ければ、しっかりした英語が出てくる 9
研究費の報告書(の下書き) 投稿した論文のアブストや、研究費の計画書の内容をメモ書きとして教える 10
報告書の下書きが作成される 11
著作権や機密情報の問題 • 著作権 • 過去のコピペや剽窃にならないような注意が必要 • 一部の出版社では、Cover artにおいて生成系AIを禁止?している模様 • 機密情報 • 設定に注意 • ビジネス用途では、Microsoft Azureなど、信頼と実績のあるサービスを 使った方がよいかもしれない 12
GPTの化学研究への展開 マテリアルズ・インフォマティクス ケモインフォマティクス 13
GPT-4の 実力 ChemRxiv 2023 • GPT-4に出来る/出来ないことの境界線はどこに? • 化学知識/分子認識/予測/分析/提案/ロボットアーム操作 /自律研究など
15
16
実験系インフォマティクスで直面する課題 みにくいあひるの子の定理 のジレンマ ChemRxiv 2023
子供A 子供B 子供C 子供D パラメータ-I 1 0 0 1 パラメータ-II 0 0 0 1 パラメータ-III 0 1 0 0 パラメータ-IV 0 普通 0 普通 1 普通 0 醜い 判断 どのアヒルの子が醜いか? 18
子供A 子供B 子供C 子供D 大きな目 1 0 0 1 灰色 0 0 0 1 黒い羽 0 1 0 0 右向き 0 0 1 0 判断 普通 普通 普通 醜い 19
人間に「醜さ」の判定が出来る理由 過去に多量の情報を学習し、パラメータの意味も理解出来ているから (AIは常識を持たない、赤ちゃんのような存在) 20
小規模データでのインフォマティクス AIにとって、無理筋なタスクを設定していないか? 化合物A 化合物B 化合物C 化合物D パラメータ-I 1 0 0 1 パラメータ-II 0 0 0 1 パラメータ-III 0 1 0 0 パラメータ-IV 0 普通 0 普通 1 普通 0 悪い 判断 21
どちらが国宝級の大仏か? 判断には、専門家の審美眼(≒多量のデータ)が必要 22
23
次の3つの分子のうち、 沸点yを決める因子は何か? 沸点は分子量と相関するという知識があれば、右側の分子のyが小さい理由を説明できる (しかしAIは一般に、そのような知識を持たないとされてきた) 24
みにくいアヒルの子の定理 (Ugly Duckling theorem) 何らかの仮定/前提知識がないと、分類やパターン認識は不可能 25
言語AIの面白さ 様々なテキストデータを学習しているので、 沸点は分子量と相関するという知識なども持っている ※ 図はGNNを使ったもの Communications Materials volume 1, Article number: 49 (2020) 26
説明変数の意味を インフォマティクスに 取り入れられないか? ChemRxiv 2023 28
今回のタスク • Polymer Database (CROW) • 汎用ポリマー構造 約40種 • 分子構造から屈折率を予測 29
分子構造のどこに着眼すべきか? DFT計算、RDKit記述子、Group contribution method, …何を使うべきか? 化学・計算科学の専門家でも、よく分からない世界 DFT_energy rdkit_MaxEStateIndex rdkit_Kappa1 rdkit_EState_VSA8 rdkit_fr_N_O rdkit_fr_phos_ester DFT_dipoleX rdkit_MinEStateIndex rdkit_Kappa2 rdkit_EState_VSA9 rdkit_fr_Ndealkylation1 rdkit_fr_piperdine DFT_dipoleY rdkit_MaxAbsEStateIndex rdkit_Kappa3 rdkit_VSA_EState1 rdkit_fr_Ndealkylation2 rdkit_fr_piperzine DFT_dipoleZ rdkit_MinAbsEStateIndex rdkit_LabuteASA rdkit_VSA_EState10 rdkit_fr_Nhpyrrole rdkit_fr_priamide DFT_dipoleTot rdkit_qed rdkit_PEOE_VSA1 rdkit_VSA_EState2 rdkit_fr_SH rdkit_fr_prisulfonamd DFT_HOMO rdkit_MolWt rdkit_PEOE_VSA10 rdkit_VSA_EState3 rdkit_fr_aldehyde rdkit_fr_pyridine DFT_LUMO rdkit_HeavyAtomMolWt rdkit_PEOE_VSA11 rdkit_VSA_EState4 rdkit_fr_alkyl_carbamate rdkit_fr_quatN DFT_alpha656nm rdkit_ExactMolWt rdkit_PEOE_VSA12 rdkit_VSA_EState5 rdkit_fr_alkyl_halide rdkit_fr_sulfide JR_BoilingPoint rdkit_NumValenceElectrons rdkit_PEOE_VSA13 rdkit_VSA_EState6 rdkit_fr_allylic_oxid rdkit_fr_sulfonamd JR_MeltingPoint rdkit_NumRadicalElectrons rdkit_PEOE_VSA14 rdkit_VSA_EState7 rdkit_fr_amide rdkit_fr_sulfone JR_CriticalTemp rdkit_MaxPartialCharge rdkit_PEOE_VSA2 rdkit_VSA_EState8 rdkit_fr_amidine rdkit_fr_term_acetylene JR_CriticalPress rdkit_MinPartialCharge rdkit_PEOE_VSA3 rdkit_VSA_EState9 rdkit_fr_aniline rdkit_fr_tetrazole JR_CriticalVolume rdkit_MaxAbsPartialCharge rdkit_PEOE_VSA4 rdkit_FractionCSP3 rdkit_fr_aryl_methyl rdkit_fr_thiazole JR_EnthalpyForm rdkit_MinAbsPartialCharge rdkit_PEOE_VSA5 rdkit_HeavyAtomCount rdkit_fr_azide rdkit_fr_thiocyan JR_GibbsEnergy rdkit_FpDensityMorgan1 rdkit_PEOE_VSA6 rdkit_NHOHCount rdkit_fr_azo rdkit_fr_thiophene JR_HeatCapacity rdkit_FpDensityMorgan2 rdkit_PEOE_VSA7 rdkit_NOCount rdkit_fr_barbitur rdkit_fr_unbrch_alkane JR_EnthalpyVap rdkit_FpDensityMorgan3 rdkit_PEOE_VSA8 rdkit_NumAliphaticCarbocycles rdkit_fr_benzene rdkit_fr_urea 30
変数選択の流れ 専用アルゴリズムだけで行おうとすると、”みにくいあひるの子の定理”の問題が顕在化する 人間が知識に 基づいて選択 (属人的・ノウハウ) 専用アルゴリズムで選択 (スパースモデリングなど) 31
GPT-4に 聞いてみる 32
高分子の屈折率に寄与する説明変数を聞く 200個超の候補から、GPT-4に選んで貰う (DFT計算、RDKit記述子、Group contribution method) 33
高分子の屈折率に寄与する説明変数を聞く 理論式(ローレンツ・ローレンツ式)を考えましょうという提案 𝒏𝟐 − 𝟏 𝟒𝝅 𝜶 𝒏𝟐 +𝟐 = 𝟑 ∙ 𝑽 分極率α、体積V 34
高分子の屈折率に寄与する説明変数を聞く 理論式なども踏まえながら、重要そうなパラメータを提案 35
変数の 依存関係 (階層性)も 回答可能 プロンプト Think step by step. Estimate the causal relationship between the following variables and output it in Mermaid syntax. *** Refractive_index DFT_energy DFT_HOMO … 目的変数 理論式と 深く関わる パラメータ 一部、???な箇所もあるが、 全般的には正しい解釈 36
説明変数の階層性 • 理論式(ローレンツ・ローレンツ式) • 𝒏𝟐 −𝟏 𝒏𝟐 +𝟐 = 𝟒𝝅 𝜶 ∙ 𝟑 𝑽 • 説明変数の”クオリティ”をクラス分けする • 高レベル • 分極率α、体積V • 中レベル • 双極子モーメント, HOMO, LUMO, ギブズエネルギー, … • 低レベル • 幾何学情報 (芳香環の数, 特定の官能基の数, …) 37
高レベルの説明変数 • 完璧な理論計算ができるなら、α、Vだけを使えばOK • ただし実際は精度と計算速度に課題 • 分極率α • DFTなどで計算可能 • 分子体積V • 分子鎖のパッキングが絡むため、精密な予測は高難度 38
中レベルの説明変数 • 化学者にとって馴染みの深いパラメータ群 • 計算コストが基本的に高い • 双極子モーメント • HOMO • LUMO • ギブズエネルギー •… 39
低レベルの説明変数 • ケモインフォマティクスで頻出するパラメータ • 極めて高速に計算可能 • RDKitなどのモジュールを使用可能 • ベンゼン環の数、特定の官能基の数(e.g., COOH)、… • 汎化性能に課題 • COOHとCONHを全く別物と捉えてしまう • 一方、“極性”という中レベルの説明変数を使えば、概念を一般化できる 40
機械学習のフロー GPT-4: 言語モデルを使って、理論式をもとに説明変数を選択(先述) Boruta: 検定作業を行って、統計的に有意な説明変数を選択(random forest使用) 5-Fold cross validation: 訓練・評価用データを分ける手法の一つ 41
平均予測誤差(MAE) スパースモデリング スパースモデリング サポートベクタマシン ガウス過程 ランダムフォレスト 勾配ブースト 全ての 説明変数を 利用 ランダムな 10変数 ランダムな 20変数 Boruta アルゴリズム 提案 手法 42
予測プロットの例 (Ridge) 43
選ばれた変数の階層性 Group番号が小さいほど、屈折計に対して汎用性大 44
アルゴリズムの比較 GPT-4は “説明変数の意味” を考慮 Borutaは “説明変数の意味” を無視 意味が分かりやすく 汎用性のある パラメータが 選ばれやすい 化学者にとっても “意味不明”で、 汎用性の低い パラメータが 選ばれがち 45
LassoもBorutaと同様の傾向 46
言語モデルで 変数間の階層性 に踏み込めてきた 目的変数 今後… • シンボリック回帰 • 因果推論 • ベイジアンネットワーク • … 47
パラメータ最適化 タスク例: Cが最大となるA0, B0, timeを見つける プロンプト(抜粋) #Reaction system A + 2B to C 2C to D Initial concentrations of C and D are zero. We don't know rate constants and any other information. #Goal Obtain C at maximum concentration. You can use Wolfram to analyze equations and data. #You can change Initial concentration of A = A0 (0 to 3) Initial concentration of B = B0 (0 to 3) Reaction time t (0 to 10) # Obtained data (A0,B0,t,C) =[…] #Your task Suggest (A0,B0,t) for the next reaction condition plan. GPT-4の考察内容(抜粋) The reaction A + 2B -> C is second order with respect to B. This means that the rate of reaction will increase with an increase in the concentration of B. Therefore, increasing B0 might lead to a higher concentration of C. The reaction 2C -> D will decrease the concentration of C over time. Therefore, reducing the reaction time might lead to a higher concentration of C, as there will be less time for C to convert into D. The concentration of A also plays a role in the reaction rate. However, since the reaction is first order with respect to A, the effect of changing A0 will be less significant than changing B0. Based on these considerations, I suggest the following reaction conditions for the next plan: Initial concentration of A (A0) = 1.5 (keep it constant for now) Initial concentration of B (B0) = 2.5 (increase it to speed up the first reaction) Reaction time (t) = 3 (reduce it to slow down the second reaction) ChemRxiv 2023 48
実空間での 階層性に どう向き合うか? 実験 + 理論計算 言語モデル グラフ構造 49 K. Hatakeyama-Sato, Polym. J. 2022, 55, 117.
AI分子シミュレータによる 分子体積𝑉の計算 • Matlantis (v. 3.0.0)を使用 • セル内に分子のユニット構造を充填 • 周期的境界条件 • 20分子 • ランダムに配置 • 分子構造の最適化 • 分子内の応力を下げるように構造変形 • ソルバー: LBFGSLineSearch • 0 Kに急速冷凍するイメージ • (構造ではなく)密度が収束したら計算終了 50
密度 (∝1/V)計算の結果 RDKitでもそれなりに精度が出るが、Matlantisの方がわずかに高性能 相関係数: 0.93 Matlantis (20分子系、N = 10) 相関係数: 0.92 真空1分子 (RDKitで分子体積を計算) 51
オリゴマー計算も可 (検討中) • 5量体 • 2x2x2個を充填 • 結晶に近い構造 • NPT計算 52
今後の戦略1/3 • メカニズム解明に(も)注力 • 予測・提案モデルはあまり現場の役に立っていない (個人談) • 精度が足りない&ブラックボックス予測だと「占い」と変わらない • 手作業は実験コストが高い • まずは、”現場の経験則”を定量的に可視化していきたい • e.g. • XXXを形成する分子には、”ある特徴”がある 53
今後の戦略2/3 • シミュレーションとの連携 • 正攻法では太刀打ち困難な系が多い • 高分子鎖は大きい • 相分離、結晶構造形成、誘電分極などは途方もない計算時間が必要 • イオン系の相互作用は難しい • → 現状、上手い具合に、近似テクニックを積み重ねるしかない(?) • 専門家に相談 • RadonPyコンソーシアム など 54
今後の戦略3/3 • 大規模言語モデル(LLM)、ロボットの連携 • 研究のことに何でも答えられるチャットボットなど • 思考 ≒ 言語 なので、LLMは”AI科学者”を作る上での鍵 • ロボットアームでの実験 • LLMを実空間と連携させ、自動実験を推進する 55
音声によるロボットアーム操作 56
まとめ 57