TensorFlow开发者峰会重磅--Google发布TensorFlowV1.0

Google于2017年2月16日(北京时间)凌晨2点在美国加利福尼亚州山景城举办了首届TensorFlow开发者峰会。Google现场宣布全球领先的深度学习开源框架TensorFlow正式对外发布V1.0版本,并保证Google的本次发布版本的API接口满足生产环境稳定性要求。

\\

在过去的一年时间里,TensorFlow已经成功地帮助研究人员、工程师、艺术家、学习,以及许许多多其他人,在各个领取取得成功。从语言翻译,到皮肤癌的早期检测、预防糖尿病致盲,TensorFlow应用于超过6000个在线开源代码仓库。

\\

会场直击

\\

TensorFlow工程总监Rajat Monga在会场介绍,目前业界更多的是如K-means、支持向量机(SVMs)这样的传统机器学习工具。本次发布版本引入了一些新工具,包括人工神经网络,可以针对训练数据样本基础之上推论新数据。

\\

由于基于Python开发的Keras库很容易与深度学习框架Theano结合,所以V1.0版本也对Keras库进行了集成。TensorFlowV1.0 加入了一些高级API,包括 tf.layers,tf.metrics 和 tf.losses 模块。此外,它还包含一个全新的 tf.keras 模块,能够与 Keras 完全兼容.Monga表示本次集成后开发者会很容易使用简单的神经网络。

\\

神经网络研究者 Rachel Thomas 在 fast.ai 上撰文介绍了这一消息,并记录了他使用TensorFlow和Keras的感受:

\\
\

使用 TensorFlow 给我的感觉就是我还不够聪明,但是使用 Keras
\的时候我会觉得神经网络要比我想象的简单。这是因为TensorFlow 的 API 过于冗长和混乱,而Keras的 API很容易理解。对我来说,刚开始使用TensorFlow
\受挫后就公开批评不太好,让人觉得不稳重。当然,其中有我自己的原因。但是,Keras 和 Theano
\确实证实了我的想法,tensors 和 神经网络学习不一定非得这么难。

\\

一次大学作业中我使用了一个硬件描述语言,通过添加和改变 CPU
\暂存器中的字节来编码除法(division)。虽然这种方式很有趣,但是我非常确定,我不想用这种方式对神经网络进行编码。使用一个更高级别的语言的好处是显而易见的:更快地编码、更少的bug,以及,更少的痛苦。Keras的好处还有更多——它更适配神经网络的概念,能促进新的发现。Keras让我更加擅长神经网络,因为语言抽象与神经网络的概念搭配得更加好。

\\

使用与我的思维方式相似的语言编写程序,能让我把注意力集中在需要解决的难题上。因为,当我把更多的精力花在头脑中的思维与编程语言之间的概念转换的时候,我的思考就会变慢。TensorFlow这种方式会对我的效率有所影响。

\
\\

2be7a1fd09924ca0d8262076e0eb4da8.png

\\

Google很快会公开TensorFlow其他源代码,包括包括基于 8 GPU 对 初始神经网络v3 实现7.3倍加速,以及基于 64 GPU 对分布式初始神经网络v3 训练实现58倍加速!此外,TensorFlow很快会支持高通发布的Snapdradon 820移动芯片的六角数字信号处理器,TensorFlow编译器(XLA)也在向适合底层计算基础设施方面靠拢。

\\

TensorFlow是Google在2015年发布的第二代开源机器学习系统,目前已被广泛应用。随着它自身的不断完善,不断地增加功能,包括支持分布式训练、支持Hadoop分布式文件系统(HDFS)、较好的Parsey MxParseFace语言解析器等等。

\\

Google提供了云端机器学习服务,支持用户在Google云端设备上运行TensorFlow。

\\

工程总监Megan Kacholia表示,到2017年3月末,Google不仅仅会发布新属性以领先其他的深度学习框架,而且将会发布其用于评估的模型。

\\

TensorFlow V1.0 重大功能

\\
  • XLA(实验版):发布XLA实验版本,针对TensorFlow图的专用编译器,面向CPU和GPU。\\t
  • TensorFlow Debugger(tfdbg):命令行界面和API。\\t
  • 添加了新的Python 3 Docker图像。\\t
  • 使pip包兼容pypi。TensorFlow现在可以通过 pip install tensorflow 命令安装。\\t
  • 更改了几个python API的调用方式,使其更类似 NumPy。 新的(实验版)Java API。\\t
  • Android:全新人物检测+跟踪演示实现——“Scalable Object Detection using DNN”(带有额外的YOLO对象检测器支持)。\\t
  • Android:全新基于摄像头的图像风格转换演示,使用了神经网络艺术风格转换技术。\

参考阅读

TensorFlow各版本差异介绍如何开始学习TensorFlow如何迁移到TensorFlowV1.0如何在Hadoop上运行TensorFlowTensorFlowV1.0API接口,包括Python、Java、C++、Go四种语言

\\

感谢杜小芳对本文的审校。

\\

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至[email protected]。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们。