tensorflow - tf.layers.conv2d 的掩码操作
问题描述
我输入了一个具有以下形式的张量 (batch_size, h, w, number_channel) 我想要做的是:屏蔽值为 255 的张量的值,并且在卷积网络的操作期间不要使用它们。
这是代码:
def gen_conv(x, cnum, ksize, stride=1, rate=1, name='conv',
padding='SAME', activation=tf.nn.elu, training=True,
kernel_initializer=None):
"""Define conv for generator.
Args:
x: Input.
cnum: Channel number.
ksize: Kernel size.
stride: Convolution stride.
Rate: Rate for or dilated conv.
name: Name of layers.
padding: Default to SYMMETRIC.
activation: Activation function after convolution.
training: If current graph is for training or inference, used for bn.
Returns:
tf.Tensor: output
"""
mask = tf.keras.layers.Masking(mask_value=255.0)(x)
x = tf.layers.conv2d(x, cnum, ksize, stride, dilation_rate=rate,
activation=None, padding=padding, name=name,
kernel_initializer=kernel_initializer) (mask)
# We empirically found BN to help if not trained (works as regularizer)
x = tf.layers.batch_normalization(x)
x = activation(x)
return x
TypeError:“张量”对象不可调用
如何将掩码添加到此网络?
解决方案
推荐阅读
- reactjs - React Router 4 的嵌套开关和默认子路由
- python - 从另一个熊猫数据框创建数据框并在同一数据框上应用 Groupby 时无法选择多个列
- python - 将结果作为模型的初始值,但要解决恢复
- node.js - 我可以对 Express 中的路线进行例外处理吗?
- c# - 将 Web 服务器映像移动到虚拟环境时,asp.net 2010 Web 服务无法正常工作
- fiware - 如何按类型获取实体数量?
- apache-spark - 分组表达式上的相关子查询 - TreeNodeException:绑定属性,树:count(1)#382L
- node.js - Redis在一个命令中获取一个键的TTL和值 - nodejs redis
- angular - 使用 $compile 寻找 angularJs 算法的角度解决方案
- bitcoinj - 尝试发送原始交易 bitoinj