TensorFlow Quantum and first release candidate for TensorFlow 2.2
The TensorFlow developers have been keeping busy this week: Not only has the first release candidate for TensorFlow 2.2 arrived, but we can now also welcome the very first release of TensorFlow Quantum. Let’s see what has been happening in the world of Google’s machine learning framework.
TensorFlow is an open source library for machine learning developed by Google, and the first release candidate for TF 2.2 shows there will be several breaking changes, feature updates and more.
But that’s not all! TensorFlow Quantum, also released this week, is a new version of TensorFlow for combining machine learning and quantum computing. So, let’s take a look at that first.
In a blog post and on Twitter, Google AI announced the launch of TensorFlow Quantum, an open source library for bringing together ML and quantum computing. It was developed in collaboration with the University of Waterloo, X (formerly known as Google X), and Volkswagen.
Announcing TensorFlow Quantum (#TFQ), an open-source library for the rapid prototyping of quantum #MachineLearning models, bringing the quantum computing and ML research communities together to accelerate the discovery of new quantum algorithms. https://t.co/y624QyVjV8
— Google AI (@GoogleAI) March 9, 2020
TensorFlow Quantum (TFQ) allows the rapid prototyping of quantum ML models. They are able to “represent and generalize data with a quantum mechanical origin,” as the post on the Google AI Blog explains. Under the hood, TFQ integrates TensorFlow with Circ, a Python library for quantum circuits that was developed by the Google AI Quantum Team.
At the moment, TFQ focuses on executing quantum circuits on classical quantum circuit simulators, but support for actual quantum processors will be implemented in the future.
The TensorFlow Quantum website offers further details.
TensorFlow 2.2.0-rc0 adds breaking changes
Meanwhile, work on TensorFlow is continuing as well. The first release candidate for TensorFlow 2.2 has several new features, but also some breaking changes on board.
The added features include a new profiler for TF 2 for CPU, GPU, and TPU and the option to export C++ functions to Python via
pybind11. The scalar type for string tensors, previously
std::string, has been switched to
In the release candidate, tf.keras has some new features on board as well. For example,
Model.fit now allows custom training logic and it also handles distribution strategies, callbacks, and more.
Two breaking changes refer to tf.keras, one of which is that the name of the “top” layer in
tf.keras.applications has been standardized to “predictions.” When code relies on exact layer names, this will pose a breaking change.
Other breaking changes include the deprecation of XLA_CPU and XLA_GPU devices and an update to the Huber loss function to be consistent with other Keras losses. The minimum required version of Bazel has been moved to 1.2.1.
See the release notes for more details.