CrypTen: инструмент для обучения моделей на зашифрованных данных

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

Несмотря на прогресс в обучении нейросетевых моделей, на данный момент мало инструментов для работы с зашифрованными данными. Это ограничивает использование ML в сферах, где данные засекречены. Например, медицинские данные или персональные данные пользователей онлайн-платформы. CrypTen нужен для обеспечения безопасности обработки зашифрованных данных.

CrypTen позволяет исследователям экспериментировать с ML моделями, в которых используются методы для обезопашивания вычислений. Через интеграцию с PyTorch разработчики упростили работу с библиотекой, сделав ее привычной для исследователей.

Исследователи могут обучить PyTorch модель, как ResNet, с использованием зашифрованных данных. При этом синтаксис в CrypTen максимально похож на PyTorch.

Пример синтаксиса библиотеки в сравнении с PyTorch

Архитектура библиотеки

На данный момент в CrypTen реализован криптографический метод secure multiparty computation (MPC). В будущих релизах планируется добавить поддержку гомоморфного шифрования и безопасными анклавами. MPC отличается от RSA, AES и других протоколов шифрования, которые широко используются.

Составные части библиотеки

В сравнении с предыдущими имплементациями вычислительных протоколов у CrypTen есть 3 преимущества:

  • Фокус на применении библиотеки для обучения ML моделей. Практически идентичный с PyTorch синтаксис и работа с тензорами минимизируют время на адаптацию к библиотеке;
  • CrypTen — это библиотека, а не компилятор, что упрощает процесс отладки и экспериментирования с моделями;
  • Ориентированность на реальные кейсы при дизайне библиотеки

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

Подписаться
Уведомить о
guest

0 Comments
Межтекстовые Отзывы
Посмотреть все комментарии

gogpt