SCAN: Learning to Classify Images without Labels |
||
МЕНЮ Главная страница Поиск Регистрация на сайте Помощь проекту Архив новостей ТЕМЫ Новости ИИ Голосовой помощник Разработка ИИГородские сумасшедшие ИИ в медицине ИИ проекты Искусственные нейросети Искусственный интеллект Слежка за людьми Угроза ИИ ИИ теория Внедрение ИИКомпьютерные науки Машинное обуч. (Ошибки) Машинное обучение Машинный перевод Нейронные сети начинающим Психология ИИ Реализация ИИ Реализация нейросетей Создание беспилотных авто Трезво про ИИ Философия ИИ Big data Работа разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика
Генетические алгоритмы Капсульные нейросети Основы нейронных сетей Распознавание лиц Распознавание образов Распознавание речи Творчество ИИ Техническое зрение Чат-боты Авторизация |
2021-06-03 10:23
?
2020 https://arxiv.org/abs/2005.12320 Какую задачу решают авторы? Авторы решают задачу обучения векторных представлений и семантической кластеризации изображений на датасетах без разметки. Существуют подходы, которые решают задачу кластеризации в end-to-end режиме, например, DeepClustering. То есть, на вход принимают исходные изображения, на выходе — разметка изображений по кластерам. Недостатком таких подходов является то, что они довольно часто “скатываются” к тривиальным решениям. Например, выделяют один “супер” кластер, к которому относят большинство объектов, и много маленьких кластеров. Кроме того, часто данные методы кластеризуют объекты на основе низкоуровневых признаков — цвет, текстура итд. Авторы статьи решают описанные выше недостатки, разбивая задачу кластеризации на два этапа:
Важно сразу сделать оговорку: количество кластеров в данной работе — гиперпараметр алгоритма. Как решают Рассмотрим подробнее каждый из этапов. Representation Learning Для начального обучения векторных представлений можно воспользоваться любой задачей, котороя позволит нам добиться того, что векторные представления для похожих изображений будут близки друг к другу. Более формально: То есть, хочется найти такую модель, которая минимизирует расстояние между исходным изображением и некоторой аугментацией. Ознакомиться с перечнем подходящих задач можно тут: https://dyakonov.org/2020/06/03/самообучение-self-supervision/ (популярный способ: SimCLR) Clustering Model Q: Почему просто нельзя выполнить кластеризацию обученных представлений? Ряд статей, данная в том числе, показывает, что если просто воспользоваться, например, k-means на полученных эмбеддингах, то качество кластеризации будет не очень хорошим. Часто в результате кластеризации с помощью k-means получаются кластера сильно различающиеся по размеру, что не желательно для датасетов со сбалансированными классами. Поэтому авторы предлагают обучить модель, которая по эмбеддингу будет предсказывать к какому кластеру относится объект — решают задачу многоклассовой классификации. Интуиция Есть предположение, которое авторы подтверждают эмпирически, что для выбранного объекта, его ближайшие соседи чаще всего относятся к тому же кластеру что и выбранный объект (см. картинку ниже) Следовательно, хочется, чтобы предсказания вероятностей кластеров для соседей были “похожи” на предсказание для выбранного объекта. Более строго, это означает, что для обучения минимизируется следующий функционал
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 Комментарии: |
|