AttributeError: module ‘tensorflow.compat.v1‘ has no attribute ‘contrib‘

将之前的代码迁到新服务器后报错:“AttributeError: module ‘tensorflow.compat.v1’ has no attribute ‘contrib’”。
原来的代码使用的是tf1.8,新服务器的环境是tf2.5,并且代码中调用tf1中的API,所以会报错。
具体情况如下:
原代码:

initializer = tf.contrib.layers.xavier_initializer()

报错原因是,tf2中删除了contrib这个库,因此无法使用xavier_initializer()初始化。但是提供了相同功能的函数:
glorot uniform initializer(),两者的初始化方式是相同的。因此使用如下代码,即可解决上述问题。

initializer=tf.glorot_uniform_initializer()

你可能感兴趣的:(tensorflow)