data-orientedなマテリアルズ・インフォマティクスにおける外挿性に関する議論をまとめたい
本記事では、マテリアルズ・インフォマティクス(MI)において用いられる機械学習、とくに外挿性能の評価方法、そして外挿性の向上方法について、ネットから探してきた論文の内容をまとめる(全4報)。またSchNet, CGCNNなどの機械学習モデル自体を取り扱った議論は取り上げない。(基本的にgoogle scholar検索の上から選んできたもの、で、かつopen accessをメインに)
文章の流れとしては、論文のだいたいのまとめを書いた後に、そこで用いられている手法(アルゴリズム)をちょっと詳しく書くことにする。
(本文におけるCVはCross Validationのことです。)
序(および感想)
(本記事を書いてみての感想、内容はない、次の節から本文)
材料開発に課せられるタスクのうち最もありがちなものは、「今よりもより良い性能の物質はどうしたらできるか」であり、機械学習の文脈で言えば、手持ちのデータを外挿できるモデルをどう作るか、であろう。最強の外挿性能を誇るのはもちろん物理の基本法則であるから、機械学習の外挿性能を高めるためにそちらに近づいていく流れがある。すなわち物理法則asistedなモデルであったり、よりDFT計算に近い形のモデルであったりを作ろうとする流れである。ただこの方法で作ったモデルの弱点は、現時点で持っている物理法則の知識で予測できない特性には近づけないことであろう。例えば高温超伝導のメカニズムはいまだによくわかっていないし、磁石の保磁力なんかはいろんな状況が絡み合いすぎている。さらに言えば、わかったところで本当に求める性能の物質を作れるか自体は確かではない。そうなると、今ある(少数の、かつ手元で作れる)実験データを使ってなんとか外挿領域を見つけられるモデルを作りたい、となるわけで、本記事で取り上げた手法がちょっとしたヒントになるはずである。
当たり前ではあるが、まだまだこの分野では、外挿性能の評価法、および向上方法の完全版は出ていないようである。今後もこの分野の情報を見続けなければならないだろう。(正直途中で飽きたので、全4報の紹介で終わっておく)
また今回それっぽい論文をgoogle scholarで探してみたが、正直なところ上手く検索できなかった。(このレビューは自分のとこの論文の宣伝が主の主張だが、そこそこまとまっていそうではある。)もしこの検索がうまく行っているならば、(学術的価値があるかどうかを別として)まだまだ論文にできそうなネタは転がっているような印象を受ける。既存の半教師あり学習とかコスト関数のアルゴリズムを、MIの文脈でパッケージすれば何本でも書けそうだ。(最後に紹介しているのが典型であろう。IF3くらいの論文誌である)
L. Ward, et al., "A general-purpose machine learning framework for predicting properties of inorganic materials" (2016)
(この論文では外挿性について議論した部分はないものの、本記事に以降で載せる内容の基礎ともなっているので、紹介しておく)
2016年(たぶん)このMIブーム?のやや初期に当たる時期に公開された、Northwestern UniversityのL. Wardらによるこの論文は、物性データベースをどのように機械学習手法でうまく活用するのか、その指針を与えたと思われる(たぶん)[L.Ward 2016]。
提案された手法は主に二つあり、一つは特徴量をどのように選ぶのか(作るのか)、もう一つはどのデータを訓練に使うべきか、である。前者については物質の組成、つまり元素の組み合わせから基本的物性(例えば電気陰性度など)の平均や最頻値などを算出して特徴量を作り出すことを提案している。全体で145の特徴量が作成されている。予測すべき目的変数によって重要度の高い特徴量も異なるため、汎用的なモデルを作成するためにはこのように多数の特徴量を用意しておくべきだと指摘している。また後者については、与えられたデータそのままを用いて、直接に目的変数を予測する回帰モデルを作るのではなく、目的変数を一定の値の範囲で分けて、その分類を予測するモデルを作成し、またその後に経験的な知見から作られる簡素な分類(決定木ライクな、たとえばハロゲンを含むかどうか、など)をおこなってデータを分割したのちに、そのサブセットについて回帰モデルを作成することを提案している。分割後のデータは数が少なくなるが、モデルの精度はむしろ向上するという。
B. Meredig, et al., "Can machine learning identify the next high-temperature superconductor? Examining extrapolation performance for materials discovery" (2018)
B. Meredig(2018)ではMIと通常の機械学習タスクとの違いについて、外挿性が求められる点に加えて、データが一様に分布していない点を指摘している。データが複数のクラスターに分かれて分布してしまっている場合が多いということだ。例えば超伝導体の転移温度では、いわゆる従来型超伝導体の転移温度が高くても40 Kなのに対して、銅酸化物超伝導体では低くても50 K, 高いもので100 Kを超える。このように従来型と銅酸化物系で明らかに二つのクラスターが形成されている。この事実を無視して、クラスター関係なくランダムに抽出して k-fold CVなどでモデル評価を行えば、新しい材料系(つまり新しい別のクラスター)の発見ができるかどうかは全くわからない事になる。
実際に著者らは複数のデータセットに対して、データのクラスター性を取り入れたLOCO CVで評価を行い、高い性能が報告されているランダムフォレストなどが、内挿性能しかもたないnaive 1 nearest neighbor モデルより性能が低くとどまっていることを示している。
評価手法:LOCO CV (Leave One Cluster Out CV)
通常のk-fold CVは元のデータセットをランダムにk個のサブセットに分割を行うが、LOCO CVではデータセットの分割をk-nearest neighborでk個にクラスター分けすることで行う。クラスター分けしたk個のサブセットについて、トレーニングをk-1個、評価を残りの1個のサブセットで行い、k回繰り返す。
B. Kailkhura, et al., "Reliable and explainable machine-learning methods for accelerated material discovery" (2019)
B. Kailkhura らは、訓練データが均一な分布であることが機械学習の重要な仮定であると指摘し、MIにおけるデータの不均一性に対して、ひとつの解決策を提示している[B.Kailkhura 2019]。
彼らが提案するpipelineは、目的変数のクラス分けモデルと、そのクラスに応じた回帰モデルを組み合わせたものである。後者の回帰モデルは、前者のモデルによる予測クラスごとに複数作ることになるが、回帰モデルが訓練に用いるデータはクラス分けされた後の均一なものとなる。さらに複数の目的変数を用いることにより、それらの予測値を交互に用いてモデル精度をさらに向上させることができるという。
評価に関しては、クラス分けの際に、新たに分類したデータと、その予測クラスに元から属するデータ間の近さ(Gower distance)を算出することにより、その分類、そしてその後での目的変数の予測値の信頼度を得ることができる。その上、クラス分けと特性値予測の2段階予測であるために、それぞれの段階でその予測結果の妥当性について人間が議論できるという、予測の説明性も通常の手法より高くなる。
始めに分類モデルを適用して、回帰モデルを用いる手法は上に紹介したL. Wardらの手法と同様であるが、L. Wardらの手法はモデルの精度向上のために加えて良い分割方法を網羅的に行っており、この点で計算コストが高いという問題がある。また新たに示したモデルの信頼度の指標による説明性の向上、および予測値の交互参照によるモデル性能向上を組み合わせた点に本報告の新規性がある。
提案手法の検証として、彼らはOpen Quantum Materials Database(OQMD)を訓練データに、太陽光発電素子に適する材料の予測(バンドギャップと形成エネルギー)を行い、物理的知見からも妥当と思われる候補物質を見出した。
最後に現状での課題を以下の3点挙げている。すなわち、データが少なすぎるとどうにもならないこと、特徴量の選択によっては(例えば元素の情報だけなどでは)候補物質を提示されても、作り方や結晶構造すらもわからないままであること、また予測の説明性についても現時点ではドメイン知識に依るところが強く、その分バイアスが評価にかかってしまっていること、である。
pipeline手法
まず訓練データの目的変数をビニングし、一旦そのラベルに置き換える。ビニングや分け方は経験的知見を用いても良いし、何らかのアルゴリズムを用いても良い。著者らはk-meansを用いていた。そしてビニングしたラベルについて、分類問題として分類モデルを生成する。
次に訓練データをビニングラベルごとに分割し、そのサブセットごとに回帰モデルを生成する(このとき目的変数は元の連続値)。
推論の際は、対象のデータをまず分類モデルで分類して、その後その予測ラベルに対応する回帰モデルを使うことで最終的に目的変数の推論値を得る。
さらに目的変数を複数種とり、ある目的変数について作成した回帰モデルの予測値を、別の目的変数の回帰モデル作成の際に特徴量として組み込むことで、回帰モデルの予測精度をさらに向上させることができる。
著者らの例によれば、導体、半導体、絶縁体のそれぞれのバンドギャップは連続的なものではなく、導体はゼロで、半導体は1.0~1.5 eV、絶縁体は2 eV超という経験的知識がある。この知識に基づき、訓練データのバンドギャップ値について、それぞれ導体、半導体、絶縁体という分類ラベルを付すことができる。このラベルと物質の特徴量(組成など)で分類モデルを作成することで、推論時には、まずこの物質がだいたいどの領域に属するか判別できる。そして導体、半導体、絶縁体のデータごとに作成した回帰モデルを使用することで、細かい特性値を予測することとなる。またバンドギャップの予測だけでなく、生成エネルギーの予測も同様に行い、その予測値を改めてバンドギャップの回帰予測モデルの訓練に用いることで、より精度良い値が得られる。
W. Yong, et al., "Improving prediction accuracy of high-performance materials via modified machine learning strategy" (2021)
(open accessではない、そして読んでる人5人しかいない。たまたま目にとまったため書いておく)
W. Yongらは外挿性能力の高いモデルを作成するための、直接的で汎用性の高い手法(言ってしまえば単なるCVの切り方)を提案している[W.Yong 2021]。つまりモデル評価に用いるCV、その際のサブセット分割方法を目的変数の値によって決め、訓練データのうちの外挿領域に近いデータを誤答した場合にスコアがより悪化するようにした。結果としてデータ全体の予測精度は悪化するものの、外挿領域にあるデータに対する予測精度は向上していると報告する。
(訓練に外挿領域データを含まないような書きっぷりだけど、どうもプロットに訓練データとして含まれているように見える、、どういうことだろうか)
評価手法 : Extrapolation strategy CV
まずデータを目的変数の値でソートする。そして任意の値でデータを均等に分割する。文中では10分割しており、1つ目のサブセットは最も低い目的変数をもつデータからなり、最後の10番目が外挿領域に近いデータとなる。
最終的な評価値は、サブセットごとに算出した平均二乗誤差の重み付け平均値であり、まず1つ目のサブセットでモデルをフィッティングし、2つ目のサブセットについて予測して誤差を算出する。次は1, 2のサブセットを用いてフィッティング、3番目のサブセットで誤差算出、、と繰り返す。それぞれの算出した誤差への重み付けは、後になるほど強くし、文中では単純に1づつ増やしたものにしていた。(つまり1個目の誤差に1/(1+2+…+10)をかけて保持、次の誤差に2/55をかけ、、、)
引用
[L.Ward 2016]
Logan Ward, Ankit Agrawal, Alok Choudhary & Christopher Wolverton, npj Comput Mater 2, 16028 (2016)
[B.Meredig 2018]
Bryce Meredig, Erin Antono, Carena Church, Maxwell Hutchinson, Julia Ling, Sean Paradiso, Ben Blaiszik, Ian Foster, Brenna Gibbons, Jason Hattrick-Simpers, Apurva Mehta, Logan Ward, Mol. Syst. Des. Eng., 3, 819-825 (2018)
[B.Kailkhura 2019]
Bhavya Kailkhura, Brian Gallagher, Sookyung Kim, Anna Hiszpanski & T. Yong-Jin Han, npj Comput Mater 5, 108 (2019)
[W.Yong 2021]
Wei Yong, Hongtao Zhang, Huadong Fu, Yaliang Zhu, Jie He, Jianxin Xie, Conput. Mater. Sci., 204, 111181, (2021)
この記事が気に入ったらサポートをしてみませんか?