假设我有100k x 400的数据集。我创建了这个模型:
model = Sequential()
model.add(Dense(200, input_dim = 400, init = init_weights))
model.add(BatchNormalization())
model.add(SReLU())
model.add(Dropout(0.5))
model.add(Dense(200, init = init_weights))
model.add(BatchNormalization())
model.add(SReLU())
model.add(Dropout(0.5))
model.add(Dense(1, activation = 'linear', init = init_weights))
比我打电话
model.compile(loss = ..
和
model.fit(input_matrix,..
训练结束后,我可以调用model.predict(..进行预测。
我想得到的是没有最后一个线性层的模型的预测矩阵..
类似于:
model.remove_last_layer
pred_matrix = model.predict(input_matrix)
其中输出为100k x 200阵列,如何使用keras进行此操作?很多
答案 0 :(得分:1)
到我找到的文档的链接
layer_name = 'dropout_2'
intermediate_layer_model = Model(input = model.input, output = model.get_layer(layer_name).output)
intermediate_output = intermediate_layer_model.predict(matrix_test)