让所有人都能做蛋白质结构预测,华为昇思 MindSpore 最新成果将开源

简介: 让所有人都能做蛋白质结构预测,华为昇思 MindSpore 最新成果将开源
华为推出全流程蛋白质结构预测工具 MEGA-Protein(MindSpore for Evolutionary Generation & Assessment Protein),其中业界首创 AI MSA 引擎使得蛋白质结构预测突破「孤儿序列」等高精预测限制


日前,华为与北京昌平实验室、北京大学生物医学前沿创新中心(BIOPIC)和化学与分子工程学院、深圳湾实验室高毅勤教授课题组,在中国算力网智算网络关键节点——西安未来人工智能计算中心的昇腾 AI 强大算力支持下,在全场景 AI 框架昇思 MindSpore 上推出全流程蛋白质结构预测工具 MEGA-Protein。

MEGA-Protein 包含 AI MSA 引擎、蛋白质折叠训练推理流程、蛋白质结构打分、蛋白质结构预测数据集 PSP 等关键技术,该工具提供了高精度高性能蛋白质结构和功能预测,其中 AI MSA 引擎能显著提升单序列的预测速度,并且能够在 MSA 少样本(few shot)甚至零样本(zero-shot,即单序列)的情况下,帮助 AlphaFold 2 等模型维持甚至提高推理精度,突破了在「孤儿序列」、高异变序列和人造蛋白等 MSA 匮乏场景下无法做出准确预测的限制
这是团队在昇腾 AI 基础软硬件平台上实现 AlphaFold 2 从训练到推理全流程打通且效率同比提升 2 至 3 倍后,取得的又一次成功。相关代码和模型参数后续会在昇思 MindSpore 社区开源,算法和相关的论文也会尽快公布。

昇思 MindSpore 首席架构师金雪锋评论称:「该工作是产学界合作的一次重大成功实践,也是科学计算与人工智能结合潜力的展示。」金雪锋补充说,支持多计算范式的 MindSpore 能够有效提升科研工作的生产力,大幅度提升科学计算场景的性能,希望后续能够看到更多、更好的成果涌现出来。


高性能蛋白质结构预测引擎 AI MSA,解决「孤儿序列」问题

蛋白质是生命活动中最主要的功能体之一,在人体结构和功能中发挥着核心作用。然而,能够解析蛋白质结构的实验手段通常都价格不菲且周期较长,很难直接通过它们去探索整个「蛋白质宇宙」。
蛋白质的 3D 结构完全由组成它的氨基酸序列所决定(1972 年诺贝尔奖得主 Christian Anfinsen 曾通过实验证明),这就从理论上确认了:存在一个「理想函数」,能够将氨基酸序列 x 映射到其 3D 结构 y。因此,蛋白质结构预测问题就转化成典型的数学建模问题。AlphaFold 2 则是目前为止人们所能找到的、最接近「理想函数」的一个模型。

但是,为了达到高精度的预测,AlphaFold 2 必须引入额外的信息,也即蛋白多序列比对(MSA)。
有多少 MSA 可用,直接决定了 AlphaFold 等模型的预测精度。

图1. AlphaFold 2 预测精度会随着可用的 MSA个数不足时而显著降低。图片来源: AlphaFold 2 论文


但自然界中仍然存在大量「孤儿序列」,如人类蛋白组中不少蛋白以及大量的病毒等其它抗原相关蛋白,都存在着 MSA 不够深的问题。此外,在蛋白质设计领域中,研究人员会普遍面临人造序列没有 MSA 可用的情况。在这些场景下,AlphaFold 2 等模型对相关的结构预测准确度会大幅下降,变得不再适用。

另一方面,AlphaFold 2 等标准检索 MSA 流程,是在数据库中使用搜索工具对目标蛋白及相关序列进行多重序列比对,该流程需要配置数据库,其中数据库规模大概在 1.3T 左右,配置耗时长且繁琐,并且使用数据检索工具(如 HHblits,JackHMMER,MMseqs2 等)搜索时间长,不利于科研人员展开研究。

