データ化学工学研究室物語
第I部 研究室配属前夜のデータ化学工学
研究室配属前の学部三年生が、AI・機械学習を化学・化学工学の研究に使う考え方を学ぶ。
第11章 自分の言葉で話す
新人トレーニングの十週目に与えられた課題には、新しいデータファイルも、新しいモデルの名前もなかった。
何を入力とし、何を予測するのか。
どのように評価し、どこまで結果を信じるのか。
次の候補を、どのような理由で選ぶのか。
AIに尋ねたこと、資料で確認したこと、自分で試したこと、自分で判断したことを区別する。
最後に、四月からどのように研究したいかを、自分の言葉で話す。
遥は、先輩から slack に届いた最終発表の案内と、新しく開いたスライドを並べた。
データ化学工学による高分子分離膜の設計。
題名は、最初の発表と同じだった。その下に、「二酸化炭素と窒素の分離を例として」と入力する。
初めてこの題名を書いたとき、白い画面の先へ進めなくなった。対話型AIに発表構成を作ってもらい、整った説明を読んで、分かったような気になった。
今は、反対だった。
話せることが増えすぎて、何から話せばよいのか分からない。
データ辞書。ヒストグラム。散布図。記述子。PCA。クラスタリング。回帰モデル。クロスバリデーション。AD。候補選択。
これまでの発表資料から図を移していくと、スライドが次々に増えた。どの図にも、調べたことや、間違えて作り直したことがある。削ると、その時間まで消してしまうような気がした。
一度、最初から声に出して読んでみた。
データの説明を終えるだけで、随分時間がかかった。最後の候補比較表へたどり着くころには、自分でも、何を説明する発表だったのか分からなくなっていた。
今度はAIの言葉を貼っていない。
それでも、作業した順に並べただけでは、一つの話にならなかった。
翌日の午後、遥は研究室で、紺色のパーカーの先輩にスライドを見てもらった。
先輩は最後まで目を通し、最初のページへ戻った。
「この発表を聞いた人に、一番伝えたいことは何ですか」
「トレーニングで、何をしたかです」
「それは、たくさん書いてありますね」
先輩は、候補比較表を開いた。
「では、この候補を選ぶまでに、何を確かめる必要があったのかを話すとしたら、どう並べますか」
遥は、表の candidate_0731 を見た。
この候補を優先するには、予測値が必要だった。予測値を使うには、モデルの評価とADが必要だった。モデルを作るには、入力と出力を決める必要があった。その前には、データの一行と一列の意味を確かめた。
最後の表から前へ戻ると、ばらばらだった図に、つながりが見えた。
「どの候補を次に検討するか。その理由を説明するために、必要だった確認を順に話します」
先輩はうなずいた。
「全部の操作を読み上げなくても、その判断につながる道筋が分かれば、何をしたかは伝わります。詳しい結果は、質問されたときに見せられるように残しておきましょう」
遥はスライドの見出しを減らした。
何を知りたいか。
何を根拠に予測するか。
どこまで予測を使えるか。
何を次に確かめたいか。
消した図は、発表の後ろの補足資料へ移した。
結果を隠すのではない。結論までの道筋と、その道筋を確かめるための詳しい記録を、分けて置く。
それなら、作業した時間も、失敗した図も、なくならなかった。
その日の夕方、遥はもう一つの整理表を作った。
AIに尋ねたこと。
資料で確認したこと。
自分で試したこと。
自分で判断したこと。
最後の欄へ、「目標値を決めた」と書きかけ、手を止めた。
透過係数は 1,000 Barrer 以上。選択性は 25 以上。
その値は、研究室から指定されたものだった。候補を作るための部分構造や接続規則も、自分が考えたわけではない。ADの 95 パーセンタイルという設定も、サンプルプログラムの最初の例を用いていた。
自分で考えたことを示そうとして、教わったことまで自分の発案にしてはいけない。
遥は欄を一つ加えた。
研究室から与えられたもの、教わったもの。
そこへ、仮想データ、サンプルプログラム、目標値、最初に使った設定を書いた。
自分で試したことの欄には、図のビン数を変えたこと、構造の一部を変えて記述子を計算したこと、近傍数を変えたこと、異なる分割で予測を確かめたことを書いた。
自分で判断したことの欄には、測定温度をそろえて比較する方針と、未知の構造を予測するために構造グループを分けた評価を重視したことを残した。
すべてを一人で思いついたわけではない。先輩の説明を聞いた後で、意味が分かり、自分の課題で試したことも多かった。
それでも、何を受け取り、その後に何をしたかは、書き分けられた。
遥は対話型AIに、作成した発表の要点を示した。
この説明を初めて聞く学生が、意味や根拠を確認したくなる点を質問として挙げてください。回答や新しい研究結果は加えず、説明が足りない箇所を指摘してください。
返ってきた質問には、答えられるものもあれば、今の資料では答えられないものもあった。
「目標を満たすと予測された候補は、実際にもその性能を示しますか」
遥は候補の表を開き、「予測値」と書いた列名を確かめた。分かっているつもりでも、発表中に何度も「性能」とだけ言えば、聞く人には実測値のように伝わるかもしれない。
スライドの最初に、一行を足した。
仮想データを用いた新人トレーニングであり、新しい高分子膜の合成・測定は行っていない。
その一行を書くと、発表の成果が小さく見える気もした。
けれど、何をしたかだけでなく、何をしていないかも、同じ資料の中に必要だった。
最終発表の日、仮配属となった五人が研究室に集まった。
入口には、最初に見学したときと同じ研究室名の札がある。壁には英語のポスターがあり、机の上には、先輩たちのパソコンが並んでいる。
遥には、以前と変わったものと、変わらないものが見えた。
英語のポスターのすべてを読めるわけではない。でも、散布図を見れば、軸に何が書かれているかを確かめたくなる。表を見れば、どの条件の結果なのかが気になる。
見慣れた部屋に、前にはなかった問いがあった。
遥の順番が来た。
画面に題名を映す。手のひらには、最初の発表と同じように汗を感じた。
緊張しなくなったわけではない。
ただ、次のスライドに何があるかだけでなく、なぜそれを置いたのかは分かっていた。
「高分子の構造と製膜条件から、所定の測定条件における二酸化炭素透過係数と、二酸化炭素・窒素選択性を予測し、次に検討する候補を選ぶことを考えました」
遥は、最初に仮想データを用いた演習であることを説明した。
「ここで報告するのは、実際に高性能な膜を作った成果ではありません。候補を予測し、評価し、選ぶまでに必要な判断を、どのように整理したかです」
次の画面には、第3章で作ったデータ辞書があった。
「最初は、一行を一つの高分子だと思いました。しかし、同じ構造でも、作製条件や測定条件が異なる記録があります。材料名と物性値だけでは、比較する条件がそろっているか分かりませんでした」
測定温度を一定にした理由を説明する。
材料の違いを、まず同じ測定温度で比較したかったこと。別の測定温度のデータが間違いという意味ではなく、元のファイルも残したこと。
「説明変数にしたのは、121 個の構造記述子と製膜温度です。構造から計算できる情報と、膜を作る前に設定できる条件を使いました。サンプルIDは、モデルの入力にしていません」
画面の左には繰り返し単位の構造、右には記述子の列を置いた。
数値化すると、モデルが材料を扱えるようになる。ただし、繰り返し単位の記述子だけで、実際の膜のすべてを表せるわけではない。
エタノールとジメチルエーテルを二つの記述子では区別できなかった例を、短く示した。
「同じ数字になっても、同じ化学構造とは限りません。モデルが区別できるものは、入力に残した情報によって変わります」
遥は次に、二枚の図を並べた。
一枚は、透過係数と選択性の散布図。
もう一枚は、構造記述子から作ったPCAの地図。
両方に、polymer_047 という名前があった。
「このサンプルは、物性の図でも、構造の地図でも、他の多くのサンプルから離れていました。でも、それだけで入力ミスとも、高い性能の原因が分かったとも言えません」
最初は、きれいな関係を邪魔する点に見えた。
次には、珍しい構造をもつサンプルに見えた。
予測モデルを作ると、周囲に十分似たトレーニングサンプルが少なく、推定を大きく外した。
「消してしまうのではなく、なぜ違うのかを確認する対象として残しました」
一つの点は変わっていない。
変わったのは、その点を見るために使った情報だった。
モデルの説明では、k近傍回帰の処理を短く話した。標準化した構造記述子と製膜温度で近いサンプルを探し、既知の物性の対数値を手がかりに、新しいサンプルを推定する。
そして、どのデータを未知としたかを示した。
「新しい高分子構造を予測したいため、同じ繰り返し単位の記録が、トレーニング側と評価側に分かれない方法を使いました。前処理と近傍数の選択も、評価側のデータを使わない範囲で行いました」
120 サンプルを対象とした二酸化炭素透過係数の評価では、外側の推定値を集めた MAE は 0.41、RMSE は 0.52 だった。
遥は、その下の注意書きも読んだ。
二つとも、透過係数を常用対数に変換した尺度での誤差。
選択性モデルの誤差ではない。
「トレーニングデータとテストデータの誤差は、同じ尺度の MAE や RMSE で確認しました。サンプル集合が違えば目的変数のばらつきも違うので、r2 の値を直接比較して、どちらの誤差が小さいとは判断していません」
ただし、MAEが小さい結果だけを選べばよいのでもない。
テストに入るサンプルが変われば、予測する問題の難しさも変わる。だから、数値の横には、分割方法と評価したサンプルを残した。
ここまで話してから、遥は最初の問いへ戻った。
「この評価をした上で、まだ実測値のない候補に予測を使います。ただし、どの候補でも同じように信頼できるわけではありません」
ADの説明では、距離と絶対誤差の図に続けて、サンプル数を示した。
全体:120 サンプル、MAE 0.41。
AD内:95 サンプル、カバー率約 79 %、MAE 0.30。
AD外:25 サンプル、MAE 0.83。
「5 近傍平均距離について、各foldのトレーニングデータで求めた 95 パーセンタイルを、しきい値にしました。95 が唯一の正解という意味ではありません」
AD内にも大きく外れた点があり、AD外にも実測値に近い点があった。
「AD内の誤差だけを示すと、小さい数値を報告できます。でも、どの程度のサンプルを対象にした結果なのかを、一緒に示す必要があります。AD内は正解の保証ではなく、AD外も価値のない材料という意味ではありません」
次のスライドには、5,000 個の仮想候補の予測結果があった。
目標は、透過係数 1,000 Barrer 以上、選択性 25 以上。
二つの予測値がともに目標を満たした候補は 114 個で、そのうち二つのモデルでともにAD内だった候補は 18 個だった。
「目標値は研究室から指定された、今回の演習のための値です。結果を見てから変えてはいません。別の値での比較は、追加の検討として分けました」
遥は、二つの候補を示した。
candidate_0731:透過係数の予測値 1,520 Barrer、選択性の予測値 27.8。二つのモデルでAD内。
candidate_0317:透過係数の予測値 4,800 Barrer、選択性の予測値 38.7。二つのモデルでAD外。
「最初の実験で目標達成の可能性を確認するという目的から、candidate_0731 を優先して検討します。ただし、合成可能性と膜形成性を確認することが、実験候補にする前の条件です」
candidate_0317 は、削除していない。
新しい領域を調べる候補として残し、構造、実験コスト、実験から得たい情報を考えた上で検討する。
予測値だけで二つの候補を順位付けするのではなく、次の実験に何を求めるかを先に置いた。
最後に、遥は短くまとめた。
「モデルは、候補の予測値を計算しました。私は、与えられた目標と候補空間の中で、何を確認できていて、何が未確認なのかを分け、次に検討する候補と理由を整理しました」
説明を終えると、部屋が静かになった。
先生は、候補の表を見ていた。
「candidate_0731 が二つの目標を満たす確率は、どれくらいですか」
遥は一瞬、AD内のカバー率を思い浮かべた。
約 79 %。
しかし、その数字を答えてはいけない。
「今回の計算では、その確率は求めていません」
遥は、ADの結果へ画面を戻した。
「約 79 %は、二酸化炭素透過係数の評価でAD内に入ったサンプルの割合です。candidate_0731 が目標を達成する確率ではありません。距離によるAD判定と、二つの物性が同時に目標を満たす確率は区別します」
「では、なぜ優先すると言えるのでしょう」
「予測値が二つとも目標を満たしていて、二つのモデルで既知データによる支えが比較的あると判断したからです。ただし、成功確率を数値で比較した結論ではありません。今ある情報に基づく、条件付きの優先順位です」
先生は、表の「未確認」の欄を見た。
「まだ分からないことが、ずいぶん残っていますね」
「はい。特に、合成できるか、膜になるか、実際の用途で必要な性能を満たすかは、今回の予測だけでは確認できません」
「それなら、次はどうしますか」
遥は、最終発表のために新しく作った一枚を開いた。
残った問いと、次の確認。
「まず、candidate_0731 の繰り返し単位から、想定するモノマーと重合法を調べます。類似した高分子の報告を確認し、実験を担当する人にも相談します。予測値が良いからという理由だけで、実験を始めることはしません」
次の行は、polymer_047 についてだった。
「このサンプルがなぜ高い性能を示すのかは、まだ仮説です。記録の出典と条件を確かめた上で、近い構造のデータを集め、その傾向が一つだけの点によるものかを調べたいです。今回の仮想例で考えた確認の仕方を、実際の研究データでも使いたいと思います」
「モデルの精度を上げることだけを、次の課題にしないのですね」
「はい。何の情報が足りないか、今の結果を何に使おうとしているかも、先に確認したいです」
先生は、少し間を置いた。
「最初の発表でも、同じような未解決点を挙げていました。何が変わりましたか」
遥は、補足資料に移しておいた最初の発表を開いた。
予測モデルを信頼できる範囲をどう決めるか。
高分子の合成可能性と膜としての成形可能性をどう評価するか。
九週間前に書いた問いだった。
「全部が解決したわけではありません。でも、信頼できる範囲については、距離でADを設定し、誤差とカバー率を確認するところまで試せました。合成可能性については、まだ調査が必要です。できるようになったことと、言葉だけ知っていることを、前より分けられるようになりました」
先生はうなずいた。
「では、AIに任せたことと、瀬戸さん自身が考えたことも、説明できますか」
遥は、整理表を示した。
「対話型AIには、検索語、用語の説明、コードの処理や注意点、確認すべき質問の候補を出してもらいました。その説明は、研究室の資料やプログラム、実際の出力と照らし合わせました」
回帰モデルが行ったのは、用意した入力から物性の予測値を計算することだった。
対話型AIの説明と、学習した回帰モデルの計算も、同じ「AI」という言葉だけでまとめないように話した。
「データやプログラム、候補の生成規則、最初の設定は、研究室から受け取りました。自分で全部を作ったわけではありません」
その上で、遥は、試して確かめたことを指した。
図の設定を変えても残る傾向を見たこと。
構造を少し変え、記述子の動きを予想してから計算したこと。
近傍数を変え、テストデータの使い方に問題があると気づいたこと。
候補の順位が、人の置いた重みで変わることを確認したこと。
「教わった方法でも、何のために使うかを考え、自分で設定を変えて比べました。その結果から、今回どの方針を使うかを理由と一緒に決めました」
「間違えた検討もありましたか」
「ありました。テストデータを見ながら近傍数を選びかけました。標準化の順番も直しました。自分で試せば、そのまま正しい研究になるわけではありませんでした」
言ってから、少しだけ胸が軽くなった。
間違えたことを隠さなくても、何を確かめて直したかなら話せる。
先生は、修正前後の記録を見た。
「その違いを説明できることが大切です。動かした結果だけでなく、なぜやり直したかも残してください」
最後の質問は、スライドの数字についてではなかった。
「四月から、どのように研究したいですか」
遥は、用意していた文章を一度見てから、画面から目を離した。
「高分子の構造だけでなく、作り方も一緒に考えて、膜の性能を予測したり、候補を選んだりする研究に興味があります」
「なぜですか」
「同じ構造でも、条件によって値が変わりますし、構造が似ているだけでは予測が当たらないこともありました。表の中の違いが、材料の何の違いなのかを、もっと知りたいと思いました」
遥は、候補比較表をもう一度見た。
「それから、まだよく知らない材料を探したいとき、予測を信じすぎず、かといって全部捨てずに、次に何を確かめるかを考えたいです」
卒業研究の具体的な計画ができたわけではない。
今は、九週間前より具体的な、研究したい理由が一つできたところだった。
「先生や先輩に言われたことを実行するところから始まると思います。でも、結果だけを報告せず、自分で気になったことを一つは調べたり、試したりして、考えを添えて相談したいです」
先生は、少し笑った。
「相談する前に、全部一人で解決しようとする必要はありませんよ」
遥は顔を上げた。
「自分で考えることと、一人で抱えることは違います。何が分からないかを一緒に整理するところからでも構いません。教わった後で、自分でも確かめ、次へ進めればよいです」
遥は、最初のころ、初歩的な質問を送るだけで迷っていたことを思い出した。
聞いてよいか悩んでいる間は、画面も、自分の考えも止まっていた。
「分かりました。分からないところも、早めに持ってきます」
「そうしてください」
発表が終わり、席へ戻ると、隣の学生が小さく言った。
「同じ題名なのに、最初と全然違ったね」
遥は、画面に残っている題名を見た。
最初より専門用語が増えたことだけが、違いではないはずだった。
その言葉が、どの図、どの計算、どの確認につながっているかを、今は少しずつたどれる。
「自分が止まったところも、話せたからかもしれない」
答えてから、遥はノートを開いた。
他の学生の発表が始まった。
分子構造から水への溶けやすさを予測する話。反応条件から収率を考える話。温度や圧力の記録から、測定に時間のかかる製品品質を推定する話。
扱う物質も、表の列名も、自分とは違っていた。
それでも、聞いているうちに、同じ問いが浮かんだ。
その入力は、予測したいときに分かるのだろうか。
どのサンプルを、未知と考えて評価したのだろうか。
予測が外れたら、次に何を確かめるのだろうか。
製品品質の推定を発表した学生が、入力に使う測定値を説明したとき、遥は手を挙げた。
「その値は、品質を知りたい時点で、もう測定できているんですか」
学生は、表へ戻って確認した。
「温度と圧力は分かる設定です。でも、この列については、測定にどのくらい時間がかかるか、まだ確認していません」
遥はうなずいた。
自分にも、同じように分からなかった列があった。
質問は、相手が答えられないことを探すためではなかった。どこを一緒に確かめればよいのかを、見えるようにするためのものだった。
発表がすべて終わると、先生は、五人が並べた題名を見た。
「研究室では、対象の違う研究も進めます。でも、何を知りたいか、どの情報を使うか、結果をどう確かめるかは、互いの研究からも学べます」
先生は、机の上のノートを指した。
「トレーニングを終えたからといって、来週から迷わず研究できるわけではありません。新しいデータを見れば、また分からないことが出てきます」
遥は、今度は、その言葉にあまり落胆しなかった。
「一度良い結果を出すことだけでなく、次の問題でも調べ、試し、考えて進める力をつけてください。そのために、先生や先輩もいます」
廊下から、誰かが台車を押す音が聞こえた。
最終発表が終わっても、研究室のいつもの一日は続いていた。
片づけの途中、遥は先輩に尋ねた。
「自分の言葉で話すって、思っていたより難しいですね」
「どの辺りが?」
「AIの文章を使わなければいいと思っていました。でも、今回は自分が作った図を並べただけでも、うまく説明できませんでした」
先輩は、補足資料に移した図を見た。
「自分で計算したことと、自分で説明できることも、同じではなかったんですね」
「はい。何のために計算して、何が分かって、何はまだ言えないのか。そこまでつながっていないと、説明になりませんでした」
遥は少し考えて、付け加えた。
「それに、全部を自分で考えたことにするのも違うと思いました」
「そうですね。どこから教わり、何を確かめ、どこを自分で判断したか。その区別も、説明の一部です」
先輩は、初めて遥に渡したサンプルプログラムのフォルダを開いた。
その中には、説明を書いたテキストファイルがいくつもあった。
以前は、開いてもすぐ閉じていたファイルだった。今は、その一行が、過去に誰かがつまずいた場所なのかもしれないと思える。
「私が間違えたところも、残しておいていいですか」
「もちろん。どう直したかも一緒に書いてください。次に読む人が、自分で確かめられるように」
遥は発表資料を保存した後、短いメモを作った。
列名だけでは意味を決めない。
図の軸と条件を確かめる。
前処理で、どのデータを使っているかを見る。
予測値と実測値を分ける。
判断できないことは、確認する方法と一緒に残す。
各項目の下に、自分が使ったファイルと、説明を確認した資料の場所を書いた。
完成した教科書ではない。まだ誤りがあれば、直してもらう必要がある。
それでも、次に同じ場所で止まった人が、何を開けばよいかを見つけられるかもしれない。
slack にファイルを共有し、先輩に確認をお願いした。
画面には、これまでの課題のやり取りが残っていた。
最初は、そこに次に行う作業が書かれるのを待っていた。今は、その下に、自分が試したことや、理由を添えた質問も少しずつ並んでいる。
遥は、先生に研究の希望を送った。
高分子の構造と作製条件の両方を考慮し、膜性能を予測・設計する研究に興味があります。
特に、既知材料から離れた候補をどのように評価し、次に確認する候補として選ぶかを考えたいです。
まずは、実際の研究データが、どのように集められ、何を表しているかを確認するところから始めたいと思います。
送信してから、少し気恥ずかしくなった。
まだテーマも決まっていない。必要な論文も、十分には読めていない。
けれど、今の自分が何を面白いと思ったかは、書けていた。
先生から返信が届いた。
四月から、実際の研究データを見ながら相談しましょう。
今回のトレーニングでは、課題とデータをこちらで用意しました。
研究では、何を問題にし、何を確かめれば前へ進めるかも、一緒に考えていきます。
遥はノートの最初のページを開いた。
AIは魔法ではない。
だから、自分で考えられる余地がある。
研究室見学の夜に書いた言葉だった。
あのときの「余地」は、AIにできないことを人が埋める場所のように感じられた。
今は、少し違う。
問いを決めるときにも、データを読むときにも、モデルを動かすときにも、結果を受け取った後にも、考えることがあった。AIを使わないときだけ、人が考えるわけではなかった。
遥は、最後の発表のメモへ戻った。
自分の言葉で話す。
その下に、一行を加えた。
何を根拠にそう考え、次に何を確かめたいかを話す。
窓の外には、夕方の光が残っていた。
研究室の壁にあるポスターを、もう一度見た。いつか自分も、ここではない場所で、自分の研究を説明するのだろうか。
今は、その日を想像するだけだった。
まずは、目の前の一行を、自分で確かめるところから始めたい。
数日後、四年生になった遥は、同じ研究室の扉の前に立った。
鞄には、トレーニングで使ったノートが入っている。書き直したデータの説明、うまくいかなかった計算、先輩から聞いた言葉。最後の方には、まだ確認していないことも残っていた。
研究に必要なものが、全部そろったとは思わない。
それでも、分からないことをそのまま隠さず、調べたり、試したり、誰かと考えたりするところまでは、始められそうだった。
扉の向こうから、キーボードの音が聞こえた。
遥は取っ手に手をかけた。
次に何を確かめるか。
その問いを持って、研究室に入った。
四月だった。
第I部 完
===
第Ⅱ部はこちら
