首页 > 解决方案 > CNN中使用的分类方法

问题描述

在下面由Mike Smales开发的代码中,他使用 MFCC 作为特征提取。你能告诉我下面列出的他的代码使用的分类方法是什么吗?

这是他的 CNN 模型代码:

# Construct model
model = Sequential()
model.add(Conv2D(filters=16, kernel_size=2, input_shape=(num_rows, num_columns, num_channels), activation='relu'))
model.add(MaxPooling2D(pool_size=2))
model.add(Dropout(0.2))

model.add(Conv2D(filters=32, kernel_size=2, activation='relu'))
model.add(MaxPooling2D(pool_size=2))
model.add(Dropout(0.2))

model.add(Conv2D(filters=64, kernel_size=2, activation='relu'))
model.add(MaxPooling2D(pool_size=2))
model.add(Dropout(0.2))

model.add(Conv2D(filters=128, kernel_size=2, activation='relu'))
model.add(MaxPooling2D(pool_size=2))
model.add(Dropout(0.2))
model.add(GlobalAveragePooling2D())

model.add(Dense(num_labels, activation='softmax'))

标签: conv-neural-networkclassificationmultilabel-classification

解决方案


作者使用的损失是categorical_crossentropy.

# Compile the model
model.compile(loss='categorical_crossentropy', metrics=['accuracy'], optimizer='adam')

文档中,它被设置为一个多类分类问题。


推荐阅读