- •ПРЕДИСЛОВИЕ
- •Контрольные вопросы
- •2. УПРАВЛЕНИЕ РИСКАМИ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА
- •Контрольные вопросы
- •3. ОБЪЯСНИМОСТЬ МОДЕЛЕЙ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА
- •Контрольные вопросы
- •4. РОБАСТНОСТЬ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА
- •Контрольные вопросы
- •5. ФУНКЦИОНАЛЬНАЯ БЕЗОПАСНОСТЬ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА
- •Контрольные вопросы
- •6. КОМПЬЮТЕРНЫЕ АТАКИ НА ИСКУССТВЕННЫЙ ИНТЕЛЛЕКТ
- •Контрольные вопросы
- •7. ЗАЩИТА ДАННЫХ
- •Контрольные вопросы
- •8. ОБНАРУЖЕНИЕ АНОМАЛИЙ
- •Контрольные вопросы
- •ЗАКЛЮЧЕНИЕ
- •БИБЛИОГРАФИЧЕСКИЙ СПИСОК
8. ОБНАРУЖЕНИЕ АНОМАЛИЙ
|
|
ВИДЕОЛЕКЦИИ |
Понятие аномалии, Model ops, MLops |
Виды аномалий, дрейф данных,
метрики
Дрейф концепций. Способы
обнаружения дрейфа
Защита данных от заражения. Методы
распознавания аномалий
|
|
|
|
КОНСПЕКТ |
Понятие аномалии, Model ops, MLops |
|
Современные технологии активно развиваются. Если |
|
говорить о путях развития ИИ, машинного обучения, то |
|
среди прочего можно выделить следующие направления |
|
развития (концепции): MLOps, ModelOps. |
|
MLOps, ModelOps – близкие понятия, но главное, что |
|
их отличает, – это адресат таких систем и результат их |
|
применения. Машинное обучение (ML) становится эффек- |
|
тивным, когда его модели внедряются в производство. |
|
MLOps – это набор процедур, направленных на после- |
|
довательное, эффективное внедрение и поддержку моделей |
|
ML, используемых в производстве. Само слово представля- |
|
ет собой сочетание, обозначающее Machine Learning и про- |
|
цесс непрерывной разработки DevOps в области програм- |
|
много обеспечения. |
|
Модели машинного обучения, как правило, разрабаты- |
|
ваются в изолированных экспериментальных системах. Ко- |
|
гда они готовы к внедрению, MLOps практикуется у Data |
|
Scientists – специалистов по анализу данных, DevOps и ин- |
|
|
55
женеров машинного обучения для внедрения в технологи-
ческие или бизнес-процессы.
ModelOps – это система операций с моделей машинного обучения, ориентированная на руководство компаний, ИТ-директоров. Можно сказать, что ModelOps лежит в основе любой корпоративной стратегии искусственного интеллекта, управляя жизненными циклами всех моделей в производстве на всем предприятии: от запуска в производство до оценки и обновления приложения. Это позволяет бизнес-экспертам самостоятельно оценивать работу ИИмодели с экономической точки зрения, независимо от специалистов по обработке и анализу данных.
ModelOps обладает всеми функциями MLOps и дополнительным функционалом. ModelOps – термин, подобный DevOps, предполагает непрерывную интеграцию, непрерывное развертывание (CI/CD), но применительно к моделям
(рис. 3).
Рис. 3. Жизненный цикл модели ИИ в ModelOps системе
После осуществления разработки модели ИИ, ее валидации, определения характеризующих ее метрик, сравнения ее с другими моделями и выбора наилучшей из них, происходит внедрение модели в бизнес-процесс.
56
ModelOps предполагает, что после внедрения будет
осуществляться непрерывное наблюдение за поведением, характеристиками, метриками модели с целью обнаружения проблем в ее работе. Именно такой подход позволяет выявлять ухудшения характеристик модели и фиксировать аномалии.
Если такие проблемы будут установлены, модель должна быть отправлена на анализ и переобучение, либо, при необходимости, заменена.
Предиктивное обслуживание систем ИИ заключается в нахождении неполадок, ведущих к деградации системы на ранних этапах, до ее отказа с использованием искусственного интеллекта. Данный подход не исключает полностью ручной мониторинг системы. Он является вспомогательным для процесса мониторинга в целом.
Основным инструментом в реализации предиктивного обслуживания является задача поиска аномалий во временных рядах, так как при возникновении аномалии в данных велика вероятность сбоя или отказа.
Аномалия – это некоторое отклонение показателей программной системы, такое как выявление деградации скорости выполнения запроса одного вида или снижение среднего числа обслуживаемых обращений при постоянном уровне клиентских сессий.
Проблема предсказания сбоев, обнаружения аномалий также характерна и для самих систем и приложений искусственного интеллекта.
Виды аномалий, дрейф данных, метрики
Аномалии, связанные с системами ИИ, включают:
1)дрейф данных;
2)дрейф концепций;
57
3)утечку данных;
4)заражение данных.
Дрейф данных (Data drift) – явление, когда изменяется распределение входных данных модели, при этом обучение модели происходит на данных, не соответствующих поступающим в модель в процессе ее выполнения в какой-либо системе или приложении.
Изменение независимых переменных (ковариат или входных признаков) модели потенциально вызывает изменение в совместном распределении входных и выходных переменных.
Несмотря на то, что связь между функцией Х и целевой будет оставаться неизменной, распределение функции Х в случае дрейфа данных будет меняться.
Дрейф данных можно определить следующим образом:
P(y|x) = P(y|x).
Здесь P(x) – безусловная вероятность входных признаков x, а P(y|x) – условная вероятность целевых признаков. Дополнительно обозначим вероятности как Pt для обучающих данных и Ps для данных, для которых модель составляет прогнозы в производственной среде.
Это значит, что произошел сдвиг в распределении входных признаков между обучающими данными и прогнозируемыми, но отношение между входными признаками
ицелевыми не изменилось.
Втом случае, если подобные изменения будут происходить сразу в нескольких наиболее важных переменных модели, снижение ее производительности будет особенно заметным.
58
Компоненты, содержащие технологию ИИ, можно
проверять на наличие источников дрейфа данных с целью реализации менеджмента рисков ИИ.
Необходимо убедиться, что входные функции стабильны (т. е. проверить наличие дрейфа между обучающими и тестовыми наборами) и во время разработки модели, а затем следует продолжать мониторинг модели после ее развертывания.
Дрейф данных часто связан со следующими причинами: 1. Ошибки в самих данных модели:
а) ошибки во входных данных из-за проблем с источником данных, к которым могут относиться проблемы с интерфейсом. В таких случаях данные, сохраняемые в базу, будут неверными;
б) ошибки в процессе расчета признаков, но сами входные данные из источника являются верными;
в) обучающая выборка не является репрезентативной; г) данные обучения, собранные из исходной совокуп-
ности, не представляют целевую совокупность данных.
2. Ситуации, когда происходит изменение данных изза внешних факторов.
Например, на производстве начато применение новых датчиков, случился выход датчика из строя, произошло обновление ПО датчика, выполнен непредвиденный ввод данных другими операторами системы.
Существует три основных подхода к обнаружению дрейфа данных.
1. Статистический – этот подход использует различные статистические показатели в наборах данных, чтобы сделать вывод о том, отличается ли эталонное распределение обучающих данных от распределения реальных данных.
59
В статистических подходах выделяют такие метрики
для обнаружения дрейфа, как среднее значение, меры расстояния, индекс стабильности населения (PSI), расхождение (расстояние) Кульбака – Лейблера (KL), дивергенция Йенсена – Шеннона (JS), метрика расстояния Вассерштейна, тест Колмогорова – Смирнова (тест KS).
2. Подход, основанный на моделях. Суть метода за-
ключается в построении модели классификатора таким образом, чтобы можно было различить эталонное и сравниваемое с ним распределение. Этот подход включает в себя обучение модели классификации для определения схожести выбранных элементов датасета с другим набором элементов. Если модель с трудом может отличить данные, то значительного дрейфа данных нет. Если модель способна правильно разделить группы данных, то существует некоторый дрейф данных.
Можно использовать следующий алгоритм:
1)пометьте данные из набора, использованного для построения текущей модели, как 0;
2)отметьте набор данных, который был получен после обучения модели, как 1;
3)разработайте модель для различения этих двух наборов;
4)оцените результаты и при необходимости скорректируйте модель.
Если разработанная модель может легко различать два набора данных, значит, произошел ковариативный сдвиг, и модель необходимо переобучить. С другой стороны, если модель пытается различить два набора данных, но ее точность составляет около 0,5 (что является случайным предположением), следовательно, значительного сдвига данных не произошло, и мы можем продолжать использоватьмодель.
60
3. Адаптивное скользящее окно (ADWIN) – этот под-
ход используется с потоковыми данными в случае, когда поступает большое количество данных, и невозможно сохранить их все. При этом данные могут меняться очень быстро.
Описанные методы не очень подходят, когда имеет место поток входных данных. В некоторых сценариях данные могут дрейфовать так быстро, что к тому времени, когда мы собираем данные и обучаем модель, тенденции уже изменились, и наша модель устарела. Но определить лучшие временные рамки для обучения тоже не так просто. В этом поможет метод адаптивного скользящего окна, который успешно приспосабливается к изменяющимся данным.
Все указанные методы можно использовать для обнаружения дрейфа данных в зависимости от их применимости. Но обычно нет возможности ждать, пока будет замечено значительное снижение производительности в модели, чтобы начать поиск дрейфа данных. Именно в этом случае наличие типового плана мониторинга дрейфа становится очень полезным. Кроме указанных, существуют и другие подходы, к примеру– анализ распределения переменныхпо бинам.
Что касается способов устранения дрейфа данных, то здесь есть несколько вариантов. Если проблема дрейфа данных возникает в неразвернутой модели – основным методом устранения дрейфа является ее переобучение. Однако модель может столкнуться с дрейфом данных уже в развернутом состоянии, когда переобучение может оказаться невозможным. В этих случаях может быть построена модель для оценки поправочных коэффициентов на основе особенностей входных данных или допущена контролируемая коррекция.
61
Дрейф концепций. Способы обнаружения дрейфа
Дрейф концепции (Concept drift) относится к изменению взаимосвязи между входными переменными и выходными данными модели и может сопровождаться изменением распределения выходных данных. Данный термин означает, что статистические свойства целевой переменной, которую модель пытается предсказать, со временем изменяются непредвиденным образом. Распределение входных данных остается прежним, а вот связь между входными признаками и целевыми значениями меняется:
P(y|x) ≠ P(y|x),
P(x) = P(x).
Данная аномалия с большей вероятностью появится в тех областях, где данные зависят от времени, таких как прогнозирование временных рядов и данные с сезонностью. Обучение модели в текущем месяце не даст хороших результатов при ее развертывании в другом месяце. Дрейф концепций обычно негативно сказывается на метрике системы машинного обучения. Существует несколько различных способов проявления дрейфа концепций.
Выделяют следующие разновидности дрейфа:
–постепенный, или инкрементный дрейф – это дрейф концепции, который можно наблюдать с течением времени и, следовательно, можно ожидать;
–внезапные изменения концепции – это изменения концепции, которые происходят неожиданно;
–повторяющийся дрейф концепций – это дрейф концепции, который можно наблюдать с определенной периодичностью (сезонностью). Но сезонность является обыч-
62
ным явлением в машинном обучении с данными времен-
ных рядов.
Системы ИИ должны включать в себя модули обнаружения дрейфа, отличать дрейф от шума, присутствующего в системе, и адаптироваться к изменениям с течением времени.
Потенциальные подходы к обнаружению дрейфа концепций:
–метод раннего обнаружения дрейфа (EDDM);
–обнаружение дрейфа с помощью метода опорных векторов (SVM);
–наблюдение ошибки вывода во время обучения;
–сравнение условного распределения истинных и спрогнозированных целевых значений по конкретному набору входных признаков.
Своевременное обнаружение дрейфа концепций поможет спланировать адаптацию системы к изменяющимся внешним факторам посредством добавления в обучающие данные новых атрибутов и важных примеров возможного развития событий.
Несмотря на значительный рост вычислительных мощностей, появление дешевых вычислений и рост доступности больших объемов данных, что является предпосылкой к созданию более точных моделей, есть ряд проблем, ситуаций, когда этих факторов недостаточно для создания действительно работающих моделей.
Целью прогнозного моделирования является разработка модели, которая делает точные прогнозы на основе новых данных, недоступных во время обучения. Утечка данных представляет собой одну из самых важных проблем
63
в машинном обучении, которая может привести к созданию
чрезмерно оптимистичных, если не полностью неверных, прогностических моделей. Суть данной проблемы в том, что для создания модели используется дополнительная информация, которая находится вне обучающего набора данных. Эта дополнительная информация может позволить модели узнать то, что в противном случае она не знала бы, что в свою очередь приводит к недействительной предполагаемой производительности модели.
Причины возникновения утечки данных:
–дубликаты в данных;
–утечка на этапе предварительной обработки;
–утечка при обработке временных рядов;
–ошибочное включение целевой переменной в качестве функции, которая полностью уничтожает цель «прогнозирования»;
–выполнение нормализации и стандартизации данных до оценки с помощью кросс-валидации;
–ошибочное включение тестовых данных в данные для обучения модели;
–функции Giveaway – это функции, которые раскрывают информацию о целевой переменной и не доступны после развертывания модели.
Способы борьбы с утечками
1. Устранение дубликатов и почти одинаковых наборов (например, с помощьюметода нечеткого сопоставления).
2. Подготовка данных в рамках кросс-валидации. В более общем случае, подготовка данных без утечек должна выполняться на каждом этапе цикла перекрестной проверки.
3. Разделение данных для кросс-валидации на обуча-
ющие и валидационные. Валидационный набор будет ис-
64
пользоваться для оценки производительности модели после
того, как произошло несколько циклов обучения на обучающих данных, подбора параметров и тестирования модели и был сделан вывод, что получ ен окончательный вариант модели.
4.Составление обучающих наборов и использование только тех данных, которые на практике будут доступны во время обучения еще до того, как модель начнет оценивать результаты.
5.Выявление тех функций, которые очень сильно коррелируют с целевой функцией.
Защита данных от заражения. Методы распознавания аномалий
При атаках с отравлением данных злоумышленники намеренно влияют на обучающие данные, чтобы воздей-
ствовать на результаты прогностической модели. Атаки с отравлением данных направлены на то, чтобы позволить обучить модель с плохими характеристиками, которая не может обнаруживать вредоносные атаки. Этот тип атаки особенно актуален, если модель открыта для доступа в Интернет в онлайн-режиме, такая модель постоянно обновляется, обучаясь на новых данных. Правильная фильтрация обучающих данных может помочь обнаружить и отфильтровать аномальные данные и, таким образом, свести к минимуму возможный ущерб.
Выделяют несколько способов защиты данных от заражения.
Правильная фильтрация обучающих данных. Смысл данного способа в том, что злоумышленник будет пытаться
65
вводить в набор обучающих данные что-то, что будет
сильно отличаться от данных, которые уже в нем есть. Данный метод не будет работать, если злоумышленник вводит данные очень близкие тем, что уже есть в обучающем наборе.
Проверка точности модели основана на предположе-
нии, что отправление данных негативно повлияет на точность модели. В этом случае можно проверить модель на неменяющемся тестовом наборе до отправления новых данных в обучающий набор. Здесь выделяют методы «отклонения при негативном воздействии» и «целеориентированного отклонения при негативном воздействии».
Также в качестве способа обнаружения заражения данных может использоваться мониторинг. Механизмы распознавания аномального нейронного поведения или аномальных входных данных могут быть использованы для выявления ситуаций возможного отказа. К примеру, с помощью мониторинга можно установить, когда технология ИИ производит потенциально небезопасные действия. Это может происходить либо из-за функциональных недостатков, либо из-за неисправности, после чего могут быть предприняты некоторые меры для поддержания системы в безопасном состоянии. Мониторинг обычно осуществляется параллельно с технологией ИИ, которая используется для обеспечения функциональной безопасности.
Приложения для мониторинга можно разрабатывать
вдвух режимах:
–с использованием методов, отличных от ИИ;
–с использованием ИИ.
66
Во время разработки приложений для мониторинга за-
ражения данных в системах ИИ необходимо рассмотреть следующие моменты:
–тип неисправностей технологии ИИ, которые могут быть обнаружены;
–способы выявления дефектов технологии ИИ во время его выполнения;
–контрольные показатели эффективности различных мониторингов времени выполнения;
–виды вмешательства, которые могут быть использованы для обхода неисправности после обнаружения.
Нередко дрейф бывает связан с аномалиями в данных.
Всвязи с этим необходимо использовать методы (рис. 4), которые позволяют обнаружить наличие этих аномалий.
Рис. 4. Методы обнаружения аномалий в данных
Зачастую для решения задачи поиска аномалий требуется набор данных, описывающих систему. Каждый экземпляр в нем описывается меткой, указывающей на его нормальность или аномальность. Таким образом, множество экземпляров с одинаковой меткой формируют соответствующий
67
