keras对第一层输入尺寸的规定

1、Sequential情况下
如果想要指定批次的大小,需要在第一层的输入形状中使用batch_input_shape
而不能使用input_shape,因为input_shape不能指定批次的大小,批次只能为None

input_shape和batch_input_shape。
input_shape 不包含批量大小,
batch_input_shape是全情投入的形状,包括批量大小。

2、函数式情况下

Input参数
shape: 一个尺寸元组(整数),不包含批量大小。A shape tuple (integer), not including the batch size. 例如,shape=(32,) 表明期望的输入是按批次的 32 维向量。
batch_shape: 一个尺寸元组(整数),包含批量大小。 例如,batch_shape=(10, 32) 表明期望的输入是 10 个 32 维向量。 batch_shape=(None, 32) 表明任意批次大小的 32 维向量。

对于官网的解释是这样的

# 作为 Sequential 模型的第一层
model = Sequential()
model.add(Dense(32, input_shape=(16,)))
# 现在模型就会以尺寸为 (*, 16) 的数组作为输入,
# 其输出数组的尺寸为 (*, 32)

# 在第一层之后,你就不再需要指定输入的尺寸了:
model.add(Dense(32))

点击这里

猜你喜欢

转载自blog.csdn.net/ALZFterry/article/details/109764969