【发布时间】:2021-04-28 00:24:32
【问题描述】:
根据tf.keras.layers.Conv3D的官方文档
5+D 张量,形状为:batch_shape + (channels, conv_dim1, conv_dim2, conv_dim3) 如果 data_format='channels_first' 或具有形状的 5+D 张量: batch_shape + (conv_dim1, conv_dim2, conv_dim3, 通道) 如果 data_format='channels_last'
。现在关于通道和批处理形状的整个想法是有道理的,但是将 (conv_dim1, conv_dim2,conv_dim2) 的一般顺序更改为 (x,y,z) 以说 (z,x,y) 会影响性能。
Conv3D 是否担心 x-y-z 维度的顺序?
我正在训练一个 U-net 分割模型,并且在更改轴的顺序后,我看到了性能差异。 (x,y,z) 阶的收敛速度比 (y,x,z) 快。
我只是想确定什么是正确的方法..
【问题讨论】:
-
这是一个有趣的效果。你的图像和内核是各向同性的吗?您观察到了哪些性能差异?
-
是的,他们是。我正在使用 BRATS 2020 数据集。我观察到与 (x,y,z) 模型相比,(z,x,y) 图像的损失更高。我的内核和池大小在所有方向上都是相同的,因此这些操作不应影响输出。我跑了10个epoch,效果还是一样。
-
@Darkrider 你的增强也是各向同性的吗?
标签: tensorflow keras deep-learning conv-neural-network image-segmentation