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

Таким образом, контролируемое контрастное обучение [1] представляет собой подход к обучению, который может превзойти контролируемое обучение с традиционной функцией кросс-энтропийных потерь в задачах классификации. По сути, обучение классификатора изображений при таком подходе состоит из двух этапов:

  1. (Предварительное) обучение кодировщика (например, ResNet или EfficientNet) для создания векторных представлений входных изображений, где представления изображений в одном классе будут более похожими по сравнению с представлениями изображений в разных классах. В частности, на этом этапе в качестве альтернативы кросс-энтропии используется контролируемая контрастная потеря.
  2. Обучение классификатора поверх замороженного кодировщика. Классификатор будет использовать кластеры точек, принадлежащих к одному и тому же классу, которые объединены в пространстве встраивания.

В этой тетради мы собираемся оценить подход контролируемого контрастного обучения для обучения классификатора видов растений. Кроме того, классический подход к трансферному обучению без предварительного обучения также оценивается для проверки различий в реализации и производительности. Дополнительную информацию также можно найти в [2]:

https://github.com/Eden-Library-AI/eden_library_notebooks/blob/master/image_classification/plant_identification-contrastive_supervised_learning-1.ipynb

Помимо этого блокнота, вы можете найти другие рабочие примеры в библиотеке Eden (https://edenlibrary.ai/notebooks). Все они готовы к исполнению и тестированию ваших модификаций. Проверьте их, нажав на ссылку ниже, и если вы найдете этот репозиторий интересным, помогите нам звездочкой и поделитесь им со своими коллегами.

https://github.com/Eden-Library-AI/eden_library_notebooks/tree/master/auto_ml

[1] Хосла П., Тетервак П., Ван К., Сарна А., Тиан Ю., Изола П., Маскинот А., Лю К. и Кришнан Д. (2020). Контрастное обучение под наблюдением. ArXiv, абс/2004.11362.

[2] https://keras.io/examples/vision/supervised-contrastive-learning/