前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >TensorFlow 1.2.0新版本发布:新增Intel MKL优化深度学习基元

TensorFlow 1.2.0新版本发布:新增Intel MKL优化深度学习基元

作者头像
大数据文摘
发布2018-05-25 15:22:57
1.4K0
发布2018-05-25 15:22:57
举报
文章被收录于专栏:大数据文摘大数据文摘

大数据文摘作品,转载要求见文末

作者 | av8ramit

编译|钱天培

TensorFlow在今天最新发布了1.2.0版本。在这一新版本中,TensorFlow新增Intel MKL优化深度学习基元,实现了对Windows系统上对Python 3.6的支持,发布了开源版的TensorBoard,并进行了大量的命名修改,以实习同一模块内命名的一致性。下面,大数据文摘将为你带来完整版的TensorFlow 1.2.0 改进介绍。

◆ 在Windows上提供Python 3.6支持

◆为spatio temporal deconvolution添加tf.layers.conv3d_transpose层

◆ 添加了tf.Session.make_callable(),方便对相似步骤进行多次执行

◆ 为contrib添加了基于IB verbs的RDMA支持(感谢来自雅虎的@junshi15提供)

◆RNNCell现在是tf.layers.Layer的子类(subclass)。

现版本比TensorFlow1.1更灵活:当一个RNNCell对象被第一次使用时,它的作用域(scope)就被缓存记录了。后期对RNNCell的使用会对同一作用域的变量作再使用。相比于TensorFlow 1.0.1以下的版本,这是一个巨大的转变。TensorFlow 1.1 用了一些检验来确保旧版本的代码可以在新版本的环境下成功运行;本版本允许了更灵活的RNNCell使用方法,但在TensorFlow 1.0.1以下版本编写的代码也可能在新版本中出问题。比如说,MultiRNNCell([lstm] * 5)在新版本中会建立一个5层的LSTM堆栈(5-layer LSTM stack),每个堆栈有相同的参数。如果要创建一个有各自参数的5层LSTM堆栈,你需要用MultiRNNCell([LSTMCell(...) for _ in range(5)])。如果不确定的话,先用TF 1.1 测试你的代码,确保无误之后,再升级到TF 1.2。

◆ TensorForest Estimator现在支持SavedModel导出

◆ 支持用户提供的ClusterSpec,并把他们扩散给了所有工作者,从而建立动态TensorFlow集群

◆ TensorFlow C库现在可在Windows使用

◆ 发布了一个开源版的TensorBoard

◆ 可用SavedModel CLI工具来检查、执行SavedModel中的MetaGraph

https://github.com/tensorflow/tensorflow/blob/master/tensorflow/contrib/android/README.md

◆ 安卓版的TensorFlow现在被push到了jcenter以便被整合入各类app中。更多细节参见

https://github.com/tensorflow/tensorflow/blob/master/tensorflow/contrib/android/README.md

◆ RNNCell的变量名被重新命名,以确保与Keras层相一致。

具体来说,之前的变量名“weights”和“biases”已经被改为了“kernel”和“bias”。这可能会与你之前设置的包含这类RNNCell的检查点(checkpoint)反馈不兼容,在这种情况下你可以用checkpoint_convert script来修改旧变量名。

◆ 许多在1.0版本中位于tf.nn命名空间下并被移到tf.contrib.rnn下的RNN的函数和类现在被重新移回了它们的核心命名空间下。

这包括了RNNCell,LSTMCell,GRUCell和一部分其他cell。这些cell现在位于tf.nn.rnn_cell下(为了兼容,tf.contrib.rnn下仍保留了它们的别名)。原先的tf.nn.rnn现在变成了tf.nn.static_rnn,而双向静态(bidirectional static)和状态保存静态(state saving static)的RNN函数现在也被移回了tf.nn的主命名空间下。

◆ 最显著的例外是EmbeddingWrapper, InputProjectionWrapper和OutputProjectionWrapper。

它们会被慢慢移入tf.contrib.rnn的弃用项(deprecation)中。这类wrapper都不够高效,通常该被作为RNN的预处理或后处理的embedding_lookup 或 layers.dense所取代。对于RNN解码,这一功能已经被tf.contrib.seq2seq中的另一个API替代了。

◆Intel MKL 集成 (https://software.intel.com/en-us/articles/tensorflow-optimizations-on-modern-intel-architecture)。

Intel发开了一众优化深度学习基元。除了矩阵乘法和卷积以外,这些组成模块还包括了:

  1. 直接的批量卷积(Direct batched convolution)
  2. 池化:最大化、最小化和平均数(Pooling: maximum, minimum, average)
  3. 激活:ReLU (Activation: ReLU)
  4. 数据处理:多维移项、分解、合并、相加和扩展 (Data manipulation: multi-dimensional transposition (conversion), split, concat, sum and scal)

来源:https://github.com/tensorflow/tensorflow/releases/tag/v1.2.0

关于转载 如需转载,请在开篇显著位置注明作者和出处(转自:大数据文摘 | bigdatadigest),并在文章结尾放置大数据文摘醒目二维码。无原创标识文章请按照转载要求编辑,可直接转载,转载后请将转载链接发送给我们;有原创标识文章,请发送【文章名称-待授权公众号名称及ID】给我们申请白名单授权。未经许可的转载以及改编者,我们将依法追究其法律责任。联系邮箱:zz@bigdatadigest.cn。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-06-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大数据文摘 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档