Программирование

PySyft продвигает повестку дня в области частного машинного обучения

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

Недавно я запустил образовательный информационный бюллетень, посвященный ИИ, у которого уже более 100 000 подписчиков. TheSequence — это информационный бюллетень, ориентированный на машинное обучение, без BS (то есть без шумихи, без новостей и т. д.), чтение которого занимает 5 минут. Цель состоит в том, чтобы держать вас в курсе проектов машинного обучения, научных работ и концепций. Пожалуйста, попробуйте, подписавшись ниже:



Доверие является ключевым фактором в реализации приложений глубокого обучения. От обучения до оптимизации жизненный цикл модели глубокого обучения связан с надежным обменом данными между разными сторонами. Эта динамика, безусловно, эффективна для лабораторной среды, но становится уязвимой для нескольких всевозможных атак безопасности, которые манипулируют доверительными отношениями между различными участниками модели. Давайте рассмотрим пример модели кредитного скоринга, в которой используется финансовая транзакция для классификации кредитного риска для конкретного клиента. Традиционные механизмы обучения или оптимизации модели предполагают, что субъекты, выполняющие эти действия, будут иметь полный доступ к этим наборам финансовых данных, что открывает двери для всех видов рисков конфиденциальности. По мере развития глубокого обучения потребность в механизмах, обеспечивающих соблюдение ограничений конфиденциальности в течение жизненного цикла наборов данных и модели, становится все более важной. Среди технологий, пытающихся решить эту монументальную проблему, PySyft — это недавний фреймворк, который неуклонно набирает обороты в сообществе глубокого обучения.

Важность конфиденциальности в приложениях глубокого обучения напрямую связана с появлением распределенных многосторонних моделей. Традиционный подход к решениям для глубокого обучения основан на централизованных сторонах, которые контролируют весь жизненный цикл модели, даже если используется большая распределенная вычислительная инфраструктура. Это случай организации, которая создает модель прогнозирования, которая управляет предпочтениями клиентов, посещающих их веб-сайт. Однако централизованные топологии глубокого обучения оказались непрактичными в таких сценариях, как мобильная связь или Интернет вещей (IOT), которые полагаются на большое количество устройств, производящих данные и выполняющих модели. В этих сценариях распределенные стороны часто не только создают конфиденциальные наборы данных, но также выполняют и оценивают производительность моделей глубокого обучения. Эта динамика требует двусторонних отношений конфиденциальности между различными сторонами, ответственными за создание, обучение и выполнение моделей глубокого обучения.

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

Активаторы

Конфиденциальность в моделях глубокого обучения была хорошо известной проблемой в течение многих лет, но технологии, которые могут обеспечить решение, только сейчас достигают определенного уровня жизнеспособности. В случае PySyft фреймворк использует три самых интересных метода машинного обучения и криптографии последнего десятилетия:

· Защищенные многосторонние вычисления

· Федеративное обучение

· Дифференциальная конфиденциальность

Защищенные многосторонние вычисления

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

Концептуально sMPC заменяет потребность в доверенном посреднике безопасными вычислениями. В модели sMPC набор сторон с частными входными данными вычисляет распределенные функции, такие как свойства безопасности, такие как справедливость, конфиденциальность и правильность.

Федеративное обучение

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

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

Дифференциальная конфиденциальность

Дифференциальная конфиденциальность — это метод, используемый для ограничения влияния статистических алгоритмов на конфиденциальность субъектов, чья информация является частью более крупного набора данных. Грубо говоря, алгоритм является дифференциально закрытым, если наблюдатель, видя его результат, не может сказать, использовалась ли в вычислениях информация конкретного человека. Дифференциальная конфиденциальность часто обсуждается в контексте идентификации лиц, чья информация может находиться в базе данных. Хотя это не относится напрямую к атакам на идентификацию и повторную идентификацию, дифференциально-приватные алгоритмы доказуемо противостоят таким атакам.

ПиСифт

PySyft — это платформа, которая обеспечивает безопасные частные вычисления в моделях глубокого обучения. PySyft сочетает в себе федеративное обучение, защищенные многосторонние вычисления и дифференциальную конфиденциальность в единой модели программирования, интегрированной в различные среды глубокого обучения, такие как PyTorch, Keras или TensorFlow. Принципы PySyft изначально были изложены в исследовательской статье, а его первой реализацией руководила OpenMined, одна из ведущих децентрализованных платформ искусственного интеллекта.

Основным компонентом PySyft является абстракция под названием SyftTensor. SyftTensors предназначены для представления состояния преобразования данных и могут быть объединены в цепочку. Структура цепочки всегда имеет во главе тензор PyTorch, а преобразования состояний, реализованные SyftTensors, доступны вниз с помощью дочернего атрибута и вверх с помощью родительского атрибута.

Использование PySyft относительно просто и не сильно отличается от вашей стандартной программы PyTorch или Keras. Анимация ниже иллюстрирует простую модель классификации с использованием PySyft.

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