重要構造をハイライトしよう! Tanimoto-kernel 搭載 サポートベクター回帰

データ分析

こんにちはnissyです

前回に引き続き、化学構造を用いたデータ分析です!

化学構造と物理的性質との関係をモデリングする
定量的構造物性相関(QSPR、Quantitative Structure-Property Relationship)を用いて製品開発をサポーツするプロジェクトに参加することがありました。

私自信全く経験のない中、プロジェクトに参加させていただきインプットとアウトプットを自転車操業のように学んだ知識を紹介したいと思います。

私が活用したのはQSPRの解釈技術です。

ざっくりと説明すると、線形回帰分析やランダムフォレストでモデリング得られる特徴量重要度を化学構造に可視化する技術です。

それでは説明していきます!!!

Tanimoto-kernel 搭載 サポートベクター回帰

今回はTanimoto-kernelを用いたサポートベクター回帰でモデルを構築します。

Tanimoto-kernelは、フィンガープリントで表現された化学構造の類似度を測るために使用されるなカーネル関数です。
Tanimoto-kernelをSVRに組み込むことで、分子記述子間の類似度を高次元空間で利用し、
分子構造と物性間の非線形な関係をモデル化することが可能です。

Tanimoto-kernelを用いるSVRモデルの大きな特徴として、予測結果を個々のフィンガープリントの寄与に分解し、これによりどの構造が予測結果にどのような影響を与えているかを定量的に評価できます。

 

ライブラリーを読み込みます

データセットを準備します。SMILESのフィンガープリントに変換するまでは、過去のブログで紹介してるのでそちらも参照してください。

 

この手法は非常に計算コストがかかるので、使用するサンプルはデータセットからランダムに選んだ50サンプルを用いています
目的変数は標準化すると学習が上手いこといかない感覚があるので、中心化のみしています
フィンガープリントに変換する際に、ビットを大きくしないとハイライト荒くなります
より詳細にハイライトしたい場合はビット数を大きくしましょう!

 

まずTanimoto-kernelの関数を設定します。これはジャッカード距離と同じ概念です。

Tanimoto-kernel搭載したサポートベクター回帰の学習を行います。

学習結果を確認してみます

この時、決定係数R2が低いと構造物性相関が取れていないということになります。

R2が低くなった場合の考えられる要因として、化学構造以外の特徴量が物性に対する寄与が大きい等が考えられます。

今回のケースではlogSは化学構造の寄与が大きいため上記のような結果が得られたと考えられます。

続いて、この学習結果を元に化学構造へのハイライトを行なっていきます!

 

次に化学構造が目的変数へ与えている寄与度を、個々のフィンガープリントの寄与に分解し、それらを抽出します。式については論文を参考しています。

各フィンガープリントに与えられた寄与度は以下のコードで確認できます。

それでは化学構造にハイライトさせて行きましょう!!

コードにあるconf=1の値はエラーが出ないギリギリ高い数値を見つけてください
confの値が大きいとハイライトが濃くなります
今回はlogSに正の寄与が強くなるほど濃い赤、負の寄与が強くなるほど濃い青になるように配色しました。

 

 

まとめ

Tanimoto-kernelを搭載したサポートベクター回帰は、特に分子構造の類似性を考慮した予測において解釈性の高さから、材料設計分野での活用が期待されます。一方で、計算コストやパラメータ調整などのコツも必要になるため、データに応じてトライアル&エラーを繰り返して実装してみてください!

Tanimoto-kernelを搭載したサポートベクター回帰はマーケティング分析とかにも使えいそうな気がする・・・

参考文献
R.Asahara, T.Miyao, ACS Omega, 7, 26952(2022).
R.Rodríguez-Pérez, M.Vogt, J.Bajorath、ACS Omega, 2, 6371(2017).

 

 

 

 

データ分析
未経験の壁をぶっこわ〜す!化学系データサイエンティスト転職ブログ

コメント

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