Skip to content

yaroslavvb/early-eager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

88 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TensorFlow Eager Execution

WARNING: This is a preview/pre-alpha version. The API and performance characteristics are subject to change.

Eager execution is an experimental interface to TensorFlow that provides an imperative programming style (à la NumPy). When you enable eager execution, TensorFlow operations execute immediately; you do not execute a pre-constructed graph with Session.run().

For example, consider a simple computation in TensorFlow:

x = tf.placeholder(tf.float32, shape=[1, 1])
m = tf.matmul(x, x)

with tf.Session() as sess:
  print(sess.run(m, feed_dict={x: [[2.]]}))

# Will print [[4.]]

Eager execution makes this much simpler:

x = [[2.]]
m = tf.matmul(x, x)

print(m)

Caveats

This feature is in early stages and work remains to be done in terms of smooth support for distributed and multi-GPU training and CPU performance.

Installation

Since eager execution is not yet part of a TensorFlow release, using it requires either building from source or the latest nightly builds. The nightly builds are available as:

For example, to run the latest nightly docker image:

# If you have a GPU, use https://github.com/NVIDIA/nvidia-docker
nvidia-docker pull tensorflow/tensorflow:nightly-gpu
nvidia-docker run -it -p 8888:8888 tensorflow/tensorflow:nightly-gpu

# If you do not have a GPU, use the CPU-only image
docker pull tensorflow/tensorflow:nightly
docker run -it -p 8888:8888 tensorflow/tensorflow:nightly

And then visit http://localhost:8888 in your browser for a Jupyter notebook environment. Try out the notebooks below.

Documentation

For an introduction to eager execution in TensorFlow, see:

Changelog

  • 2017/10/31: Initial preview release.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published