近日,清华大学计算机系图形实验室宣布开源全新的深度学习框架:计图(英文名:Jittor),这也是我国首个高校自研的开源深度学习框架。
根据官网介绍,这是一个完全基于动态编译(Just-in-time)、内部使用创新的元算子和统一计算图的深度学习框架。
根据官方给出的特性对比来看,Jittor 与国际主流平台相比,具有多项先进特性。与同类型框架相比,Jittor 在收敛精度一致情况下,推理速度取得了 10%-50% 的性能提升。
两大核心创新点:元算子和统一计算图
据官网介绍,Jittor 有三个主要的设计理念:
1. 易用且可定制:只需要数行代码,就可定义新的算子和模型。
2. 实现与优化分离:可以通过前端接口专注于实现,而实现自动被后端优化。
3. 所有都是即时的:Jittor 的所有代码都是即时编译并且运行的,包括 Jittor 本身。用户可以随时对 Jittor 的所有代码进行修改,并且动态运行。
而这些理念以及最终实现的能力,要归功于 Jittor 的两大核心创新点:元算子和统一计算图。
了解深度学习的朋友可能知道,深度学习采用的卷积神经网络是由算子(Operator)组成的一个计算网络。由于架构设计和不断扩充等原因,当前深度学习框架有多达 2000 种算子,系统复杂,优化和移植困难。
Jittor 则将算子运算进一步分解,形成了更加底层的三类 20 余种元算子闭包,目前神经网络常用算子均可以使用元算子的组合进行表达。
另一方面,为了面向未来深度学习框架的发展趋势,Jittor 利用元算子组合表达的优势,提出统一计算图进行优化,并从底层开始设计了一个全新的动态编译架构。
该架构支持多种编译器,实现了所有代码的即时编译和动态运行,确保了实现和优化分离,大幅提升了应用开发灵活性、可拓展性和可移植性。
其次,在算子的设置上,团队将元算子的反向传播进行了闭包,即元算子的反向传播也是元算子。这样避免了重复开发。此外,还支持计算任意高阶导数。
根据官方给出的 Jittor 与其他平台的计算图特性对比来看,Jittor 与国际主流平台相比,具有多项先进特性。
与同类型框架相比,Jittor 在收敛精度一致情况下,推理速度取得了 10%-50% 的性能提升。
在编程语言方面,Jittor 前端语言选择了 Python。前端使用了模块化的设计,类似于 PyTorch,Keras,用户可以编写元算子计算的 Python 代码,然后 Jittor 将其动态编译为 C++,从而提升性能。
后端则直接使用高性能语言编写,如 CUDA,C++。
总 结
深度学习技术正广泛应用于人工智能的各个领域,如计算机视觉、机器翻译、自然语言处理、智能机器人等,取得了前所未有的突破。
当前,一方面,随着深度学习新技术的出现、任务复杂度的提高,易于扩展同时保持高效的架构成为发展趋势;另一方面,随着我国人工智能产业发展迅速,我们需要构建一个属于自己的开源深度学习生态,这也是一个绝好的机会。
尽管以 TensorFlow、PyTorch 等为代表的开源框架已经取得了一定程度上的成功,而我国在这一领域发展起步较晚,目前存在着一定的劣势。但单就开源框架来看,不论是底层的核心技术能力还是针对具体应用场景的解决能力,都还有着很大的提升空间。
希望国内的科技企业和研究机构可以奋起直追,不再在核心技术上被别人「卡脖子」。
极牛网精选文章《清华深度学习框架Jittor开源,创新推理速度可提升50%》文中所述为作者独立观点,不代表极牛网立场。如若转载请注明出处:https://geeknb.com/12656.html