TensorFlow 1.7.0正式发布,Bug修复和改进内容都在这里了
编译 | 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
利用 tf.load_op_library()机制,支持构建 C++ Dataset op 内核作为外部库
Dataset.list_files() 默认执行对输出进行随机打乱操作
Dataset.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
移除不再支持的类, 其中包括 tf.contrib.data.Dataset,tf.contrib.data.Iterator, tf.contrib.data.FixedLengthRecordDataset, tf.contrib.data.TextLineDataset, 和 tf.contrib.data.TFRecordDataset
添加 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