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

В числе основных областей применения ИИ: оптимизация процессов обслуживания, улучшение продуктов, управление цепочкой поставок, производство и др. Одно из важнейших преимуществ внедрения ИИ — снижение затрат, которое в отдельных случаях превышает 50%. Но это происходит при условии применения стандартных методов программной инженерии, в частности, дизайн-ориентированного мышления при разработке инструментов ИИ; внутреннего тестирования, верификации и валидации перед развертыванием; следования системе норм при создании моделей ИИ; подхода, основанного на жизненном цикле; принципа многократного использования. При этом сегодня средства ИИ уже используются непосредственно на различных стадиях итеративного цикла Agile-разработки. В мартовский выпуск журнала вошли пять публикаций, демонстрирующих современные возможности создания систем ИИ с помощью методов программной инженерии. Искусственный интеллект уже не «черный ящик», недоступный для понимания и усовершенствования — специалисты по программной инженерии настолько хорошо освоили ИИ, что средства на его основе уже стали общедоступными «стендами» для оптимизации и улучшения ПО.

В публикации «Шаблоны проектирования приложений машинного обучения» (Software-Engineering Design Patterns for Machine Learning Applications) Хиронори Вашидзаки (Hironori Washizaki) с соавторами обсуждают оптимальные методы использования разработчиками алгоритмов машинного обучения. Согласно одному из таких методов, необходимо отделять бизнес-логику от модели машинного обучения, чтобы облегчить процесс отладки за счет изоляции отказов на соответствующих уровнях. Как объясняют авторы, подобные практики помогают сократить разрыв между проектированием систем машинного обучения и традиционного ПО.

Стивен Джон Уорнет (Stephen John Warnett) и Уве Здан (Uwe Zdun) опубликовали статью «Проектно-архитектурные решения для рабочих процессов машинного обучения» (Architectural Design Decisions for the Machine Learning Workflow). Авторы отмечают трудности запуска моделей машинного обучения в рабочую эксплуатацию, обусловленные отличиями практик традиционной программной инженерии от принципов создания таких моделей, а также пробелами в знаниях разработчиков. Предложенная модель принятия архитектурных решений учитывает все возможные варианты выбора, обеспечивая успешный ввод модели в рабочую эксплуатацию.

Все более важную роль в инженерных процессах создания ПО и систем для роботов играет управление рисками. Этой теме посвящена публикация «Повышение гарантий надежности кооперативных систем искусственного интеллекта на основе рисков» (Collaborative Artificial Intelligence Needs Stronger Assurances Driven by Risks), которую подготовили Джубрил Гболахан Адигун (Jubril Gbolahan Adigun) и соавторы. В статье предлагается использовать метод репрезентации рисков на основе языка разметки RiskML для выполнения требований ISO к промышленным роботам с искусственным интеллектом. Среди указанных преимуществ — возможность идентификации предварительных условий небезопасного поведения путем исследования тех ветвей решающих деревьев, соответствующих наихудшим случаям.

Еще одна важная и непростая задача касается тестирования адаптивных систем ИИ. Группа авторов во главе с Зубэром Халиком (Zubair Khaliq) подготовила статью «Трансформеры для тестирования графических интерфейсов: решение проблемы ненадежных тестов путем автоматического создания тестовых случаев» (Transformers for GUI Testing: A Plausible Solution to Automated Test Case Generation and Flaky Tests). Предложенный подход на основе обучения позволяет создавать тесты непосредственно исходя из графического пользовательского интерфейса без чреватой ошибками кропотливой ручной работы. Методика предусматривает корректировку последовательности выполнения теста, созданного по описанию интерфейса, с помощью системы машинного обучения с открытым кодом GPT-2.

Заключительную публикацию номера «Зеленые настройки: можно ли с помощью ИИ уменьшить расход электроэнергии на выполнение программных систем?« (Green Configuration: Can Artificial Intelligence Help Reduce Energy Consumption of Configurable Software Systems?) подготовили Норберт Зигмунд (Norbert Siegmund) и соавторы. По их убеждению, пришло время задействовать пока редко используемые возможности адаптации настроек программной системы в зависимости от режима применения, рабочей нагрузки и аппаратного обеспечения. При этом задачу выбора оптимальной конфигурации берут на себя автоматизированные агенты на основе ИИ. В статье рассматривается конкретный случай — использование конфигурационных средств на базе ИИ для управления расходом электроэнергии на выполнение ПО.

Апрельский выпуск журнала Computer посвящен алгоритмам искусственного интеллекта.

Статья «Федеративное обучение: технология распределенного машинного обучения с сохранением приватности данных» (Federated Learning: The Pioneering Distributed Machine Learning and Privacy-Preserving Data Technology) Филипа Треливена (Philip Treleaven) и соавторов посвящена моделям, обучаемым на распределенных наборах данных. Одно из преимуществ федеративного обучения — сохранение конфиденциальности данных за счет отсутствия необходимости обмениваться ими между распределенными узлами. В статье обсуждаются трудности обеспечения приватности данных, с которыми сталкиваются аналитики, приводится сравнение с другими принципами организации инфраструктуры данных, рассматриваются алгоритмы, используемые для федеративного обучения.

