где NT+ - количество истинных положительных результатов;
NT- - количество истинных отрицательных значений;
NF+ - количество ложноположительных результатов;
NF- - количество ложноотрицательных результатов;
NC+ - число положительных условий;
NC- - число отрицательных условий;
Ptot - общее количество наблюдений;
NP+ - число положительных прогнозов;
NP- - число отрицательных прогнозов;
RT+ - доля истинно положительных результатов;
RT- - доля истинно отрицательных результатов;
RF+ - доля ложноположительных результатов;
RF- - доля ложноотрицательных результатов;
RL+ - отношение положительного правдоподобия;
RL- - отношение отрицательного правдоподобия;
VP+ - величина положительной прогностической ценности.
В таблице 1 представлено обобщенное представление характеристик и показателей выборки, описанных в настоящем подразделе. Все эти выборочные характеристики и метрики применимы в первую очередь к бинарной классификации, но также имеют обобщенные определения в многоклассовых случаях и случаях со множественными метками.
5.2.3.2 Расширенные метрики
Кривая точности - полноты
Пары метрик "точность/полнота" вычисляют при разных пороговых значениях вывода. Пары "точность/полнота" отражают компромиссы между точностью и полнотой, когда эти метрики используют для оценки робастности.
Рабочая характеристика приемника (ROC)
Кривая ROC (Receiver operating characteristic) представляет собой график зависимости пропорции истинно положительных результатов в зависимости от пропорции ложноположительных результатов при различных настройках гиперпараметров (например, порога принятия решения).
ROC отражает компромисс между долями истинно положительных и ложноположительных показателей, когда эти показатели используют для оценки робастности. Кривые ROC применяют, когда один показатель связан со значительными затратами или преимуществами при оценке робастности, например: в области медицины, где ложные диагнозы могут приводить к критическим последствиям.
5.2.3.3 Подъем (lift)
Метрика подъема - это мера, сравнивающая относительную эффективность системы прогнозирования с другой контрольной группой (обычно выбираемой случайным образом).
5.2.3.4 Площадь под кривой
Площадь под кривой измеряет интеграл кривой рабочих характеристик приемника ROC, которая представляет эффективность модели для каждого порога классификации. Кривая ROC показывает долю истинных положительных результатов относительно доли ложноположительных результатов.
5.2.3.5 Сбалансированная достоверность
Сбалансированная достоверность (balanced accuracy) - это средняя полнота, полученная по каждому классу [12].
5.2.3.6 Микроусреднение и макроусреднение
В случаях несбалансированных наборов данных такие показатели, как точность или полнота, рассчитанные для всего набора данных, иногда дезориентируют. Возможной стратегией для решения этой проблемы является вычисление метрики макроусреднения, которая представляет собой среднее значение показателя, вычисленного для каждого класса отдельно, вместо метрики микроусреднения, которую используют стандартным вычислением без разделения классов [13].
5.2.3.7 Коэффициент корреляции Мэтьюза
Коэффициент корреляции Мэтьюза (Matthews correlation coefficient, MCC) - это мера по набору классификаций (предсказаний). Его диапазон лежит в пределах [-1,+1], в котором +1 представляет точное предсказание, -1 - противоположное предсказание, а 0 - среднее предсказание. Следует отметить, что эта метрика обобщается в тех случаях, когда классы не сбалансированы в исходных данных (то есть значение MCC равно 0 для случайного классификатора на N классах, даже если точность этого классификатора отличается от 1/N) [14], [15].
Коэффициент корреляции Мэтьюза MCC вычисляют по формуле
, (1)где NT+ - количество истинных положительных результатов;
NT- - количество истинных отрицательных значений;
NF+ - количество ложноположительных результатов;
NF- - количество ложноотрицательных результатов.
5.2.3.8 Матрица ошибок и связанные метрики
Матрица ошибок (confusion matrix) позволяет провести подробный анализ эффективности классификатора и помочь обойти или выявить слабые места отдельных метрик, поскольку она обеспечивает более четкий и всесторонний анализ эффективности классификатора. Напротив, использование матрицы ошибок в качестве единственной меры эффективности классификатора недостаточно информативно для проведения этого анализа, так как оно не указывает, какие классы наиболее распознаются или какой тип ошибок совершает классификатор.
Матрица ошибок C представляет собой квадратную матрицу, где запись Cr,c в строке r и столбце c - это количество экземпляров, принадлежащих к классу или категории r, которые классифицируют как принадлежащие к классу c.
Матрицы ошибок включают количество истинно положительных, истинно отрицательных, ложноположительных и ложноотрицательных результатов: на их основе можно рассчитать такие метрики, как достоверность, полнота по классам и точность. Из элементов матрицы ошибок могут быть получены дополнительные метрики, такие как энтропия гистограммы, представленная матрицей.
5.2.4 Другие меры
5.2.4.1 Кусочно-линейная функция потерь
Кусочно-линейная функция потерь (hinge loss) - верхняя граница количества ошибок, сделанных классификатором. В общем случае для классификации с несколькими классами дистанцию до границы вычисляют методом Краммера - Зингера [16].
5.2.4.2 Каппа Коэна
Каппа Коэна - это мера согласия между экспертами, выполняющими такую же задачу, как и оцениваемая система
, (2)где po - априорная вероятность согласованности меток на любой выборке в наблюдаемых данных;
pe - ожидаемое согласие, когда каждый из двух экспертов присваивает метки независимо и в соответствии с собственными измеренными априорными распределениями с учетом эмпирических данных.
Эта мера полезна, когда не обязательно существует золотой стандарт оценки, например когда метки, предоставленные человеком, также являются неточными или когда таких меток не существует, и для сравнения доступны только автоматизированные методы.
В основном эту меру используют для оценки качества данных после сделанных человеком аннотаций (подверженных ошибкам), но ее также применяют в качестве вспомогательного метода оценки, когда метки отсутствуют, путем сравнения двух классификаторов друг с другом.
5.3.1 Общие положения
При применении метрик по 5.2 к тестовым данным для оценки робастности доступно несколько статистических методов. В этом подразделе описаны некоторые из доступных статистических методологий для выполнения шагов 2 и 3, представленных в 4.1, для планирования и проведения тестирования. Выполнение протокола тестирования не является уникальным для нейронных сетей, и подготовка включает настройку тестового окружения, сведения о том, что и как измерять, а также сбор данных и прочие характеристики. Разница в планировании тестирования робастности нейронных сетей заключается в необходимости более тщательного сбора данных (например, об уровне качества, степени детализации, наборах данных для обучения/тестирования/валидации и т.д.). При проведении тестирования источник данных и доступность вычислительных ресурсов являются существенными вследствие того, что нейронные сети требуют в некоторых случаях значительных объемов данных и вычислительных ресурсов.
5.3.2 Контрастные меры
Статистические показатели эффективности применяют сначала к базовому набору данных, а затем к одному или нескольким наборам данных, отражающим целевые изменения условий. Если для каждого из них снижение производительности по сравнению с эталонным тестовым набором достаточно низкое, то систему считают надежной.
Другим аспектом робастности является степень, в которой изменяющиеся обстоятельства влияют на поведение системы независимо от ее эффективности. Формальные методы подходят для оценки стабильности системы, т.е. степени, в которой ее результат изменяется при изменении входных данных. Хотя робастная система может быть нестабильной, а стабильная система может быть неробастной, стабильность является надежным показателем робастности, поскольку она делает результат более предсказуемым.
Формальные методы использовались для повышения надежности программного обеспечения и обеспечения более строгого контроля качества систем, включающих программное обеспечение. Хотя формальные методы в основном применялись в контексте приложений, критически важных для безопасности, например в транспортных системах, в настоящее время они используются более широко.
Формальные методы позволяют получить математическое доказательство свойства по всей данной области, тогда как статистические или эмпирические методологии основаны на экстраполяции результатов только из проверенных выборок на всю область. Свойства безопасности обычно находятся в центре внимания, но эти методы применимы к широкому спектру свойств. Формальные методы, как правило, сложны в применении, поскольку они иногда требуют конкретного математического моделирования в зависимости от типа анализируемой системы и, возможно, более сложного инструментального оснащения (instrumentation) системы.
Программные системы ИИ создают новые специфические проблемы с точки зрения валидации системы, например: в отличие от классического программного обеспечения их поведение сложнее объяснить и доказать. Это особенно характерно для нейронных сетей из-за способа их построения (посредством обучения вместо программирования) и присущей нелинейности их поведения. В результате требуется найти более подходящие системные свойства, демонстрирующие робастность системы ИИ, и рассматриваются новые методологии, доказывающие их достоверность.
Настоящий раздел следует общему рабочему процессу для оценки робастности нейронной сети, изображенному на рисунке 1. В частности, он сосредоточен на шагах 1, 2 и 3, представленных в 4.1 и состоящих из выбора требуемых свойств робастности, затем - из подготовки данных, а далее - их выполнения тестов. В зависимости от видов использования нейронной сети следует учитывать различные свойства, иногда необходимы различные этапы подготовки и возможны несколько методов для проведения тестирования.
6.2.1 Общие положения
В настоящем подразделе описано свойство стабильности, которое является одним из свойств, используемых для оценки робастности. В зависимости от задачи, выполняемой системой, оно формализовано следующими путями:
1) для систем интерполяции: стабильность интерполяции вычисляет неопределенность нейронной сети, что позволяет определить, когда нейронная сеть может иметь недостаточную робастность;
2) для систем классификации: максимальное стабильное пространство вычисляет размер той области, в которой нейронная сеть будет иметь стабильную эффективность классификации.
В некоторых случаях нейронные сети используют для замены сложных математических вычислений, выполнение которых требует больших затрат. Например, для сложной системы дифференциальных уравнений, требующей решения итерационным методом (например, подход Ньютона - Рафсона), нейронную сеть применяют в качестве "оракула", который выводит определенные удовлетворяющие условия систем. Для реализации такого метода набор данных для обучения, тестирования и валидации генерируется заранее (в идеале - однократно), но, если качество набора данных недостаточно для обучения нейросети нужной точности предсказания, этап генерации может повторяться. Вопрос о релевантности и полноте покрытия пространства исходных параметров имеет важное значение для определения качества поведения нейронной сети. Хотя очевидно, что обучающий набор данных не является исчерпывающим (не охватывает всего пространства входов/выходов), проблема остается той же для набора тестовых данных, который используют для проверки. Кроме того, поскольку системы интерполяции обычно применяют для моделирования функций, работающих более чем в двух измерениях, нейронные сети создают сложности как с точки зрения поведения, так и визуализации.
Для систем интерполяции главным преимуществом нейронных сетей является их способность эффективно моделировать сложное линейное и нелинейное поведение. Однако по своей природе в какой-то момент возникает некоторое нелинейное поведение, что позволяет нейронной сети демонстрировать непредсказуемое поведение в тех частях области, в которых она должна быть использована. Одним из следствий этого является то, что в одних регионах области поведение нейросетей может быть неустойчивым, а в других - устойчивым. Поскольку сложно охватить каждый регион области, чтобы найти эти неустойчивые поведения, то весьма вероятно, что такие области будут упущены, и это снизит робастность. Такое незапланированное поведение составляет неопределенность в оценке качества интерполяционной способности нейронной сети.
6.2.3 Максимальное стабильное пространство для сопротивления возмущениям
Для снижения рисков, связанных с возмущениями данных, которые также называются неблагоприятными (adversarial) примерами, можно доказать устойчивость классификатора до определенного момента. Для достижения этой цели используют свойство максимального стабильного пространства. Считают, что для конкретного входного сигнала отсутствует неблагоприятный пример. Понятие расстояния необходимо для определения набора входных данных, которые находятся "вокруг" конкретной точки. В приложении A приведено описание нескольких типов искажений данных, а также соответствующих метрик расстояния для оценки нейронных сетей.
В настоящем пункте описаны три общих подхода, которые могут продемонстрировать свойство максимального стабильного пространства, используемое для измерения робастности нейронной сети, выполняющей классификацию. Это свойство может быть доказано следующими способами:
1) как логическая задача, разрешаемая с использованием решателя;
2) как числовая проблема, решаемая с помощью алгоритма оптимизации, посредством которого вычисляют максимум;
3) как математическое свойство, которое аппроксимируется путем абстрактной интерпретации.
Каждый метод был адаптирован с учетом специфики нейронных сетей.
6.3.1 Использование анализа неопределенности для доказательства стабильности интерполяции
Анализ неопределенности - это метод, обычно используемый для управления поведением математических функций. Цель состоит в том, чтобы определить, на каких входах функция имеет внезапные и существенные изменения. Для нейронных сетей - это действенный способ обнаружить проблемы, описанные в 6.2.2, в частности: можно сравнить измеренное поведение с представлением о фактическом поведении. Цель состоит в том, чтобы измерить способность нейронной сети моделировать в пределах допустимого диапазона отклонений явление, которое она предназначена моделировать. Это способствует измерению вариации отклика сети, чтобы убедиться в отсутствии нестабильного поведения.
Проделана фундаментальная работа по формализации стабильности нейронной сети. Например, в [17] описан метод расчета распространения неопределенности в сети, позволяющий таким образом обнаруживать регион, в котором ответ нейронной сети является ненормальным, а неробастное поведение должно быть ожидаемым. В [18] представлен метод, показывающий влияние или важность входных переменных на выход, независимо от природы переменных (непрерывная или дискретная). В [19] приведено несколько источников неопределенности, включая неопределенность входных данных, чувствительность сети и влияние случайности разбиения наборов данных для обучения и тестирования. Таким образом, можно определить условия, при которых сеть не является робастной, и установить причину неопределенности в отклике сети.
6.3.2 Использование решателя для доказательства свойства максимального стабильного пространства
Известно, что нейронные сети, как правило, достаточно большие, нелинейные, невыпуклые и недоступны для универсальных инструментов, таких как решатели линейного программирования или существующие теории выполнимости по модулю (satisfiability modulo theories, SMT). Тем не менее получено несколько достижений при использовании технологий решателей для подтверждения свойств в нейронных сетях. В качестве примера в [20] представлен подход к эффективному доказательству свойств над некоторыми классами нейронных сетей [с использованием функций активации ReLU (Rectified Linear Unit), определенной как ReLU(x) = max(0, x)] посредством варианта симплекс-алгоритма. В [21] решатель SMT применяют для доказательства отсутствия или существования неблагоприятного примера, включая возможность его демонстрации. В [22] рассмотрена комбинация решения выполнимости и линейного программирования на линейной аппроксимации общего поведения сети. В этих работах отражена возможность адаптировать общие технологии решателей для подтверждения свойств в нейронных сетях, доказать робастность классификаторов, а также использовать данные методы для решения других задач нейронных сетей.
6.3.3 Использование методов оптимизации для доказательства свойства максимально стабильного пространства
Общие методы оптимизации также позволяют верифицировать нейронную сеть, при этом любая проблема выполнимости преобразуется в задачу оптимизации. Затем становится возможным применить обычные методы оптимизации, такие как алгоритм "ветвления и границы" (Branch and Bound), чтобы решить эту проблему.
Свойство максимально стабильного пространства, как правило, выражается в виде булевой формулы над линейными неравенствами. Например, выход сети должен быть больше некоторой части входного пространства. Чтобы доказать это с помощью метода оптимизации, предполагаемое свойство выражается в виде дополнительных слоев в конце сети. Таким образом, после нахождения решения задачи оптимизации осуществляется решение проблемы выполнимости путем проверки знака решения. В [23] описано построение данной задачи оптимизации на основе задачи выполнимости в нейронной сети, сочетающей классический градиентный спуск для нахождения локального минимума, а также оптимизатор ветвей и границ для определения глобального оптимума.
Еще один пример методов оптимизации для доказательства устойчивости нейронных сетей касается использования программирования с ограничениями [24]. Вначале нейронная сеть аппроксимируется ее моделированием как линейной программы (с использованием сети, составленной из кусочно-линейных функций), затем аппроксимируя возможные состояния, применяя только выпуклые множества и итеративно решатель ограничений, чтобы доказать свойство робастности.
6.3.4 Использование абстрактной интерпретации для доказательства свойства максимального стабильного пространства
Абстрактная интерпретация - это вид формального метода, основанного на теории построения контролируемых аппроксимаций (см. приложение B для получения дополнительной информации). Данный метод часто используют для доказательства сложных свойств программ [25]. Абстрактные интерпретации занимают значительное место в сообществе верификации и валидации программного обеспечения, особенно в контексте критически важного для безопасности программного обеспечения, такого как встроенное программное обеспечение для самолетов [26], автомобилей [27] и космических аппаратов [28].
В работах [29], [30], [31], [32] представлены конструкции новых абстрактных областей, специально адаптированных под поведение нейронных сетей. Нелинейная природа нейронных сетей имеет тенденцию делать некоторые из существующих абстрактных областей неэффективными, особенно это касается областей, использующих аффинную динамику системы для определения абстрактных областей. Так обстоит дело, например, с новой зонотопической областью, описанной в [30], которая отражает специфическую динамику функций активации ReLU, обычно используемых в нейронных сетях обработки изображений.
Для того чтобы доказать устойчивость принимаемого решения по некоторому региону входного пространства, нужно сначала выразить регион входного пространства, подлежащий анализу, с использованием абстрактной области. Затем необходимо определить абстрактную семантику, способную выполнять символьные вычисления нейронной сети в данной абстрактной области. Выходом является абстрактное значение, представляющее аппроксимацию возможных выходных данных классификатора на этом регионе входного пространства. Результатом служит вектор, элементами которого становится достоверность классификации для каждого класса. Любой элемент сам по себе абстрактное значение (например, интервал). После вычисления выхода возможны два случая: либо один из элементов больше другого, либо отсутствует класс, который бы доминировал при принятии решения.
Следующим аспектом робастности, охватываемым в настоящем стандарте, является субъективная оценка робастности. Данная оценка основана на функциональной оценке на системном уровне, для которой наиболее приемлемы эмпирические методы, с помощью которых проводят сбор сведений по этому вопросу.
Хотя существует несколько аспектов, которые необходимо изучить при дальнейшем использовании систем ИИ, количество возможных способов анализа поведения и эффективности системы ограничено. Системы ИИ обычно в значительной степени состоят из программного обеспечения, поэтому необходимы стандарты для его тестирования, такие как ISO/IEC/IEEE 29119 [33].
Основные цели тестирования программного обеспечения сформулированы в ISO/IEC/IEEE 29119-3:2013: "Следует предоставить информацию о качестве элемента тестирования и любом остаточном риске в отношении того, насколько элемент тестирования протестирован для обнаружения дефектов в элементе тестирования до его введения в эксплуатацию и для снижения рисков низкого качества продукции для заинтересованных сторон".
Рабочий процесс оценки робастности нейронной сети, изображенный на рисунке 1, состоит из трех следующих шагов, которые имеют решающее значение для каждого эксплуатационного испытания:
1) подготовка плана тестирования (plan testing);
2) сбор данных (data sourcing);
3) проведение испытания в реальных условиях эксплуатации (conduct testing).
В отличие от других методов тестирования, при эксплуатационных испытаниях нейронная сеть интегрируется в систему, которая работает в реалистичной среде для соответствующего приложения. Система также должна реализовывать сбор данных, поэтому поиск и сбор данных являются неотъемлемой частью проектирования и проведения экспериментов.
Дефекты и низкое качество продукции также вызывают беспокойство при тестировании систем ИИ. Однако отказ системы ИИ в функциональном тесте не обязательно связан с ошибкой ("software bug") программного обеспечения или с ошибочным дизайном. При этом системы ИИ, демонстрирующие случайные сбои, иногда используют, поскольку их по-прежнему считают полезными для достижения предполагаемой цели, в частности в тех случаях, когда отсутствуют реальные альтернативы. Системы ИИ эффективны в основном во время эксплуатационных испытаний или при внедрении, например в случае с такими системами, как виртуальные помощники, что относится ко многим системам ИИ, функционирующим во взаимодействии с природной средой и пользователями или зависящим от них.
Вопросы разрешения неопределенности в отношении эффективности продукта и рисков, связанных с его внедрением, - предмет многих нормативных актов в области медицины. Например, в Европе медицинские устройства, в том числе с использованием ИИ, должны соответствовать ИСО 14155. Порядок прохождения клинической оценки или клинических испытаний программного обеспечения с применением ИИ, являющегося медицинским изделием, определяется национальным или региональным законодательством [34], [35], [36].
Для немедицинских устройств, использующих ИИ, эксплуатационные испытания в течение продолжительного времени являются признанным средством сравнения и оценки робастности решений. Вот несколько примеров:
- тестирование систем поддержки принятия решений для сельскохозяйственных приложений [40];
- практика испытаний беспилотных автомобилей [41];
- сетевой робот на вокзале [44].
Эксплуатационные испытания систем ИИ различаются по методологии, количеству пользователей или использованных образцов, статусу ответственной организации/лиц и документации результатов.
В некоторых случаях можно формально подтвердить робастность интеллектуальной системы. Когда это невозможно, что часто бывает с нейронными сетями [45], выполняют валидацию путем эмпирического тестирования робастности системы, и оценка на основе ввода/вывода востребована в данном контексте. В таком виде оценки существуют методы априорного тестирования и апостериорного тестирования. В то время как при априорном тестировании ожидаемый результат известен, и поэтому применимы статистические показатели, при апостериорном тестировании результат заранее неизвестен. В этом случае возможно предпринять автоматизированные действия, чтобы по-прежнему проводить статистические измерения косвенными средствами. В противном случае единственным доступным методом является эмпирический, основанный на суждении людей.
При апостериорном тестировании шаги 4 и 5 процесса, изображенного на рисунке 1, слегка изменены. Шаг 4, вероятно, будет более сложным, потому что правильный ответ заранее неизвестен. Интерпретация результатов на шаге 5 - это, скорее всего, предмет консенсуса, а не однозначной истины.
Как правило, для проверки робастности системы определяют данные или тестовые среды, представляющие широкий спектр тестовых сценариев для нормальных условий эксплуатации и критических случаев (шаг 2 процесса). Эти входные данные передаются в систему для оценки, а выходные данные системы (называемые гипотезами) сравниваются с эталонами, то есть с достоверной информацией (шаг 3). Входные данные предназначены для того, чтобы внести возмущение в систему для проверки ее робастности, например, используя неблагоприятные примеры. Такие эталоны обычно предоставляются экспертами, выполняющими такую же задачу, как и оцениваемая система, или являются результатом физических измерений.
В случае априорного тестирования эталоны ссылки предоставляются экспертами, выполняющими аннотации, и обычно они договариваются друг с другом в отношении правильного ответа, который должен быть получен (высокая степень согласия между экспертами). В таком случае эталон (ground truth) определяется однозначно. Напротив, при апостериорном тестировании эталоны, создаваемые экспертами, варьируются, поэтому эталон эксплуатационных испытаний неоднозначен, так как у задачи есть несколько правильных ответов [46].
Поскольку невозможно определить решение априори все возможные правильные ответы, поэтому выполняют апостериорные оценки. То есть при рассмотрении входных данных систем эксперты, предоставляющие аннотации (автоматизированные измерители), могут установить, являются ли они правильными или неправильными.
Машинный перевод - классический пример той задачи, для которой апостериорная оценка служит полезным дополнением к априорному тестированию. Обычно существуют различные способы перевода одного и того же предложения с одного языка на другой. Хотя в данном случае часто применяют статистические методы путем установления произвольного набора правильных или приемлемых ответов для сравнения результатов [47], это не является полностью надежным показателем эффективности, и субъективное апостериорное тестирование часто бывает более точным. Также применительно к навигационной задаче можно использовать несколько траекторий для перемещения из одного места в другое. В зависимости от способности определить объективный критерий оптимальных траекторий, апостериорное тестирование может быть выполнено либо статистическими, либо эмпирическими средствами.
Также возможно использовать апостериорную оценку для валидации новой робастной метрики (новый метод или формула для измерения). Когда качество задачи является субъективным, метрикам необходимо присвоить баллы качества, которые коррелируют с пользовательским мнением о качестве. Суждение пользователей - это эталон для оценки автоматических метрик [48].
Однако концепции апостериорной оценки и оценки после развертывания системы пересекаются в некоторых случаях, особенно при тестировании с конечными пользователями. Например, в случае оценки качества взаимодействия человека с машиной оценку выполняют апостериорно, поскольку невозможно установить, каким образом это взаимодействие будет оказывать влияние на все слои населения до того, как оно получит широкое распространение. Для проведения такой оценки можно варьировать профиль пользователя, иметь пул пользователей, адекватно отражающий фактические условия работы системы, и получать с его помощью эмпирический анализ робастности этой интерактивной интеллектуальной системы.
Эталонное тестирование (бенчмаркинг, benchmarking) системы, основанной на нейронных сетях, может способствовать определению степени робастности системы. Часто первоначальное доверие к решению ИИ, основанному на нейронных сетях, устанавливается с помощью эталонного тестирования. Например, продолжительное время в распознавании образов и аналогичных применениях методов ИИ эталонное тестирование было наиболее оптимальным решением для установления доверия к определенному методу [49]. Вместе с тем, проведение эталонного тестирования может иметь элементы субъективности, например при маркировке или аннотировании тестовых наборов данных экспертами-практиками.
Эталонное тестирование измеряет производительность системы на основе тщательно разработанных наборов данных, которые в большинстве случаев являются общедоступными. Часто их используют для тестирования различных систем. Наиболее приемлемыми примерами эталонного тестирования являются тесты поставщиков по распознаванию лиц (face recognition vendor tests, FRVT), проведенные Министерством торговли США [50]. Другие примеры приведены в работе "Большие вызовы в биомедицинском анализе изображений" [51].
В отличие от 7.2, эталонное тестирование необязательно требует наличия действующей системы в реальных условиях применения. Для целей сопоставления создают такие наборы данных, использование которых вызывает существенные вопросы при применении современных методов классификации или регрессии. Наборы контрольных данных должны быть дополнены набором правил эталонного тестирования, которые описывают и стандартизируют способы настройки тестирования, документирования этих настроек, измерения и документирования результатов [52].
Эталонное тестирование имеет существенное значение при проведении исследований в области распознавания образов и вносит решающий вклад в развитие этой области. Однако эталонного тестирования обычно недостаточно для определения целей робастности. Результаты сравнительного анализа следует интерпретировать с предельной внимательностью [53].
(справочное)
A.1 Общие положения
Возмущение данных (data perturbation) формально определяют как гомоморфизм (т.е. отображение из заданной области в себя) над областью возможных входов системы. Примером такой области является область входных данных, содержащая все изображения RGB определенной ширины и высоты. В этом приложении описаны возмущения набора данных в контексте оценки устойчивости нейронных сетей.
Например, в автоматизированных системах классификации широко использованы промышленные нейронные сети. Такие системы классификации применяют для распознавания лиц, отслеживания объектов, распознавания звука и т.д. Обычным способом построения системы классификации на основе нейронных сетей является выполнение контролируемого обучения с помощью размеченной базы данных.
Даже последние версии нейронных сетей для решения задачи классификации весьма восприимчивы к искажениям данных или к неблагоприятным примерам [54]. Неблагоприятные (состязательные, adversarial) примеры включают изображения или звуковые образцы, которые немного изменены по сравнению с оригиналами, что приводит к другому результату классификации, и возникают естественным образом в окружающей среде или из-за свойств датчиков. Существует множество методов построения таких примеров, но в настоящее время отсутствует приемлемый способ их обнаружения.
С точки зрения инженеров-программистов ИИ, существование состязательных примеров представляет риск для робастности системы, поскольку в некоторых случаях система ведет себя нестабильно. Инженеры знают о наличии состязательных примеров, однако их нелегко выявить заранее.
Применение состязательного примера для провокации незапланированного поведения нейронных сетей может представлять собой атаку. В литературе встречаются две основные парадигмы таких атак:
- атака "белого ящика" (white-box attack), при которой злоумышленник имеет полное знание нейронной сети, обучающий набор данных и алгоритм обучения;
- атака "черного ящика" (black-box attack), при которой злоумышленник не знает архитектуры нейронной сети, набора обучающих данных или алгоритма обучения.
Хотя в этом приложении описаны различные типы возмущений для разных типов данных, оно не претендует на то, чтобы быть исчерпывающим. Также следует отметить, что аппаратные средства могут вызывать незапланированное поведение, изменяя данные в ходе числовых преобразований и, таким образом, приводя к искажениям. В литературе также предложены стратегии и методы защиты систем от этих типов атак.
В A.2 и A.3 представлены примеры искажений данных для изображений и звуков. В каждом случае как случайные естественные возмущения, так и преднамеренные атаки сосуществуют в широком диапазоне применений.
A.2.1 Общие положения
Существует несколько типов возмущений изображения, которые могут отражать возможную деградацию, которую окружающая среда способна нанести изображению, обрабатываемому системой ИИ. Изображение (обычно) представляет собой двумерный массив из пикселей, каждый из которых представлен одним или несколькими числовыми значениями (например, одно - для черного изображения и пикселей, три - для изображения RGB). Без потери общности ниже будет рассмотрено изображение как массив пикселей шириной W и высотой H, в то время как каждый пиксель
Когда два изображения находятся в одном пространстве, доступны различные метрики для расчета расстояния между ними, включая среднеквадратичную ошибку, расстояние Левенштейна [55], индекс структурного сходства [56] и т.д. Каждое возмущение применимо также к тем цветным изображениям, в которых возмущение применяется к каждому цветовому каналу. Существует как множество возможных отклонений, так и множество метрик, которые определяют, какие из результатов оказываются ближе к исходному изображению. Атаки могут быть разработаны для имитации фактического ухудшения процесса получения изображения, например шума, вибрации, ослепления или преграждения объектива камеры.
В A.2.2 - A.2.7 приведены некоторые примеры возмущений изображения и некоторые метрики, используемые для их оценки.
Однородный шум - это преобразование, которое добавляет ограниченное случайное возмущение каждому пикселю изображения. Однородный шум определяется значением K, соответствующим максимуму шума, который можно применить к каждому пикселю. Операцию сложения или вычитания значения шума выбирают случайным образом для каждого пикселя.
Формально каждый исходный пиксель pi, j преобразуется с помощью следующей функции:
, (A.1)где pi, j - исходный пиксель;
v - переменная, в которую записывается яркость текущего пикселя;
k - случайная величина шума, такая, что k <= K, 0 <= v +/- k <= 255;
K - максимальный шум, который можно применить к каждому пикселю.
В случае однородного шума используемая метрика напрямую коррелирует со значением K. Изображение I1 находится на расстоянии 1 от изображения I2, если:
- для каждого пикселя
и- существует хотя бы один пиксель (i, j) для которого
.A.2.3 Осветление (brightening)
Осветление (или его обратное преобразование - затемнение) - одно из наиболее простых доступных преобразований изображения. Оно используется для изменения освещенности изображения. Условия освещенности могут влиять на эффективность классификатора изображений [57]. По этой причине крайне важно продемонстрировать устойчивость классификатора к такому возмущению.
Формально каждый пиксель pi, j преобразуется, например, с помощью следующей функции:
, (A.2)где pi, j - исходный пиксель;
v - переменная, в которую записывается яркость текущего пикселя;
k - случайная величина, такая, что -255 <= k <= 255.
Другой способ настроить параметр яркости для изображения RGB - переключиться на представление HSL (оттенок/насыщенность/яркость) и изменить представление канала яркости.
В случае искажения осветления соответствующей метрикой является либо канал яркости представления HSL, либо константа k, используемая для применения возмущения к представлению в оттенках серого или RGB.
A.2.4 Вибрация и вращение
Когда камеры установлены на крыше транспортного средства, происходит ухудшение изображения из-за вибрации или колебаний устройства. Эти возмущения вызывают некоторую инверсию (inversion) пикселя от одного кадра к другому.
При рассмотрении устойчивости к таким возмущениям вращения или вибрации необходимо рассмотреть набор преобразованных такими возмущениями изображений. Для поворота используют метрику максимального угла поворота, применяемого к изображению. Модель повернутого изображения [30] реализована путем первоначального вычисления действительного положения i', j', которое должно быть отображено в центр выбранного пикселя. Затем вычисляют яркость повернутого пикселя путем выполнения линейной интерполяции с учетом соседних пикселей, так что вклад каждого пикселя пропорционален расстоянию до i', j', отсекая вклад на расстояние 1.
Можно смоделировать вибрацию изображения, используя адекватное ядро размытия (blurring kernel) [58], которое представляет степень вибрации, влияющей на изображение. Эта модель позволяет предотвратить дрожание изображения путем устранения размытия изображения после обнаружения соответствующего ядра размытия. Для вибрации и мерцания можно использовать метрику [59], построенную с помощью процесса Кокса. Процесс Кокса служит моделью для агрегирования паттернов пространственных точек, когда эти паттерны следуют стохастическому процессу.
A.2.5 Атмосферная турбулентность
Оптические искажения и шумы иногда возникают из-за влияния турбулентного потока воздуха, изменений температуры, плотности частиц в воздухе, влажности и уровня диоксида углерода. С учетом этих факторов преломление света изменяется при пересечении нескольких слоев воздуха с различными свойствами. В результате получается геометрическое искажение, которое значительно ухудшает способность обработки изображения, что характерно в том случае, когда полученное изображение проходит через большое количество атмосферных слоев, например: в случае спутникового изображения или изображения с большой высоты - с помощью беспилотного летательного аппарата. В частности, в [60] и [61] описана структура модели атмосферной турбулентности. Связанная с этим проблема заключается в улучшении восстановления изображений для удаления атмосферной турбулентности [62], [63], [64]. Для этих методов следует использовать метрики, моделирующие интенсивность возмущения.
A.2.6 Размытие
В компьютерном зрении размытие (blurring) используют для сглаживания краев изображения. Наиболее распространенный эффект размытия достигается с помощью размытия по Гауссу, но можно определить несколько других эффектов размытия, применяя следующий принцип. Размытие по Гауссу, как правило, основано на свертке изображения с ядром из определенных значений. Размер ядра выбирают таким образом, чтобы достичь большего или меньшего эффекта размытия.
Коэффициенты ядра определяют стандартным отклонением ядра или вручную для применения негауссова эффекта [например, блочного размытия (Box blur)].
Формально размытие определено ядром K размером n x m, обычно n = m = 3. Каждое возмущенное изображение строится путем применения ядра к каждому пикселю исходного изображения и сохранения результата свертки как значения нового пикселя. В [65] авторы представляют некоторые общие эффекты размытия (движение, расфокусировку и гауссов шум), а также способ их автоматической классификации.
В случае размытия по Гауссу соответствующими метриками являются размер ядра и стандартное отклонение ядра. Другие эффекты размытия приводят к другим метрикам в зависимости от их параметризации. Каждая метрика позволяет задать интенсивность размытия, применяемого к изображению.
Блуминг (blooming) определяют как образование яркого пятна, которое распространяется вокруг локальной передержки (переэкспозиции). Причина артефакта блуминга заключается в том, что отдельные светочувствительные элементы ПЗС- или КМОП-сенсора (пикселя) иногда могут поглощать только ограниченное количество света. Если величина заряда такого пикселя превышает заданный порог вследствие точечной передержки, его избыточный заряд передается соседним пикселям. Заряды поступают в основном на пиксели, которые соединены друг с другом для переноса заряда при считывании с датчика. Поскольку эти пиксели чаще всего связаны в вертикальном направлении, артефакт часто возникает в виде четко определенной полосы, которая кажется полностью переэкспонированной [66], [67].
Формально блуминг определен ядром K размером n x m вокруг локального пятна, где 0 <= n <= L и 0 <= m <= W, и в зависимости от направления связанных пикселей m >> n или n << m. Каждый пиксель pi, j в ядре K преобразуется с помощью следующей функции:
, (A.3)где pi, j - исходный пиксель;
v - переменная, в которую записывается яркость текущего пикселя;
Датчики со специальными структурами, препятствующими засветке, могут обойти этот артефакт, но имеют недостаток, заключающийся в том, что из-за дополнительного необходимого места для этих структур уменьшается размер пикселя, а вместе с ним - и чувствительность датчика [68].
A.2.8 Размытие (Smear)
Размытие определяют как образование ярких линий на изображении, которые являются вертикальными для медленных камер CCD (charge-coupled device) или имеют угол к вертикали для камер CCD с более высокой скоростью. Причиной артефакта размытия является перенос заряда после экспонирования, который приводит к экспонированию передающих сигнал пикселей в случае попадания яркого пучка света [69], [70]. В отличие от наиболее резко очерченной полосы при блуминге, полоса с эффектом размытия всегда достигает края изображения и не кажется полностью переэкспонированной.
Формально вертикальное пятно определено полосой S размером L x m с равномерной интенсивностью вдоль каждого столбца, начиная с передержанного пятна. Каждый пиксель pi, j преобразуется в S с помощью следующей функции:
, (A.4)где pi, j - исходный пиксель;
v - переменная, в которую записывается яркость текущего пикселя;
b - величина, на которую увеличивается яркость в S, 0 <= v + b < 255.
Устранение размытия до появления тех артефактов, которые возникают перед новой экспозицией, осуществляется путем сброса заряда. Но артефакты, образующиеся после передержки, можно обойти только с помощью механического или электрооптического затвора [70].
A.3.1 Основы
Звуковые возмущения могут влиять на широкий спектр систем обработки звука. Значительное количество систем основано на вводе голосовых команд как первичном интерфейсе управления устройством. Например, виртуальные помощники с функциями автоматического распознавания речи (Automatic Speech Recognition, ASR), устанавливаемые на домашних или мобильных устройствах, способны управлять освещением, домашней утварью, системами безопасности дома, а также осуществлять покупки и помогать с телефонными звонками и отправкой сообщений. Однако такие системы могут быть чувствительны к возмущениям входных звуковых данных, что потенциально может привести к неспособности распознать команду, незапланированному или даже к злоумышленному действию, если возмущение связано с атакой.
Имеется два основных типа звуковых возмущений:
- модифицирующих акустический сигнал в частотном диапазоне слышимости человеком;
- основанных на ультразвуке.
A.3.2 Звуковые возмущения в частотном диапазоне слышимости человеком
Одними из первых работ, в которых рассматривались автоматизированные атаки на входной речевой сигнал, являются работы [73] и [74]. Возмущенные сигналы воспринимаются как определенные команды для системы автоматического распознавания речи, но не воспринимаемы человеком, и в некоторых случаях даже не заметны человеку. Эти методы, по сути, изменяют акустические характеристики сигнала, на которые ориентируются многие системы распознавания речи (например, Mel-frequency cepstral coefficients).
В [75] описано возмущение сигнала, основанное на генетическом алгоритме, которое применяется против облегченной/простой ASR. В [76] представлена усовершенствованная версия этого возмущения, основанная на современной системе DeepSpeech. Метод SirenAttack, изложенный в [77], является широко применимой атакой на основе оптимизации роем частиц.
В [78] приведен пример речевой атаки, в котором незначительные возмущения исходной речи приводят к ошибочной работе Mozilla DeepSpeech ASR. Возмущения заданы математической оптимизационной методикой, формирующей сигнал, воспринимаемый как иной заранее заданный текст. Это атака типа "белый ящик", т.е. методика требует знаний об атакуемой системе.
В [79] разработаны неощутимые атакующие аудиосигналы (что проверено в ходе эксперимента с людьми) путем задействования психоакустических принципов слуховой маскировки. Такие сигналы обладают 100%-ной эффективностью для произвольных полнофразовых целей (команд). В этой работе также достигнут прогресс в создании примеров аудиопротиводействия в физическом мире путем построения возмущений, которые остаются эффективными даже после применения реалистично смоделированных искажений окружающей среды. В [80] предложена аналогичная идея с использованием психоакустического скрытия для атаки на систему ASR. Оба эти метода являются атаками "белого ящика".
В [81] демонстрируется существование универсальных атакующих аудиовозмущений, которые приводят к ошибочной транскрипции аудиосигналов средствами систем распознавания речи. Предложен алгоритм нахождения единичного квазинеощутимого возмущения, которое при добавлении к произвольному речевому сигналу, скорее всего, может привести к ложному срабатыванию модели распознавания речи. Этот метод применен к системе распознавания речи Mozilla DeepSpeech. Также в работе показано, что подобные возмущения обобщаются на значительное количество других моделей, не доступных в ходе обучения. Например, с помощью теста на переносимость показана применимость атаки на ASR, основанные на
.Подход, описанный в [82], показывает возможность отдачи скрытых голосовых команд путем их внедрения в песни, проигрывание которых позволяет в существенной мере управлять целевой системой через распознавание речи без обнаружения.
A.3.3 Атаки, основанные на ультразвуке
Ультразвуковые атаки в основном опираются на нелинейность записывающего устройства, приводя к записи неслышимого звука. Впервые этот эффект был достигнут в работе [83], в которой модулированные ультразвуковые передачи преобразованы через микрофон и нелинейный усилитель в корректные команды, исполняемые в разнообразных коммерческих системах распознавания речи. В работе [84] также отмечено, что нелинейности в динамиках усложняют атакующему задачу по увеличению радиуса атаки, поэтому использовано множество динамиков в виде массива ультразвуковых динамиков (ultrasonic loudspeaker array) для проведения атаки на ASR на большом расстоянии.
В [85] применены неслышимые ультразвуковые передачи для записи слышимых сигналов с помощью скрытого канала с высокой пропускной способностью (high-bandwidth covert channel) в своем методе BackDoor. В работе [86] развиты идеи метода BackDoor, что не требует программного обеспечения для микрофона, поэтому возмущение можно использовать на различных развернутых микрофонах или ассистентах.
Кроме того, в работе [87] рассмотрены атаки на системы классификации звуков, в настоящее время использующих только ультразвуковой диапазон.
(справочное)
B.1 Принцип абстрактной интерпретации
Принцип представлен следующим образом. Во-первых, этот подход обычно рассматривает все возможные варианты (следы) выполнения программы с использованием семантики, например детонационная [88] или аксиоматическая [89] семантика. Набор всех следов выполнения, выраженный семантикой, образует решетку (полный частичный порядок, определенный для набора всех следов) или, по крайней мере, набор частичного порядка. Такая решетка называется конкретной областью и, как известно, является трудноразрешимой. Затем определяется вторая область, называемая абстрактной областью, поскольку это абстракция конкретной области. Абстрактная область также представляет собой решетку или, по крайней мере, набор частичного порядка. Оказывается, что абстракция верна, когда связь Галуа определена (и доказана) между двумя областями. Связь Галуа осуществляется путем определения двух конкретных функций: одна называется абстракцией
Как только связь Галуа между двумя областями доказана, абстрактная область становится осмысленным чрезмерным приближением всех конкретных исполнений, которое также является разрешимым (tractable, по построению). Затем можно доказывать свойства на абстрактной области и автоматически переносить их на соответствующие конкретные следы, представленные абстракцией. Основная трудность при абстрактной интерпретации состоит в том, чтобы определить достаточно простую, но выразительную абстрактную область. Абстрактная область предназначена быть как разрешимой, так и репрезентативной по отношению к конкретным следам системы. Существует обширный объем публикаций по определениям абстрактных областей для представления численных расчетов. Например, можно использовать интервалы [90], пятиугольники [91], восьмиугольники [92], шаблоны [93], многогранники [94], зонотопы [95] и т.д. Каждый из вариантов является результатом различного компромисса между точностью абстракции и стоимостью ее расчета.
Пример. Рассмотрим черно-белое изображение размером 2 x 2, каждый пиксель (p1, p2, p3, p4) находится в диапазоне от 0 до 255. Предположим, что существует обученная нейронная сеть, которая выполняет классификацию таких изображений между классами A и B, а также то, что изображение I со значениями (100, 100, 50, 150) классифицируется как A с достоверностью 90% и B с достоверностью 10%. Наконец, предположим, что к изображению применяется однородный шум с интенсивностью 5. Целью обеспечения стабильности нейросети является доказательство того, что любое изображение I', полученное из I посредством добавления такого однородного шума, также в первую очередь относится к классу A. Используя интервальную абстрактную область и определение однородного шума, строят следующее абстрактное изображение I# со значениями ([95; 105], [95; 105], [45; 55], [145; 155]). Изображение I# представляет все возможные изображения I', которые можно получить из I с однородным шумом с интенсивностью, равной 5. Например, оно представляет изображения (102, 104, 45, 150), (98, 100, 53, 155)... Количество изображений, представленных I#, достаточно велико, в данном случае это (5 x 2 + 1)2 x 2, в общем случае это (K x 2 + 1)L x W (с максимальной интенсивностью K примененного однородного шума, L x W - это размер изображений). Используя абстрактную семантику, можно вычислить абстрактный вывод нейронной сети. В этом случае предположим, что результат будет следующим ([75; 92], [7; 34]). Первая часть - это достоверность классификации класса A для изображения I#, а вторая часть - для класса B. Поскольку изображение I также представлено в I#, значение 90 принадлежит отрезку [75; 92], а значение 10 также содержится в отрезке [7; 34]. В этом случае все изображения, представленные I#, всегда имеют строго большую уверенность в классе A, чем в классе B, поэтому классификация сети не меняется ни на одном из этих изображений. Однако минимум достоверности класса A составляет 75, что в некоторых случаях ниже порога, необходимого для присвоения класса. Это допускает, что определенные изображения, представленные I#, не отнесены к какому-либо классу. Это не обязательно, поскольку абстрактное значение является переаппроксимацией конкретного результата. Чтобы иметь более жесткие границы возможных выходных данных, требуется более сложные абстрактные области, например зонотопическая область вместо интервальной области.
Вернуться в "Каталог нормативных документов"
Источник информации: https://internet-law.ru/documents/prod/gost-r_gosudarstvennyj-standart/21/gost_33676.html
На правах рекламы:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||