An example that use [[categorical_crossentropy]] and softmax ```python 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']) ```