Я не совсем уверен, что ваше обходное решение действительно работает.
Caffe-х ignore_label
в CAFFE семантический следует рассматривать как «этикетку образца, который должен быть проигнорированы», таким образом, он как эффект, что градиент для этого sampl_e не backpropagated, который ни в коей мере гарантировала самым использование одного горячего вектора.
С одной стороны, я ожидаю, что любая значимая модель быстро научится предсказать нулевое значение или достаточно маленькое значение для этой конкретной записи, поскольку факт того, что все образцы будут иметь нуль в этой конкретной записи, так сказать , backpropagated info из-за ошибок в том, что предсказание будет исчезать релятивно быстро.
С другой стороны, вы должны знать, что с точки зрения математики caffe's ignore_label
и то, что вы делаете, совершенно разные.
Сказал это, я новичок в TF и нуждаюсь в той же функции, что и у caffe's ignore_label
.
Я не думаю, что это решение полезно. Первоначально я думал, что это сработало, поскольку оно показало, что потери от немеченого образца равны нулю. Но я заметил, что решение фактически сделало тренировку неустойчивой (потеря выстрела через крышу на вторую эпоху). Когда я вручную удалял немеченые образцы из учебной партии, все снова стабилизировалось. – mikkola