TensorFlow 2.1.0-rc1 发布了,TensorFlow 2.1 将是支持 Python 2 的最后一个 TF 版本。Python 2 的支持将于 2020 年 1 月 1 日正式结束,TensorFlow 也将从该日起停止支持 Python 2,并且预计在 2019 年将不再发布新的版本。
主要特性和改进如下:
tensorflow pip 软件包现在默认包括针对 Linux 和 Windows 的 GPU 支持(与 tensorflow-gpu 相同)。它可以在带有和不带有 NVIDIA GPU 的机器上运行。 tensorflow-gpu 仍然可用,对于关心软件包大小的用户,可以 在tensorflow-cpu 上下载仅 CPU 的软件包。
tensorflow pip 软件包使用 CUDA 10.1 和 cuDNN 7.6 构建。
tf.keras
- Model.fit_generator、 Model.evaluate_generator、 Model.predict_generator、 Model.train_on_batch、 Model.test_on_batch和 Model.predict_on_batch 方法现在尊重 run_eagerly 属性,并且默认情况下将使用 tf.function 正确运行。
- Model.fit_generator、 Model.evaluate_generator和 Model.predict_generator 是已弃用的端点。它们包含在 Model.fit、Model.evaluate 和 Model.predict 中,现在支持生成器和序列。
- 只要在范围内构建模型,就可以将 Keras .compile .fit .evaluate 和 .predict 置于 DistributionStrategy 范围之外。
- Keras model.load_weights 现在接受 skip_mismatch 作为参数。它在外部 Keras 中可用,现已复制到 tf.keras 中。
- 引入了 TextVectorization 层,该层将原始字符串作为输入,并负责文本标准化、标记化、n-gram 生成和词汇索引。
- Cloud TPU Pod 提供了对 Keras .compile、.fit、.evaluate 和 .predict 的实验支持。
- 为 Cloud TPU 启用了自动外部编译。这使得 tf.summary 可以更方便地与 Cloud TPU 一起使用。
- Cloud TPU 支持带有 DistributionStrategy 和 Keras 的动态批量大小。
- GPU 和 Cloud TPU 提供了对混合精度的实验支持。
- TensorFlow Model Garden 提供了许多流行模型的 Keras 参考实现。
tf.data
- 更改 tf.data 数据集的重新编录+分发策略以提高性能。请注意,数据集的行为也略有不同,因为重新标记的数据集基数将始终是副本数的倍数。
TensorRT
- 现在默认情况下支持并启用 TensorRT 6.0。这增加了对更多 TensorFlow 操作的支持,包括 Conv3D,Conv3DBackpropInputV2,AvgPool3D,MaxPool3D,ResizeBilinear 和 ResizeNearestNeighbor。此外,TensorFlow-TensorRT python 转换 API 导出为 tf.experimental.tensorrt.Converter。
添加了环境变量 TF_DETERMINISTIC_OPS。当设置为 “true” 或 “1” 时,此环境变量使 tf.nn.bias_add 确定性地(即可重复地)运行,但当前仅当未启用 XLA JIT 编译时才运行。这使得 Keras ConvD 和 MaxPoolD 层在启用 CUDA 的 GPU 上运行时可确定地在向前和向后两个方向上运行。
详情查看更新说明:
https://github.com/tensorflow/tensorflow/releases/tag/v2.1.0-rc1