为了更快地推断一个模型,我想将'Conv-BN-Scale‘合并成一个Conv层,用于tensorflow模型,,但我无法找到一些有用的完整示例,说明如何实现
任何人都可以给出一些建议或完整的代码示例??
谢谢!
发布于 2019-01-28 05:47:35
要合并两个层,您需要传递一个张量并得到一个张量,即在应用两个层之后,假设输入张量为X。
def MlConvBnScale(X ,kernel,strides , padding = 'SAME' , scale = False, beta_initializer = 0.1, gamma_initializer = 0.1, moving_mean_initializer = 0.1, moving_variance_initializer = 0.1):
convLout = tf.nn.conv2d(X,
filter = Kernel,
strides = strides,
padding = padding)
return tf.nn.batch_normalization(convLout,
scale = scale,
beta_initializer = beta_initializer,
gamma_initializer = gamma_initializer,
moving_mean_initializer = moving_mean_intializer,
moving_variance_initializer = moving_variance_initializer )这将返回一个张量,在执行这两个操作之后,我已经获得了变量的默认值,但是您可以在函数调用中修改它们,如果您的输入不是张量而是numpy数组,您可以从这个链接tensor中使用tensor,如果您正在与内核/过滤器及其应用程序斗争,请检查这个线程。What does tf.nn.conv2d do in tensorflow?
如果您有任何疑问或遇到执行它的困难,请在下面注释一下,我们将看到。
https://stackoverflow.com/questions/54387486
复制相似问题