SimCLR не заучивает представления

Итак, я пытаюсь обучить сеть SimCLR с помощью специальной легкой магистрали ConvNet (уже пробовал это с ResNet) на наборе данных, содержащем первые 5 букв алфавита, из которых две выбираются случайным образом и помещаются в случайные позиции на изображении. Я не уверен, какие расширения использовать в таком сценарии, поэтому я использую только перевод изображений, чтобы обеспечить некоторую степень различия между расширенными образцами.

Это звучит как чрезвычайно тривиальная задача, но она ОЧЕНЬ плохо работает с классификатором с несколькими метками, построенным на основе замороженной предварительно обученной сети. Я совершенно уверен, что это из-за того, насколько низкое качество изученных представлений, а не из-за линейного классификатора. Очевидно, это хорошо работает с контролируемым классификатором.

Варианты, которые я пробовал до сих пор:

  1. Сделал набор данных одной буквой, случайным положением (мульти-класс), и он работал очень хорошо.
  2. Создал набор данных со случайными буквами, но в том же центральном положении, и он работал хорошо. То же улучшение, упомянутое выше, и для них.

Пример изображения из набора данных (здесь метка [1, 1, 0, 0, 0] для букв, которые присутствуют)

Пример

Может кто-нибудь помочь мне разобраться, как это сделать?


person Tarun Narayanan    schedule 21.11.2020    source источник


Ответы (1)


Я не впервые слышу, что кто-то пробует SimCLR и получает ужасные результаты ...

У меня есть несколько вопросов:

  • Вы пробовали другие проигрыши в сравнительной части перед тренировкой? А как насчет тройной потери?
  • Нормализованы ли представления?
  • Получаете ли вы хорошие результаты с помощью контрастного предварительного тренинга в тех вариациях, которые вы упомянули?
  • Получаете ли вы хорошие результаты контролируемой классификации с помощью обеих моделей (Resnet и custom convnet)?
  • Вы пытались визуализировать особенности, изученные моделью, в сверточных слоях?
  • Вы также можете попытаться визуализировать карты функций с помощью прямых крючков и посмотреть, на что смотрит сеть.
person Ignacio Hernández    schedule 27.11.2020