一 alphafold简介
alphafold2应该算是彻底改变计算生物学在生物学家心中地位的利器了。这是一个可以媲美冷冻电镜的人工智能算法,在诸多生物学领域得到了应用。比如药物开发、复合物解析、蛋白质功能解析等诸多领域得到了深刻而广泛的认识。并且,诸多论文只要能够蹭上一点alphafole,给人的感觉也会变得高大上起来。因此,本人将从一个生信小白的角度,教大家如何使用这一分析利器,为自己的论文添砖加瓦。
二 调用
延续之前的推文,首先,读者需要在自己的服务器上安装GPU的驱动,随后安装dock(需要安装nvidia-docker2才能调用GPU)
按照前一篇推文《docker初探》的命令进入docker容器中
随后,进入app->alphafold目录中。
此时,按照提示安装对应的依赖。
pip install -r requirements.txt
报错:AttributeError: module 'jaxlib.pocketfft' has no attribute 'pocketfft'
解决方法:官方调用的包会有问题,需要升级相应的包和安装相应的包。
pip install --upgrade jax==0.2.14 jaxlib==0.1.69 mock
然后,调用run_alphafold_test.py,即可实现alphafold的初步测试。
python run_alphafold_test.py
运行结果如下,可以看出测试部分还是很很快运行结束的
需要注意的是,alphafold的真正使用需要安装相应的数据集才能完成准确的预测,这里仅仅是测试一下。如下图所示,一个完成的alphafold运行需要极大的存储空间(不少于两个T的空间)。
三 惯例小结
可以看出,使用docker进行运算,可以避免系统环境的改变,同时通过安装已有docker,满足了相应软件的安装环境,实在是一举两得的好方法。只是,这个也会消耗过多的内存,不建议在自己的电脑上这样使用。
docker有优点也有缺点,优点就是可以创造一个完全隔离主机的环境,缺点的话就是每次用一个新docker image,都可能面临着需要重新安装部署环境的劳动。至于docker好与不好,不做判断,重点是在于你如何使用它。特别建议大的程序环境还是使用docker为妙,否则像conda破坏了环境导致结果无法重现,可能更让人难受。
另外,进一步推广一下我开发的相关软件,Multi-omics Hammer软件和Multi-omics Visual软件,也欢迎大家关注并多提意见,详细的话可以见个人主页介绍。
以下为自研软件地址:
Multi-omics Hammer软件地址:https://github.com/wangjun258/Multi-omics-Hammer
Multi-omics Visual软件地址:https://github.com/wangjun258/Multi_omics_Visual