SSL для табличных данных

Введение

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

Этот пост не для новичков — если вы хотите получить более глубокое понимание концепций и алгоритмов полууправляемого обучения, я рекомендую вам эти основополагающие посты — один о полууправляемом в целом со многими примерами из видения, а второй фокусируется на псевдоэтикетки. Я добавлю свои 2 цента о различии между полууправляемым и самостоятельным обучением, и это также может дать вам некоторое общее представление о них:

Обучение с самоконтролем представляет собой двухэтапный процесс, как показано на рис. 2. На первом этапе специальная модель (обычно некоторая глубокая нейронная сеть) обучается выполнению подтекстовой задачи — задачи, которая не напрямую связана с нашей желаемой задачей классификации, но каким-то образом имеет к ней отношение, а это означает, что с помощью этой задачи модель узнает что-то полезное о данных. Эта задача опирается не на метки, связанные с классом, а на некую истину, которая присуща данным, поэтому мы получаем ее «бесплатно». Поэтому мы можем использовать все данные для обучения, включая множество неразмеченных данных. Несколько примеров лучше, чем тысяча слов. Предварительная языковая задача предсказывает замаскированное слово, как показано на рисунке 1. Это помогает модели узнать о связи между словами в английском языке, что, в свою очередь, полезно для любого нижележащего языка. Задача на классификацию. Правильный ответ — слово в маске — известен нам заранее, поэтому у нас есть множество предложений, которые мы можем замаскировать, и множество этих «самодельных» ярлыков. Общие задачи перед текстом на зрение — это предсказание ориентации изображения, раскрашивание изображения или сборка головоломки.

Результатом первого этапа являются полезные и содержательные представления образцов данных — они представляют знания, полученные на этом этапе — зависимости и взаимосвязи между функциями (например, словами, пикселями). Эти представления на самом деле являются активациями нейронов в некотором внутреннем латентном слое для данной выборки данных. Второй этап самоконтролируемого обучения — это нисходящая задача — интересующая нас задача классификации — этот этап полностью контролируется и использует представления размеченных данных, полученные на предыдущем этапе, и метки классов. Если представления имеют смысл, то даже простой классификатор, такой как логистическая регрессия, даст нам превосходные результаты. Я должен признать, что общее определение обучения с самоконтролем исключает этот этап и относится только к первому этапу, который является более сложным и инновационным, но поскольку первая стадия никогда не стоит сама по себе, а вторая всегда следует за ней, я включил ее в определение.

Напротив, обучение с полуучителем — это одноэтапный процесс, в котором все происходит одновременно, параллельно с использованием одной модели. На том же этапе размеченные данные обучаются под наблюдением с использованием исходных меток классов, а неразмеченные данные (или целые данные) обучаются с помощью «самодельных» меток — это может быть аналогично предварительному обучению. -текстовая задача в обучении с самостоятельным наблюдением, например, минимизация расстояния между прогнозами модели для выборки и зашумленной версии той же выборки (регуляризация согласованности, см. Блоги, рекомендованные ранее) или другим способом, например. с помощью псевдометок. В любом случае, у нас есть одна потеря, которая представляет собой взвешенную сумму контролируемой потери и «самостоятельной» потери, и модель напрямую даст нам прогнозы класса.

SSL для табличных данных

Если вы знакомы с полуавтоматическими или самоконтролируемыми алгоритмами для текста или зрения (или читали рекомендуемые ссылки), вы, вероятно, уже знаете, что одна из наиболее распространенных парадигм заключается в использовании аугментаций — искажении точки данных путем добавления к ней некоторого шума — будь то для задача регуляризации или реконструкции согласованности — обе основаны на предположении о гладкости, согласно которому зашумленные дополненные точки данных должны сохранять метку своей привязки — исходной точки данных. В видении это может быть поворот изображения, смещение, обрезка и т. д., в тексте это может быть обратный перевод, замена текста и тому подобное. Для табличных данных обычные дополнения искажают определенное количество значений признаков, добавляя к ним гауссовский шум, заменяя их значения другими случайно выбранными значениями из того же столбца (также известными как «шум перестановки») или определенным значением (0 или среднее значение). Это может Звучит многообещающе, но, увы, использование дополнений для табличных данных не так просто, как для изображений или текстовых данных по двум причинам:

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

