Я пытаюсь выучить совместное встраиваемое представление изображений и текста, используя нейронную сеть с двумя ветвями, используя keras . Вот как выглядит моя модель:
Это текущие входы и выходы моей модели обучения:
model = Model([txt_input,img_input], [encoded_txt, encoded_img])
Я должен использовать двунаправленную потерю ранжирования, что означает что представления соответствующего текста и изображений должны быть ближе друг к другу, чем любое другое изображение / текст, с полем m. Это полная функция потерь, с
- s: функция подобия
- D: обучающий набор
- Yi +: набор соответствующих (положительных) текстовых описаний заданное изображение xi (только один положительный в моем эксперименте)
- Yi-: набор не соответствующих (отрицательных) описаний данного изображения xi
- Xi +: набор соответствующих (положительных) изображений данного текста описание yi (только один положительный результат в моем эксперименте)
- Xi-: набор несоответствующих (отрицательных) изображений с указанным текстом описания yi
Проблема состоит в том, что для того, чтобы вычислить эту потерю для примера, мне нужно не только узнать выходные данные текущего изображения и соответствующего текстового представления, но и вычислить их сходство с представлениями других изображений / текстов.
Конкретно, мой вопрос: Есть ли способ включить выходные данные всей партии или, по крайней мере, предыдущих n выборок, при расчете потерь?
Единственный способ, которым я вижу, как это сделать, - создать функцию потерь со своего рода состоянием, в котором хранятся представления последних n выборок, и использовать их для вычисления сходства. Я не думаю, что это хорошее решение, и мне было интересно, есть ли более элегантный способ реализовать это. Я также изучаю другие фреймворки, такие как Pytorch, чтобы проверить, поддерживают ли они что-то вроде периодических потерь. Любая помощь будет принята с благодарностью.
Спасибо!
PS: Я на самом деле пытаюсь воспроизвести эксперимент этой статьи:
L , Ванг, Ю. Ли и С. Лазебник, «Изучение глубоких структурно-сохраняющих вложений изображения-текста», в трудах конференции IEEE по компьютерному зрению и распознаванию образов, стр. 5005–5013, 2016.
Изображение было также извлечено из этой бумаги.