Дай Хоанг Чан (Dai Hoang Tran) и др. опубликовали статью «Глубинные диалоговые системы рекомендаций: трудности и перспективы» (Deep Conversational Recommender Systems: Challenges and Opportunities). В отличие от обычных систем выдачи рекомендаций, основанных на анализе содержания и совместной фильтрации, диалоговые выясняют предпочтения пользователя в режиме интерактивной беседы. Авторы приводят обзор текущего уровня развития диалоговых систем, демонстрируя результативность применения в них методов глубинного обучения.

Завершает выпуск статья «Аудит алгоритмов: управление юридическими, этическими и техническими рисками искусственного интеллекта» (Algorithm Auditing: Managing the Legal, Ethical, and Technological Risks of Artificial Intelligence, Machine Learning, and Associated Algorithms), подготовленная Адриано Кошиямой (Adriano Koshiyama) и соавторами. В публикации отмечается, что сегодня корпорации обеспокоены вероятностью нанесения репутационного ущерба из-за используемых алгоритмов. Приводятся примеры, в том числе скандал с Volkswagen, когда с помощью программного обеспечения занижались показатели выброса вредных газов автомобилями, банкротство компании Knight Capital из-за ошибки в системе алгоритмического трейдинга и история с интеллектуальной системой найма на работу компании Amazon, которая проявляла предвзятость по отношению к женщинам. Скоро алгоритмы ИИ начнут применять повсеместно и будут принимать решения при минимальном вмешательстве человека, в связи с чем авторы предлагают проводить аудит, чтобы определять соответствие алгоритмов требованиям закона, этики и безопасности — возможно даже появление новой индустрии, которая специально будет этим заниматься.

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

Барри Дженкинс (Barry L. Jenkins) с соавторами опубликовали статью «Новая система стриминга интерактивного контента» (Toward a New Type of Stream for Interactive Content). Она посвящена оригинальному механизму Geometry Pump Engine Group поточной передачи игр через Интернет, реализованному в форме протокола для игрового движка и плагина. Метод предусматривает передачу контента игры в форме особых элементов — «субресурсов», что позволяет исключить многие проблемы, связанные с традиционным стримингом игр, при котором происходит передача полностью отрисованных кадров.

Еще три статьи майского номера близки к его основной теме.

Марко Радета (Marko Radeta) с соавторами подготовили публикацию «Глубинное обучение и океаны» (Deep Learning and the Oceans), посвященную возможностям использования искусственного интеллекта для исследования и мониторинга океанских вод. Глубинное обучение, в частности, можно было бы применять для обнаружения загрязнения и оценки биологического разнообразия морской среды, особенно учитывая растущий объем данных, собираемых сегодня с помощью автономных и удаленно управляемых подводных аппаратов. В статье рассматривается конкретный пример применения глубинного обучения для автоматизации обнаружения подводного мусора и разъясняются практические трудности проведения подводных работ.

Шуйгуан Дэн (Shuiguang Deng) с соавторами опубликовали статью «Darwin-S: эталонная программная архитектура для компьютеров, построенных по образу мозга» (Darwin-S: A Reference Software Architecture for Brain-Inspired Computers). Обсуждая нейроморфные системы, авторы объясняют, что архитектура нового поколения позволит разрешить проблемы, из-за которых страдают компьютеры традиционной фон-неймановской архитектуры: несоответствие скорости работы процессора и внешней памяти и проблема повышения производительности чипов в связи с увеличением тепловыделения. Авторы показывают, что с появлением компьютеров, построенных по образу головного мозга, открывается возможность эксплуатации крупномасштабных импульсных нейронных сетей. С ростом масштаба нейроморфных компьютерных систем и моделей особую важность приобретает необходимость управления такими ресурсами. Для этой цели предлагается использовать Darwin-S — эталонную программную архитектуру для нейроморфного компьютера Darwin.

Заключительную публикацию номера, «Лучшие практики кибербезопасности для программ обучения компьютерным и инженерным дисциплинам» (Cybersecurity Best Practices for CISE Programs), подготовили Энн Собел (Ann Sobel) и Рон Веттер (Ron Vetter). Авторы описывают опыт дополнения существующих компьютерных и инженерных учебных программ знаниями в области обеспечения кибербезопасности. Приведен ряд рекомендаций по включению сведений о соответствующих вопросах в материалы курсов. В частности, нет необходимости увеличивать количество модулей в программах, целиком заново разрабатывать курсы и создавать отдельные учебные программы. Однако в некоторых случаях стоит уменьшить объем преподавания традиционных тем компьютерной науки, чтобы высвободить место для основ кибербезопасности, без знания которых сегодня невозможно подготовить квалифицированных специалистов в соответствующей области.

Александр Тыренко (shoorah@osp.ru) — независимый автор (Москва).