Python Tensorflow throws error “**cannot import name ‘to_categorical’ from ‘keras.utils’**” when you are using Tensorflow version 2 but implementing the older syntax.

## Solution

Instead of using this syntax for importing `keras`

library –

from keras.utils import to_categorical

use this syntax –

from tf.keras.utils import to_categorical

## Why this error occurred?

Because when `Tensorflow`

upgraded from `V1`

to `V2`

, `Keras`

library got integrated into it too. So, in order to access `to_categorical`

form `keras.utils`

, we need to use `tf.keras.utils`

.

## Code Example

from tf.keras.utils import to_categorical a = to_categorical([0, 1, 2, 3], num_classes=4) a = tf.constant(a, shape=[4, 4]) print(a)

The output of above code will be –

tf.Tensor( [[1. 0. 0. 0.] [0. 1. 0. 0.] [0. 0. 1. 0.] [0. 0. 0. 1.]], shape=(4, 4), dtype=float32)

## Conclusion

`keras`

is the part of `tensorflow`

library from version 2. So, to access any method within it, we need to use `tf.keras`

now.