Я хочу использовать в моей модели слой потерь InfogainLoss. Но у меня возникают трудности с его определением.
-
Есть ли какой-нибудь учебник/пример использования слоя
INFOGAIN_LOSS? -
Должен ли вход этого уровня, вероятности класса, быть выходным слоем
SOFTMAX, или достаточно ввести "верх" полностью связанного слоя?
INFOGAIN_LOSS требуется три входа: вероятности класса, метки и матрица H.
Матрица H может быть предоставлена либо как параметры слоя infogain_loss_param { source: "fiename" }.
Предположим, что у меня есть python script, который вычисляет H как numpy.array формы (L,L) с dtype='f4' (где L - количество меток в моей модели).
-
Как преобразовать мой
numpy.arrayв файлbinproto, который может быть представлен какinfogain_loss_param { source }для модели? -
Предположим, что я хочу, чтобы
Hпредоставлялся как третий вход (внизу) на уровень потерь (а не как параметр модели). Как я могу это сделать?
Определить ли я новый уровень данных, который "сверху"H? Если это так, не будут ли увеличиваться данные этого уровня на каждой обучающей итерации, например, данные обучения будут увеличиваться? Как я могу определить несколько несвязанных входных "данных" слоев, и как известно, что caffe читает из уровня подготовки/тестирования "данных" после партии, тогда как из уровня данныхHон знает, что читает только один раз для всех учебный процесс?
