TensorFlow 1.7.0正式发布,Bug修复和改进内容都在这里了

1,044 阅读2分钟
原文链接: mp.weixin.qq.com

编译 | AI科技大本营(公众号ID:rgznai100)

参与 | 张建军

TensorFlow 1.7.0 近日正式发布,新版本主要有以下改进内容,AI科技大本营对其进行了编译。

 

主要特征和改进

  • 从 contrib 中移除 Eager 模式,现在请用 tf.enable_eager_execution()

  • Graph 重写了仿真定点量化器,现在与TensorFlow Lite 兼容,由新的tf.contrib.quantize 包支持

  • 利用 tf.custom_gradient可以简单定制梯度的计算

  • TensorBoard  调试器插件,即 TensorFlow  调试器( tfdbg )的图形用户界面(GraphicalUser Interface, GUI),现在推出alpha 版本

  • 利用新的 tf.contrib.data.SqlDataset,支持把一个 sqlite 数据库作为 Dataset 对象进行读入

  • tf.contrib.framework.CriticalSection 添加分布式的 Mutex /CriticalSection

  • tf.regex_replace 更好地支持文本处理

  • tf.contrib.data.bucket_by_sequence_length 支持简单高效的序列输入

 

Bug 修复和其他改进

  • 加速线性代数(XLA):

    • XLA 添加对MaxPoolGradGrad 的支持

    • XLA 禁止从TensorFlow进行CSE pass

  • tf.data:

    • tf.data.Dataset

    1. ‍利用 tf.load_op_library()机制,支持构建 C++ Dataset op 内核作为外部库

    2. Dataset.list_files() 默认执行对输出进行随机打乱操作

    3. Datas‍et.shuffle(..., seed=tf.constant(0, dtype=tf.int64)) 现在和 Dataset.shuffle(...,seed=0) 返回同样的元素序列

    • tf.data.TFRecordDataset 添加了 num_parallel_reads参数   

  • tf.contrib:

    • tf.contrib.bayesflow.halton_sequence 现在支持随机化

    • tf.contrib.all_reduce 添加对标量的支持

    • tf.contrib.bayesflow.mcmc_diagnostics 中添加 effective_sample_size

    • tf.contrib.bayesflow.mcmc_diagnostics 中添加 potential_scale_reduction

    • 添加 BatchNormalization, Kumaraswamy双射器(bijectors)

    • 未来不再支持 tf.contrib.learn。请查阅 contrib/learn/README.md中的指示对已有代码进行转换

    • tf.contrib.data

    1. 移除不再支持的类, 其中包括  tf.contrib.data.Dataset,tf.contrib.data.Iterator, tf.contrib.data.FixedLengthRecordDataset, tf.contrib.data.TextLineDataset, 和 tf.contrib.data.TFRecordDataset

    2. 添加 bucket_by_sequence_length, sliding_window_batch, 和 make_batched_features_dataset

    • 移除不再维护的 tf.contrib.ndlstm。 你可以从这个外部网址找到它:https://github.com/tmbarchive/tfndlstm

    • 把 tf.contrib.bayesflow的大多数内容迁移到它自己的仓库中: tfp

  • 其他

    • 如果抛出异常,tf.py_func现在会把完整的堆栈跟踪信息打印出来

    • TPUClusterResolver 和 GKE 进行整合,支持Cloud TPU

    • 增加一个采样器统计检验的库

    • 针对 Cloud TPU,从 GCE VM 中添加对流数据的帮助函数

    • ClusterResolvers 和TPUEstimator 进行整合

    • 统一了 metropolis_hastings和 HMC 内核的接口

    • 把 LIBXSMM 卷积迁移到一个单独的 --defineflag 中,因此这个操作现在是默认禁止的

    • 修复了 MomentumOptimizerlambda

    • 通过可编程 docstrings减少 tfp.layers 的样板代码

    • 添加 auc_with_confidence_intervals, 该方法可用线性时间复杂度计算 AUC 值和置信区间

    • regression_head 现在接受自定义的连接函数作为输入,在array_ops.identity 不支持的情况下可以满足用户定义自己的连接函数的需求

    • 修复了从 VariableDef创建 ResourceVariables对象时initialized_value 和 initial_value 的行为

    • 添加了 TensorSpec作为 Tensors 的解释说明文档

    • 确定性的常量折叠操作

    • tf.linalg.* 支持float16 的dtype

    • 添加 tf.estimator.export.TensorServingInputReceiver允许 tf.estimator.Estimator.export_savedmodel 传入 raw tensors来模拟函数

原作者 | yifeif

原文链接

https://github.com/tensorflow/tensorflow/releases/tag/v1.7.0-rc0?from=groupmessage&isappinstalled=0