本家様 https://github.com/kiharalab/EM-GAN
サイトのaboutには
EM-GAN is a computational tool, which enables capturing protein structure information from cryo-EM maps more effectively than raw maps.
It is based on 3D deep learning. It is aimed to help protein structure modeling from cryo-EM maps.
(DeepL様翻訳)
EM-GANは、低温電子顕微鏡マップから、生のマップよりも効率的にタンパク質構造情報を取得することを可能にする計算ツールである。
3次元ディープラーニングに基づいている。
低温電子顕微鏡マップからのタンパク質構造モデリングを支援することを目的としている。
pyenv/anacondaでEM-GAN実行環境を拵える.
gitで拾うアプリは各自のホームディレクトリの中に配置.
実行は EM-GAN実行環境 をロードして、ローカルに落としたプログラム/スクリプトを使うって感じ.
fftw-libs-singleパッケージが必要でした
git clone https://github.com/yyuu/pyenv.git /apps/pyenv
export PYENV_ROOT=/apps/pyenv
export PATH=$PYENV_ROOT/bin:$PATH
pyenv install anaconda3-2024.06-1
pyenv global anaconda3-2024.06-1
source /apps/pyenv/versions/anaconda3-2024.06-1/etc/profile.d/conda.sh
(既にpyenv/anacondaが用意されているなら下記の実行)
source /apps/pyenv/versions/anaconda3-2024.06-1/etc/profile.d/conda.sh
その上でEM-GAN実行環境を作る
conda create -n EM-GAN python mrcfile==1.2.0 'numpy>=1.19.4' 'numba>=0.52.0' 'pytorch>=1.6.0' 'scipy>=1.6.0' -c conda-forge -c pytorch -c nvidia
これを利用するための EnvironmentModules は下記のようにします
「/apps/modulefiles/EM-GAN」
#%Module1.0
set root /apps/pyenv/versions/anaconda3-2024.06-1/envs/EM-GAN
prepend-path PATH $root/bin
作ったEM-GAN実行環境にはアプリは入ってないです。単に実行環境を用意しただけで、使用するアプリはgitで拾います。
[saber@rockylinux ~]$ git clone https://github.com/kiharalab/EM-GAN
[saber@rockylinux ~]$ cd EM-GAN
[saber@rockylinux EM-GAN]$ ls -CF
avg_model.py data_dir/ EM_GAN.ipynb loss.py model/ __pycache__/ sr_dataprep.py utils.py
data/ data_prep/ LICENSE MergeMap model.py README.md test.py
[saber@rockylinux EM-GAN]$
[saber@rockylinux EM-GAN]$ chmod +x data_prep/HLmapData
っでEM-GAN実行環境をロードします
[saber@rockylinux EM-GAN]$ module use /apps/modulefiles
[saber@rockylinux EM-GAN]$ module load EM-GAN
gitサイトに記載されているテストを実施してみます
[saber@rockylinux EM-GAN]$ data_prep/HLmapData -a data/2788.mrc -b data/2788.mrc -A 0.16 -B 0.16 -w 12 -s 4 > data/2788_trimmap
[saber@rockylinux EM-GAN]$ python data_prep/generate_input.py data/2788_trimmap 2788_data ./data_dir
[saber@rockylinux EM-GAN]$ python test.py --res_blocks=5 --batch_size=128 --in_channels=32 --G_path=model/G_model --D_path=model/D_model --dir_path=./data_dir/