版本contribute发布:https://fossies.org/linux/tensorflow/RELEASE.md
https://github.com/tensorflow/tensorflow/releases/tag/v1.14.0
https://www.oschina.net/news/107581/tensorflow-1-14-0-released
此版本包含不少新特性和功能改进,还修复了大量的 bug。
主要新特性和功能改进:
- 这是包含 compat.v2 模块的第一个 1.x 版本。该模块要求 Tensorflow 库发布在 1.x 和 2.x 中都有效的代码。在此版本之后,2.0 Python API 中不允许进行向后不兼容的更改。
- 默认情况下打开 MKL-DNN contraction 内核。MKL-DNN 基于 CPU 矢量体系结构动态调度最佳内核实现。要禁用它们,请使用 --define=tensorflow_mkldnn_contraction_kernel=0 进行构建。
- 现在,非 Windows 系统库已经过版本控制,它只影响系统包维护者或那些构建 TensorFlow 的扩展:
- Python wheels(Pip 包)包含一个库文件
- Linux:
libtensorflow_framework.so.1
- MacOS:
libtensorflow_framework.1.dylib
- Linux:
libtensorflow
存档包含libtensorflow
库和两个符号链接。 MacOS.dylib
库是一样的, 但符合 MacOS 库命名要求(即libtensorflow.1.dylib
):libtensorflow.so.1.14.0
,主要的库libtensorflow.so.1
,符号链接到主库libtensorflow.so
,符号链接到.so.1
- Python wheels(Pip 包)包含一个库文件
新版本还包含大量更改和 bug 修复,详情请查看更新说明。
重要的变化:
在运算符的改进上,
- New ops and improved op functionality
- Add OpKernels for some stateless maps
- Add v2 APIs for AUCCurve and AUCSummationMethod enums. #tf-metrics-convergence
- Add tf.math.nextafter op.
- Add CompositeTensor base class.
- Add tf.linalg.tridiagonal_solve op.
- Add opkernel templates for common table operations.
- Added GPU implementation of tf.linalg.tridiagonal_solve.
- Added support for TFLite in TensorFlow 2.0.
- Adds summary trace API for collecting graph and profile information.
- Add batch_dims argument to tf.gather.
- Add support for
add_metric
in the graph function mode. - Add C++ Gradient for BatchMatMulV2.
- Added tf.random.binomial
- Added gradient for SparseToDense op.
- Add legacy string flat hash map op kernels
- Add a ragged size op and register it to the op dispatcher
- Add broadcasting support to tf.matmul.
- Add ellipsis (...) support for tf.einsum()
- Added LinearOperator.adjoint and LinearOperator.H (alias).
- Added GPU implementation of tf.linalg.tridiagonal_solve.
- Added strings.byte_split
- Add RaggedTensor.placeholder()
- Add a new "result_type" parameter to tf.strings.split
add_update
can now be passed a zero-arg callable in order to support turning off the update when settingtrainable=False
on a Layer of a Model compiled withrun_eagerly=True
.- Add variant wrapper for absl::string_view
- Add expand_composites argument to all nest.* methods.
- Add pfor converter for Squeeze.
- Bug fix for tf.tile gradient
- Expose CriticalSection in core as tf.CriticalSection.
- Update Fingerprint64Map to use aliases
- ResourceVariable support for gather_nd.
- ResourceVariable's gather op supports batch dimensions.
- Variadic reduce is supported on CPU
- Extend tf.function with basic support for CompositeTensors arguments (such as SparseTensor and RaggedTensor).
- Add templates and interfaces for creating lookup tables
- Post-training quantization tool supports quantizing weights shared by multiple operations. The models made with versions of this tool will use INT8 types for weights and will only be executable interpreters from this version onwards.
- Malformed gif images could result in an access out of bounds in the color palette of the frame. This has been fixed now
- image.resize now considers proper pixel centers and has new kernels (incl. anti-aliasing).
- Performance
- Turn on MKL-DNN contraction kernels by default. MKL-DNN dynamically dispatches the best kernel implementation based on CPU vector architecture. To disable them, build with --define=tensorflow_mkldnn_contraction_kernel=0.
- Support for multi-host ncclAllReduce in Distribution Strategy.
- Expose a flag that allows the number of threads to vary across Python benchmarks.
把contribute的一部分算子移到了基本运算层中.
- TensorFlow Lite
- "Adds support for tflite_convert in 2.0."
- "Remove lite.OpHint, lite.experimental, and lite.constant from 2.0 API."
- tf.contrib
- Added Neural Turing Implementation as described in https://arxiv.org/abs/1807.08518.
- Remove tf.contrib.timeseries dependency on TF distributions.
- Make
GANEstimator
opensource. Estimator.export_savedmodel()
now includes all valid serving signatures that can be constructed from the Serving Input Receiver and all available ExportOutputs. For instance, a classifier may provide regression- and prediction-flavored outputs, in addition to the classification-flavored one. Building signatures from these allows TF Serving to honor requests using the different APIs (Classify, Regress, and Predict). Furthermore,serving_input_receiver_fn()
may now specify alternative subsets of nodes that may act as inputs. This allows, for instance, producing a prediction signature for a classifier that accepts rawTensors
instead of a serializedtf.Example
.- Add
tf.contrib.bayesflow.hmc
. - Add
tf.contrib.distributions.MixtureSameFamily
. - Make
Dataset.shuffle()
always reshuffles after each iteration by default. - Add
tf.contrib.bayesflow.metropolis_hastings
. - Add
log_rate
parameter totf.contrib.distributions.Poisson
. - Extend
tf.contrib.distributions.bijector
API to handle some non-injective transforms. - Java:
- Generics (e.g.,
Tensor<Integer>
) for improved type-safety (courtesy @andrewcmyers). - Support for multi-dimensional string tensors.
- Support loading of custom operations (e.g. many in
tf.contrib
) on Linux and OS X
- Generics (e.g.,
工具链-编译选项:
Toolchains
- CUDNN_INSTALL_PATH, TENSORRT_INSTALL_PATH, NCCL_INSTALL_PATH, NCCL_HDR_PATH are deprecated. Use TF_CUDA_PATHS instead which supports a comma-separated list of base paths that are searched to find CUDA libraries and headers.
- TF code now resides in
tensorflow_core
andtensorflow
is just a virtual pip package. No code changes are needed for projects using TensorFlow, the change is transparent