ГОСТ Р ИСО/МЭК 24029-2-2024
НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ
ИСКУССТВЕННЫЙ ИНТЕЛЛЕКТ
Оценка робастности нейронных сетей
Часть 2
Методология использования формальных методов
Artificial intelligence. Assessment of the robustness of neural networks. Part 2. Methodology for the use of formal methods
ОКС 35.020
Дата введения 2025-01-01
1 ПОДГОТОВЛЕН Обществом с ограниченной ответственностью "Институт развития информационного общества" (ООО "ИРИО") на основе собственного перевода на русский язык англоязычной версии стандарта, указанного в пункте 4
2 ВНЕСЕН Техническим комитетом по стандартизации ТК 164 "Искусственный интеллект"
3 УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 28 октября 2024 г. № 1542-ст
4 Настоящий стандарт идентичен международному стандарту ИСО/МЭК 24029-2:2023* "Искусственный интеллект (ИИ). Оценка робастности нейронных сетей. Часть 2. Методология использования формальных методов" (ISO/IEC 24029-2:2023 "Artificial intelligence (AI) - Assessment of the robustness of neural networks - Part 2: Methodology for the use of formal methods", IDT).
________________
* Доступ к международным и зарубежным документам, упомянутым в тексте, можно получить, обратившись в Службу поддержки пользователей.- Примечание изготовителя базы данных.
Наименование настоящего стандарта изменено относительно наименования указанного международного стандарта для приведения в соответствие с ГОСТ Р 1.5-2012 (пункт 3.5).
При применении настоящего стандарта рекомендуется использовать вместо ссылочных международных стандартов соответствующие им национальные стандарты, сведения о которых приведены в приложении ДА
5 ВВЕДЕН ВПЕРВЫЕ
Правила применения настоящего стандарта установлены в статье 26 Федерального закона от 29 июня 2015 г. № 162-ФЗ "О стандартизации в Российской Федерации". Информация об изменениях к настоящему стандарту публикуется в ежегодном (по состоянию на 1 января текущего года) информационном указателе "Национальные стандарты", а официальный текст изменений и поправок - в ежемесячном информационном указателе "Национальные стандарты". В случае пересмотра (замены) или отмены настоящего стандарта соответствующее уведомление будет опубликовано в ближайшем выпуске ежемесячного информационного указателя "Национальные стандарты". Соответствующая информация, уведомление и тексты размещаются также в информационной системе общего пользования - на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет (www.rst.gov.ru)
Нейронные сети широко применяются для выполнения сложных задач в различных ситуациях, таких как обработка изображений и естественного языка, а также прогностическое обслуживание. Модели качества системы искусственного интеллекта (ИИ) включают определенные характеристики, в том числе робастность. Например, стандарт [1], который распространяет международные стандарты серии SQuaRE [2] на системы ИИ, в своей модели качества определяет, что робастность является одной из характеристик надежности. Способность системы поддерживать свой уровень производительности в различных условиях может быть продемонстрирована с помощью статистического анализа, однако для доказательства наличия данной способности требуется проведение формального анализа. В этом отношении формальные методы могут комбинироваться с другими методами повышения доверия к робастности нейронной сети.
Формальные методы - это математические приемы для строгой спецификации и верификации программных и аппаратных систем с целью доказательства их корректности. Формальные методы используются для формального рассуждения о нейронных сетях и проверки их соответствия требуемым свойствам робастности. Например, рассмотрим классификатор на основе нейронной сети, который принимает в качестве входных данных изображение, а в качестве выходных данных возвращает метку из заданного набора классов (например, автомобиль или самолет). Такой классификатор может быть формально представлен в виде математической функции, которая принимает интенсивность пикселей изображения в качестве входных данных, вычисляет вероятности для каждого возможного класса из определенного набора и возвращает метку, соответствующую наибольшей вероятности. Затем эта формальная модель может быть использована для математического обоснования работы нейронной сети при изменении входного изображения. Например, предположим, что при наличии конкретного изображения, для которого нейронная сеть выводит метку "автомобиль", можно задать следующий вопрос: "выводит ли сеть другую метку, если значение произвольного пикселя на изображении изменяется?". Этот вопрос может быть сформулирован как формальное математическое утверждение, которое является истинным либо ложным для данной нейронной сети и изображения.
Классический подход к использованию формальных методов состоит из трех основных этапов, описанных в настоящем стандарте. На первом этапе анализируемая система формально определяется в модели, которая точно отражает все возможные варианты поведения системы. На втором этапе требование формулируется в виде математического выражения. На заключительном третьем этапе один из формальных методов, например решатель, абстрактная интерпретация или проверка с помощью модели используется для оценки соответствия системы заданному требованию, что приводит к доказательству либо к контрпримеру, либо к неоднозначному результату.
В настоящем стандарте описаны несколько доступных формальных методов. Представлены критерии, применимые для оценки робастности нейронных сетей и определены способы проверки нейронных сетей с помощью формальных методов на каждой стадии жизненного цикла системы ИИ. При использовании формальных методов могут возникнуть сложности с точки зрения масштабируемости, однако они по-прежнему применимы ко всем типам нейронных сетей, выполняющих различные задачи с несколькими типами данных. Формальные методы уже давно используются в традиционных программных системах, однако их применение по отношению к нейронным сетям началось сравнительно недавно и все еще является активной областью исследований.
Настоящий стандарт направлен на то, чтобы помочь разработчикам ИИ, которые используют нейронные сети и перед которыми стоит задача оценить их робастность на соответствующих стадиях жизненного цикла системы ИИ. Помимо формальных методов, описанных в настоящем стандарте, более детальный обзор методов оценки робастности нейронных сетей представлен в ISO/IEC TR 24029-1.
Настоящий стандарт определяет методологию применения формальных методов для оценки свойств робастности нейронных сетей. Основное внимание уделяется тому, как выбирать и использовать формальные методы, а также управлять ими для подтверждения свойств робастности.
В настоящем стандарте использованы нормативные ссылки на следующие стандарты [для датированных ссылок применяют только указанное издание ссылочного стандарта, для недатированных - последнее издание (включая все изменения)]:
ISO/IEC 22989:2022, Information technology - Artificial intelligence - Artificial intelligence concepts and terminology (Информационные технологии. Искусственный интеллект. Термины и определения)
ISO/IEC 23053:2022, Framework for Artificial Intelligence (AI) Systems Using Machine Learning (ML) [Экосистема разработки систем искусственного интеллекта (ИИ) с использованием машинного обучения (МО)]
В настоящем стандарте применены термины и определения по ИСО/МЭК 22989:2022, ИСО/МЭК 23053:2022.
ИСО и МЭК поддерживают терминологические базы данных для применения в сфере стандартизации по следующим адресам:
- онлайн-платформа ИСО: доступна по ссылке: http://www.iso.org/obp;
- Электропедия МЭК: доступна по ссылке: http://www.electropedia.org/.
3.1 область (domain): Набор возможных входных данных для нейронной сети, характеризуемый атрибутами окружения.
Примеры
1 Нейронная сеть, выполняющая задачу обработки естественного языка, манипулирует текстами, состоящими из слов. Несмотря на то, что количество возможных различных текстов не ограничено, максимальная длина каждого предложения всегда ограничена. Таким образом, атрибутом, описывающим данную область, может быть максимально допустимая длина для каждого предложения.
2 При захвате области изображений лиц требуется, например, чтобы размер изображения был не менее 4040 пикселей. Лица в полупрофиль распознаются с более низким уровнем точности и при условии, что большинство черт лица остаются различимыми. Аналогичным образом обрабатываются и частично перекрытые изображения. Как правило, для обнаружения необходимо, чтобы было видно более 70% лица. Ракурсы, при которых камера и лицо находятся на одной высоте, работают лучше всего, а при перемещении обзора выше на 30 градусов или ниже на 20 градусов от прямого направления качество ухудшается.
Примечание - Атрибут используется для описания объекта с конечным числом атрибутов, даже если область может быть неограниченной.
3.2 атрибут (attribute): Свойство или характеристика объекта, которая может быть количественно или качественно различима человеком или автоматизированными средствами.
Примечание - См. [5], (3.2), измененный - "сущность" заменена на "объект".
3.3 область с конечным числом объектов (bounded domain): Множество, содержащее конечное число объектов.
Примеры
1 Область всех допустимых 8-битных RGB-изображений с n-м количеством пикселей ограничена размером, который не превышает 256.
2 Количество всех допустимых предложений на английском языке бесконечно, следовательно, данная область является неограниченной.
Примечание - Количество объектов в неограниченной области бесконечно.
3.4 объект с конечным числом атрибутов (bounded object): Объект, представленный конечным числом атрибутов.
Примечание - В отличие от объекта с конечным числом атрибутов существуют объекты с неограниченным числом атрибутов.
3.5 стабильность (stability): Свойство нейронной сети сохранять неизменными выходные данные при изменении входных данных.
Примечание - В более стабильной нейронной сети выходные данные с меньшей вероятностью подвергнутся изменениям, если на входе изменения проявляются в зашумленных данных.
3.6 чувствительность (sensitivity): Степень, в которой выходные данные нейронной сети изменяются при изменении входных данных.
Примечание - В более чувствительной нейронной сети выходные данные изменятся с большей вероятностью, если изменения на входе являются информативными.
3.7 архитектура (системы) (architecture): Основные понятия или свойства системы в ее окружении, воплощенной в ее элементах, отношениях и конкретных принципах ее проекта и развития.
3.8 релевантность (relevance): Упорядоченная относительная значимость влияния одного потока входных данных на выходные данные нейронной сети по сравнению со всеми другими входными данными.
3.9 критерий (criterion): Правило, на котором могут базироваться суждение или решение, или правило, по которому продукт, услуга, результат или процесс могут быть оценены.
Примечание - Определение приведено в [6], (3.1.6).
3.10 временне ряды (time series): Ряд последовательных значений, характеризующих изменение показателя во времени.
Примечание - Определение приведено в [7], (3.54).
3.11 достижимость (reachability): Свойство, описывающее, может ли агент ИИ достичь набора состояний в заданном окружении.
3.12 кусочно-линейная нейронная сеть (piecewise neural network): Нейронная сеть, использующая кусочно-линейные функции активации.
Примечание - Примерами функций линейной активации являются Rectify linear unit или MaxOut.
3.13 бинаризованная нейронная сеть (binarized neural network): Нейронная сеть, основные параметры которой являются двоичными.
3.14 рекуррентная нейронная сеть (recurrent neural network): Нейронная сеть, в которой как выходные данные предыдущего слоя, так и результаты предыдущего шага вычислений подаются на вход текущему слою.
3.15 трансформерная нейронная сеть/трансформер (transformer neural network/transformer): Нейронная сеть, использующая механизм внимания (self-attention) для определения зависимости между входными данными во время обработки.
3.16 проверка с помощью модели (model checking): Доказательство справедливости формального утверждения теории.
3.17 структурное тестирование (structural-based testing)*: Динамическое тестирование, для которого тесты являются результатом анализа структуры элемента тестирования.
________________
* Синонимами структурного тестирования являются тестирование на основе структуры, тестирование методом прозрачного ящика.
Примечания
1 Структурное тестирование не ограничено использованием на уровне компонентов, а может использоваться на всех уровнях, например при покрытии пункта меню, как части тестирования системы.
2 Методика включает в себя тестирование ветвей, тестирование решений и тестирование операторов.
3 Определение приведено в [8], (3.80).