seabornを使うときによくみる色がある。

pairplotなどでhueを指定するとデフォルトでよくこの色になる。

2023-02-14-cubehelix_palette.png

この色を手動で出す方法を調べたのでメモする。

また、カラーパレットやカラーマップを使用するにあたって、細かい部分(カラーバーを後付けする方法や凡例から色を取り出す方法など)のやり方をまとめた。


pythonのクラスメソッドの使い方について説明する記事は大量に存在する。それらで機能を説明するために使われる例の多くは必ずしもclassmethodでなくてもよい。”なくてもよい”であればまだマシで、staticmethodやその他方法の方法で定義すべき例を挙げて説明している記事が多いと感じる。

そこで、個人的に考えるclassmethodの使い所についてまとめた。


マテリアルズインフォマティクス (MI) において最も重要な要素のうちの一つとして、モデルの解釈が挙げられる。

モデルを解釈することで、ドメイン知識と照らし合わせてモデルの正しさを確認することや新たな知見を得ることができる。

化学構造とその化合物の性質を紐づけて解析を行う定量的構造物性相関 (Quantitative Structure-Property Relationship, QSPR) 手法のうちの一つとして、FingerPrintを説明変数、化合物の性質を目的変数として機械学習モデルを構築する方法がある。

この手法について調査したところ、FingerPrintが対応する部分構造とそれに紐づく寄与率を化学構造上に描画することで解釈を行う手法があることがわかった。

これについて検討を行い、実際に描画を行なった結果を以下に示す。


特別なソフトを使わずに化合物の3次元構造を描画できるようにしたかった。

実際、世の中に化合物を描画するソフトはたくさんあるが、基本的に自分だけでなく見る相手にもそのソフトを使用してもらう必要がある場合がほとんどである。

一般に、会社のPCにソフトをインストールするためには複雑な申請が必要であるケースがある(特に大きな会社)。したがって、そういった会社でも使用できるようなブラウザで化合物の三次元構造をグリグリとマウスで動かしながら触れるような形で出力したいと思った。


最近の投稿

【備忘録】Google domainsからCloudflare Registrarへ移管
Google domainsからCloudflare Registrarにドメインを移管したときの個人的な備忘録。
optunaでearly-stoppingする
optunaの最適化を終了する方法として主に以下の2つが用いられる。 ある回数試行を繰り返したら終了する (n_trials) ある時間経過したら終了する (timeout) 参考: Python: Optuna で決められた時間内で最適化する - CUBE SUGAR CONTAINER ...
【Python】特定のモジュールがインストールされているか確認する方法
あるパッケージが入っているかどうかを確認する方法にはpkgutilsというモジュールが便利だったので、使い方について備忘録的にまとめる。
【Python】RandomStateによる再現性について
scikit-learnにてrandom_stateを指定したときの動作が何のオブジェクトを加えたかによって変わるので備忘録的にメモ。
【Python】関数の引数を取得する方法
Pythonにおいて関数やクラスの引数を標準ライブラリinspectモジュールを使用して取得する方法。