20. Python API
Remember to import the IPU API using:
from tensorflow.python import ipu
You cannot access the IPU API via the top-level tensorflow namespace.
For example, this will not work:
import tensorflow as tf
cfg = tf.python.ipu.config.IPUConfig() ...
Note
tensorflow.python.ipu.ipu_strategy.IPUStrategy is an alias of
tensorflow.python.ipu.ipu_strategy.IPUStrategyV1.
20.1. Datasets
20.2. Estimators
20.3. Keras
20.4. Keras layers
Note
tensorflow.python.ipu.keras.layers.GRU is an alias of
tensorflow.python.ipu.keras.layers.PopnnGRU
tensorflow.python.ipu.keras.layers.LSTM is an alias of
tensorflow.python.ipu.keras.layers.PopnnLSTM
20.5. Keras losses
20.6. Keras optimizers
20.7. Operators
It is also possible to access the operators via the
tensorflow.python.ipu.ops namespace, for example:
tensorflow.python.ipu.ops.normalization_ops.group_norm().
20.8. Optimisers
In addition to the tensorflow.python.ipu.optimizers namespace, it is also possible to access the optimizer classes via other namespaces, as shown in the following table:
Optimizer |
Alternative namespaces |
|---|---|
|
tensorflow.python.ipu.automatic_loss_scaling_optimizer tensorflow.python.ipu.optimizers.automatic_loss_scaling_optimizer |
tensorflow.python.ipu.cross_replica_optimizer tensorflow.python.ipu.optimizers.cross_replica_optimizer |
|
tensorflow.python.ipu.gradient_accumulation_optimizer tensorflow.python.ipu.optimizers.gradient_accumulation_optimizer |
|
tensorflow.python.ipu.gradient_accumulation_optimizer tensorflow.python.ipu.optimizers.gradient_accumulation_optimizer |
|
tensorflow.python.ipu.gradient_accumulation_optimizer tensorflow.python.ipu.optimizers.gradient_accumulation_optimizer |
|
tensorflow.python.ipu.gradient_accumulation_optimizer tensorflow.python.ipu.optimizers.gradient_accumulation_optimizer |
|
tensorflow.python.ipu.map_gradient_optimizer tensorflow.python.ipu.optimizers.map_gradient_optimizer |
|
tensorflow.python.ipu.sharded_optimizer tensorflow.python.ipu.optimizers.sharded_optimizer |
Note
The ipu.optimizers optimizer classes can only be used with subclasses of tensorflow.compat.v1.train.Optimizer.