昇思 MindSpore 社区与昌平实验室、北京大学生物医学前沿创新中心(BIOPIC)和化学与分子工程学院、深圳湾实验室高毅勤教授课题组新提出的 AI MSA 引擎,
对于原始 MSA 质量不高或者数量少的蛋白,将 AI MSA 引擎接入 AlphaFold 2 后可以明显改善结构预测的质量,如下图所示:

图2. 不同方案预测的蛋白质结构效果对比图
图3. 零样本预测精度对比

并且端到端的推理性能相较于 AlphaFold 2 标准检索流程有大约 40+ 倍的提升,相较于 MMseqs2 约 5+ 倍的提升,可以大幅提升结构预测模型的推理通量,且训练完后的 AI MSA 引擎不需要额外配置数据库。

图4. AI MSA 引擎相关性能对比图

团队表示,AI MSA 引擎是一种对下游结构模型普适的预训练方案,可以在免于微调的情况下直接接入下游的结构预测模型,例如 AlphaFold、RoseTTAFold 等,助力科研人员在蛋白质结构预测、蛋白质设计、蛋白质互作等方向进行研究,同时推动生物制药产业发展。

北京大学李兆基讲席教授谢晓亮认为,创新自研的 AI MSA 引擎和基于昇思 MindSpore 的蛋白质结构预测程序的开源,标志着我们国家在全球蛋白质结构预测领域名列前茅,该长足进步源于高毅勤团队在相关底层技术上多年的深耕和积累。


昇腾 AI 基础软硬件平台、昇思 MindSpore AI 框架,支持 AI for Science 研究新范式
AI MSA 引擎训练参数量有 47M,数据量总共达 4.4T,其训练对框架提出了不小的要求,昇思 MindSpore 在昇腾 AI 基础软硬件平台上与昇腾 CANN 深度结合,通过深度协同优化的高性能算子库,充分释放硬件的算力

昇思 MindSpore 采用了多段并行流水线的方式来构建数据处理 pipeline,更加细粒度地规划 NPU、CPU 等计算资源的使用,天然支持各段使用异构硬件进行流水处理,大大提高了数据处理过程的吞吐量。

同时,昇思 MindSpore 支持大集群高效训练,实现了优质的计算通信比,并且通过三层 AI 分布式编程范式(手动并行+半自动并行+全自动并行),大幅提升分布式并行程序开发效率。

相关代码和模型参数后续会在昇思 MindSpore 社区开源,算法和相关的论文也会尽快公布。
团队还发布了首个具有高覆盖度和多样性的百万级蛋白质结构预测数据集 PSP。该数据集由 570k 个真实结构序列(10TB)和 745k 个互补蒸馏序列(15TB)组成。昇思 MindSpore 基于该数据集可进行蛋白质结构预测训练,同时提供了丰富的处理及使用该数据集的接口,欢迎试用。

了解更多可查看论文:https://arxiv.org/pdf/2206.12240.pdf


相关工作


MindSpore Science 开源路径

https://gitee.com/mindspore/mindscience

昇思 MindSpore 最新成果开源:高毅勤课题组发布高性能蛋白质结构预测工具
https://biopic.pku.edu.cn/xwzx/mtbd1/517695.htm

昇思 MindSpore 再突破:蛋白质结构预测训练推理全流程开源,助力生物医药发展
https://icg.pku.edu.cn/xwzx/kycg/520034.htm

昇思 MindSpore 蛋白质结构预测模型拿下 CAMEO 全球预测竞赛第一
https://www.huawei.com/cn/news/2022/4/mindspore-cameo-protein-ascend

