1.2 KiB
1.2 KiB
An example that use categorical_crossentropy and softmax
dropRatio = 0.1
model = Sequential()
model.add(Conv1D(filters=32, kernel_size=3, activation='relu', input_shape=(self.DATA_LEN, 1)))
model.add(Dropout(dropRatio))
model.add(MaxPooling1D(pool_size=2))
model.add(Conv1D(filters=64, kernel_size=3, activation='relu'))
model.add(Dropout(dropRatio))
model.add(MaxPooling1D(pool_size=2))
model.add(Conv1D(filters=64, kernel_size=3, activation='relu'))
model.add(Dropout(dropRatio))
model.add(MaxPooling1D(pool_size=2))
model.add(Conv1D(filters=128, kernel_size=3, activation='relu'))
model.add(MaxPooling1D(pool_size=2))
model.add(Dropout(dropRatio))
model.add(Conv1D(filters=256, kernel_size=3, activation='relu'))
model.add(MaxPooling1D(pool_size=2))
model.add(Dropout(dropRatio))
model.add(Flatten())
model.add(Dropout(dropRatio))
model.add(Dense(units=128, activation='relu'))
model.add(Dropout(dropRatio))
model.add(Dense(units=64, activation='relu'))
model.add(Dropout(dropRatio))
model.add(Dense(units=32, activation='relu'))
model.add(Dense(units=len(self.DEVICE_LABEL), activation='softmax'))
model.compile(loss='categorical_crossentropy', optimizer=Adam(learning_rate=0.01), metrics=['accuracy'])