Course 4, week 4 Neural Style Transfer: train_step "Unexpected cost for epoch 0"

This result was caused by each calculation method the python and tensorflow.
pythons calculation is free of type restriction but tensorflows method isnt. so, tf.squares datatype has tf.float32 and **2s datatype has int. In UNQ_C3, Test numbers has so small. It doesnt problem.
But In 5.5.2 - Compute Style Cost, We solve the large number problem.

This number is out of range the tf.float32.
This is overflow and You can see the log about overflow below.

In UNQ_C3,
J_style_layer = …
print(f’**2 : {type((2 * n_H * n_W * n_C)**2)}, value : {((2 * n_H * n_W * n_C)**2)}’)
print(f’tf.square : {tf.cast(tf.square((2 * n_H * n_W * n_C)), tf.float32).dtype}, value : {tf.cast(tf.square((2 * n_H * n_W * n_C)), tf.float32)}’)

result #### 5.5.2 - Compute Style Cost
**2 : <class ‘int’>, value : 104857600000000
tf.square : <dtype: ‘float32’>, value : 268435456.0
**2 : <class ‘int’>, value : 26214400000000
tf.square : <dtype: ‘float32’>, value : -2080374784.0
**2 : <class ‘int’>, value : 6553600000000
tf.square : <dtype: ‘float32’>, value : -520093696.0
**2 : <class ‘int’>, value : 409600000000
tf.square : <dtype: ‘float32’>, value : 1578106880.0
**2 : <class ‘int’>, value : 409600000000
tf.square : <dtype: ‘float32’>, value : 1578106880.0