Scientific journal
Modern problems of science and education
ISSN 2070-7428
"Перечень" ВАК
ИФ РИНЦ = 1,006

THE STRUCTURE OF THE NEURAL NETWORK MODULE FOR THE RESEARCH OF THE MATHEMATICAL MODEL OF AUTOMATIC CLASSIFICATION OF FUNCTIONAL STATES OF HUMAN

Pyatakovich F.A. 1 Khlivnenko L.V. 2 Yakunchenko T.I. 1 Vasiliev V.V. 3
1 Belgorod National Research University
2 Voronezh State Technical University
3 Voronezh State University
The structure of the neural network module comprising blocks: input electrophysiological data, initialization and network training, formation of training and of examination sample. The pulse sensor provides an input vector of 500 interpulse intervals. The article considers an informational electrophysiological model of activity of the state of the autonomic nervous system. On the basis of this model is analyzed the dynamic model of a multi-layer perceptron, which takes into account the activity of neurons in the hidden and output layers. As an activation function of neural network was chosen bipolar sigmoid. The algorithms of the neural network learning are presented in form of a combination of gradient and stochastic methods. In the learning process step by step adjustment of the weightings network carried out not only in the direction of the assessment antigradient targeted function, but also included a stochastic component. The software allows forecasting and evaluating its effectiveness. An analysis of the effectiveness of the algorithm is showed that the neural network diagnostic system provides 100% differentiation of the vegetative status of the surveyed persons. The developed structure of menu of the computer application is characterized by the universality and it is adapted for automatic recognition of different functional states in healthy.
neurocomputing
neural network module
neural network modeling

В рамках развивающегося направления реабилитационной медицины с использованием параметров биологической обратной связи необходима непрерывная обработка большого потока электрофизиологической информации. Высокая производительность интеллектуальных систем обработки такого вида информации может быть достигнута за счет использования интеллектуальных ядер в виде нейросетевых модулей [4, 5].

Известно, что регулирование параметров, избранных для мониторинга при биоуправлении, в обычных условиях реализуется за счет сочетания деятельности нескольких координирующих и пусковых иерархических систем. На основе информационного анализа было разработано модельное представление об иерархии управления регуляцией частотой сердечных сокращений, включающей шесть режимов: 1) детерминированный;
2) квазидетерминированный; 3) гармонический; 4) квазигармонический; 5) квазистохастический; 6) стохастический. Каждому режиму соответствует то или иное функциональное состояние: 1–3 — функциональное напряжение или стресс; 3–4 — состояние нормы; 5 — состояние релаксации; 6 — состояние истощения адаптационных механизмов.

Разработанные математические модели [1, 2] позволяют, во-первых, выделить и прогнозировать динамику того или иного параметра, относящегося к механизмам регуляции частоты сердечных сокращений в условиях перманентного воздействия извне, а во-вторых, определить характер смены динамических режимов, а следовательно, и функциональных состояний, им соответствующих. Рассматриваются шесть степеней активности автономной нервной системы (АНС) человека: 1) резко выраженное преобладание симпатической нервной системы (РВП СНС); 2) выраженное преобладание симпатической нервной системы (ВП СНС); 3) умеренное преобладание симпатической нервной системы (УП СНС); 4) равновесное состояние между симпатикусом и парасимпатикусом; 5) умеренное преобладание парасимпатической нервной системы (УП ПСНС); 6) выраженное преобладание парасимпатической нервной системы (ВП ПСНС).

Целью исследования, описанного в данной работе, является разработка нейросетевого диагностического модуля для автоматического распознавания различных функциональных состояний здоровых лиц на основе классификации степени активности их автономной нервной системы.

Для достижения поставленной цели необходимо решить следующие задачи:

1) разработать математическую модель решения задачи автоматической классификации степени активности АНС с помощью искусственной нейронной сети;

2) сформировать банк статистических примеров для обучения сети;

3) определить структуры данных и элементы интерфейса программного модуля;

4) выделить блок событий для последующей обработки в пунктах меню приложения;

5) разработать методы формирования обучающей и экзаменационной выборок для оценки эффективности нейросетевых алгоритмов по показателям чувствительности и специфичности.

Материал и методы исследования

Для решения поставленных задач была использована методология системного анализа, нейрокибернетики, теории управления и теории моделирования. Прежде всего было разработано полнофункциональное компьютерное приложение «Forecasting_SNS&PSNS», предназначенное для обучения нейронной сети, формирования обучающих и экзаменационных выборок, оценки эффективности нейросетвых алгоритмов, а также для автоматической классификации текущего состояния АНС человека по данным, полученным с блока ввода кардиоинтервалов.

Входные данные модели представляют собой паттерн из 500 RR-интервалов, получаемый с помощью блока ввода электрофизиологической информации. Каждая пара кардиоинтервалов определяет временную составляющую из нулевых, ускоряющих и замедляющих ритм сердца коррекций.

