如今,主流AI框架已经针对功能和性能方面做了较完备的优化,提供了丰富的特性,并且通过基础框架+开发套件的形式,使AI助力科学计算,推动其在各领域发挥更大的价值。在主流框架趋同的前提下,除了功能和性能,我们还能关注什么呢? 有一个与AI开发者息息相关却容易被忽视的视角——编程范式。
编程范式,是编程思维的一种分类方式(不针对具体的编程语言),是程序的逻辑体系,是开发者的编程世界观。常见的编程范式有面向对象编程 、面向过程编程、函数式编程等。
AI应用的实现需要定义神经网络结构、训练神经网络、部署与推理……而神经网络的定义过程与面向对象编程高度契合,大规模的训练过程需要函数式编程的灵活性和准确性。这一系列复杂的过程,使得很难用同一套编程范式兼顾每一步。
抛开传统的基础套件+领域套件的方式,MindSpore作为一个通用的AI+科学计算融合框架,选择了函数式+面向对象融合编程范式的道路,兼顾了定义网络结构和训练过程的易用性,同时也实现了从底层兼容AI建模和科学计算建模。
下面通过一张图带大家快速了解,MindSpore 2.0 新特性——函数式+面向对象融合编程。

系列链接:
【一图读懂昇思MindSpore • 第1期】秒懂MindSpore关键技术点
【一图读懂昇思MindSpore • 第2期】分布式并行 | 打破深度学习性能墙!
【一图读懂昇思MindSpore • 第3期】图算融合 | 破而后立,晓喻新生
【一图读懂昇思MindSpore · 第4期】从事AI这么久,你真的了解动静统一吗?
【一图读懂昇思MindSpore · 第5期】万物皆可AI,薛定谔也不例外
【一图读懂昇思MindSpore · 第6期】我们是否还能信任AI?