Release of the TensorFlow 2.0 machine learning system

Introduced a significant release of the machine learning platform TensorFlow 2.0, providing ready-to-use implementations of various deep learning algorithms, a simple programming interface for building models in Python, and a low-level interface for C++, allowing management of the construction and execution of computational graphs. The system code is written in C++ and Python and is distributed is licensed under the Apache license.

The platform was initially developed by the Google Brain team and is used in Google services for speech recognition, face detection in photos, image similarity determination, spam filtering in Gmail, news recommendation in Google News and organizing translation based on meaning. Distributed machine learning systems can be created on standard hardware, thanks to built-in support in TensorFlow for distributing computations across multiple CPUs or GPUs.

TensorFlow provides a library of ready-made algorithms for numerical computations, implemented through data flow graphs. Nodes in such graphs implement mathematical operations or entry/exit points, while the edges of the graph represent multidimensional data arrays (tensors) that flow between nodes.
Nodes can be pinned to computing devices and executed asynchronously, processing all suitable tensors simultaneously, allowing for the simultaneous operation of nodes in a neural network, similar to the simultaneous activation of neurons in the brain.

The focus of the new version was on simplification and ease of use. Some innovations:

  • To build and train models, a new high-level API has been proposed Keras, providing several interface options for building models (Sequential, Functional, Subclassing) with the capability for immediate execution (without prior compilation) and a simple debugging mechanism;
  • Added API tf.distribute.Strategy for organizing distributed training of models with minimal changes to the existing code. In addition to the ability to distribute computations across multiple GPUs, experimental support for distributing the training process across multiple independent processors and the ability to utilize cloud TPUs (Tensor Processing Unit);
  • Instead of a declarative model for graph construction executed via tf.Session, there's now the ability to write standard functions in Python, which can be transformed into graphs through the tf.function call and then executed remotely, serialized, or optimized for performance improvement;
  • Translator added AutoGraph, converting Python command streams into TensorFlow expressions, allowing you to use Python code within tf.function-decorated functions, tf.data, tf.distribute, and tf.keras;
  • The SavedModel format for model exchange has been unified, and support has been added for saving and restoring model states. Models built for TensorFlow can now be used in TensorFlow Lite (on mobile devices), TensorFlow JS (in the browser or Node.js), TensorFlow Serving and TensorFlow Hub;
  • The APIs tf.train.Optimizers and tf.keras.Optimizers have been unified; instead of compute_gradients for gradient calculation, a new class called GradientTape;
  • Performance has been significantly increased when using GPUs.
    The training speed of models on NVIDIA Volta and Turing GPU systems has increased up to three times;
  • Completed A major API cleanup has been performed, with many calls renamed or removed and support for global variables in helper methods discontinued. A new API absl-py has been proposed instead of tf.app, tf.flags, tf.logging. A compat.v1 module has been prepared to continue using the old API.

Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster