Slide 1

Slide 1 text

材料の物性予測コンペ 3rd place solution

Slide 2

Slide 2 text

自己紹介 コンペ参加名:mi-solution 趣味:コンペに出ること(Nishika(🥇1🥈1🥉0), Kaggle(Kaggle Expert:🥇0🥈4🥉3)) 仕事:データサイエンティストをしています 今回コンペに参加しようと思ったきっかけ:いわゆるMaterials Informaticsに関するコンペは開催が珍しく、 また今回は題材が結晶材料であったため、これらの知見を 深めたいと思い参加した。

Slide 3

Slide 3 text

コンペ概要 材料の組成や構造の情報から生成エネルギー(eV/atom)を予測する 生成エネルギー(eV/Atom) 標準状態の元素に対する化合物のエネルギーを原子単位に正規化した値 例:Fe2O3の場合は以下の式で算出されます。 ( -2 *

Slide 4

Slide 4 text

結果 ソロで3位。人生で初めてのコンペTOP3入賞🎉

Slide 5

Slide 5 text

ソリューション(Overview) *1:https://hackingmaterials.lbl.gov/matminer/index.html/https://www.sciencedirect.com/science/article/abs/pii/S0927025618303252?via%3Dihub *2:https://github.com/materialsvirtuallab/megnet/ https://pubs.acs.org/doi/10.1021/acs.chemmater.9b01294 *3:https://github.com/usnistgov/alignn/ https://www.nature.com/articles/s41524-021-00650-1 MEGNet*2 ALIGNN*3 Training data Structure object POSCAR file Composition object Feature Engineering ( Matminer*1) Prediction Prediction Prediction Prediction Prediction Prediction Prediction Prediction Prediction Prediction Prediction LightGBM LightGBM LightGBM LightGBM LightGBM e n s e m b l e Prediction Matminerを用いて Composition objectとStructure object から特徴量作成 epochやfold、 外れ値除去の条件などを 変えて3条件で学習 epochやcutoff半径などを変えて 3条件で学習 Public:0.0638 (3rd) Private:0.067835 (3rd)

Slide 6

Slide 6 text

結晶構造のデータとは-OVITO*を用いた可視化- POSCAR file * https://www.ovito.org/

Slide 7

Slide 7 text

EDA 2点、大きく外れている点があった(どう扱うか進めながら考えることに)

Slide 8

Slide 8 text

Matminer*を用いた特徴量エンジニアリング Matminer:材料の組成や構造の情報から記述子を生成できるライブラリ * https://hackingmaterials.lbl.gov/matminer/index.html https://www.sciencedirect.com/science/article/abs/pii/S0927025618303252?via%3Dihub Training data Structure object Composition object Feature Engineering Structure Summary Lattice abc : 3.912223 3.912223 3.912223 angles : 90.0 90.0 90.0 volume : 59.878485316366636 A : 3.912223 0.0 2.395545687250328e-16 B : 6.291334416885879e-16 3.912223 2.395545687250328e-16 C : 0.0 0.0 3.912223 PeriodicSite: V (0.0000, 0.0000, 0.0000) [0.0000, 0.0000, 0.0000] PeriodicSite: Os (1.9561, 1.9561, 1.9561) [0.5000, 0.5000, 0.5000] PeriodicSite: O (1.9561, 1.9561, 0.0000) [0.5000, 0.5000, 0.0000] PeriodicSite: O (1.9561, 0.0000, 1.9561) [0.5000, 0.0000, 0.5000] PeriodicSite: O (0.0000, 1.9561, 1.9561) [0.0000, 0.5000, 0.5000] (V, Os, O) 例 例

Slide 9

Slide 9 text

Matminer*を用いた特徴量エンジニアリング Training data Structure object Composition object Feature Engineering Structure Summary Lattice abc : 3.912223 3.912223 3.912223 angles : 90.0 90.0 90.0 volume : 59.878485316366636 A : 3.912223 0.0 2.395545687250328e-16 B : 6.291334416885879e-16 3.912223 2.395545687250328e-16 C : 0.0 0.0 3.912223 PeriodicSite: V (0.0000, 0.0000, 0.0000) [0.0000, 0.0000, 0.0000] PeriodicSite: Os (1.9561, 1.9561, 1.9561) [0.5000, 0.5000, 0.5000] PeriodicSite: O (1.9561, 1.9561, 0.0000) [0.5000, 0.5000, 0.0000] PeriodicSite: O (1.9561, 0.0000, 1.9561) [0.5000, 0.0000, 0.5000] PeriodicSite: O (0.0000, 1.9561, 1.9561) [0.0000, 0.5000, 0.5000] (V, Os, O) 例 例 Composition object Structure object ・原子の物性に関する特徴量 ・酸化に関する特徴量 ・原子の組成比に関する特徴量 ・価数に関する特徴量 ・イオン物性に関する特徴量 ・密度に関する特徴量 ・配位数に関する特徴量 ・近隣原子との物性の違いに関する特徴量 ・構造の不均一性に関する特徴量 ・化学的規則性に関する特徴量 ・原子充填率に関する特徴量 400個弱の 特徴量を作成 * https://hackingmaterials.lbl.gov/matminer/index.html https://www.sciencedirect.com/science/article/abs/pii/S0927025618303252?via%3Dihub Matminer:材料の組成や構造の情報から特徴量を生成できるライブラリ

Slide 10

Slide 10 text

MEGNet* MEGNet:結晶構造を入力とする原子間相互作用に注目したGNNベースのモデル Structure Summary Lattice abc : 3.912223 3.912223 3.912223 angles : 90.0 90.0 90.0 volume : 59.878485316366636 A : 3.912223 0.0 2.395545687250328e-16 B : 6.291334416885879e-16 3.912223 2.395545687250328e-16 C : 0.0 0.0 3.912223 PeriodicSite: V (0.0000, 0.0000, 0.0000) [0.0000, 0.0000, 0.0000] PeriodicSite: Os (1.9561, 1.9561, 1.9561) [0.5000, 0.5000, 0.5000] PeriodicSite: O (1.9561, 1.9561, 0.0000) [0.5000, 0.5000, 0.0000] PeriodicSite: O (1.9561, 0.0000, 1.9561) [0.5000, 0.0000, 0.5000] PeriodicSite: O (0.0000, 1.9561, 1.9561) [0.0000, 0.5000, 0.5000] MEGNet Training data Structure object Prediction 例 * https://github.com/materialsvirtuallab/megnet https://pubs.acs.org/doi/10.1021/acs.chemmater.9b01294

Slide 11

Slide 11 text

MEGNet*での検証 CV:0.0870 CV(外れ値除去後):0.0830 Public:0.0791 (Private:0.0813) Train data Validation data 外れ値を消去した方がCVとLBの相関が良かった target (eV/atom) prediction (eV/atom) * https://github.com/materialsvirtuallab/megnet https://pubs.acs.org/doi/10.1021/acs.chemmater.9b01294

Slide 12

Slide 12 text

ALIGNN* ALIGNN:結晶構造を入力とする原子間距離と角度に基づく多体相互作用に注目したGNNベースのモデル ALIGNN Training data POSCAR file Prediction 例 * https://github.com/usnistgov/alignn https://www.nature.com/articles/s41524-021-00650-1

Slide 13

Slide 13 text

スコア推移とシングルモデルのCV-LB相関 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0 5 10 15 20 25 30 35 40 45 Public LB score Submit回数 GBDTベース 特徴量エンジニアリングでどこま で精度が上がるかを検証 ⇒ 精度が0.11くらいで頭打ち GNNベース GBDTベースで精度が頭打ちに なったため、MEGNetを試す ⇒ 0.1の壁を超える GNN+GBDT GNNとGBDT(GNNの predictionを特徴量に加えた) のアンサンブルが効きそうなこと が分かる GNNベース アンサンブル用にALIGNNを 試し始める アンサンブル 今までの実験を挙動などを 見ながらアンサンブル CVとLBの相関 相関はとれていそうだったので、 All dataでの学習に着手 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0 0.05 0.1 0.15 0.2 Public LB score CV score シングルモデルのCV-LB相関(代表点) GBDT MEGNet ALIGNN

Slide 14

Slide 14 text

所感 ・GBDTでの特徴量エンジニアリングでは途中から精度の頭打ちがあった ・GBDTでのアンサンブルはあまり伸び幅はなかった ・外れ値除去は思ったよりは効かなかった ・方針転換をもう少し早くすればよかった(GBDTでの特徴量エンジニアリングに時間をかけすぎた) ・元論文を読むことで、モデルのパラメータをどう動かすべきかのヒントを得た(カットオフ半径など) ・最終日まで試行錯誤してスコアを伸ばし続けることができた (アイディアを全て試せなかったが・・・) ・今までのコンペの取り組み方と今回のテーマに関する論文を読み漁ることを掛け合わせて取り組めた ・結晶材料の精度の良い予測には構造情報の考慮が重要だと改めて実感した 非常に楽しいコンペでした、ご開催ありがとうございました!