magattacaのブログ

日付以外誤報

TeachOpenCADD 2021をインストールした話

大幅にアップデートされたTeachOpenCADD 2021がリリースされました!

とりあえずインストールした!!

ちょっとつまずいた!!

のでインストール方法のメモです。

1. TeachOpenCADDって?

TeachOpenCADDは「計算機支援ドラッグデザイン(CADD, computer-aided drug design)の基本的なタスクをどのように実行すれば良いか?」学習・教育するためのプラットフォームで、ケモインフォマティクス構造バイオインフォマティクスについて学ぶ事ができる教材です。

Volkamer研究室が主体となって開発されており、オープンソースCC BY 4.0)で公開されています。

2019年に公開・論文発表されており、以前こちらのブログでも取り上げさせていただきました。

jcheminf.biomedcentral.com

magattaca.hatenablog.com

今回、大幅にアップデートされたTeachOpenCADD 2021が公開されましたので改めてご紹介します。

2. TeachOpenCADD 2021

TeachOpenCADDはCADDのトピックをそれぞれ取り上げたトークトリアルtalk + tutorial = talktorial)と呼ばれる教材で構成されています。

2019年版ではT1 ~ T10の10回のトークトリアルでしたが、2021年版はT22までと大幅に内容がアップデートされています。

ChemRxivに論文(preprint)が公開されています。

  • Sydow D, Rodríguez-Guerra J, Kimber TB, Schaller D, Taylor CJ, Chen Y, et al. TeachOpenCADD 2021: Open Source and FAIR Python Pipelines to Assist in Structural Bioinformatics and Cheminformatics Research. ChemRxiv

Figure 1. をご覧いただけば扱われている内容がつかめると思います。

f:id:magattaca:20211231000639p:plain

すごい!!

もう少し概要を知りたい方はVolkamer Labのブログ(TeachOpenCADD 2021 release is out!)や、RDKit UGM2021でのご発表などもご参照いただくと良いかも。。。

  • UGM2021のライトニングトーク(関連発表は9分50秒くらいからスタート(10分弱))

www.youtube.com

3. アップデートはコンテンツだけじゃない!Webサイトも充実!

盛りだくさんにコンテンツがアップデートされたTeachOpenCADDですが、2021のアップデートはさらに豪華です!

格好いいWebサイトまでできました!!

f:id:magattaca:20211231000729p:plain

素敵だと思ったのは「Talktorials by collection」。関連するトークトリアルをグループ分けしたものが確認できます。

f:id:magattaca:20211231000803p:plain

構造バイオインフォマティクスってインスタ映えしそうですね。

4. まだまだ増えてるコンテンツ

TeachOpenCADD 2021はトークトリアル T22までのアップデートと書きましたが、実はコンテンツは継続的に開発されていてWebサイト上では最新コンテンツも確認できます。

Volkamer Labのブログ(TeachOpenCADD Kinase edition is out!, 2021.12.14)によると、キナーゼに焦点を当てたスペシャルエディションができたそう。

Webサイトでチェックだ!

f:id:magattaca:20211231000857p:plain

新しいトークトリアル(T23 ~ T28)がアップデート済みです!ますます充実していますね!

5. オンライン上で遊ぼう!(インストール不要)

TeachOpenCADDで遊ぶにはオンライン上で実行する方法と、ローカル環境にインストールする方法の2通りがあります。

オンラインはBinderで実行する形式で、セットアップ不要で手間要らずです。TeachOpenCADDのGitHub上にある「lauch / binder」ボタンをクリックするだけ!

BinderのURLは「 https://mybinder.org/v2/gh/volkamerlab/TeachOpenCADD/master 」なので、毎回GitHubに行くのが面倒な方はブックマークしておくと便利かもしれません。

こんな感じでBinderが起動して環境を準備してくれます。

f:id:magattaca:20211231000931p:plain

準備にちょっと時間がかかります(5~10分くらい?)が、ワンクリックで使えるお手軽さは最高です。

準備できるとJupyter Labが立ち上がります。こんなの。

f:id:magattaca:20211231000959p:plain

上図のように「teachopencaddディレクトリ → talktorialsディレクトリ → 見たいトークトリアルのディレクトリ(例:T001_query_chembl)」とたどって目的のノートブック(talktorkal.ipynb)を見つけます。

開くとWebサイト上で閲覧できるものと同じものが見られます。こんな感じ。

f:id:magattaca:20211231001017p:plain

Webサイトとの違いは実際にノートブックのセルを実行できる事です。また編集できるので気になるコードを修正して結果の違いを見比べたり、試したい解析を追加したりと、いろんな遊び方ができそうです。

6. ローカル環境で動かしたい!〜インストール①〜

毎回Binderを待つのが嫌!オフラインでも試したい!という方はconda環境があればローカルにインストールすることもできます。

WebサイトのRun locallyページにインストール方法が書かれています。

Condaパッケージからのインストールは下記で、mambaを使った方法が書かれています。

f:id:magattaca:20211231001104p:plain

mambaは「C++で実装された高速なcondaパッケージマネージャー」だそうです*1。conda環境を使われているなら、mambaを追加インストールしておけば諸々のパッケージインストールが速くなるみたいです。(mambaオフィシャルドキュメント)

