Python 3.x 如何在不调用tf.layers.batch_normalization()的情况下在推理模式下设置批处理规范化操作?
我用tensorflow定义了一个深度CNN,包括一个批处理规范化操作,也就是说,我的代码可能如下所示:Python 3.x 如何在不调用tf.layers.batch_normalization()的情况下在推理模式下设置批处理规范化操作?,python-3.x,tensorflow,machine-learning,deep-learning,deep-residual-networks,Python 3.x,Tensorflow,Machine Learning,Deep Learning,Deep Residual Networks,我用tensorflow定义了一个深度CNN,包括一个批处理规范化操作,也就是说,我的代码可能如下所示: def network(input): ... input = tf.layers.batch_normalization(input, ...) ... 假设网络已经过训练,并且检查点文件已经保存。现在我想用这个模型来推断。通常,我可以再次调用函数network(input),除了将参数training=False传递到tf.layers.batch\u norm
def network(input):
...
input = tf.layers.batch_normalization(input, ...)
...
假设网络已经过训练,并且检查点文件已经保存。现在我想用这个模型来推断。通常,我可以再次调用函数network(input)
,除了将参数training=False
传递到tf.layers.batch\u normalization()
,然后从检查点文件恢复权重
但是,我更愿意使用tf.import\u meta\u graph
重建我的网络,因为可以更改函数network(input)
中的代码
但是现在我如何在推理模式下设置批处理规范化操作呢?由于我无法访问函数tf.layers.batch\u normalization()
,所以我很难解决这个问题。请检查。特别是,折叠批规格。