Почему категорическая точность низкая при обучении MLP?

Я тренирую 3-х слойный MLP в керасе. Набор данных сильно несбалансирован и хотел бы увеличить скорость обнаружения модели.

Всякий раз, когда я кодировал целевую / независимую переменную как числовую (то есть отображал из строки в число), оценка categoryor_category была близка к 0.37. Использование category_optimizer.

Когда я изменил целевую / независимую переменную на категориальную (т. Е. Одну горячую кодировку), полученная оценка увеличилась до 0,90.

Тем не менее, один из классов меньшинств (и наиболее важных классов) не классифицирован правильно или не классифицирован вообще.

Я углубляюсь в оценку отзыва, а не в точность.

Другие используемые методы: веса классов и повышающие выборки классы меньшинств.

Я считаю, что легче работать без однозначных целевых переменных.

Всего 5 классов (1 класс представляет большинство, 4 других класса представляют отклонения и находятся в меньшинстве)

1 ответ

Вам необходимо использовать горячее кодирование во всех задачах классификации, так как в противном случае вы подразумеваете числовую структуру и порядок в ваших классах, которых просто нет (т. Е. Число 2 ближе к 1, чем к 4, но это не так). для класса 2 в 1 и 4). Вы по-прежнему можете пересчитывать свои данные или использовать весовые коэффициенты для каждого класса, чтобы повысить точность отзыва.

Другие вопросы по тегам