Вводится в рассмотрение случайная величина , значения которой связываются с длиной и знаком коррекции. Все наблюдаемые значения признака попадают в интервал , который проходится с шагом 0,05. Таким образом, алфавит системы включает 61 класс дифференциальной гистограммы распределения микроструктурного паттерна вариабельности ритма сердца, включающий норморитмию, тахиритмию и брадиритмию [3].

На входы искусственной нейронной сети подаются частоты интервального вариационного ряда, соответствующие реализациям случайной величины в алфавите системы. Входы сети , , подвергаются процедуре нормализации вычитанием их выборочного среднего и нормированием на исправленное выборочное среднее квадратичное отклонение.

Активность нейронов скрытого слоя , , вычисляется по формулам:

, (1)

где — весовой коэффициент связи между -м входом и -м нейроном скрытого слоя. В качестве активационной функции был выбран биполярный сигмоид: .

Активность нейронов выходного слоя , , вычисляется по формулам:

, (2)

где — весовой коэффициент связи между -м нейроном скрытого слоя и -м нейроном выходного слоя.

Для обучения сети была использована комбинация градиентного и стохастического методов обучения. В процессе обучения пошаговая корректировка весов не только выполнялась в направлении оценки антиградиента целевой функции, но и включала стохастическую компоненту.

Перерасчет весовых коэффициентов связи выполняется по формулам:

, (3)

, (4)

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

После корректировки весовых коэффициентов рассчитывалось значение целевой функции ошибки сети. Если ошибка сети уменьшается, то изменения весовых коэффициентов сохраняются. В противном случае новые значения весовых коэффициентов сохраняются с «вероятностью», определяемой распределением Коши [6].

Компьютерное моделирование искусственной нейронной сети, обученной комбинированием градиентного и стохастического методов, было выполнено в среде программирования Lazarus. Интерфейс приложения показан на рисунке 1.

Рис. 1. Интерфейс приложения «Forecasting_SNS&PSNS»

Вспомогательные файлы хранятся в папке Data. Банк примеров для обучения и тестирования сети формируется в файлах *.txt. Команды, предназначенные для работы с банком примеров, собраны в меню Выборка.

По команде Выборка ¦ Открыть... появляется диалог открытия файла *.txt, содержащего информацию о группе примеров по шаблону:

Текстовая информация о примере: ХХ ХХ ХХ ХХ ХХ ... < RR-интервалы через пробел >

После открытия файла с банком примеров информация отображается в основной части формы в группе Выборка в табличном виде (рис. 1).

Возможно пополнение банка новым примером. Для этого нужно открыть файл с информацией о примере по команде Файл ¦ Открыть... Информация о примере появится в верхней части формы в группе Пример. Сохранить новый пример можно в виде отдельного файла по команде Файл ¦ Сохранить... или добавив его в конец имеющегося банка примеров по команде Выборка¦ Пример ¦ Добавить.

Удалить пример из банка можно по команде Выборка ¦ Пример ¦ Удалить, предварительно выделив его, кликнув в поле «+/-» в строке примера. При выделении поле «+/-» маркируется цветом. При повторном выборе цветовое выделение исчезает, поле становится светлым. С помощью команды Выборка ¦ Пример ¦ Удалить можно также очистить таблицу Пример.

По команде Выделение ¦ Выделить все осуществляется выбор всех примеров из группы Выборка. Команда Выделение ¦ Снять выделение служит для отмены выбора примеров.

Приложение позволяет выполнять автоматическое разбиение имеющегося банка примеров на обучающую и контрольную выборки. Для этой цели используется команда Выборка ¦ Авторазбиение... При этом запрашивается требуемый для отбора процент примеров, затем выполняются их случайный выбор и выделение.

По команде Выборка ¦ Сохранить... выделенные в банке примеры можно сохранить в виде файла *.txt и использовать затем в качестве обучающего множества.

Примеры, которые остались невыбранными в результате автоматического разбиения выборки, можно также сохранить в виде отдельного файла, предварительно выделив их по команде Выделение ¦ Инверсия. Команда позволяет обратить выделение примеров в банке и используется для формирования контрольных выборок на базе тех примеров, которые не попали в результате случайного отбора в обучающее множество.

Обучающая выборка должна включать не только паттерны RR-интервалов, но и целевые отклики нейросети. По команде Прогноз ¦ Энтропийный в поле Hn выводится значение нормированной энтропии и в поле Эксперт под контролем врача уточняется целевой прогноз для обучения сети.

По команде Выборка ¦ Целевое множество... открывается диалог сохранения в виде файла *.txt целевого набора векторов для выделенных примеров, входящих в обучающую выборку.

