SCAN: Learning to Classify Images without Labels

МЕНЮ


Главная страница
Поиск
Регистрация на сайте
Помощь проекту
Архив новостей

ТЕМЫ


Новости ИИРазработка ИИВнедрение ИИРабота разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика

Авторизация



RSS


RSS новости


?

2020

https://arxiv.org/abs/2005.12320

Какую задачу решают авторы?

Авторы решают задачу обучения векторных представлений и семантической кластеризации изображений на датасетах без разметки.

Существуют подходы, которые решают задачу кластеризации в end-to-end режиме, например, DeepClustering. То есть, на вход принимают исходные изображения, на выходе — разметка изображений по кластерам.

Недостатком таких подходов является то, что они довольно часто “скатываются” к тривиальным решениям. Например, выделяют один “супер” кластер, к которому относят большинство объектов, и много маленьких кластеров.

Кроме того, часто данные методы кластеризуют объекты на основе низкоуровневых признаков — цвет, текстура итд.

Авторы статьи решают описанные выше недостатки, разбивая задачу кластеризации на два этапа:

  1. Обучение представлений для изображений на вспомогательной задаче
  2. Обучение модели кластеризации

Важно сразу сделать оговорку: количество кластеров в данной работе — гиперпараметр алгоритма.

Как решают

Рассмотрим подробнее каждый из этапов.

Representation Learning

Для начального обучения векторных представлений можно воспользоваться любой задачей, котороя позволит нам добиться того, что векторные представления для похожих изображений будут близки друг к другу.

Более формально:

Phi_{ heta} — модель с параметрами theta, которая по изображению X_i строит векторное представление. T[X_i] — некоторая аугментация изображения X_i

То есть, хочется найти такую модель, которая минимизирует расстояние между исходным изображением и некоторой аугментацией.

Ознакомиться с перечнем подходящих задач можно тут: https://dyakonov.org/2020/06/03/самообучение-self-supervision/ (популярный способ: SimCLR)

Clustering Model

Q: Почему просто нельзя выполнить кластеризацию обученных представлений?

Ряд статей, данная в том числе, показывает, что если просто воспользоваться, например, k-means на полученных эмбеддингах, то качество кластеризации будет не очень хорошим.

Часто в результате кластеризации с помощью k-means получаются кластера сильно различающиеся по размеру, что не желательно для датасетов со сбалансированными классами.

Поэтому авторы предлагают обучить модель, которая по эмбеддингу будет предсказывать к какому кластеру относится объект — решают задачу многоклассовой классификации.

Интуиция

Есть предположение, которое авторы подтверждают эмпирически, что для выбранного объекта, его ближайшие соседи чаще всего относятся к тому же кластеру что и выбранный объект (см. картинку ниже)

Первая колонка - выбранный объект, остальные колонки - ближайшие соседи

Следовательно, хочется, чтобы предсказания вероятностей кластеров для соседей были “похожи” на предсказание для выбранного объекта.

Более строго, это означает, что для обучения минимизируется следующий функционал

  • В первом слагаемом: X — векторное представление объекта, N_X - множество ближайших соседей (размермножества - гиперпараметр алгоритма), Phi_{eta} — нейросеть, которая предсказывает вероятности кластеров. Первое слагаемое как раз делает так, чтобы предсказания для соседних объектов были похожи.
  • Во втором слагаемом, Phi’^{c}_{eta} — средняя вероятность принадлежности объекта к кластеру c. Второе слагаемое фактически является регуляризатором — позволяет избежать тривиальное решение, когда все объекты относятся к одному кластеру. Вместо этого получается более равномерное распределение объектов по кластерам.

Q: Почему использование ближайших соседей действительно полезно?

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

Fine-tuning

Q: Среди соседей есть объекты принадлежащие другим кластерам. Их наличие вносит шум в процесс обучения. Что можно сделать чтобы улучшить качество кластеризации?

Авторы отмечают, что если модель кластеризации, после обучения, относит объект к конкретному кластеру с очень большой вероятностью, например > 0.99, то чаще всего объект действительно относится к данному кластеру. Такие объекты можно использовать в качестве “представителей” кластеров.

То есть, сначала строится новый датасет из представителей кластеров (точнее из их аугментаций) и лэйблов — номер кластера, к которому принадлежит объект.

После чего модель дообучается на данном датасете, минимизируя cross-entropy loss. Если в результате появятся новые объекты-“представители”, то они добавляются в датасет.

Обучение продолжается итеративно до тех пор пока количество найденных объектов-”представителей” не выйдет на плато. Описанный способ fine-tuning’a позволяет заметно улучшить итоговое качество кластеризации.

Преимущества подхода

Представленное решение показывает довольно большой прирост качества на бэнчмарках в сравнении с предыдущими sota решениями.

Кроме того, данный способ не так уж сильно отстает от supervised подходов.

Мое мнение

Обучение больших моделей, которые позволяют получать новые sota результаты, требует все большего объема размеченных данных.

Когда речь заходит о датасетах размером в десятки-сотни миллионов примеров (или даже больше), получение для них разметки либо очень дорого либо просто не представляется возможным. Поэтому не удивительно, что(semi/self/un)-supervised подходы набирают все большую популярность в задачах, где раньше использовались только supervised подходы.

Данная статья - еще один показательный пример того, что со временем разница в качестве между supervised и unsupervised будет только уменьшаться.


Источник: m.vk.com

Комментарии: