根据此repo
的以下代码段# Define image input layer
if DIM_ORDERING == 'th':
INP_SHAPE = (3, 224, 224) # 3 - Number of RGB Colours
img_input = Input(shape=INP_SHAPE)
CONCAT_AXIS = 1
elif DIM_ORDERING == 'tf':
INP_SHAPE = (224, 224, 3) # 3 - Number of RGB Colours
img_input = Input(shape=INP_SHAPE)
CONCAT_AXIS = 3
输入数据的形状是根据要与Keras库一起使用的后端决定的。我想知道为什么这种区别是必要的?为什么我们不能在两种情况下使用相同的输入形状?
答案 0 :(得分:1)
Keras
是适用于tensorflow
和theano
的高级深度学习API。它使用这些库中的函数来执行计算。在Theano
中,它的autors决定将通道维度放在空间维度之前。在Tensorflow
中 - 作者将其作为最后一个维度。这就是你提到的Keras
差异背后的原因。