Нейронная сеть классификации выводит наивысшую вероятность - PullRequest
0 голосов
/ 17 июня 2020

Я создал нейронную сеть с использованием keras, но когда я пытаюсь использовать модель, на выходе всегда получается один и тот же класс с одинаковой вероятностью. У меня есть база данных, в которой 90% данных приводит к одному классу, а остальные 10% разделены на разные классы. Самый точный способ для модели - всегда выбирать 90%, но я пытаюсь найти эти выбросы с помощью модели.

Это способ обойти такое поведение?

# create model
def build_model(dataset):
    _model = keras.Sequential([
        keras.layers.Dense(64, activation='relu',
                           input_shape=[len(dataset.keys())]),
        keras.layers.Dense(64, activation='relu'),
        keras.layers.Dense(64, activation='relu'),
        keras.layers.Dense(5, activation='softmax')
    ])

    _model.compile(optimizer='rmsprop',
                  loss=tf.keras.losses.SparseCategoricalCrossentropy(),
                  metrics=['accuracy'])

    return _model
    history = model.fit(train_dataset, train_labels, epochs=EPOCHS,
                        shuffle=True,
                        verbose=1)

Я относительно новичок в AI / NeuralNetworks

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...