Развитие инфраструктур пространственных данных (ИПД), направленных на оценку состояния природно-социально-производственных систем (ПСПС) и прогнозирование чрезвычайных процессов и явлений, имеет системообразующее значение в решении задачи усиления связанности территории стран и регионов. Решение задач классификации, кластеризации, распознавания образов, принятия решений и прогнозирования на основе больших массивов пространственных данных играет большую роль в народном хозяйстве. Существенное место среди моделей и алгоритмов анализа данных занимают искусственные нейронные сети [1].
При решении задач эффективного использования глубоких нейросетевых моделей возникает множество трудностей, важное место среди которых занимает проблема интеграции глубоких нейросетевых моделей в единую систему с целью формирования удобного инструментария специалистов в области анализа данных [2, 3]. В настоящее время общепринятой практикой является консолидация алгоритмов анализа данных в репозиториях – информационных системах, ориентированных на формирование возможности поиска, хранения, развития и эффективного использования накапливаемых проектно-ориентированных решений [4].
Данная публикация посвящена решению научной проблемы формирования архитектуры репозитория глубоких нейросетевых моделей анализа пространственных данных для обеспечения поддержки процесса принятия управленческих решений в области обеспечения условий устойчивого развития территорий. Отдельно поднимается проблема разработки формализованной схемы хранения модели глубокого машинного анализа пространственных данных в форме метаязыка, которая позволила бы осуществить возможность их конвертации в представления, используемые современными фреймворками машинного обучения. Практические результаты данного исследования внедрены в репозиторий нейросетевых моделей для анализа пространственных данных.
Материалы и методы исследования
Разработка репозитория основывается на онтологической модели хранилища, представленной в работе [5], которая определяет принципы систематизации глубоких моделей анализа пространственных данных по классам решаемых задач, природе и размерности анализируемых данных, архитектуре и топологии, свойствам эффективности.
Важной функцией репозитория глубоких нейросетевых моделей является предоставление конечным пользователям, играющим разные роли в системе, адаптивных веб-интерфейсов для быстрого получения систематизированной информации об оптимальной в использовании глубокой нейросетевой модели, которая должна включать структурированное описание, показатели эффективности, архитектурную и топологическую организацию, а также рекомендации по гибкой настройке гиперпараметров модели, примеры прикладного использования при решении проектно-ориентированных задач [6].
После авторизации в системе пользователь получает доступ к отдельным модулям репозитория исходя из имеющихся прав. С точки зрения программной реализации описываемая программная система функционирует на базе паттерна MVC, предполагающего декомпозицию фреймворка проекта на контроллеры (модули, предназначенные для описания программной бизнес-логики), модели (компоненты для манипулирования данными) и виды (наборы шаблонов для формирования адаптивных веб-интерфейсов). Такая организация системы позволяет повысить связанность отдельных модулей репозитория и ослабить сцепленность между ними.
Результаты исследования и их обсуждение
Стартовый вариант использования репозитория описан прецедентом «L. Авторизация в репозитории», целью которого является обеспечение разграничения прав на чтение, использование и редактирование нейросетевых моделей. Обозначенный функционал реализуется путем предоставления не авторизованному в системе пользователю формы для ввода аутентификационных данных.
Группа вариантов использования «Администрирование» включает два прецедента: «AU. Управление пользователями» (осуществляющего управление распределением ролей, добавлением, редактированием, удалением метаданных о пользователях) и «AL. Управление логами» (формирующего возможность просмотра логов системы с возможностью поиска и фильтрации с целью модерации операционных процессов работы с репозиторием).
Группа прецедентов «Управление нейросетевыми моделями» включает варианты использования, формирующие ядро системы. Интегрирующий прецедент «M. Администрирование базы моделей» декомпозируется на функциональный блок «MN. Навигация по каталогу моделей» (посредством системы фильтров), включающий модуль «MR. Рекомендательная система для выбора модели» (позволяющий обеспечивать релевантный поиск, подбор и конфигурирование глубоких нейронных сетей, тонкую настройку моделей для решения конкретных проектных задач в области анализа пространственных данных). CRUD-подсистема управления данными о моделях включает также вариант использования «MA. Добавление модели» и расширяющий его функционал «ME. Модификация модели», позволяющий создавать и редактировать глубокие нейронные сети.
Отдельно приведем описание функционального компонента «MV. Визуальное редактирование модели» как составного блока описываемой CRUD-подсистемы, позволяющего визуализировать нейросетевые модели глубокого обучения в виде граф-схемы, с возможностью интерактивного онлайн-редактирования топологии и архитектуры модели посредством тонкого клиента (веб-браузера). Для реализации функционала визуального редактирования модели использован язык программирования JavaScript, компонент апробирован при формировании моделей нейросетевых архитектур, представленных в открытой нейросетевой библиотеке Keras.
Согласно разработанной ранее онтологической модели, домен глубоких нейросетевых моделей должен быть ассоциирован с доменами проектных задач и анализируемых данных. Соответствующие обозначенным предметным областям прецеденты также реализованы в репозитории в виде CRUD-подсистем «Администрирование базы задач» (основана на вариантах использования TN. Навигация по реестру задач, TA. Добавление информации о задаче, TE. Редактирование информации о задаче) и «Управление данными» (сформирована прецедентами DN. Навигация по базе данных, DA. Добавление данных, DE. Редактирование данных).
С целью оптимизации процессов интеграции и практического использования глубоких нейросетевых моделей была разработана формализованная схема хранения моделей в форме метаязыка, которая делает возможной их конвертацию в представления, используемые современными фреймворками машинного обучения. Представим описание спроектированного метаязыка с позиции теоретико-множественного подхода и примем в качестве универсального множества набор моделей репозитория MODELS, мощность которого определяется числом моделей репозитория:
Топология модели конкретной глубокой нейросетевой модели MODELi может быть представлена в виде граф-схемы GRAPHi и структурированного метаописания METAi. В свою очередь, метаописание модели формируется на основе массива дескрипторов DESCRIPTORSi (включающего название модели, аннотированное описание, метрики эффективности и т.д.) и параметров сборки COMPILATIONi. Граф-схема модели GRAPHi представляет собой ориентированный граф, множество вершин LAYERSi которого определяет набор слоев глубокой нейросетевой модели, а множество дуг LINKSi определяет структуру нейронной сети, устанавливает направленные связи между слоями.
MODELi = 〈METAi, GRAPHi〉 =
= 〈〈DESCRIPTORSi, COMPILATIONi〉,
〈LAYERSi, LINKSi〉〉.
Кортеж параметров сборки модели COMPILATIONi включает объект optimizeri, описывающий методы и алгоритмы оптимизации нейросетевой модели (в том числе cтохастический градиентный спуск (SGD), адаптивную оценку модели (Adam) и др.), а также параметры их функционирования. Функция потерь lossi определяет параметры, которые модель должна стремиться минимизировать в процессе обучения для решения задач регрессии и классификации. Наконец, объект metricsi определяет функцию, используемую для оценки эффективности модели, при этом рассчитываемые значения метрик не используются в процессе обучения модели. Различные метрики могут быть использованы при формировании моделей для решения задач мультиклассовой и бинарной классификации, регрессии, сегментации. Описание кортежа параметров сборки модели с позиции теоретико-множественного подхода выглядит следующим образом:
COMPILATION = 〈optimizeri, lossi, metricsi〉.
Важным компонентом графовой модели глубокой нейросетевой модели i выступает слой LAYERij, который с точки зрения формализованного описания модели может быть представлен в виде набора объектов, определяющих тип и архитектуру слоя , набор интерфейсов слоя INTERFACESij, аргументов PROPERTIESij, определяющих особенности функционирования слоя, дескрипторы визуализации VISUALij, определяющие особенности визуализации модели в рамках адаптивных веб-интерфейсов:
LAYERij = 〈, INTERFACESij,
PROPERTIESij, VISUALij〉.
Объект TYPElayer определяет архитектуру слоя и в решающей степени задает особенности обработки данных и настройки гиперпараметров при обучении модели. Базовые слои модели (группа BASE) представлены следующими архитектурами: входной слой (Input), полносвязный слой (Dense), а также пользовательский программируемый слой (Custom Layer), архитектурная организация которого может быть задана пользователем. Слои для построения сверточных моделей (группа CONVOLUTION) включают сверточные слои, обрабатывающие данные различной размерности (Convolution), слои разделимой свертки (Depthwise Separable Convolution), а также слои субдескритизации (Pooling). Рекуррентные слои представлены архитектурами полносвязного рекуррентного слоя (RNN), слоя долгой кратковременной памяти (LSTM), управляемых рекуррентных блоков (GRU), сверточным слоем долгой кратковременной памяти (Convolutional LSTM). Наконец, метаязык описания глубоких нейросетевых моделей поддерживает слои изменения размерности (Reshape), объединения и слияния (Fusion), поэлементного слияния на основе математических операций (Add, Average, Maximum, Minimum, Multiply, Subtract). Отдельную группу составляют слои регуляризации и прореживания (Regularization).
Параметры интерфейса INTERFACESij слоя LAYERij (входов INPUTSij и выходов OUTPUTSij) определяются кортежем параметров 〈name, type〉, где объект name задает имя интерфейса, type – тип и размерность данных.
Набор аргументов PROPERTIESij задает гиперпараметры, определяющие модель функционирования слоя LAYERij. Данный набор именованных аргументов может отличаться для слоев разной архитектуры и может включать, например, указание методов и алгоритмов инициализации весов слоя и регуляризации, функций активации.
Наконец, с целью обеспечения наглядной визуализации глубоких нейросетевых моделей в рамках адаптивных веб-интерфейсов метаязык предполагает хранение параметров группы VISUALij, не отвечающих за функциональные особенности нейронной сети, но определяющих аспекты ее наглядного графического отображения. Объект группы METAij характеризуется заголовком titleij и схемой визуализации schemeij, определяющей цветовое оформление слоя в рамках веб-интерфейсов и другие стили. Элементы кортежа POSITIONij определяют координаты topij и leftij расположения слоя на полотне визуализации, а кортежа SIZEij – его размеры widthij и heightij.
VISUALij = 〈METAij, POSITIONij, SIZEij〉 =
= 〈〈titleij, schemeij〉, 〈topij, leftij〉,
〈widthij, heightij〉〉.
Для объединения слоев LAYERSi модели i в единую модель вводится множество связей LINKSi, в котором каждый объект характеризуется набором параметров, определяющих слой-источник (LAYERorigin) и его выходной интерфейс (OUTPUTorigin), а также слой-приемник (LAYERtarget) и его входной интерфейс (INPUTtarget).
LINKij = 〈〈LAYERorigin, OUTPUTorigin〉,
〈LAYERtarget, INPUTtarget〉〉.
Модуль визуального редактирования модели позволяет визуализировать нейросетевые модели в виде граф-схемы с возможностью интерактивного онлайн-редактирования топологии и архитектуры модели (рисунок).
Визуализация нейросетевой модели в виде граф-схемы: модель с тремя входами и двумя выходами
Прикладной программный интерфейс репозитория обеспечивает возможность унифицированного взаимодействия с целью обмена данными с репозиторием для импорта и экспорта нейросетевых моделей и получения информации о них.
Выводы
В статье дана характеристика проекту, посвященному решению научной проблемы накопления и систематизации глубоких нейросетевых моделей посредством проектирования и разработки репозитория обучаемых алгоритмов для анализа и прогнозирования развития пространственных процессов.
С точки зрения программной реализации каркас системы функционирует на базе паттерна MVC, предполагающего декомпозицию фреймворка проекта на контроллеры, модели и виды. Сделан акцент на разработку адаптивных веб-интерфейсов, позволяющих пользоваться репозиторием при помощи компьютера, подключенного к сети Интернет.
Разработка формализованной схемы хранения моделей глубокого машинного анализа пространственных данных в форме метаязыка позволяет осуществить возможность их конвертации в представления, используемые современными фреймворками машинного обучения.
Спроектированная архитектура репозитория глубоких нейросетевых моделей и ее программная реализация позволяют подойти к решению научной проблемы интеграции нейронных сетей, предварительно обученных моделей с возможностью их последующего использования для решения проектных задач цифровой экономики.
Работа выполнена при финансовой поддержке гранта Президента Российской Федерации (грант № МК-199.2021.1.6).