解决 AttributeError: module ‘tensorflow.compat.v1‘ has no attribute ‘contrib‘‘问题

原因是TensorFlow 2.x之后把contrib这个库取消了,contrib的内容可以集成到下面三个包中

tf.keras.layers.Layer
tf.keras.Model
tf.Module

发现L2正则化存在于tf.keras里面,于是如下操作更改

我出错的代码是

regularizer = tf.contrib.layers.l2_regularizer(scale = 1e-10)
initializer = tf.contrib.layers.xavier_initializer()

更改为下面这两行就可以了

regularizer = tf.keras.regularizers.l2(1e-10)
initializer = tf.keras.initializers.glorot_normal()

代码就可以运行了

你可能感兴趣的:(python,tensorflow,contrib)