ГОСТ Р 70462.1-2022/ISO/IEC TR 24029-1-2021
НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ
Информационные технологии
ИНТЕЛЛЕКТ ИСКУССТВЕННЫЙ
Оценка робастности нейронных сетей
Часть 1
Обзор
Information technology. Artificial intelligence. Assessment of the robustness of neural networks. Part 1. Overview
ОКС 35.020
Дата введения 2023-01-01
1 ПОДГОТОВЛЕН Федеральным государственным автономным образовательным учреждением высшего образования "Национальный исследовательский университет "Высшая школа экономики" (НИУ ВШЭ) на основе собственного перевода на русский язык англоязычной версии документа, указанного в пункте 4
2 ВНЕСЕН Техническим комитетом по стандартизации ТК 164 "Искусственный интеллект"
3 УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 2 ноября 2022 г. N 1226-ст
4 Настоящий стандарт идентичен международному документу ISO/IEC TR 24029-1:2021* "Искусственный интеллект (AI). Оценка устойчивости нейронных сетей. Часть 1. Обзор" (ISO/IEC TR 24029-1:2021 "Artificial Intelligence (AI) - Assessment of the robustness of neural networks - Part 1: Overview", IDT).
________________
* Доступ к международным и зарубежным документам, упомянутым в тексте, можно получить, обратившись в Службу поддержки пользователей. - Примечание изготовителя базы данных.
Наименование настоящего стандарта изменено относительно наименования указанного международного документа для приведения в соответствие с ГОСТ Р 1.5-2012 (пункт 3.5)
5 ВВЕДЕН ВПЕРВЫЕ
Правила применения настоящего стандарта установлены в статье 26 Федерального закона от 29 июня 2015 г. N 162-ФЗ "О стандартизации в Российской Федерации". Информация об изменениях к настоящему стандарту публикуется в ежегодном (по состоянию на 1 января текущего года) информационном указателе "Национальные стандарты", а официальный текст изменений и поправок - в ежемесячном информационном указателе "Национальные стандарты". В случае пересмотра (замены) или отмены настоящего стандарта соответствующее уведомление будет опубликовано в ближайшем выпуске ежемесячного информационного указателя "Национальные стандарты". Соответствующая информация, уведомление и тексты размещаются также в информационной системе общего пользования - на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет (www.rst.gov.ru)
При проектировании системы искусственного интеллекта (далее - ИИ) некоторые свойства, такие как робастность, отказоустойчивость, надежность, точность, безопасность, конфиденциальность и т.д., часто считают предпочтительными. Определение робастности приведено в 3.6. Робастность - важнейшее свойство, которое ставит новые задачи в сфере систем ИИ. Например, в рамках управления рисками систем ИИ существуют некоторые риски, которые конкретно связаны с робастностью этих систем и понимание которых имеет важное значение для внедрения ИИ во многих сферах. В настоящем стандарте представлен обзор актуальных подходов для оценки этих рисков с особым упором на нейронные сети, широко использующиеся в промышленности.
В большинстве отраслей промышленности проверка программного обеспечения - это важнейшая часть любого производственного процесса. Задача состоит в том, чтобы обеспечить как безопасность, так и производительность программного обеспечения, используемого во всех частях системы. В некоторых областях процесс верификации программного обеспечения (включая его обновления) также является важной частью сертификации. Например, в автомобильной или авиационной областях при применении действующих стандартов, таких как ИСО 26262 [1] или DO 178C, необходимо предпринимать определенные действия для обоснования дизайна, реализации и тестирования любого встроенного программного обеспечения.
Методы, используемые в системах ИИ, также подлежат валидации. Однако общие методы в системах ИИ создают новые проблемы, которые требуют конкретных подходов для обеспечения адекватного тестирования и/или проверки.
Типы тех систем, которые основаны на технологиях ИИ, включают системы интерполяции/регрессии, классификации, скоринговые и решающие системы.
Хотя существует множество методов валидации систем, не связанных с ИИ, они не всегда непосредственно применимы к системам ИИ и, в частности, к нейронным сетям. Архитектуры нейронных сетей представляют собой особую проблему, поскольку они не поддаются простому анализу и иногда могут быть непредсказуемы ввиду их нелинейной природы, что требует новых подходов к решению возникающих задач.
Методы подразделяются на три группы: статистические методы, формальные методы и эмпирические методы. В настоящем стандарте представлена справочная информация о существующих методах оценки робастности нейронных сетей.
Отмечается, что характеристика робастности нейронных сетей является открытой областью исследований и что существуют ограничения как для подходов тестирования, так и для процессов валидации.
В настоящем стандарте представлена справочная информация о существующих методах оценки робастности нейронных сетей.
В настоящем стандарте нормативные ссылки не используются.
В настоящем стандарте применены следующие термины с соответствующими определениями.
ИСО и МЭК поддерживают терминологические базы, используемые в сфере стандартизации и представленные на следующих сайтах:
- платформа онлайн-просмотра ИСО, доступная по адресу: https://www.iso.org/obp;
- Электропедия МЭК, доступная по адресу: https://www.electropedia.org/.
3.1 искусственный интеллект; ИИ (artificial intelligence, AI): <Системная> способность спроектированной системы приобретать, обрабатывать и применять знания и навыки.
3.2 эксплуатационные испытания (field trial): Испытания новой системы в реальных условиях в соответствии с ее назначением (возможно, с ограниченной группой пользователей).
Примечание - Под условиями понимается как окружающая среда, так и процесс использования.
3.3 входные данные (input data): Данные, для которых развертываемая модель машинного обучения вычисляет прогнозируемый результат или вывод.
Примечание - Специалисты по машинному обучению также называют входные данные данными вне выборки, новыми данными и производственными данными.
3.4 нейронная сеть (neural network): Сеть примитивных обрабатывающих элементов, соединенных взвешенными связями с регулируемыми весами, в которой каждый элемент выдает значение, применяя нелинейную функцию к своим входным значениям, и передает его другим элементам или представляет его в качестве выходного значения.
Примечания
1 В то время как некоторые нейронные сети предназначены для моделирования функционирования нейронов в нервной системе, большинство нейронных сетей используются в ИИ в качестве реализаций нейросетевой модели.
2 Примерами нелинейных функций являются пороговая функция, сигмоидальная функция и полиномиальная функция.
[ИСО/МЭК 2382:2015, 2120625, изменено - добавлены сокращенные термины, а примечания 3-5 удалены]
3.5 требование (requirement): Заявление, которое обозначает или выражает необходимость, а также связанные с ней ограничения и условия.
[ISO/IEC/IEEE 15288:2015, 4.1.37]
3.6 робастность (robustness): Способность системы ИИ поддерживать качество работы алгоритмов машинного обучения при любых условиях.
Примечание - В настоящем стандарте главным образом описываются условия, связанные со входными данными, такими как их спектр и характеристики. Но это определение представлено более широко, чтобы не исключать аппаратный сбой и другие виды условий.
3.7 тестирование (testing): Деятельность, в которой система или компонент выполняется в определенных условиях, результаты наблюдают или фиксируют, а также проводят оценку какого-либо аспекта системы или компонента.
[ISO/IEC/IEEE 26513:2017, 3.42]
3.8 тестовые данные (test data): Подмножество выборок входных данных (см. 3.3), используемых для оценки ошибки обобщения окончательной модели машинного обучения, выбранной из набора возможных моделей машинного обучения [2].
3.9 обучающие данные (training dataset): Подмножество выборок, которые подаются в модель машинного обучения.
3.10 валидация (validation): Подтверждение посредством предоставления объективных доказательств того, что требования (см. 3.5) для конкретного предполагаемого использования или применения выполнены.
[ИСО/МЭК 25000:2014, 4.41, изменено - примечание 1 удалено]
3.11 валидационные данные (validation data): Подмножество выборок входных данных (3.3), используемых для оценки ошибки прогнозирования возможной модели машинного обучения [2].
Примечание - Валидация (3.10) модели машинного обучения может быть использована для выбора модели машинного обучения.
3.12 верификация (verification): Подтверждение посредством предоставления объективных доказательств того, что указанные требования выполнены.
[ИСО/МЭК 25000:2014, 4.43, изменено - примечание 1 удалено]
4.1.1 Концепция робастности
Цели обеспечения робастности направлены на то, чтобы ответить на вопросы "Какая степень робастности требуется системе?" или "Какие свойства робастности представляют интерес?". Свойства робастности показывают, насколько четко система обрабатывает новые данные по сравнению с результатами обработки данных, ожидаемых в типовых операциях.
4.1.2 Типичный рабочий процесс для оценки робастности
В настоящем пункте рассмотрено проведение оценки робастности нейронных сетей в различных задачах ИИ, таких как классификация, интерполяция и другие сложные задачи.
Существуют различные способы оценки робастности нейронных сетей с использованием объективной информации. Типичный рабочий процесс для определения робастности нейронной сети (или другого метода) представлен на рисунке 1.
Рисунок 1 - Типичный рабочий процесс для определения робастности нейронной сети
Шаг 1 Формулировка целей робастности
Процесс начинается с формулирования целей обеспечения робастности. На начальном этапе должны быть идентифицированы объекты тестирования, подлежащие верификации на робастность. С их учетом впоследствии определяют количественные метрики оценки тех элементов, которые показывают достижение робастности. Все это образует набор критериев для принятия решений о свойствах робастности, которые могут быть предметом дальнейшего утверждения соответствующими заинтересованными сторонами (см. ISO/IEC/IEEE 16085:2021, 7.4.2, [3]).
Шаг 2 Планирование тестирования
Этот шаг заключается в планировании проверок, которые демонстрируют робастность. Эти проверки опираются на различные методы, например статистические, формальные или эмпирические. На практике используется комбинация методов. Статистические подходы обычно опираются на процесс математического тестирования и способны проиллюстрировать определенный уровень достоверности результатов. Формальные методы полагаются на формальные доказательства для демонстрации математических свойств в области определения модели. Эмпирические методы основаны на экспериментировании, наблюдении и экспертной оценке. При планировании проверки необходимо определение настроек среды, планирование сбора данных и определение характеристик данных (какие типы данных в каких диапазонах будут использованы, какие граничные условия будут нарушены для проверки робастности и т.д.). Результатом шага 2 является протокол тестирования, который представляет собой документ, выражающий смысл, цели, дизайн и предлагаемый анализ, методологию, мониторинг, проведение тестирования, а также хранение его результатов (более детально содержание протокола тестирования доступно в определении плана клинического исследования, изложенного в ИСО 14155:2020, 3.9, [4]).
Шаг 3 Проведение тестирования
Далее проводят тестирование согласно составленному протоколу тестирования и сбор результатов. Допускается выполнение тестов с использованием реальной среды или моделирования (симуляции) реальной среды, а также потенциально путем комбинации этих двух подходов.
Шаг 4 Анализ результатов
После завершения тестирования результаты тестов анализируют с использованием метрик, выбранных на шаге 1.
Шаг 5 Интерпретация результата
Результаты анализа интерпретируют для принятия обоснованного решения.
Шаг 6 Цель тестирования достигнута?
Решение по робастности системы формулируют по определенным ранее критериям и полученной интерпретации результатов анализа.
Если цели тестирования не достигнуты, проводят анализ процесса, и процесс возвращается к соответствующему предшествующему шагу с целью устранить недостатки, например: путем добавления целей робастности, модификации или добавления метрик, учета различных аспектов для измерения, перепланирования тестов и т.д.