Таким образом, разработанное приложение позволяет формировать новые выборки для обучения и тестирования сети, а также пополнять и редактировать старые выборки.

При запуске процесса обучения необходимо выбрать файл, хранящий множество целевых векторов для загруженной в приложение выборки.

По команде Сеть¦ Создать выполняется рестарт перед обучением сети со случайным набором весовых коэффициентов. Команда используется для повторного старта обучения сети с новым начальным набором случайных весовых коэффициентов.

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

Диалог обучения сети запускается командой Сеть ¦ Обучить... Перед обучением сети запрашивается информация о настройках процесса обучения (рис. 2). В результате уточняются значение скорости обучения и количество обучающих эпох.

Обучение проводится по всей выборке, загруженной в таблицу Выборка. При запуске процесса обучения необходимо выбрать файл, хранящий множество целевых векторов для данной выборки.

Кликом по кнопке Старт обучения сети запускается процесс обучения. В процессе обучения в информационном окне выводится отчет о текущей средней ошибки сети, полученной по всему множеству обучающих примеров, через каждые сто обучающих эпох. При повторных сеансах обучения информация о предыдущих результатах сохраняется.

Рис. 2. Диалог настроек параметров обучения сети

При обучении сети с использованием стохастической составляющей текущая ошибка сети может незначительно увеличиваться на локальном этапе (рис. 2). Однако в целом в процессе обучения ошибка сети уменьшается.

Приложение позволяет проводить неоднократное дообучение сети с сохранением промежуточных наборов весовых коэффициентов в файл. При многократных сеансах обучения для улучшения результатов рекомендуется понижать значение параметра скорости обучения.

Для сохранения весовых коэффициентов в файл *.txt предназначена команда Сеть ¦ Веса ¦Сохранить... После загрузки удачного набора весовых коэффициентов по команде Сеть ¦ Веса ¦ Загрузить... сеть сразу готова к прогнозированию степени активности АНС без проведения обучающих сеансов.

Для быстрого получения прогноза по новому примеру достаточно открыть пример, загрузить веса, выделить пример и выполнить прогнозирование.

Автоматическое прогнозирование выполняется для выделенных примеров в группах Пример и Выборка по команде Прогноз ¦ Нейросетевой. Прогноз выводится в поле Сеть (рис. 1).

Закрытие окна программы и всех дочерних окон выполняется по команде Файл ¦ Выход. По команде Справка ¦ О программе выводится информационное окно с руководством пользователя.

Оценка эффективности нейросетевого прогнозирования проводится с помощью команд меню Статистика. По команде Статистика ¦ Гипердиагностика... выводится информационное окно, показанное на рисунке 3, в котором отображается процент правильно распознанных примеров среди выделенного множества примеров в таблице Выборка, процент гипердиагностики и гиподиагностики. В окно также выводится информация об ошибочно распознанных примерах из группы Гипердиагностика. Сами примеры, на которых сеть ошибается, выделяются в основном окне приложения в таблице Выборка.

Рис. 3. Информационное окно с результатами тестирования сети

По команде Статистика ¦ Гиподиагностика... в информационном окне отображается информация об ошибочно распознанных примерах из группы Гиподиагностика. Ошибочно распознанные примеры также выделяются в основном окне приложения в таблице Выборка.

В заключительной экспериментальной части работы были проведены исследования на адекватность разработанных моделей реальным электрофизиологическим процессам. Для этих целей были проанализированы 168 записей межпульсовых интервалов у практически здоровых студентов и сотрудников Белгородского государственного университета. Таким образом, банк примеров состоял из 168 записей по 500 кардиоинтервалов.

В результате многократного обучения сети была найдена комбинация весовых коэффициентов, с помощью которой выполняется 100% распознавание по всему банку примеров.

Выводы

1. Разработанное приложение с вычисленными наборами весовых коэффициентов может быть использовано для динамического поточного обучения, в котором необходима непрерывная обработка большого потока электрофизиологической информации и высокая производительность интеллектуальных систем ее обработки.

2. Апробация алгоритма комбинирования градиентных и стохастических методов обучения искусственной нейронной сети показала, что сеть способна обучаться на избыточно больших выборках за счет того, что использования случайной подвыборки может хватить для вычисления адекватного набора значений весовых коэффициентов.

3. Разработанная структура меню приложения имеет общий характер и может быть использована при разработке нейросетевых модулей решения других задач медицинской диагностики.

Рецензенты:

Ефремова О.А., д.м.н., профессор, заведующая кафедрой факультетской терапии медицинского института, ГОУ ВПО «Белгородский государственный национальный исследовательский университет», г. Белгород;

Чурносов М.И., д.м.н., профессор, заведующий кафедрой медико-биологических дисциплин медицинского института ГОУ ВПО «Белгородский государственный национальный исследовательский университет», г. Белгород.