УДК 004.891+519.85
СТРУКТУРНАЯ МОДЕЛЬ ПРОГРАММНОГО КОМПЛЕКСА ДЛЯ РАЗРАБОТКИ ЭКСПЕРТНЫХ СИСТЕМ НА БАЗЕ ИНС-МОДЕЛЕЙ ПРИ ИСПОЛЬЗОВАНИИ ОБЛАЧНЫХ ТЕХНОЛОГИЙ
© А.А. Арзамасцев, В.Ю. Маркеев, А.А. Крючков
Ключевые слова: программный комплекс; экспертная система, ИНС-модель; облачные технологии.
Приводится структурная модель программного комплекса для разработки экспертных систем на базе искусственных нейронных сетей. Обсуждается структура и содержание такого комплекса, используемые инструменты и математическое программное обеспечение. Предполагается реализация комплекса с использованием облачных технологий.
Реализация технологической возможности, посредством которой представители различных предметных областей, обладающие определенным набором данных, характеризующим предысторию поведения данного объекта, могли бы разработать для себя экспертную систему, не вдаваясь в детали технологических приемов ее построения, заключается в адаптации наших разработок в области экспертных систем к реалиям облачных технологий, которые подразумевают обслуживание едиными программными средствами сколь угодно большого числа пользователей, вне зависимости от их географического расположения. Значительным преимуществом данного подхода с точки зрения пользователя является отсутствие надобности устанавливать программное обеспечение (ПО), а затем обслуживать его. Процесс обновления и модернизации ПО также не требует усилий со стороны пользователя, что позволяет постоянно использовать самые свежие версии и новые возможности программных продуктов по факту их появления, не прилагая для этого дополнительных усилий.
Взаимодействие с пользователем должно быть направлено на получение от него наибольшего количества
Рис. 1. Структурная модель программного комплекса для разработки экспертных систем на базе ИНС-моделей при использовании облачных технологий
технических деталей, но при этом также должно осуществляться на доступном языке. Таким образом, должны подобраться такие вопросы для пользователя, которые не требуют от него знания технической составляющей и математики.
Разрабатываемый программный комплекс можно разделить на три уровня: клиентский, серверный и вычислительный (рис. 1).
1. Клиентский уровень. 1а. Веб-браузер пользователя, посредством которого происходит взаимодействие с пользователем, отображается информация, предоставляются интерфейсы для управления моделями, ввода данных и загрузки файлов. Отметим, что интерфейсы создаются на серверном уровне, а здесь лишь выполняются. Технические средства: HTML, JavaScript (jQuery), CSS. 1б. Сторонний программный компонент, взаимодействующий с нашим программным комплексом через специализированный АПИ-интерфейс. Технические средства: XML, JSON.
2. Серверный уровень. Так называемое «ядро сервиса», которое состоит из функционально-логического блока и базы данных. На данном уровне осуществляется управление и эксплуатация ИНС-моделей, построение интерфейсов и обработка действий пользователей, хранение и изменение данных, менеджмент задач, отправляемых на вычислительный кластер. Технические средства: веб-сервер apache, PHP5, СУБД MySQL.
3. Вычислительный уровень. Вычисления, требующие высокой нагрузки (подбор структуры ИНС, обучение ИНС), производятся на отдельном вычислительном кластере, обладающем высокими вычислительными мощностями. Технические средства: вычислительный кластер, программные средства по подбору структуры и обучению нейронных сетей.
Наибольший интерес представляет серверный уровень, на котором, помимо ядра системы управления, происходит хранение нейросетевых моделей в базе данных с вертикально-ориентированной структурой. Там же осуществляется и использование моделей. Обучение и переобучение требует значительных вычислительных затрат и происходит на отдельном вычислительном кластере. Подбор первичной структуры ИНС-моделей осуществляется в трех вариантах: фор-
мирование структуры нейронной сети в соответствии с теоремой А.Н. Колмогорова; последовательное наращивание слоев и нейронов; представление первичной структуры в виде сумм первых членов ряда Тейлора [1].
Для информационного обеспечения как создания, так и обслуживания нейросетевых моделей предназначен мастер подготовки исходной информации по предметной области в форме диалога с пользователем, направленного на получение от него наибольшего количества технических деталей, но при этом осуществляемого на доступном языке.
МЕТОДЫ АВТОМАТИЗИРОВАННОГО ПОСТРОЕНИЯ СТРУКТУРЫ ИНС-МОДЕЛИ
На основании информации о количестве входов и выходов объекта и количестве записей в таблице эмпирических данных структура ИНС-модели может быть выбрана с помощью следующих методов:
- построение ИНС-модели на основе теоремы Колмогорова;
- построение ИНС-модели на основе конструктивного алгоритма наращивания структуры сети;
- построение ИНС-модели на основе формулы Тейлора для функции многих переменных.
Построение ИНС-модели на основе теоремы Колмогорова (рис. 2). Каждая непрерывная функция п переменных, заданная на единичном кубе-мерного пространства, представима в виде:
2п+1 п
/(х1,х2,...,г ) = (хр)
9=1 I Р=1
где функции ф непрерывны, а функции к, кроме того, еще и стандартны, т. е. не зависят от выбора функции /.
Соответственно, число степеней свободы такой сети выражается формулой:
где п - число входов объекта, который имеет 1 выход.
Для возможности использовать данную структуру ИНС-модели должно выполняться условие, обеспечивающее генерализацию эмпирических данных:
М > Ц,
где М - число строк в таблице эмпирических данных.
Построение ИНС-модели на основе конструктивного алгоритма наращивания структуры сети.
Алгоритм базируется на двух эмпирических феноменах обучения ИНС, которые обычно наблюдаются при изменении числа нейронов в скрытом слое и количества скрытых слоев.
На рис. 3 показано, как изменяется ошибка обучения сети при изменении числа нейронов в скрытом слое.
На рис. 4 показано, как изменяется ошибка обучения сети при увеличении числа скрытых слоев при условии, что выбор количества нейронов в каждом слое производится так, как это показано на рис. 3.
Если в ходе применения указанного метода получена сеть со следующей структурой: число скрытых слоев К = 3 , число нейронов в первом, втором и третьем скрытых слоях равно, соответственно, п , п , п , то число степеней свободы:
Учитывая, что обычно на практике используются первые три составные в разложении Тейлора, можно оценить, что п = 3 , п — П , П — П , получим следующую оценку числа степеней свободы:
Ц = 3п + 9 + 9 + 3 = 3п + 21.
Для генерализации данных должно выполняться:
Ц =(2 п + 1)п + (2 п + 1)п + 2п + 1 = (2 п + 1)2
Рис. 2. Структура ИНС-моделей на основе теоремы Колмогорова: а) объект имеет два входа; б) объект имеет п входов
1 2 3 4 5 6 7 8
Рис. 3. Число нейронов в слое
Рис. 4. Число скрытых слоев в сети
Построение ИНС-модели на основе формулы Тейлора. Как правило, на первом этапе обучают нейронную сеть, имеющую определенное число входов, один скрытый слой, включающий один линейный нейрон, и один выходной слой, также содержащий один нейрон. Необходимо отметить, что такая линейная аппроксимация имеет особый смысл, т. к. в результате получается по сути дела линейное приближение ряда Тейлора функции п переменных /(х, X,... Х) в некоторой окрестности точки (Хі, х02,...Х0„) .
Введем дифференциальный оператор
д д д
T = ( — + ( Х2 - Хш)— + ■■■+ (x, - x0n ) — ■
дx1 дх^ дх
Тогда разложение функции в ряд Тейлора по степеням имеет вид:
f(x1.x2,..-Xn) = ŸJ f(X01,Х02,...,Х0”) + R(xi,x2,..-Xn),
к=0
к!
где R( x, x ,■■■ Л ) - остаточный член в форме Лагранжа.
В технических системах и приложениях средняя относительная погрешность обычно составляет 5-7 %. Такую погрешность обеспечивают первые три члена ряда в уравнениях (2.7)-(2.8). В результате получается нейронная сеть с одним скрытым слоем, в котором находятся 3 нейрона. Число степеней свободы такой сети:
Ц = 3п + 3.
Для генерализации данных должно выполняться:
Таким образом, определены основные количественные соотношения между «конструкцией» ИНС-модели и числом данных в таблице.
ЛИТЕРАТУРА
1. Арзамасцев А.А., Маркеев В.Ю., Зенкова Н.А., Крючин О.В. Средства разработки экспертных систем с интеллектуальным ядром на базе ИНС-моделей при использовании облачных технологий // Вестник Тамбовского университета. Серия Естественные и технические науки. Тамбов, 2012. Т. 17. Вып. 3. С. 979-980.
2. Маркеев В.Ю. Инструментальные средства и структурная модель облачного сервиса по использованию экспертных систем на базе ИНС // Новейшие аспекты научных исследований начала XXI века: сб. науч. трудов / Международный исследовательский центр «Научное сотрудничество». Ростов н/Д, 2012. Ч. 2. С. 76-80.
3. Арзамасцев А.А., Зенкова Н.А. Искусственный интеллект и распознавание образов. Тамбов: ТГУ, 2010.
4. Арзамасцев А.А., Маркеев В.Ю. Структурная модель облачного программного комплекса для обслуживания и использования экспертных систем на базе ИНС-моделей // Вестник Тамбовского университета. Серия Естественные и технические науки. Тамбов, 2013. Т. 18. Вып. 1. С. 171-172.
5. Маркеев В.Ю. Структурная модель программного комплекса для разработки экспертных систем на базе ИНС-моделей при использовании облачных технологий // Математика. Компьютер. Образование: тезисы 20 междунар. конф. М., 2013.
Поступила в редакцию 15 ноября 2013 г.
Arzamastsev A.A., Markeev V.Y., Kryuchkov A.A. STRUCTURAL MODEL OF SOFTWARE COMPLEX FOR EXPERT SYSTEMS DEVELOPMENT BASED ON ANN-MODELS USING CLOUD TECHNOLOGIES
The structural model of software for developing expert systems based on artificial neural networks is presented. The structure and content of such a complex, the tools and mathematical software is discussed. The implementation of complex using cloud technologies is supposed.
Key words: software package; expert system; ANN model; cloud technology.
Арзамасцев Александр Анатольевич, Тамбовский государственный университет им. Г.Р. Державина, г. Тамбов, Российская Федерация, доктор технических наук, профессор, зав. кафедрой компьютерного и математического моделирования, e-mail: [email protected]
Arzamastsev Alexander Anatolyevich, Tambov State University named after G.R. Derzhavin, Tambov, Russian Federation, Doctor of Technics, Professor, Head of Computer and Mathematical Simulation Department, e-mail: [email protected]
Маркеев Вадим Юрьевич, Тамбовский государственный университет им. Г.Р. Державина, г. Тамбов, Российская Федерация, аспирант, кафедра компьютерного и математического моделирования; программист управления информационнотехнического обеспечения, e-mail: [email protected]
Markeev Vadim Yuryevich, Tambov State University named after G.R. Derzhavin, Tambov, Russian Federation, Post-graduate Student, Computer and Mathematical Simulation Department; Programmer of Information Technical Supply Management, e-mail: [email protected]
Крючков Алексей Александрович, Тамбовский государственный университет им. Г.Р. Державина, г. Тамбов, Российская Федерация, студент института математики, физики и информатики, программист учебно-методического управления, e-mail: kryuchkov@tsutmb. ru
Kryuchkov Aleksey Aleksandrovich, Tambov State University named after G.R. Derzhavin, Tambov, Russian Federation, Student of Mathematics, Physics and Informatics Institute, Programmer of Study and Methodical Management, e-mail: [email protected]