Что такое ответственное машинное обучение? (предварительная версия)

В этой статье описано, что представляет собой ответственное машинное обучение и как применить его на практике в решении "Машинное обучении Azure".

Принципы ответственного машинного обучения

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

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

Основные принципы ответственного машинного обучения — интерпретируемость, дифференциальная конфиденциальность, гомоморфное шифрование, журнал аудита — Машинное обучение Azure

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

Анализ и объяснение поведения модели

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

Чтобы создавать хорошо объяснимые системы искусственного интеллекта, применяйте пакет с открытым кодом InterpretML, созданный корпорацией Майкрософт. Пакет InterpretML поддерживает разнообразные методики интерпретации, такие как SHapley Additive exPlanations (SHAP), средства объяснения имитации и важность функции перестановки (PFI). InterpretML можно использовать на платформе "Машинное обучение Azure" для интерпретации и объяснения моделей машинного обучения, в том числе моделей автоматизированного машинного обучения.

Снижение объективности в моделях машинного обучения

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

Необъективность в системах искусственного интеллекта может привести к целому ряду нежелательных последствий:

  • ограничение доступа некоторых лиц к возможностям, ресурсам или сведениям;
  • усиление смещения и стереотипов.

Многие аспекты объективности невозможно оценить или выразить в метриках. Существуют средства и методики, которые повышают объективность систем искусственного интеллекта при их проектировании и разработке.

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

Предотвращение раскрытия данных с применением дифференциальной конфиденциальности

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

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

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

Работа с зашифрованными данными с помощью гомоморфного шифрования

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

Гомоморфное шифрование позволяет выполнять вычисления с зашифрованными данными без необходимости доступа к секретному ключу (ключу расшифровки). Результаты вычислений шифруются и могут быть прочитаны только владельцем секретного ключа. Используя гомоморфное шифрование, операторы облачных решений для хранения и вычислений никогда не получат незашифрованный доступ к используемым данным. Вычисления выполняются непосредственно с зашифрованными данными. Конфиденциальность данных основывается на самых современных методах шифрования, и владелец данных полностью контролирует раскрытие информации. Дополнительные сведения о гомоморфном шифровании в корпорации Майкрософт см. в статье Microsoft Research.

Чтобы приступить к работе с гомоморфным шифрованием в решении "Машинное обучении Azure", используйте привязки Python с зашифрованным выводом для Microsoft SEAL. Microsoft SEAL — это библиотека гомоморфного шифрования с открытым исходным кодом, которая позволяет выполнять сложение и умножение зашифрованных целых или вещественных чисел. Дополнительные сведения о Microsoft SEAL см. в разделе Центр архитектуры Azure или на странице проекта Microsoft Research.

В следующем примере показано, как развернуть веб-службу зашифрованного вывода в решении "Машинное обучении Azure".

Документирование жизненного цикла машинного обучения в таблицах данных

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

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

Вот некоторые сведения о модели, которые вы можете документировать в таблицах данных:

  • предполагаемое использование;
  • архитектура модели;
  • использованные для обучения данные;
  • использованные для оценки данные;
  • метрики производительности модели обучения;
  • сведения об объективности.

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

Дополнительные ресурсы