Кибербезопасность
Кража моделей машинного обучения через вывод API

Новые исследования из Канады предлагают возможный метод, с помощью которого атакующие могли бы украсть плоды дорогих рамок машинного обучения, даже когда доступ к проприетарной системе возможен только через высоко санитарный и, казалось бы, хорошо защищенный API (интерфейс или протокол, который обрабатывает запросы пользователя на стороне сервера и возвращает только ответ вывода).
Когда исследовательский сектор все больше смотрит на монетизацию дорогой подготовки модели через реализации Machine Learning as a Service (MLaaS), новая работа предполагает, что модели Self-Supervised Learning (SSL) более уязвимы для такого рода эксфильтрации модели, поскольку они обучаются без меток пользователя, что упрощает извлечение, и обычно предоставляют результаты, содержащие большое количество полезной информации для кого-то, кто хочет воспроизвести (скрытую) исходную модель.
В симуляциях “черного ящика” (где исследователи предоставили себе доступ к локальной “жертве” модели не более, чем типичному конечному пользователю через веб-API), исследователи смогли воспроизвести целевые системы с относительно низкими ресурсами:
‘Наши атаки могут украсть копию модели жертвы, которая достигает значительной производительности в менее чем 1/5 запросов, использованных для обучения модели жертвы. Против модели жертвы, обученной на 1,2 млн не размеченных образцов из ImageNet, с точностью 91,9% на задаче классификации Fashion-MNIST, наша прямая атака на извлечение с потерей InfoNCE украла копию кодировщика, который достигает точности 90,5% в 200 тыс. запросов.
‘Аналогично, против модели жертвы, обученной на 50 тыс. не размеченных образцов из CIFAR10, с точностью 79,0% на задаче классификации CIFAR10, наша прямая атака на извлечение с потерей SoftNN украла копию, которая достигает точности 76,9% в 9 тыс. запросов.’

Исследователи использовали три метода атаки, обнаружив, что ‘Прямое извлечение’ было наиболее эффективным. Эти модели были украдены из локально воссозданной модели кодировщика CIFAR10, используя 9 тыс. запросов из тестового набора CIFAR10. Источник: https://arxiv.org/pdf/2205.07890.pdf
Исследователи также отмечают, что методы, которые подходят для защиты надзорных моделей от атаки, не адаптируются хорошо к моделям, обученным на не надзорной основе – хотя такие модели представляют собой некоторые из наиболее ожидаемых и празднованных плодов сектора синтеза изображений.
Новая работа озаглавлена О трудности защиты самообучения от извлечения модели, и исходит из Университета Торонто и Института векторных вычислений искусственного интеллекта.
Самоосознание
В самообучении модель обучается на не размеченных данных. Без меток модель самообучения должна учиться ассоциациям и группам из неявной структуры данных, ища подобные аспекты данных и постепенно сгоняя эти аспекты в узлы или представления.
Где подход самообучения является жизнеспособным, он невероятно продуктивен, поскольку он обходит необходимость в дорогой (часто аутсорсинговой и спорной) категоризации толпой работников, и по сути рационализирует данные автономно.
Три подхода к обучению самообучения, рассмотренные авторами новой работы, являются SimCLR, Сиамская сеть; SimSiam, еще одна Сиамская сеть, центрированная на обучении представлений; и Barlow Twins, подход самообучения, который достиг состояния искусства в классификации ImageNet на момент его выпуска в 2021 году.
Извлечение модели для размеченных данных (т.е. модели, обученной через надзорное обучение) является относительно хорошо документированной областью исследований. Это также легче защититься от него, поскольку атакующий должен получить метки из модели жертвы, чтобы воссоздать ее.

Из предыдущей работы, модель атаки ‘nockoff-классификатор’ против архитектуры надзорного обучения. Источник: https://arxiv.org/pdf/1812.02766.pdf
Без белого ящика доступа это не является тривиальной задачей, поскольку типичный вывод из запроса API к такой модели содержит меньше информации, чем с типичным API самообучения.
Из работы*:
‘Прошлая работа по извлечению модели была сосредоточена на настройке надзорного обучения (SL), где модель жертвы обычно возвращает метку или другие низкоразмерные выводы, такие как confidence scores или logits.
‘Напротив, кодировщики самообучения возвращают высокоразмерные представления; де-факто вывод для модели ResNet-50 Sim-CLR, популярной архитектуры в области зрения, является 2048-мерным вектором.
‘Мы гипотетизируем, что это значительно более высокое утечка информации из кодировщиков делает их более уязвимыми для атак на извлечение, чем модели SL.’
Архитектура и данные
Исследователи протестировали три подхода к извлечению модели самообучения: Прямое извлечение, при котором вывод API сравнивается с выводом реконструированного кодировщика через подходящую функцию потерь, такую как среднеквадратическая ошибка (MSE); воссоздание головки проекции, где важная аналитическая функциональность модели, обычно отбрасываемая перед развертыванием, воссоздается и используется в реплике модели; и доступ к головке проекции, который возможен только в случаях, когда оригинальные разработчики сделали архитектуру доступной.

В методе #1, Прямое извлечение, вывод модели жертвы сравнивается с выводом локальной модели; метод #2 включает воссоздание головки проекции, использованной в оригинальной архитектуре обучения (и обычно не включенной в развернутую модель).
Исследователи обнаружили, что Прямое извлечение было наиболее эффективным методом для получения функциональной реплики целевой модели, и имеет дополнительное преимущество в том, что оно наиболее трудно характеризуется как ‘атака’ (поскольку оно по сути ведет себя немного иначе, чем типичный и действительный конечный пользователь).
Авторы обучили модели жертвы на трех наборах изображений: CIFAR10, ImageNet и Stanford’s Street View House Numbers (SVHN). ImageNet была обучена на ResNet50, в то время как CIFAR10 и SVHN были обучены на ResNet18 и ResNet24 над свободно доступной реализацией SimCLR на PyTorch.
Производительность моделей в развернутом (т.е. развернутом) режиме была протестирована против CIFAR100, STL10, SVHN и Fashion-MNIST. Исследователи также экспериментировали с более ‘белыми ящиками’ методами присвоения модели, хотя оказалось, что Прямое извлечение, наименее привилегированный подход, дало лучшие результаты.
Чтобы оценить представления, выводимые и воспроизводимые в атаках, авторы добавили линейный прогностический слой к модели, который был дообучен на полном размеченном обучающем наборе из последующей (развернутой) задачи, с остальной частью сетевых слоев замороженной. Таким образом, точность теста на прогностическом слое может функционировать как метрика производительности. Поскольку она не вносит вклад в процесс вывода, это не представляет ‘белый ящик’ функциональности.

Результаты на тестовых запусках, сделанные возможными с помощью (не вносящего вклад) линейного слоя оценки. Баллы точности в жирном шрифте.
Комментируя результаты, исследователи заявляют:
‘Мы обнаруживаем, что прямая цель имитации представлений жертвы дает высокую производительность на задачах вниз по течению, несмотря на то, что атака требует только доли (менее 15% в определенных случаях) количества запросов, необходимых для обучения украденного кодировщика в первую очередь.’
И продолжают:
‘[Это] является сложным для защиты кодировщиков, обученных с помощью самообучения, поскольку вывод представлений утечет значительное количество информации. Наиболее перспективными защитами являются реактивные методы, такие как водяные знаки, которые могут внедрить конкретные дополнения в кодировщики с высокой емкостью.’
* Мое преобразование внутренних ссылок работы в гиперссылки.
Опубликовано впервые 18 мая 2022 г.