Тем не менее, несмотря на эти подводные камни, растет число исследований, касающихся использования методов с полуавтоматическим или самостоятельным контролем для табличных данных, и большинство из них основано на возмущениях функций и архитектуре кодировщик-декодер. Я рассмотрю на очень высоком уровне несколько недавних статей — в основном, архитектуры и лежащие в их основе идеи, для получения более подробной информации об экспериментах и ​​результатах, полученных в каждой статье, я призываю вас углубиться в сами статьи (я просто скажу несколько слов о нем). Все статьи тестировали свои модели на разных наборах данных, но в каждой статье появлялись 3 — MNIST (да, данные о зрении в табличном формате), доход UCI для взрослых (довольно простой, даже простая логистическая регрессия получает высокий балл) и отзывы в блоге UCI. . Последние два представляют собой задачу бинарной классификации с 20–30% положительных оценок, имеют как категориальные, так и числовые признаки (100–200) и имеют 30 000 и 60 000 выборок соответственно.

VIME (вменение значений и оценка маски)[1]

Это относительно не новая модель — она была представлена ​​в 2020 году и подробно освещалась в этом блоге (включая код), поэтому я не буду ее подробно описывать. Одним словом — VIME имеет 2 этапа — этап самоконтроля, на котором предтекстовая задача восстанавливает как поврежденные признаки, так и маску искажения. Полуконтролируемый этап, основанный на регуляризации согласованности поврежденных точек данных. Модель VIME искажает сами признаки, заменяя их значения другими значениями того же признака в соответствии с маской искажения. Он был протестирован на 3 базовых наборах данных, упомянутых выше, с использованием 10% меток и превзошел Xgboost (также обученный с 10% меток) до 5%. Интересно, что было показано, что первый этап — самостоятельный контроль — оказал незначительное влияние на производительность.

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

SDAT [2]

В документе SDAT используется вариационный автокодер (VAE) для создания такого значимого скрытого пространства и создания искаженных выборок путем добавления некоторого гауссовского шума к вложениям в этом пространстве. Эти зашумленные вложения подаются на декодер как часть обучения VAE. Затем декодер выдает 𝒙̂ — реконструированная версия x и расстояние между предсказаниями модели для обоих сведены к минимуму с использованием дивергенции KL — это потеря согласованности, которая составляет общую потерю вместе с потерей реконструкции VAE и обычной перекрестной энтропией. потери для помеченных данных.

Авторы не сравнивали модель с Xgboost или другим классификатором на основе дерева, а только с другими алгоритмами глубокого обучения с полууправлением, обычно используемыми для визуализации, такими как UDA, ReMixMatch, MeanTeacher, и с одним для табличных данных — VIME. Для методов, основанных на модуле дополнения, которые не работают с табличными данными, они использовали простое гауссовское возмущение, добавленное к исходным признакам, в качестве процедуры дополнения. Модель SDAT была лучше других моделей примерно на 3% по показателю AUC. Вклад аугментации в скрытое пространство по сравнению с добавлением шума непосредственно к признакам оценивался как прибавка к производительности на 3–4 %.

Контрастное смешение [3]

Этот метод состоит из 2 этапов: самоконтролируемое обучение для обучения кодировщика и последующее обучение классификатора с использованием предварительно обученного кодировщика и полученных ранее псевдометок.

Этап с самостоятельным полуконтролем также представляет собой двухэтапный процесс: для первых эпох K кодировщик обучается с использованием обычных потерь реконструкции для всех данных и контролируемых контрастных потерь только для помеченных данных. Контрастные потери применяются для обеспечения сходства между проекциями представлений скрытого пространства помеченных образцов и их интерполированными версиями. Эти интерполированные версии были созданы путем применения MixUp к представлениям помеченных образцов в промежуточном слое t (что означает t‹T, где T — количество слоев кодера). Обратите внимание, что в отличие от случайной интерполяции между образцами и обеспечения близости между образцами с разными метками, MixUp здесь выполняется между образцами с одной и той же меткой, таким образом побуждая их лежать близко друг к другу в скрытом пространстве. Как отмечают авторы — «Применение Mixup во входном пространстве для табличных данных может привести к маловероятным выборкам из-за мультимодальности данных и наличия категориальных столбцов». Через K эпох, когда устанавливается скрытое пространство, подмножество немаркированных данных получает «псевдометки» путем распространения меток в скрытом пространстве. Эти псевдометки используются для контрастных потерь, которые теперь имеют 2 взвешенных компонента — с метками и с псевдометками, и обучение продолжается, как и раньше. Небольшое примечание по терминологии — авторы назвали этот этап полусамостоятельным наблюдением, и я согласен с ним — он не является полностью «самостоятельным», поскольку использует метки классов, и не является полностью «полуавтоматическим», поскольку выходными данными этого этапа являются представления, а не предикации классов).

