当前,人工智能基础性算法理论研究创新日益活跃,深度神经网络日趋成熟,各大厂商纷纷投入到深度神经网络算法的工程实现并发力建设算法模型工具,进一步将其封装为软件框架供开发者使用,这个过程中AI框架应运而生。
随着人工智能的不断发展,新的趋势不断涌现,比如超大规模模型的出现(GPT-3等)。AI框架已经从最初的萌芽阶段发展到了如今的深化阶段。这一阶段,AI框架正向着全场景支持,超大规模AI,安全可信等特性深化探索,不断实现新的突破。与此同时,传统科学计算方式在处理气象,生物制药这类没有方程式可寻的领域问题显得力不从心。故传统科学计算领域亟需AI技术的加持,用大数据去驱动计算。目前AI在生物制药和气象领域都已经取得了一些颠覆性的突破,比如蛋白质结构预测,台风公里级风速预报都已经可以通过AI计算出来。
昇思MindSpore框架是华为2020年开源的的一款全场景AI计算框架,它旨在提供友好设计、高效运行、简捷部署的开发体验,目前应用于医疗制药、气候、电子制造等多个领域。该框架提供面向端边云全场景的主流硬件支持,并针对昇腾硬件平台提供深度优化能力。该框架是目前国内唯一一个可以把AI和科学计算这种复杂的计算模式全部计算起来的框架。
MindSpore:“AI时代的基石”是如何炼成的?
昇思MindSpore自2020年开源以来,不断的进行版本迭代开发。目前已经更新到了最新的1.6版本,框架的功能也不断被完善,各种关键特性不断出现。面对纷繁复杂的场景,各种不同的终端昇思MindSpore框架支持全场景协同的解决方案;面对传统科学计算领域不能求解的复杂问题昇思MindSpore框架推出了AI+科学计算的解决方案;
- 全场景协同,端、边、云全场景无缝部署
昇思 MindSpore在框架的设计上进行了分层设计,采用统一的端云统一内核(MindIR),将端云共用的数据结构和模块解耦出来,在满足端侧轻量化的同时,保持了端云架构的一致性,真正实现一次训练无缝部署、端云训练共模型。
针对IOT设备,昇思MindSpore 设计了MindSpore for micro方案,MindSpore for micro通过CodeGen方式,将模型中的算子序列从运行时卸载到编译是,并且仅生成将模型执行的代码。它不仅避免了运行时解释的时间,而且还释放了内存使用量,以允许更大的模型运行。
- 全流程极简,高效执行,安全可信
自研的Compiler AI编译器基于端云统一的MindIR实现三大功能,包括硬件无关的优化(类型推导、高阶高维自动微分、表达式化简等);硬件相关优化(自动异构并行、内存优化、图算融合、流水线执行等);部署推理相关的优化(量化、剪枝等)。
安全可信组件Armour则通过数据脱敏,差分隐私训练等方式保证了数据安全,通过丰富的人工智能鲁棒性检测工具保证了模型安全。
AI框架的核心就是微分,自动微分已经比较完善了。昇思MindSpore框架与一般的AI框架相比可以实现高阶高维自动微分,从而在计算高阶微分时可以轻松解决复杂度及误差增加的问题。同时,昇思MindSpore还支持全自动异构并行,在进行分布式训练时自动实现数据并行,模型算子并行,优化器并行等等。
昇思MindSpore团队为了解决传统科学计算领域的痛点,发挥其在大规模,多种设备训的练上的优势。该团队计划面向八大科学计算行业打造MindScience系列套件。这些行业套件包括了业界领先的数据集、基础模型、预置高精度模型和前后处理工具,加速了科学行业应用开发。具体如下表所示:
与此同时,昇思MindSpore社区生态也在繁荣发展。截止到目前,昇思MindSpore在码云(Gitee)千万开源项目中活跃度排名第一,累计下载量超过130万;服务于5000家企业,涵盖政府、金融、制造、交通、能源、终端等端边云全场景行业;高校及科研机构基于昇思贡献顶会论文300+;100+高校参与社区模型众智活动,为昇思贡献代码,目前已支持300+主流模型,支撑全场景应用。
AI框架之力初显:它山之石,可以攻玉
传统科学计算方法通过数值迭代的方式解决问题,面临着维度灾难引起的计算量指数上升的问题,导致在复杂问题或者场景中“算不起”,甚至是“算不动”。而科学计算的诸多领域仍然存在着大量待求解的问题,因为机理不清楚,或者完全没有方程,又或者是计算过于复杂,以至于传统算法难以求解。而AI框架依赖于以神经网络为代表的具有“万能逼近”性质的数据工具从数据中挖掘规律,用数据驱动计算,可以大大提高科学计算的性能。而恰好,昇思MindSpore在大规模,多种设备的训练上又有独特的优势。比如:昇思MindSpore推出的分子制药研发套件MindSPONG 实现了分子动力学模拟,蛋白质折叠训推一体。
蛋白质是生命的物质基础,是有机大分子,是构成细胞的基本有机物,是生命活动的主要承担者。没有蛋白质就没有生命。蛋白质由很多氨基酸长链组成,这些氨基酸通过折叠成精确的3D结构来完成无数的任务,这些结构控制着与其他分子互动的方式,决定了其功能以及它在疾病中的功能紊乱程度。所以,传统的药物研发一般是通过大批量筛选,寻找易与目标蛋白质分子紧密结合、易合成且没有毒副作用的化合物来完成。这种大批量筛选的方式存在着很大的盲目性,存在研发周期过长,研发成本过高的问题。研发人员如果可以提前预测蛋白质结构则可以大大减少寻找药物的盲目性,从而缩短药物研发的时间,降低研发成本。
在过去,因蛋白质构象数量巨大、计算过程及其复杂,通过AI来对蛋白质结构进行预测一直存在精度不足的缺陷,故传统获取蛋白质空间结构的方法仍然以冷冻电镜等实验技术为主。单个蛋白质的观测成本高达数月以及几百万元。直至AlphaFold2的出现,才使得这一问题迎来了曙光。AlphaFold2 在国际蛋白质结构预测竞赛CASP14上实现了前所未有的结构预测精度。这一成就也被 Nature 誉为“前所未有的进步”。
但是,AlphaFold2本身模型本身存在内存需求大,数据处理繁琐,控制编译复杂等特点,对基础 AI 框架存在着巨大挑战。故2021年9月昇思MindSpore联合高毅勤课题组(北京大学、深圳湾实验室)推出了分子制药研发套件MindSPONGE,该套件是第一个根植于AI框架的分子模拟工具,其采用模块化的设计思路,可以快速构建分子模拟流程。
蛋白质结构预测工具依托昇思MindSpore,可对氨基酸序列长度2000+的蛋白质结构解析,能覆盖约99%以上的蛋白序列。该工具的模型部分与AlphaFold2相同,在多序列比对阶段,采用了MMseqs2 进行序列检索,相比原版算法端到端的速度有2-3倍提升。
近期,昇思MindSpore,高毅勤课题组(北京大学、深圳湾实验室)联合团队使用该工具全面打通了AlphaFold2的训练。采用昇腾基础软硬件之后,通过软硬件协同优化大大提高了蛋白质预测的计算效率。在混合精度下,单步迭代时间由 20 秒缩短到 12 秒,性能提升超过 60%。依托昇思 MindSpore 内存复用能力, 训练序列长度由 384 提升至 512。MindSpore在CASP14验证集上TM-score得分87.2,超过了JAX(AlphaFold2的AI框架)的87.02
除了在生命科学领域的蛋白质结构预测及折叠问题上有重大突破以外,昇思MindSpore电磁仿真套件MindSpore Elec也取得了重大突破。
麦克斯韦提出了位移电流假说(变化的电场能够产生磁场),完善了电生磁的理论。并最终将电磁场理论以简洁、对称和完美的数学形式表示出来,即麦克斯韦方程组。随着计算机技术的发展,人们采用数值计算的方式去求解麦克斯韦方程组以模拟电磁场在空间中的分布。这样既节省了实验成本,又可以通过仿真设计出更加符合需求的电子设备。传统的电磁计算方法包括精确的全波方法和高频近似方法。虽然较好地辅助了电子产品的设计,但是该方法仍存在许多缺陷,如需要进行复杂的网格剖分、迭代计算,计算过程复杂、计算周期长。神经网络具有万能逼近和高效推理能力,这使得神经网络在求解微分方程时具有潜在的优势。为此,昇思MindSpore推出了AI电磁仿真套件MindSpore Elec。
MindSpore Elec内置有前后处理工具(数据构建及转换、结果可视化)、AI电磁模型库(物理方程驱动和标签数据驱动)以及优化策略(数据压缩、动态自适应加权等),具体模块和功能如下:
MindSpore Elec套件在AI电磁仿真上相比传统的电磁计算方法在性能上有了质的飞跃。MindSpore Elec在物理驱动的AI电磁仿真上比原始的PINNs方法,性能提升15倍以上;与Benchamrk(传统的数值方法)的相对误差在5%左右;在手机电磁仿真的场景中,仿真精度媲美传统科学计算软件,同时性能提升10倍。
未来的十年将会是AI发展的黄金十年,而作为最为核心的AI技术之一,深度学习算法框架的发展牵动着业内每一个参与者的心。中国AI深度学习框架的发展必将迎来大爆发。昇思MindSpore必将扮演着重要的引领者角色,尤其是在AI+科学计算领域,昇思MindSpore可以充分发挥其大规模,多设备训练上的优势,不断完善科学计算套件,通过AI电磁仿真突破产品设计仿真性能瓶颈;通过实现药物分子预训练模型,加速分子生成,降低实验成本。这些科学计算套件必将助力各行业发展。