为什么说Swift将接任Python成为深度学习下一任“掌门”?

天天见闻 天天见闻 2023-02-28 科技 阅读: 156
摘要: 深度学习可能需要一种新的编程语言了。这就是让万千饱受Python缺点困扰的开发者兴奋不已的深度学习语言。第一反应肯定会想到iOS或者MacOS的应用程序开发:Swift语言的创造者现在在实验室从事深度学习的研究,但下方链接中的文档描述了Python的缺点、在候选语言筛选过程中考虑哪些语言。当作者第一次知道Swift的运行速度和C代码一样快时,我们知道C语言是高度优化的。

新智元报道

来源:pechyonkin.me

编辑:金磊

【新智元导读】YannLeCun曾说,深度学习可能需要一种新的编程语言了。现在Swift来了!没错,这就是让万千饱受Python缺点困扰的开发者兴奋不已的深度学习语言。本文便将带领读者详细了解一下为什么Swift将成为深度学习的下一大热门。

当你听到Swift的时候,第一反应肯定会想到iOS或者MacOS的应用程序开发。当你玩儿过深度学习,也肯定听说过SwiftforTensorflow(缩写为S4TF)。

而后你就会产生困惑:“为什么谷歌要为Swift创建TensorFlow版本呢?已经有了Python和C++版本了,为什么还要添加另一种语言?”

在这篇文章中,作者将尝试回答这些问题,并告诉你为什么要认真遵循S4TF以及Swift语言本身。本文的目的不是提供非常详细的解释,而是提供下文大量链接内容的一般概述,方便读者深入挖掘。

SwiftforTensorflow官方地址:

Swift“背景硬”:背后有强大的支持

Swift是ChrisLattner在苹果公司工作时创建的。Swift语言的创造者现在在实验室从事深度学习的研究,这一事实应该告诉你,这就是一个严肃的项目。

前段时间,谷歌的员工意识到一件事情:尽管Python是一种优秀的语言,但它有许多难以克服的局限性——TensorFlow需要一种新的语言。

经过长时间的考虑,Swift被选为候选语言。作者没有在本文详细介绍,但下方链接中的文档描述了Python的缺点、在候选语言筛选过程中考虑哪些语言,以及最终为何Swift当选。

对于TensorFlow来说,Swift不仅仅是一个库

Swift对于TensorFlow不仅仅是另一种语言的TF。

它本质上是Swift语言本身的另一个分支(在git术语中)。这意味着S4TF不是一个库;它本身就是一种语言,内置了支持TensorFlow所需的所有功能的特性。

例如,S4TF中有非常强大的自动微分系统,这是计算梯度所需要的深度学习的基础之一。对比一下Python,在Python中,自动微分不是语言的核心组件。最初作为S4TF的一部分开发的功能后来被集成到Swift语言本身。

Git地址:

有关自动微分:

Swift速度极快

当作者第一次知道Swift的运行速度和C代码一样快时,作者表示非常惊讶。

我们知道C语言是高度优化的,可以达到非常高的速度,但这是以微管理内存为代价的,这导致C语言不是内存安全的。此外,C语言并不是一门很容易学的语言。

现在,Swift在数值计算中运行得和C一样快,而且它没有内存安全问题,而且它更容易学习。Swift背后的LLVM编译器非常强大,并且有非常高效的优化,这就确保了代码运行的速度。

Swift为何和C一样快:

在Swift中可以使用Python,C和C++代码

由于适用于机器学习的Swift还处于早期阶段,这意味着适合Swift的机器学习库并不多。

但不必过于担心这一点,因为Swift具有惊人的Python互操作性。

只需导入Swift中的任何Python库,它就能正常工作。类似地,可以将C和C++的库导入Swift(对于C++,需要确保头文件是用纯C编写的,没有C++特性)。

有关Python互操作性:

导入C和C++库:

总而言之,如果需要特定功能,但尚未在Swift中实现,则可以导入相应的Python,C或C++包。

Swift可以在非常底层的地方运行

如果你曾经使用过TensorFlow,那么通常情况下可能是通过Python包完成的。

在底层,Python版本的TensorFlow库底层有C代码。所以当你调用TensorFlow中的任何函数时,在某种程度上你会碰到一些C代码。

这意味着检查源代码的速度是有限的。例如,如果你想了解卷积是如何实现的,你无法看到Python代码,因为它是在C语言中实现的。

在Swift中,情况就不同了。ChrisLattner称Swift是“LLVM(汇编语言)的语法糖”。

从本质上说,Swift非常接近硬件,而且在硬件之间没有其他用C编写的代码层。这也意味着Swift代码运行速度非常快。这就使得开发人员能够从高到低,任何层次都可以开始检查代码,而无需使用C。

有关“LLVM(汇编语言)的语法糖”:

接下来的一步

Swift只是谷歌深度学习创新的一部分。还有一个非常相关的组件:MLIR,代表多级中间表示。

MLIR将是谷歌统一的编译器基础设施,允许用Swift(或任何其他受支持的语言)编写代码,并将其编译到任何受支持的硬件。

目前,针对不同的目标硬件有大量的编译器,但是MLIR将改变这一点,不仅允许代码重用,还允许编写定制的编译器底层组件。它还将允许研究人员应用机器学习来优化底层算法:

虽然MLIR充当ML的编译器,但我们也看到它可以在编译器中使用机器学习技术!一点尤其重要,因为开发数值库的工程师的扩展速度赶不上ML模型或硬件的多样化。

想象一下,如果我们能够使用深度学习来帮助优化数据的低级内存分块算法(类似于Halide试图完成的任务)会怎么样。

有关MLIR:

有关Halide:

总结

如果你对深入学习感兴趣,那么Swift是一门你应该开始学习的语言。

与Python相比,它有许多优势。谷歌正在大力投资,使Swift成为其TensorFlowML基础设施的一个关键组件,而且很有可能Swift将成为深度学习的语言。

所以,早点学习Swift总不会有错的。

原文链接:

其他相关
腾讯公司申请地图绘制专利,提高地图绘制的准确性

腾讯公司申请地图绘制专利,提高地图绘制的准确性

作者: 天天见闻 时间:2024-03-31 阅读: 1
金融界2024年3月15日消息,据国家知识产权局公告,腾讯科技(深圳)有限公司申请一项名为“地图绘制方法、装置和计算机可读存储介质“,公开号CN117705081A,申请日期为2022年9月。 专利摘要显示,本申请实施例公开了一种地图绘制方法、装置和计算机可读存储介质,可应用于云技术、人工智能、智慧交通、辅助驾驶等各种场景;通过获取原始地图路网和历史轨迹点;根据历史轨迹点的位置信息,在路段中识别出历史轨迹点匹配的候选路段;基于历史轨迹点之间的距离和原始地图路网的连通关系,计算转移概率,并基于历史轨迹点和候选路段之间的距离,计算发射概率;根据转移概率和发射概率,在候选路段中筛选出目标路段;基于历史轨迹点之间的路径信息以及历史轨迹点到目标路段的转移概率,确定出历史轨迹点之间存在的缺失路段;根据缺失路段对原始地图路网进行绘制更新,得到目标地图路网。以此,提高地图绘制的准确性。...
Atom编辑器 atom编辑器

Atom编辑器 atom编辑器

作者: 天天见闻 时间:2024-03-30 阅读: 10
python编辑器怎么使用Python 编辑器是程序员开发 Python 代码时的必备工具。这里介绍几种常见的 Python 编辑器的使用方法:1. PyCharm:PyCharm 是一款功能强大的 Python IDE,集成了代码编辑、调试、测试和版本管理等多个功能。在安装 PyCharm 后,打开软件并创建……...

doe软件是什么 doe软件

作者: 天天见闻 时间:2024-03-19 阅读: 18
dido0s120手机使用方法Doe0s120 是一款基于 Android 操作系统的智能设备,以下是 Doe0s120 手机的使用方法:1. 下载和安装 Doe0s120 手机客户端:在 Doe0s120 官方网站或其他可靠的应用商店下载并安装 Doe0s120 手机客户端。2. 注册 Doe0s120 账户……...
美媒:中芯片初创企业融资远超美国

美媒:中芯片初创企业融资远超美国

作者: 天天见闻 时间:2024-02-02 阅读: 38
参考消息网2月1日报道据美国石英财经网站1月30日报道,在计算机芯片风险投资方面,美国与中国之间的差距从未如此之大。 报道称,市场研究公司“项目建议书”数据公司最近的一份报告显示,2023年,美国在全球半导体初创企业融资中所占的份额仅为11%,而中国占75%。“项目建议书”数据公司将半导体初创企业定义为从事芯片设计和制造以及相关产品和设备的公司。 在美国收紧对英伟达公司和超威半导体公司等制造商生产的人工智能芯片的出口管制之后,中国已将建设半导体产业列为优先事项。中国推出了由国家支持的投资工具——国家集成电路产业投资基金。...
据了解,京东仍在频繁接触东宇汇,去京东会是个好归宿吗?

据了解,京东仍在频繁接触东宇汇,去京东会是个好归宿吗?

作者: 天天见闻 时间:2024-01-30 阅读: 39
今日,京东仍在频繁接触董宇辉的消息,在网络上掀起波澜。据知情人士透露,京东内部已多次召开小型会议,探讨引进董宇辉的可能性,并探讨未来的合作模式。 此前,东方甄选“小作文”风波爆发之时,京东有意招募董宇辉的传闻便已传得沸沸扬扬。有网传截图显示,京东的人力副总裁曾携带刘强东的亲笔签名前往陕西与董宇辉洽谈,且双方沟通顺畅,似乎董宇辉加盟京东的可能性颇高。然而,董宇辉对此予以否认,他表示:“此消息并不属实,目前并未与任何公司接触。” 罗永浩也在社交媒体上发文力挺董宇辉,他表示:“真的没必要再浪费生命去打工了。如果董宇辉老师本人有创业的想法,很愿意与一些做投资和企业的朋友们共同为他搭建一个平台,助力他顺利创业。”罗永浩坦言,他并不追求在这件事上有任何利益回报,只是将董宇辉视为年轻时的自己,希望给予他更多的支持和鼓励。...
渴望“经济胜利”!美媒:拜登可能针对英特尔、台积电宣布巨额补贴

渴望“经济胜利”!美媒:拜登可能针对英特尔、台积电宣布巨额补贴

作者: 天天见闻 时间:2024-01-29 阅读: 40
【环球时报驻美国、韩国特约记者 冯亚仁 丁玲】 “拜登政府急于在大选临近之际强调自己的标志性经济举措。”美国《华尔街日报》27日报道称,拜登政府预计将在未来几周正式宣布向包括英特尔、台积电在内的半导体大厂提供数十亿美元的建厂补贴,以帮助它们建设新工厂。该补贴是拜登于2022年8月签署的《芯片和科学法》的一部分,但由于条件苛刻、实施效率低下等原因,台积电、三星电子等接连宣布推迟投产。报道称,随着前总统特朗普日前接连在初选中取得胜利,拜登兑现自己标志性的经济政策变得迫在眉睫。 ...
我来说两句

年度爆文