相关文章
|
10月前
|
算法 NoSQL 应用服务中间件
阿里面试:10WQPS高并发,怎么限流?这份答案让我当场拿了offer
在 Nacos 的配置管理界面或通过 Nacos 的 API,创建一个名为(与配置文件中 dataId 一致)的配置项,用于存储 Sentinel 的流量控制规则。上述规则表示对名为的资源进行流量控制,QPS 阈值为 10。resource:要保护的资源名称。limitApp:来源应用,default表示所有应用。grade:限流阈值类型,1 表示 QPS 限流,0 表示线程数限流。count:限流阈值。strategy:流控模式,0 为直接模式,1 为关联模式,2 为链路模式。
阿里面试:10WQPS高并发,怎么限流?这份答案让我当场拿了offer
|
SQL 存储 监控
SQL数据库安装指南:步骤详解与最佳实践
安装和配置SQL数据库可能是一个复杂的过程,但通过遵循本文提供的详细步骤和最佳实践,您可以确保数据库的成功安装和高效运行。无论您是初学者还是经验丰富的数据库管理员,掌握SQL数据库的安装和管理技能都是至关重要的。通过不断学习和实践,您将能够更好地利用SQL数据库来支持您的业务需求和数据分析工作。记住,定期维护和优化数据库是保证其长期性能和稳定性的关键。祝您在安装和配置SQL
WK
|
机器学习/深度学习 算法
什么是损失函数和损失函数关于参数的梯度
损失函数是机器学习中评估模型预测与真实值差异的核心概念,差异越小表明预测越准确。常见损失函数包括均方误差(MSE)、交叉熵损失、Hinge Loss及对数损失等。通过计算损失函数关于模型参数的梯度,并采用梯度下降法或其变种(如SGD、Adam等),可以优化参数以最小化损失,提升模型性能。反向传播算法常用于神经网络中计算梯度。
WK
565 0
|
机器学习/深度学习 数据采集
开源多结构蛋白质预测大模型——Genie 2
【6月更文挑战第24天】Genie 2,一款开源的深度学习蛋白质设计模型,扩展了原始Genie的结构预测能力,通过创新架构和大规模数据增强处理更复杂多样的蛋白质结构。引入的多基序框架允许设计多功能蛋白质,提升无条件和有条件生成的性能。尽管面临数据质量、复杂相互作用处理及模型可解释性的挑战,Genie 2仍为蛋白质设计树立新标杆。[论文链接](https://arxiv.org/abs/2405.15489)
341 1
|
计算机视觉 Python Windows
OpenCV自动裁剪图片
OpenCV自动裁剪图片
312 1
|
XML Java 关系型数据库
【SpringBoot + Mybatis系列】自定义类型转换 TypeHandler| 8月更文挑战
在使用 mybatis 进行 db 操作的时候,我们经常会干的一件事情就是将 db 中字段映射到 java bean,通常我们使用ResultMap来实现映射,通过这个标签可以指定两者的绑定关系,那么如果 java bean 中的字段类型与 db 中的不一样,应该怎么处理呢?
1757 0
【SpringBoot + Mybatis系列】自定义类型转换 TypeHandler| 8月更文挑战
|
Linux 数据安全/隐私保护
Linux系统忘记密码的三种解决办法
这篇博客介绍了三种在Linux忘记密码时重置登录密码的方法:1) 使用恢复模式,通过控制台界面以管理员权限更改密码;2) 利用Linux Live CD/USB启动,挂载硬盘分区并使用终端更改密码;3) 进入单用户模式,自动以管理员身份登录后重置密码。每个方法都提供了详细步骤,提醒用户在操作前备份重要数据。
|
缓存 Cloud Native 测试技术
Golang 乐观锁实战:Gorm 乐观锁的优雅使用
在现代软件开发中,数据一致性是一个永恒的话题。随着系统规模的扩大和并发操作的增加,如何有效地处理并发冲突,确保数据的完整性,成为了开发者必须面对的挑战。本文将带你深入了解 Golang 中 Gorm ORM 库的乐观锁机制,并通过实际示例,展示如何在项目中优雅地使用乐观锁。
|
监控 Cloud Native 关系型数据库
使用 Grafana 统一监控展示 - 对接 Zabbix
使用 Grafana 统一监控展示 - 对接 Zabbix
|
存储 XML Java
Activiti工作流与业务整合实战
Activiti工作流与业务整合实战
836 0
Activiti工作流与业务整合实战