『実践 マテリアルズインフォマティクス』のサポートページです。
本リポジトリを使用する際には
- このリポジトリをクローンする(手元へダウンロードする)
- 必要なライブラリを揃える
という2つのステップを踏む必要があります。
Git BashやMac OS Xのターミナルを開いて,以下のコマンドを実行してください. support-pageというフォルダが作成されます.
$ git clone https://github.com/funatsu-lab/support-page.git
$ conda create -n regz python==3.7 numpy scipy pandas scikit-learn
$ conda install -c rdkit rdkit
$ pip install jupyter
Anaconda (Miniconda)のconda env create
コマンドを使って
(Pythonの)仮想環境を構築します。本フォルダには既に
environment.yml
という必要なライブラリのリストが
掲載されているテキストファイルがありますので利用してください。
$ conda env create -n [Python仮想環境名] -f environment.yml
以下のフォルダ構成はCookie Cutter/Data Scienceが
テンプレートとして作成するフォルダ構成を参考に作っています。
他の人も利用可能な状況にフォルダを維持しておくのは
プログラミングの生産性の観点からも重要です。
可能な限り以下のフォルダ構成を維持するようにしてください。
もちろん、必要に応じてフォルダが増減しても構いません。
support-page
|-- README.md # プロジェクト概要を示すテキストファイル
|-- environment.yml # Anacondaにインストールしたライブラリの情報を書き出す
|-- setup.py # cheminfo ライブラリをコンパイルする場合は作成する
|-- bin # シェルスクリプトを書いたら保存しておくフォルダ
| `-- compile_package.sh
|-- cheminfo # 自作ライブラリを保存するフォルダで、今回は`cheminfo`とした
| |-- __init__.py # __init__.pyを必ず含む
| |-- descriptors.py
| `-- metrics.py
|-- data # データを保存するフォルダ。データセットが多様ならデータソースごとに
| |-- catalyst # サブフォルダを作っておくと良い
| |-- chembl
| |-- delaney-solubility
| `-- zinc
|-- models # 作った機械学習モデルを保存するフォルダ
| |-- 9.3_rdkit_pls.joblib
| |-- morgan_svm.joblib
| |-- rdfrags_svm.joblib
| `-- rdkit_svm.joblib
|-- notebooks # 探索的な解析,可視化をする場合はJupyter Notebookを用いた解析をする
| |-- 1.2-eda-boston-data.ipynb
| |-- 1.3-tsne-tanimoto-distance.ipynb
| |-- 1.4-fragment-visualization.ipynb
| |-- 4.2-doe_orthogonal.ipynb
| |-- 4.4-deap_d_optimal_design.ipynb
| |-- 8.1.2-structure-decomposition.ipynb
| |-- 8.1.2-structure-generation-brics.ipynb
| |-- 8.2-bayes-optimization.ipynb
| |-- 9.2-catalyst-exhaustive.ipynb
| |-- 9.3-decsriptors.ipynb
| `-- 9.4-histamine-antagonist-screening.ipynb
|-- references # 文献を保存しておくフォルダ
|-- results # 解析結果の図を保存しておくフォルダ。必要に応じてサブフォルダを作る
`-- src # Jupyter Notebookで実行すべきではない重い処理や
| # 何度も実行する処理をスクリプトにまとめて保存するフォルダ
|-- from_root.py
|-- from_src.py
|-- parallel.py
|-- parallel_wo_with.py
|-- data
| `-- 9.3-brics.py
|-- features
| |-- 5.2-3-fragmentor.py
| |-- 5.4-rdkit_desc.py
| `-- 5.5-run_mordred.py
`-- models
`-- 9.3-screening.py
- Pythonの基礎(テキスト本編にはありません) gist
- CoLabでの演習
- (環境構築,テキスト参照のこと)
- (マテリアルズインフォマティクス概論,テキスト参照のこと)
- 実験計画法
- 記述子計算(スクリプト実行)
- (機械学習,テキスト参照のこと)
- (機械学習モデルの解釈,テキスト参照のこと)
- 追加検討
- 8.1.1 自作構造生成
- 8.1.2 ReCAP,BRICSによる構造生成
- 8.2 ベイズ最適化
- 解析例
- 9.2 触媒データを使った解析
- 9.3 水溶解度データを使った構造生成、スクリーニング
- 9.4 ChEMBLデータを用いた分類。カーネル法と分類問題
- (Bashによるデータ加工,テキスト参照のこと)
本項はDockerの操作を分かっている方がご利用ください。
ローカルでイメージをビルドする場合
$ docker build -t example/matcheminfo . # Dockerfileからビルド
$ docker run -i -v /$(pwd):/workspace -p 9999:8888 -t example/matcheminfo # 現在のフォルダとDockerコンテナ内を-vオプションで紐付ける(マウントする)
イメージを取得する場合
$ docker pull sshojiro/alpine:latest
$ docker run -i -v /$(pwd):/workspace -p 9999:8888 -t sshojiro/alpine:latest # 現在のフォルダとDockerコンテナ内を-vオプションで紐付ける(マウントする)
本書あるいは本リポジトリに誤りが見つかった場合は
Issueを立ててください。