分子構造・化学構造のデータセットで構築された機械学習モデルを解釈する2つの方向性

分子設計・材料設計・プロセス設計・プロセス管理において、分子記述子・実験条件・合成条件・製造条件・評価条件・プロセス条件・プロセス変数などの特徴量 x と分子・材料の物性・活性・特性や製品の品質などの目的変数 y との間で数理モデル y = f(x) を構築し、構築したモデルに x の値を入力して y の値を予測したり、y が目標値となる x の値を設計したりします。

分子構造・化学構造を x として扱う時、構造は数値化されていない情報のため、事前に分子記述子として数値化して用いたり、構造を SMILES (文字列) やグラフといった形式で用いて数値化とモデル構築を同時に実施したりするなど、工夫が必要です。またそれに伴い、構築されたモデルを解釈するのも工夫が必要となります。

モデルの解釈の方針は、大きく分けて以下の2つです。

 

  1. 解釈可能な (=明確に意味を理解できる)、もしくは構造と紐付け可能な x を用いてモデルを構築し、x もしくは構造をベースにモデルを解釈する
  2. 解釈困難な x も含めてモデルを構築し、構造から y の予測を繰り返してモデルを解釈する

 

1つ目は、解釈可能な x を用いて x でモデルを解釈する方法です。どの x y を説明する上で重要か、y に対してどの x が正にもしくは負に効いているか検討できます。もちろん、x として MACCS keys Morgan fingerprints など、構造と紐付けられるものを用いれば、構造のどの部分が重要か、y に対してどの (部分) 構造が正にもしくは負に効いているか検討が可能です。

例えば以下の文献が参考になります。

Just a moment...
Just a moment...

 

この方法では、モデルを直接解釈できる一方で、解釈可能であるが故に x に制約があるため、予測精度の高いモデルを構築することが困難な場合があります。

2つ目の方法として、まず、どんな x でも良いですし、SMILES やグラフを直接用いても構わないので、様々な方法を工夫して予測精度の高いモデルを構築します。そして、このモデルに意図的に作成した構造を入力して、その y の予測値を検討することで解釈します。例えば、ある置換基がある構造とない構造とで、y の予測値がどのように変化したかで置換基の効果を解釈します。

この方法では、予測精度の高いモデルを構築できる一方で、解釈するために入力する構造を工夫する必要があります。

分子構造・化学構造のデータセットがある時に、そのデータセットで構築するモデルを解釈したい場合は、上の2つの方針を参考にしていただければと思います。

 

以上です。

質問やコメントなどありましたら、X, facebook, メールなどでご連絡いただけるとうれしいです。

 

タイトルとURLをコピーしました