Search code examples
tensorflowtensorflow-datasetstensorflow2.0

What does experimental in TensorFlow mean?


In TensorFlow 2.0 APIs, there is a module tf.experimental. Such a name also appears in other places like tf.data.experimental. I just would like to know what the motivation for designing these modules is.


Solution

  • tf.experimental indicates that the said class/method is in early development, incomplete, or less commonly, not up-to-standards. It's a collection of user contributions which weren't yet integrated w/ main TensorFlow, but are still available as a part of open-source for users to test and give feedback.

    "Incomplete" is the most common, which can include having bugs, or not passing tests across a required set of platforms or hardware (CPU/GPU). As an example of not being "up to standards", from a 2017 Google Devs blog on tf.xla.experimental: (more details in this answer)

    XLA should still be considered experimental, and some benchmarks may experience slowdowns