小编Võ *_*ọng的帖子

如何在Keras中使用CNN时提取图像的特征向量

我正在做二进制分类问题,我的模型架构如下

def CNN_model(height, width, depth):
    input_shape = (height, width, depth)

    model = Sequential()
    # Block 1
    model.add(Conv2D(64, kernel_size=(3, 3), strides=1, activation='relu', input_shape=input_shape, padding='VALID'))
    model.add(Conv2D(64, kernel_size=(3, 3), strides=1, activation='relu', padding='VALID'))
    model.add(MaxPooling2D(pool_size=(2, 2)))

    # Block 2
    model.add(Conv2D(128, kernel_size=(3, 3), strides=1, activation='relu', padding='VALID'))
    model.add(Conv2D(128, kernel_size=(3, 3), strides=1, activation='relu', padding='VALID'))
    model.add(AveragePooling2D(pool_size=(19, 19)))

    # set of FC => RELU layers
    model.add(Flatten())
    model.add(Dense(128))
    model.add(Activation('relu'))
    model.add(BatchNormalization())
    model.add(Dense(num_classes, activation='softmax'))
    model.compile(loss=keras.losses.binary_crossentropy,
                  optimizer=keras.optimizers.Adadelta(),
                  metrics=['accuracy'])
    return model
Run Code Online (Sandbox Code Playgroud)

我需要测试集上的每个图像,我得到一个从FC层收集的128-D特征向量用于SVM分类.更多细节,来自model.add(Dense(128)).你能告诉我如何解决这个问题吗?谢谢!

feature-extraction keras

1
推荐指数
1
解决办法
3423
查看次数

标签 统计

feature-extraction ×1

keras ×1