News of SARS COV 2 MiniProtein Binder

Rosetta@home 新发现了一种抑制SARS-Cov-2的计算机合成药物,论文发表在Science科学杂志上,De novo design of picomolar SARS-CoV-2 miniprotein inhibitors。 下图为目前自己的算力贡献。 论文内容解析 Doing…

September 10, 2020

Automate Analyse Covid 19 XRay Image by DeepLearning

动画程式代码如下: lung-3D.nb lung3d = AnatomyPlot3D[lung anatomical structure, PlotTheme->"XRay"] gif = {}; Do[ image = ImageResize[ Show[lung3d, ViewPoint -> {3 Cos[x], 3 Sin[x], 0}, ViewAngle -> 20 Degree], {256, 256}]; gif = Append[gif, image], {x, 0, 2 Pi, 0.1}] Export["lung-3D.gif", gif, "AnimationRepetitions" -> Infinity ] image = ImageResize[ Show[lung3d, ViewPoint -> {3 Cos[Pi/2], 3 Sin[Pi/2], 0}, ViewAngle -> 20 Degree], {512, 512}] 训练集收集 covid-chestxray-dataset paultimothymooney/chest-xray-pneumonia muhammedtalo/COVID-19 Labeled Optical Coherence Tomography (OCT) and Chest X-Ray Images for Classification ...

July 13, 2020

Rosetta项目最新进展 2020 06 26

Rosetta@home项目计算生成了SARS-COV-2的免疫蛋白,并用于动物实验,可以起到保护动物免受致命性新型冠状病毒的感染,目前该药物还在实验阶段,正在优化中。 从四月初到现在,我自己运行了35台Raspberry Pi 4G(140核心 总功耗280W)加入到了Rosetta@home项目中,希望接下来的半年会有更多关于该研究项目的新成果,那样自己付出的电费和硬件成本也值得了。 目前自己贡献的算力在团队里的排名为第六:

June 26, 2020

对抗 CoVid-2019

一段简短的视频请点击这里 关于分布式计算项目 第一次接触分布式计算项目是在高中毕业的那段时间,用自己的笔记本跑过Boinc分布式计算平台,其中最著名的是seti@home, Boinc平台就是为这个项目而开发的。 分布式计算的思想就是主服务器将一个任务拆分成若干个小任务,将这些小任务分派给客户端进行运算,客户端运算完成之后将小任务结果发送给主服务器,主服务器将这些计算结果汇总而得到该任务的执行结果。 由于采用超级计算机进行计算的成本相当昂贵,并且在一些预测计算领域,可能最终的计算结果是以失败告终,所以有人发明出了利用个人闲置的计算机的计算资源,将这些资源连接成一个分布式的网格系统,计算资源的获取全部在这个网格系统中进行,由此演变出了很多的分布式计算项目。 关于 Rosetta 项目 rosetta@home这个项目主要是用来预测蛋白质的三维折叠结构。根据官网所说,Rosetta在预测特定蛋白质的形状时,其实就是在寻找具有最低能量的折叠,这一点很有意思,因为可以和数学物理学中关于能量的计算拉上关系,似乎自然界本身都是在以一种最基本的能量守恒和以最低的能量代价来稳定生命和物种的繁衍。因为对这种蛋白质折叠计算突然有了好奇心,并且也关注到DeepMind研发的AlphaFold采用人工智能的方式预测蛋白质的三维结构,所以买了两本生命科学的书来进行研究,后续出稍微偏专业向的文章。 引用一句英文原文的话 proteins are truly amazing machines: before they do their work, they assemble themselves. 蛋白质是一部非常让人感到惊讶的机器,他们在有效工作之前必须先自我装配成一种特定的形状. 重新回到Rosetta的计算方式上,预测蛋白质的折叠结构的计算方式: 程序会从没有任何折叠的链开始 移动链的一部分,产生新的新的形状,计算该形状下的能量 根据能量上的变化是否接受这次移动 重复2-3的过程直到链中的每一部分都移动了足够多的次数 最后程序会得到一个结构,该结构是目前该链序列下预测出来的最低能量形状,由于预测过程中采用的是随机移动链的部分,所以计算量是相当大的。在分布式计算过程中,客户端计算完每条链的最低能量状态,然后将其结果发送给服务端,然后科研人员对所有从客户端收集到该链的最低能量状态结构进行对比,得到最低的能量状态,这样也就完成了对该蛋白质折叠的预测。 第一本书是 《结构生物学 从原子到生命》 原书名称: 《Textbook of Structural Biology》 第二本书 《蛋白质物理》 其中与Rosetta类似的蛋白质折叠项目Folding@home也是一个分布式计算项目,两者的区别就是在于 Rosetta的目的的是预测出蛋白质的最终结构,Folding@home是计算蛋白质如何折叠的过程。两者的区别我还需要阅读生物学领域的相关专业书籍之后在做出具体的分析,后续会出相关的文章。 搭建 Raspberry Pi 分布式计算集群 Raspberry Pi 目前总共由12台ARM开发板加入到了Rosetta计算中,其中有两台是Jetson Nano,因为目前的专注领域在人工智能,所以想多理解些生物领域方面的知识,因为最初的人工神经网络ANN就是从大脑的神经元计算模式抽象出来的。 目前集群的管理和应用编排采用的是kubernetes工具,操作系统安装的是Ubuntu Server Raspberry Pi, k8s的实现方案采用的是MicroK8s, 后续会考虑采用k3s的实现方案来管理更多的节点,比如节点扩展到20台Raspberry Pi。 目前已经更新到20个RPI节点,集群管理系统采用k3s,这些小机器在结束Rosetta项目之后会用于Tensorflow,MXNet的分布式学习项目中。 目前集群的架构如下图,3 * (ETCD + Master) + HAProxy + 17 * Worker ...

April 24, 2020