Forbes Russia: Обучение в облаке: как защитить нейросеть от хакеров
Новые технологии дарят великолепные возможности, но иногда они плохо совместимы. Исследователи MIT нашли способ нивелировать недостатки процесса обучения нейросетей в облачном сервисе.
Опасность кражи биометрических и медицинских данных стала одной из причин замедления развития рынка облачных сервисов. Как бы ни заверяли поставщики услуг, что данные находятся в надежных руках, гарантировать их неприкосновенность никто не может. Ученые Массачусетского института технологий (MIT) взялись решить эту проблему с помощью технологий искусственного интеллекта (ИИ). В предложенной ими системе GAZELLE обеспечение безопасности данных не сказывается на скорости их обработки.
Последний рубеж
Рынок публичных облачных сервисов достиг в 2017 году $154 млрд и превысит $186 млрд в 2018-м, согласно расчетам Gartner. Но он мог бы расти быстрее, если бы не проблемы с направлением SaaS (программное обеспечение как услуга). Существующие облачные сервисы позволяют пользователю самостоятельно позаботиться о шифровании данных и даже застраховать возможные риски при модели IaaS (инфраструктура как сервис). Но такой подход требует продвинутой ИТ-экспертизы. Другой вариант — использовать облачные сервисы в виде SaaS, когда пользователю достаточно лишь передать свои данные для работы системы и дожидаться результата. В последнем случае обработку информации и ее безопасность должен обеспечить оператор. Но из-за обострившихся проблем с киберпреступностью клиенты стали осторожнее относиться к этой модели, что существенно замедлило рост всего сегмента SaaS на рынке облачных услуг.
Этот вопрос особенно актуален для компаний, использующих технологии ИИ. Для его быстрого обучения необходимы большие компьютерные мощности, чтобы не тратиться на собственное оборудование, и многие компании предпочитают переносить расчеты в облако. Например, этим пользуются медицинские компании, проводящие диагностику заболеваний с помощью ИИ. По оценкам компании Accenture, рынок искусственного интеллекта в области медицины ждет рост более чем в 10 раз за ближайшие три года, в результате чего он достигнет $6,6 млрд.
Нейронные сети сверточного типа эффективно распознают изображения, поэтому их пытаются применить для помощи врачу в поиске признаков заболеваний на магнитно-резонансной томографии (МРТ), рентгенограммах и т. п. Накопление большого объема сканов позволило бы качественно обучить нейросеть, но этому мешают законы о персональных медицинских данных. К тому же кибератаки все чаще направлены и на получение или порчу информации о пациентах: в апреле 2018 года вирус WannaCryатаковал Национальную службу здравоохранения Великобритании (NHS). Поэтому инфраструктура для обработки данных пациентов нуждается в соблюдении строгих стандартов безопасности.
Быстрая, как газель
Большинство известных на текущий момент методов защиты информации существенно замедляет работу нейронной сети, в некоторых случаях в миллион раз, из-за необходимости постоянно кодировать и декодировать данные. В таких условиях облачная обработка данных теряет свое основное преимущество — скорость.
В исследовании MIT, представленном на конференции по безопасности USENIX в августе 2018-го, была презентована система под названием GAZELLE, сочетающая в себе две распространенные технологии: гомоморфное шифрование и протокол искаженного контура. Их сочетание позволяло обучать нейросеть в 20-30 раз быстрее, чем самые современные модели, при этом уменьшая требуемую пропускную способность сети на порядок.
Механизм работы GAZELLE схематично можно описать следующим образом: зашифрованное изображение отсылается на сервер, который производит распознавание, используя систему GAZELLE, после этого обе стороны обмениваются зашифрованной информацией для классификации изображения пользователя. Картинка и данные пользователя отсылаются отдельно, и система следит, чтобы сервер не узнал ничего о загруженных данных, в то время как пользователь — ничего не знал о сетевых параметрах.
Понятные технологии
Гомоморфное шифрование позволяет обрабатывать зашифрованную информацию и генерировать зашифрованный результат. То есть потенциальный хакер, перехватив информацию, все равно будет вынужден ее декодировать, но при этом сервер сможет провести операции, необходимые для обучения ИИ. Пользователь получит результат, который легко расшифрует, так как имеет необходимые ключи. Казалось бы — идеальный метод, чтобы безопасно обучать нейросети на удаленных компьютерах. К сожалению, этот вид шифрования накапливает ошибки на каждом шаге вычислений. Фильтрация шума требует дополнительной компьютерной обработки, и в результате скорость операций замедляется. Типичная проблема при шифровании данных.
Протокол искаженного контура позволяет двум участникам системы провести вычисление, которое требует от них предоставить данные (например, сравнить представленные ими значения), не давая участникам информацию о входных данных друг друга, а также не привлекая третью сторону (арбитра). Этот метод хорошо работает, когда количество вычислений невелико, но требует слишком больших мощностей, если надо совершать много операций. К сожалению, обучение нейросети — как раз второй вариант.
Ноу-хау исследователей Массачусетского технологического института заключается в объединении и чередовании этих методов таким образом, чтобы обойти их неэффективность. Работа сверточной нейронной сети по распознаванию изображений выполняется с использованием гомоморфного шифрования, а обмен данными и вычисления на стороне пользователя — с помощью протоколов искаженных контуров.
Фактически операции разделены так, чтобы каждый из алгоритмов мог показать свою сильную сторону. Распределяя нагрузку, система ограничивает гомоморфное шифрование на выполнение сложной математики на один уровень за раз, не позволяя накапливать ошибки и повышая производительность системы.
Третьим компонентом системы GAZELLE является модуль GAZELLE Network Inference для вывода результатов обработки нейронной сети. Когда пользователь отправляет зашифрованные данные в облачную службу, они разделяются между обеими сторонами. К каждой доле добавляется секретный ключ (случайные числа), который знает только владеющая сторона. Во всех вычислениях каждая сторона всегда будет иметь некоторую часть данных, а также случайные числа. По окончании вычислений обе стороны синхронизируют свои данные, и только тогда пользователь запрашивает у облачной службы свой секретный ключ и получает результат, вычитая секретный ключ из всех данных, полученных после обработки. Если хакер вмешается на любом этапе, кроме конечного, то получит только закодированные данные.
Кому это нужно
Несмотря на экспериментальный характер системы GAZELLE, возможно, уже в ближайшее время она будет применена для защиты алгоритма машинного обучения, распознающего наличие диабетической ретинопатии по снимку глаза. Этот медицинский подход был одобрен американской FDA (аналог Министерства здравоохранения в США) в апреле 2018 года.
Ценность системы, разработанной учеными MIT, в том, что она открывает дорогу в облако аналитическим системам, работающим с чувствительными данными, например при распознавании лиц и в сфере финансов. Если GAZELLE успешно пройдет испытания, то ее влияние на распространение технологий распознавания изображения может быть сопоставимо с появлением безопасных протоколов SSL/TLS, которые сейчас обеспечивают защищенную передачу данных через интернет.
Никита ЦАПЛИН, Forbes Contributor