На втором этапе кодер передается в нижестоящую задачу вместе с сгенерированными псевдометками для обучения предсказателя MLP в нижестоящей задаче. Кодер также используется для увеличения данных путем MixUp в скрытом пространстве.

Производительность модели оценивалась с использованием 10% меток и сравнивалась с несколькими контролируемыми и полуконтролируемыми моделями, среди которых VIME и Catboost. VIME был немного хуже (~1%), Catboost превзошел текущую модель, но был обучен с 100% метками, что делает сравнение весьма сомнительным. Исследования абляции показали, что добавление псевдометок на самом деле мало что дало — менее 1%.

Подвкладка [4]

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

реконструировать тот же подмножество признаков, но они выбрали первый вариант, поскольку утверждали, что он более эффективен. Другими необязательными компонентами потерь являются контрастные потери и потери на расстоянии с использованием проекционной сети. Очевидно, что проекции подмножеств, взятых из одной и той же строки, имеют одну и ту же метку, поэтому их можно рассматривать как положительные пары и наоборот, поэтому для положительных и отрицательных пар они применяли контрастные потери — нормализованные кросс-энтропийные потери в температурном масштабе (NT-Xent) и для положительных пар также потеря расстояния MSE.

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

Производительность модели оценивалась с использованием всех ярлыков и сравнивалась с несколькими контролируемыми и полуконтролируемыми моделями, среди которых VIME и xgboost. На трех базовых наборах данных — MNIST, Income, Blog — производительность была сопоставима. По данным об ожирении он превзошел Xgboost с точностью от 71 до 64! (VIME получил 66). Это небольшой набор данных всего с 253 образцами, 64% из которых положительные. Для этих данных добавление гауссовского шума к функциям немного повысило производительность. С другой стороны, в наборе данных TCGA — данных геномики рака с 6671 образцом и 38 классами — Xgboost был намного лучше — 72 против 58. Исследования абляции показали, что добавление потери расстояния на самом деле мало что добавило — максимум ~ 1%.

Заключительные заметки

Я просмотрел здесь несколько статей, в которых предлагались различные методы переноса методологии самообучения и полуконтролируемого обучения, которая оказалась настолько полезной и успешной с изображениями и текстом, в область табличных данных. Как было показано с моделями глубокого обучения в целом, этот перенос — непростая задача. Я еще раз подчеркну, что я не претендовал на освещение всех различных экспериментов и исследований по абляции, которые проводились в этих статьях — это выходит за рамки данного обзора. Как я уже упоминал выше, кажется, что большинство из них обнаружили, что сложные архитектуры и приемы мало что дают по сравнению с базовой полу- или самоуправляемой архитектурой, но я настоятельно рекомендую прочитать полные статьи, которые очень проработаны и содержательны.

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

Об авторе

Ницан Таль — специалист по обработке и анализу данных в команде X-Sight Data Science Research & Delivery Team в NICE Actimize. NICE Actimize — мировой лидер в области управления финансовыми преступлениями и соблюдения требований, предлагающий комплексный набор решений по борьбе с отмыванием денег, мошенничеством и соблюдением нормативных требований. Являясь крупнейшим поставщиком решений для борьбы с финансовыми преступлениями, рисками и соблюдения требований для региональных и глобальных финансовых учреждений и государственных регулирующих органов, NICE Actimize находится в авангарде инноваций в области искусственного интеллекта и машинного обучения.

Использованная литература:

  1. Yoon et al., 2020. VIME: Распространение успеха самообучения и обучения с полуучителем на табличную область
  2. Фанг и др., 2022. Полууправляемое обучение с увеличением данных для табличных данных.
  3. Darabi et al., 2021. Contrastive Mixup: самостоятельное и частично контролируемое обучение для табличной области.
  4. Ucar et al., 2021. Подвкладка: Подмножество функций табличных данных для обучения представлению с самостоятельным наблюдением
  5. Чжай и др., 2019. S4L: самоконтролируемое полуконтролируемое обучение
  6. Норузи и др., 2016. Неконтролируемое обучение визуальным представлениям путем решения головоломок.