Глубокое обучение, потеря не уменьшается
Я попытался настроить подготовленную модель, используя тренировочный набор, состоящий из 20 классов. Важно отметить, что, хотя у меня 20 классов, один класс составляет 1/3 тренировочных образов. Это причина того, что моя потеря не уменьшается, а точность тестирования составляет почти 30%?
Спасибо за любые советы
2 ответа
У меня была похожая проблема. Я решил это, увеличив дисперсию начальных значений для весов нейронной сети. Это служит предварительным условием для нейронной сети, чтобы предотвратить исчезновение весов во время обратного подпорки.
Я наткнулся на лекции по нейронной сети с курса профессора Дженни Орр и нашел их очень информативными. (Только что понял, что Дженни в соавторстве много соавторов с Янном ЛеКуном и Леоном Буту в первые годы обучения нейронным сетям).
Надеюсь, поможет!
Да, очень возможно, что ваша сеть подходит для несбалансированных этикеток. Одним из решений является то, что вы можете выполнить увеличение данных на других метках, чтобы сбалансировать их. Например, если у вас есть данные изображения: вы можете делать произвольные кадрирования, делать горизонтальные / вертикальные перевороты, различные техники.
Редактировать:
Один из способов проверить, соответствуете ли вы несбалансированным меткам, - это вычислить гистограмму прогнозируемых меток ваших сетей. Если он сильно наклонен к несбалансированному классу, вы должны попробовать описанный выше метод увеличения данных, переобучить свою сеть и посмотреть, поможет ли это.