mambaは以下でインストールできます。私はMacなのでターミナルで以下を実行しました。

conda install mamba -c conda-forge

インストールできたら今まで「conda install ~~~」としてきたのを「mamba install ~~~」とするだけでOKです。

なお、TeachOpenCADDのインストール方法では新しい仮想環境をつくる工程が省略されているようです。通常通りconda create -n <仮想環境名>とすればOKですが、仮想環境の作成はmambaでもできるそうです。

やってみた!

# 仮想環境の作成
mamba create -n teachopencadd

できた!

f:id:magattaca:20211231001240p:plain

上図の通りできた仮想環境(teachopencadd)のアクティベート、ディアクティベートの方法はcondaと変わらず同じコマンドです。

なお、mambaで作成した仮想環境もconda info -eで確認できる環境一覧に出てきますし、削除したくなったら以下でOKです。

conda remove -n teachopencadd --all

仮想環境ができたら、アクティベートしてTeachOpen CADDをインストールします。(Webサイトの順番だとできない気がするので逆にしてます)

# 仮想環境のアクティベート
conda activate teachopencadd

# TeachOpenCADDのインストール 
mamba install teachopencadd

インストールできたら以下のコマンドを実行しましょう!

teachopencadd start .

カレントディレクト.)に新しいワークスペースが作成され、ターミナルにこんなのが表示されます。

f:id:magattaca:20211231001318p:plain

ロゴがかわいいですね。使えるトークトリアルの一覧とJupyterLabの起動コマンドが書かれています。

jupyter lab teachopencadd-talktorials

指示通り上記コマンドを実行すればBinderで確認したのと同じページがローカルで立ち上がります。

f:id:magattaca:20211231001349p:plain

無事インストールできました!

なお、ワークスペースを作成する場所を指定したい時はteachopencadd start .コマンドのピリオドの部分にお好みのパスを入れてあげてください。

7. もっとローカル環境で動かしたい! 〜インストール②〜

「リリースを待ちきれない!」という方や、「自分で新しいトークトリアルを作るぜ!」という方は最新の開発版をインストールされるのも良いかもしれません。

一応ご紹介しておきます。

f:id:magattaca:20211231001432p:plain

以下のコマンドでGitHubのTeachOpenCADDレポジトリに用意されているテスト環境用のtest_env.ymlを利用して仮想環境teachopencaddが作成されます。

mamba env create -f https://raw.githubusercontent.com/volkamerlab/TeachOpenCADD/master/devtools/test_env.yml

次に、以下でGitHubのレポジトリが作業ディレクトリ内にZIPファイルとしてダウンロードされます。

wget https://github.com/volkamerlab/teachopencadd/archive/master.zip -O teachopencadd.zip

unzipで解凍すればOKですが、以下では新しくDocumentsディレクトリを作ってその中に解凍しています。

# 作業ディレクトリ(test)の下にDocumentsディレクトリを作成
mkdir -p ./Documents

# Documentsディレクトリ内にファイルを解凍
unzip teachopencadd.zip -d ./Documents

これでteachopencadd-masterディレクトリができました。この中のtalktorialsディレクトリに各トークトリアルのディレクトリが入っています。

f:id:magattaca:20211231001509p:plain

あとはtalktorialsディレクトリに移動してJupyterLabを立ち上げればおしまいです!仮想環境(teachopencadd)のアクティベートも忘れずに!

# talktorialsディレクトリに移動
cd ./Documents/teachopencadd-master/teachopencadd/talktorials

# 仮想環境のアクティベート
conda activate teachopencadd

# JupyterLabの立ち上げ
jupyter lab

mamba installしたときと同じJupyterLab画面が立ち上がりました!

先に見たインストール方法①ではワークスペース作成コマンドの実行があり、talktorialsフォルダができました。開発環境版を使う場合はワークスペース作成の代わりに、GitHubレポジトリを丸ごと持ってきてtalktorialsディレクトリをそのまま利用する、という違いがあるようです。

8. おしまい

以上、新しくパワーアップしたTeachOpenCADDについて簡単な紹介とインストール方法のご紹介でした。

コンテンツの大幅なアップデートだけでなく、Webサイトもとても見やすくなっていて素晴らしいですね!

Webサイトに書かれているインストール方法そのままだと、どうも私の環境(mac)ではうまくいかなかったので、ちょっとだけ手順をかえたものを記事にしてみました。色々と理解しないまま行っているので間違っているかもしれません。ご指摘いただけると嬉しいです。

なお、2021年版ではアップデートがなかったようですが、2019年版はKNIME版もありました。

こちらナイメストさんがnote上で使い方を解説してくださっています。

note.com

KNIME各ノードについて初歩から丁寧に説明してくださっていて、ほとんどKNIMEを使ったことのない私でも「ぽちぽちクリックしてたら動いたけど、背景ではこんなことが行われてるのねー」ととても勉強になるのでおすすめです。

正直、コードをみてもよくわからないのでKNIME版のアップデートが待ち遠しいです!!

なおなお、ついでのついでに皆様TalktorialsフォルダのトップがいずれもT000_templateとなっていることにお気づきになられましたか???

f:id:magattaca:20211231002040p:plain

明日のTeachOpenCADDを作るのは君だ!!!

おしまい。