#deep-learning #batchsize
#глубокое обучение #размер пакета
Вопрос:
В настоящее время я занимаюсь семантической сегментацией, однако у меня действительно небольшой набор данных,
У меня есть только около 700 изображений с увеличением данных, например, перелистывание могло бы
пусть будет 2100 изображений.
Не уверен, что этого достаточно для моей задачи (семантическая сегментация с четырьмя
классы).
Я хочу использовать пакетную нормализацию и мини-пакет градиентный спуск
Что действительно заставляет меня чесать голову, так это то, что если размер пакета слишком мал,
пакетная нормализация работает плохо, но с большим размером пакета,
кажется, это эквивалентно полному пакетному градиентному спуску
Интересно, есть ли что-то вроде стандартного соотношения между количеством выборок и размером пакета?
Ответ №1:
Позвольте мне сначала обратиться ко второй части вашего вопроса «стратегия для нейронной сети с небольшим набором данных». Возможно, вы захотите взять предварительно обученную сеть на большем наборе данных и точно настроить эту сеть, используя свой меньший набор данных. Смотрите, например, это руководство.
Во-вторых, вы спрашиваете о размере пакета. Действительно, меньший пакет данных заставит алгоритм блуждать вокруг оптимального, как при классическом стохастическом градиентном спуске, признаком которого являются шумные колебания ваших потерь. В то время как при большем размере пакета обычно наблюдается более «плавная» траектория к оптимальной. В любом случае, я предлагаю вам использовать алгоритм с импульсом, такой как Adam. Это помогло бы конвергенции вашего обучения.
Эвристически размер пакета может быть таким большим, какой может вместить память вашего графического процессора. Если объем памяти графического процессора недостаточен, то размер пакета уменьшается.
Комментарии:
1. да, первая часть У меня все еще есть один вопрос, я слышал, что люди замораживают предварительно обученную сеть, я не понимаю, зачем они это делают, Разве точная настройка всей модели не дает лучшего результата? Во-вторых, я ценю предложение, я бы им воспользовался! Спасибо за хороший отзыв!
2. Замораживание некоторой части предварительно обученной сети — это так называемое обучение передаче. С другой стороны, точная настройка позволяет изменять веса. Оба метода приемлемы в зависимости от контекста.
3. Хорошо, я займусь этим, большое спасибо.