当前位置:首页 > 智能硬件 > 人工智能AI
[导读] 深度学习是机器学习中一种基于对数据进行表征学习的方法,作为当下最热门的话题,谷歌、Facebook、微软等巨头纷纷围绕深度学习做了一系列研究,一直在支持开源深度学习框架的建设。 过去一年

深度学习是机器学习中一种基于对数据进行表征学习的方法,作为当下最热门的话题,谷歌、Facebook、微软等巨头纷纷围绕深度学习做了一系列研究,一直在支持开源深度学习框架的建设。

过去一年间,在这些巨头的加持下,深度学习框架格局发生了极大改变:新框架横空出世,旧的框架也逐渐退出历史舞台,而框架与框架之间的联系也更加紧密,生态更为开放。这一年,小编也在时刻关注着这些发展和变化,下面这些话题,每一个都引起了开发者此起彼伏的讨论:

Facebook 开源 PyTorch,成为 TensorFlow 强敌

Theano 完成历史使命,功成身退

ONNX 开放平台横空出世,力图促进开放的开发生态

CNTK,Keras,MXNet 均迎来重大更新

微软携手亚马逊推出 Gluon 深度学习库,英特尔推出增强学习框架 Coach

针对移动终端,Caffe2 和 TensorFlow Lite 先后开源

接下来,小编会盘点上述机器学习框架之间的重大发展和改变,以飨读者。

Facebook 开源 PyTorch,以风起云涌之势占领开发者社区

2017 年初,Facebook 在机器学习和科学计算工具 Torch 的基础上,针对 Python 语言发布了全新的机器学习工具包——PyTorch。PyTorch 实际上是 NumPy 的替代,它支持 GPU,有着更高级的功能,可以用来构建和训练深度神经网络。一经发布,它便受到广泛关注和讨论。经过将近一年的发展,目前 PyTorch 已经成为从业者最重要的研发工具之一。

年初发布 PyTorch 时,Facebook 曾表示,「它有望辅助、或在一定程度上替代现有的 Python 数学库(比如 NumPy)。」目前来看,PyTorch 的使用越来越广泛,这一预言成为现实。

在众多开发者眼中,PyTorch 是 TensorFlow 之外一个非常好的选择。

以下为 PyTorch 主要优势:

它处于机器学习第一大语言 Python 的生态圈之中,使得开发者能接入广大的 Python 库和软件。因此,Python 开发者能够用他们熟悉的风格写代码,而不需要针对外部 C 语言或 C++ 库的 wrapper,使用它的专门语言。

不需要从头重新构建整个网络,它为改进现有的神经网络提供了更快速的方法——采用动态计算图(dynamic computaTIonal graph)结构,而不是大多数开源框架,比如 TensorFlow、Caffe、CNTK、Theano 等采用的静态计算图。

PyTorch 中用于数据加载的 API 设计得很好。接口在数据集、采样器和数据加载器中有明确规定。数据加载器接收数据集和采样器,根据采样器的调度,在数据集上生成迭代器。加载并行数据就像把 num_workers 语句传递到数据加载器一样简单。

采用了定制的 GPU 内存分配器。这使得开发者的深度学习模型能够有「最大限度的内存效能」,训练比从前更大的深度神经网络。

GitHub 地址:https://github.com/pytorch/pytorch
#pTensorFlow引入动态图机制#e#

TensorFlow 遇强敌,引入动态图机制等多个更新

TensorFlow 是 Google 于 2015 年底推出的深度学习框架。过去两年间,它在开发者社区享有盛誉,目前已成为最为常用的深度学习框架。它的功能全,社区好,因此使用率也一直稳定保持领先。而随着 PyTorch 等框架的横空出世,因为文档和接口混乱,使用繁琐等缺点,TensorFlow 广受诟病。

在 2017 年,开发团队不断为 TensorFlow 引入新的功能:年初发布 TensorFlow 1.0,实现对 Keras 的全面支持;年底引入 Eager ExecuTIon 动态图机制,让开发变得更加简单和直观。

以下为 TensorFlow 被大家广为称赞的优点:

TensorFlow 的 Saver 对象很容易使用,并为检查点(check-poinTIng)提供了更多选择。

在序列化中,TensorFlow 的主要优点是可以将整个图保存为协议缓冲区。这包括参数和运算。此外,该图可以通过其他支持的语言 (C++,Java) 加载。这对不支持 Python 的调度栈来说至关重要。理论上,在改变模型源代码之后,你想要运行旧模型时它也能有所帮助。

支持移动和嵌入式部署,虽然将 TensorFlow 部署到 Android 或 iOS 上需要大量的工作,但不必用 Java 或 C++重写模型的整个推理程序。

此外,TensorFlow Serving 支持高性能的服务器端部署,可以支持用户轻松地换用模型而不会降低服务性能。

另外,它在年底引入 Eager ExecuTIon——一种命令式、由运行定义的接口,一旦从 Python 被调用可立即执行操作,这使得 TensorFlow 的入门学习变得更简单,也使得研发工作变得更直观。

GitHub 地址:https://github.com/tensorflow/tensorflow

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