Мультиклассовая классификация в несбалансированном наборе данных - PullRequest
0 голосов
/ 01 февраля 2020

У меня есть этот набор данных, количество меток которого следующее: enter image description here

Я понимаю, что он очень несбалансирован. Я пробовал перед выборкой и при выборке, и они дали хорошую точность для обучения. однако, конечно, они дали очень низкую точность проверки. Я также попробовал вес класса следующим образом: class_weights = class_weight.compute_class_weight('balanced', np.unique(Y), Y), и это также дало низкую точность для проверки. Я даже исключил исключение других меток и оставил только 5 самых высоких меток, все еще получая около 36% точности проверки и 92% точности обучения. Я думаю, что все это из-за чрезмерной подгонки. Но моя модель очень проста; это:

model = tf.keras.Sequential([
    tf.keras.layers.Embedding(MAX_NB_WORDS,int(len(word_index)*.25),input_length=X.shape[1]),
    tf.keras.layers.Bidirectional(tf.keras.layers.LSTM(64,dropout=.5)),
    tf.keras.layers.Dense(64, activation='relu'),
    tf.keras.layers.Dense(5, activation='sigmoid')
])

Я в замешательстве и не знаю, что делать?

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