包装器WrapperTimeDistributed包装器keras.layers.wrappers.TimeDistributed(layer) 该包装器可以把一个层应用到输入的每一个时间步上 参数
输入至少为3D张量,下标为1的维度将被认为是时间维 例如,考虑一个含有32个样本的batch,每个样本都是10个向量组成的序列,每个向量长为16,则其输入维度为 我们可以使用包装器 # as the first layer in a modelmodel = Sequential()model.add(TimeDistributed(Dense(8), input_shape=(10, 16)))# now model.output_shape == (None, 10, 8)# subsequent layers: no need for input_shapemodel.add(TimeDistributed(Dense(32)))# now model.output_shape == (None, 10, 32) 程序的输出数据shape为 使用 model = Sequential()model.add(TimeDistributed(Convolution2D(64, 3, 3), input_shape=(10, 3, 299, 299))) Bidirectional包装器keras.layers.wrappers.Bidirectional(layer, merge_mode='concat', weights=None) 双向RNN包装器 参数
例子model = Sequential()model.add(Bidirectional(LSTM(10, return_sequences=True), input_shape=(5, 10)))model.add(Bidirectional(LSTM(10)))model.add(Dense(5))model.add(Activation('softmax'))model.compile(loss='categorical_crossentropy', optimizer='rmsprop') |
|