Контролируемое обучение функции подобия
Обучение на подобии — это область контролируемого машинного обучения в области искусственного интеллекта . Оно тесно связано с регрессией и классификацией , но его цель — выучить функцию подобия , которая измеряет, насколько похожи или связаны два объекта. Оно применяется в ранжировании , в системах рекомендаций , отслеживании визуальной идентификации, проверке лиц и проверке говорящего.
Настройка обучения
Существует четыре распространенных варианта дистанционного обучения на основе сходства и метрик.
- Регрессионное обучение сходству
- В этой настройке пары объектов даны вместе с мерой их сходства . Цель состоит в том, чтобы узнать функцию, которая аппроксимирует для каждого нового помеченного примера триплета . Обычно это достигается путем минимизации регуляризованной потери .
- Классификация сходства обучения
- Даны пары похожих объектов и не похожих объектов . Эквивалентная формулировка заключается в том, что каждая пара дается вместе с двоичной меткой , которая определяет, похожи ли два объекта или нет. Целью снова является обучение классификатора, который может решить, похожа ли новая пара объектов или нет.
- Ранжирование обучения на основе сходства
- Даны триплеты объектов , относительное сходство которых подчиняется предопределенному порядку: известно, что более похоже на , чем на . Цель состоит в том, чтобы выучить функцию, такую, что для любого нового триплета объектов она подчиняется ( контрастное обучение ). Эта установка предполагает более слабую форму надзора, чем в регрессии, поскольку вместо предоставления точной меры сходства нужно предоставить только относительный порядок сходства. По этой причине обучение сходству на основе ранжирования проще применять в реальных крупномасштабных приложениях. [1]
- Хеширование с учетом локальности (LSH) [2]
- Хеширует входные элементы так, что похожие элементы сопоставляются с теми же «корзинами» в памяти с высокой вероятностью (количество корзин намного меньше, чем вселенная возможных входных элементов). Часто применяется при поиске ближайшего соседа в крупномасштабных многомерных данных, например, в базах данных изображений, коллекциях документов, базах данных временных рядов и базах данных геномов. [3]
Распространенный подход к обучению сходству заключается в моделировании функции сходства как билинейной формы . Например, в случае обучения ранжированию сходства, цель состоит в обучении матрицы W, которая параметризует функцию сходства . Когда данных много, распространенным подходом является обучение сиамской сети — модели глубокой сети с совместным использованием параметров.
Метрическое обучение
Обучение подобию тесно связано с обучением метрике расстояния . Обучение метрике — это задача обучения функции расстояния по объектам. Метрическая или дистанционная функция должна подчиняться четырем аксиомам: неотрицательности , тождественности неразличимых , симметрии и субаддитивности (или неравенству треугольника). На практике алгоритмы обучения метрике игнорируют условие тождественности неразличимых и обучаются псевдометрике.
Когда объекты являются векторами в , то любая матрица в симметричном положительно полуопределенном конусе определяет псевдометрику расстояния пространства x через форму . Когда — симметричная положительно определенная матрица, — метрика. Более того, поскольку любая симметричная положительно полуопределенная матрица может быть разложена как , где и , функция расстояния может быть переписана эквивалентно . Расстояние соответствует евклидову расстоянию между преобразованными векторами признаков и .
Было предложено много формул для метрического обучения. [4] [5] Некоторые известные подходы к метрическому обучению включают обучение с помощью относительных сравнений, [6] которое основано на потере триплета , большом запасе ближайшего соседа , [7] и информационно-теоретическом метрическом обучении (ITML). [8]
В статистике ковариационная матрица данных иногда используется для определения метрики расстояния, называемой расстоянием Махаланобиса .
Приложения
Обучение на основе сходства используется в информационном поиске для обучения ранжированию , в проверке лиц или идентификации лиц, [9] [10] и в системах рекомендаций . Кроме того, многие подходы к машинному обучению опираются на некоторую метрику. Это включает в себя неконтролируемое обучение , такое как кластеризация , которое группирует близкие или похожие объекты. Это также включает контролируемые подходы, такие как алгоритм K-ближайшего соседа , который опирается на метки соседних объектов для принятия решения о метке нового объекта. Метрическое обучение было предложено в качестве шага предварительной обработки для многих из этих подходов. [11]
Масштабируемость
Метрика и обучение подобию наивно масштабируются квадратично с размерностью входного пространства, как можно легко увидеть, когда изученная метрика имеет билинейную форму . Масштабирование до более высоких размерностей может быть достигнуто путем принудительного применения структуры разреженности к матричной модели, как это сделано с HDSL, [12] и с COMET. [13]
Программное обеспечение
- metric-learn [14] — это бесплатная библиотека Python, которая предлагает эффективные реализации нескольких контролируемых и слабо контролируемых алгоритмов подобия и метрического обучения. API metric-learn совместимо с scikit-learn . [15]
- OpenMetricLearning [16] — это фреймворк Python для обучения и проверки моделей, создающий высококачественные вложения.
Дополнительная информация
Для получения дополнительной информации по этой теме см. обзоры по метрическому и схожему обучению, проведенные Беллетом и др. [4] и Кулисом [5] .
Смотрите также
Ссылки
- ^ Чечик, Г.; Шарма, В.; Шалит, У.; Бенджио, С. (2010). «Масштабное онлайн-обучение сходству изображений посредством ранжирования» (PDF) . Журнал исследований машинного обучения . 11 : 1109–1135.
- ^ Гионис, Аристидес, Петр Индик и Раджив Мотвани. «Поиск сходства в больших измерениях посредством хеширования». ВЛДБ. Том. 99. № 6. 1999.
- ^ Раджараман, А.; Ульман, Дж. (2010). «Майнинг массивных наборов данных, Гл. 3».
- ^ ab Беллет, А.; Хабрард, А.; Себбан, М. (2013). «Обзор метрического обучения для векторов признаков и структурированных данных». arXiv : 1306.6709 [cs.LG].
- ^ ab Кулис, Б. (2012). «Метрическое обучение: обзор». Основы и тенденции в машинном обучении . 5 (4): 287–364. doi :10.1561/2200000019.
- ^ Шульц, М.; Йоахимс, Т. (2004). «Изучение метрики расстояния с помощью относительных сравнений» (PDF) . Достижения в области нейронных систем обработки информации . 16 : 41–48.
- ^ Weinberger, KQ; Blitzer, JC; Saul, LK (2006). «Обучение на основе метрики расстояния для классификации ближайших соседей с большим запасом» (PDF) . Достижения в области нейронных систем обработки информации . 18 : 1473–1480.
- ^ Дэвис, Дж. В.; Кулис, Б.; Джейн, П.; Сра, С.; Дхиллон, И. С. (2007). «Информационно-теоретическое метрическое обучение». Международная конференция по машинному обучению (ICML) : 209–216.
- ^ Гийомен, М.; Вербек, Дж.; Шмид, К. (2009). «Это ты? Метрические подходы к обучению для идентификации лиц» (PDF) . Международная конференция IEEE по компьютерному зрению (ICCV) .
- ^ Миньон, А.; Жюри, Ф. (2012). "PCCA: новый подход к дистанционному обучению с разреженными парными ограничениями" (PDF) . Конференция IEEE по компьютерному зрению и распознаванию образов .
- ^ Xing, EP; Ng, AY; Jordan, MI; Russell, S. (2002). «Дистанционное метрическое обучение с применением к кластеризации с побочной информацией» (PDF) . Достижения в области нейронных систем обработки информации . 15 : 505–512.
- ^ Лю; Беллет; Ша (2015). «Обучение на основе сходства для многомерных разреженных данных» (PDF) . Международная конференция по искусственному интеллекту и статистике (AISTATS) . arXiv : 1411.2374 . Bibcode : 2014arXiv1411.2374L.
- ^ Ацмон; Шалит; Чечик (2015). «Изучение разреженных метрик, по одной функции за раз» (PDF) . J. Mach. Learn. Исследования (JMLR) .
- ^ "Scikit-learn-contrib/Metric-learn". GitHub .
- ^ Vazelhes; Carey; Tang; Vauquier; Bellet (2020). "metric-learn: метрические алгоритмы обучения на Python" (PDF) . J. Mach. Learn. Исследования (JMLR) . arXiv : 1908.04710 .
- ^ "OML-Team/Open-metric-learning". GitHub .