УДК 004.8
Матвеев Д.И., Дударов С.П.
КЛАССИФИКАЦИЯ МЕДИЦИНСКИХ ДАННЫХ С ИСПОЛЬЗОВАНИЕМ МНОГОСЛОЙНЫХ ПЕРЦЕПТРОНОВ
Матвеев Дмитрий Игоревич, студент 4 курса факультета информационных технологий и управления; Дударов Сергей Павлович, к.т.н., доцент, декан факультета информационных технологий и управления, e-mail: [email protected],
Российский химико-технологический университет имени Д. И. Менделеева, Москва, Россия 125047, Москва, Миусская пл., д. 9
Статья посвящена решению задачи классификации медицинских данных. В качестве метода решения предложены нейросетевые классифицирующие модели на основе многослойных персептронов. Рассмотрено множество структур нейронных сетей с разными настройками применительно к задаче классификации состояния плода по результатам кардиотокографии. Выполнен анализ и проведено сравнение всех полученных нейросетевых моделей. Даны рекомендации по выбору модели для решения поставленной задачи.
Ключевые слова: нейронная сеть, многослойный перцептрон, задача классификации, классифицирующий признак, медицинская диагностика.
CLASSIFICATION OF MEDICAL DATA USING MULTILAYER PERCEPTRONS
Matveev D. I., Dudarov S. P.
D. Mendeleev University of Chemical Technology of Russia, Moscow, Russia
The article is devoted to solving the problem of medical data classification. Neural network classifying models based on multilayer perceptrons were proposed as a solution method. A number of structures of neural networks with different settings for the task of classifying the fetus according to the results of cardiotocography are considered. Analyzed and compared all models of neural networks that obtained. Recommendations on choosing a model for solving the problem were given.
Keywords: neural network, multilayer perceptron, classification task, classification feature, medical diagnostics.
В настоящее время задачи классификации данных в ходе проведения исследований, связанных с медицинской диагностикой, решаются различными методами. Этим могут заниматься непосредственно врачи, ставя диагноз на основе своего опыта и результатов различных медицинских процедур. Также существуют автоматизированные средства и системы, использующие логико-математический аппарат и системы искусственного интеллекта, в частности, искусственных нейронных сетей, которые себя очень хорошо зарекомендовали [1]. Цель настоящей работы - исследование возможности и эффективности решения задачи классификации медицинских данных на основе одной из архитектур искусственных нейронных сетей - многослойных персептронов. Данный класс нейронных сетей представляется перспективным инструментом, имеющим множество преимуществ, среди которых главные - это высокая точность решения, относительная простота реализации и высокая скорость вычислений.
Постановку задачи классификации состояния плода по результатам кардиотокографии можно сформулировать следующим образом. Дан набор входных параметров, полученных на основе анализа кардиотокограммы плода, в виде числового вектора. Эти параметры представляют собой совокупность классифицирующих признаков, по которым осуществляется разделение на классы. Требуется с использованием предварительно обученного
многослойного перцептрона отнести поданный на его входы вектор к заранее известным стандартным классам. Сам перцептрон обучается на выборке, состоящей из примеров, классы которых уже известны (определены и подтверждены).
Выборка с известными результатами кардиотокографического исследования состояла из 2126 примеров, полученных из открытого репозитория с данными для машинного обучения «UCI Machine Learning Repository». Каждый пример - это пара, включающая входной и выходной вектора. 21 элемент входного вектора содержит такие характеристические классифицирующие признаки, как базовое значение частоты сердечных сокращений, количество ускорений в секунду, количество движений плода в секунду, количество сокращений матки в секунду, количество легких замедлений в секунду, количество серьезных замедлений в секунду, количество длительных замедлений в секунду, процент времени с ненормальной кратковременной изменчивостью, среднее значение кратковременной изменчивости, процент времени с ненормальной долговременной изменчивостью, среднее значение долгосрочной изменчивости, ширина гистограммы, минимум гистограммы, максимум гистограммы, количество пиков на гистограмме, количество нулей на гистограмме, мода гистограммы, среднее значение гистограммы, медиана гистограммы, дисперсия гистограммы и ее тенденция. Два элемента
выходного вектора - это указания на классы из двух групп: по морфологическому типу и по состоянию плода. Возможные значения классов первой группы: спокойный сон, быстрый сон, спокойная бдительность, активная бдительность, схема сдвига, стрессовая ситуация, замедление частоты сердечных сокращений (стимуляция блуждающего нерва), значительное замедление, плоско-синусоидальная картина, подозрение. Вторая группа классов содержит следующие значения: нормальное состояние, подозрение, патологическое состояние. Весь объем данных в процессе исследования делился на обучающую и тестовую выборки в различных сочетаниях: 50/50 %, 60/40 %, 70/30 %, 80/20 %, 90/10 %. Влияние соотношения между обучающей и тестовой выборками на качество классификации состояния плода изучалось в работе отдельно.
Для формирования нейросетевых моделей были предложены четыре концепции представления результирующих классов с учетом их деления на две группы:
- 2 аналоговых выхода (соответствуют исходным данным репозитория);
- 13 бинарных выходов (10 первых, один из которых единичный, а остальные 9 - нулевые, соответствуют классам первой группы, 3 оставшихся (один единичный и два нулевых) -классам второй группы);
- 6 бинарных выходов (4 первых бита кодируют 10 значений классов первой группы, 2 оставшихся -3 значения классов второй группы);
- 5 бинарных выходов (биты кодируют 30 возможных сочетаний между классами первой и второй групп).
На рисунке 1 схематично показаны переходы от аналогового представления выходных классов к различным форматам их бинарного представления.
0 1
7 1 1
2 i 1 .
1 I
а i
— X Ü. □ га ш —
Рис 1. Форматы представления результатов классификации
Выходные значения всех нейронов перцептрона рассчитывались в результате применения сигмоидной логистической активационной функции.
Для бинарных выходов на этапах обучения и тестирования для оценки ошибок и количества правильно распознанных примеров (с уровнем ошибки не более 5 %) эти значения брались как есть. На этапе практического использования обученного перцептрона его выходы округляются до ближайшего бинарного значения (0 или 1).
В ходе исследования на первом этапе рассматривались структуры нейронных сетей с различным количеством слоев и различным соотношением объемов обучающей и тестовой выборок. Были исследованы двух-, трех- и четырехслойные перцептроны, обучавшиеся на протяжении 100 тысяч эпох с параметром насыщения, равным единице. Среди рассмотренных структур были выбраны наилучшие для каждого формата выходов и количества слоев. Результаты исследования соотношений обучающей и тестовой выборок говорят о том, что при увеличении доли обучающей выборки ошибки обучения и тестирования уменьшаются. При соотношениях 80/20 и 90/10 % они примерно одинаковы. Далее использовано соотношение 80/20 %.
Для выбранного соотношения между обучающей и тестовой выборками на втором этапе подбиралось оптимальное количество нейронов в скрытых слоях двух-, трех- и четырехслойных перцептронов. Оптимальные структуры сравнивались между собой.
На третьем этапе формирования нейросетевой модели для выбранной оптимальной структуры проводилось обучение при различных значениях параметра насыщения. Результаты третьего этапа показали, что изменение этого параметра незначительно влияет на результат классификации, поэтому рекомендуемое значение параметра насыщения осталось равным единице.
Для решения поставленных задач разработано программно-алгоритмическое обеспечение,
реализующее универсальный многослойный перцептрон, обучающийся методом обратного распространения ошибки [2]. Программа позволяет установить требуемую структуру перцептрона, задать значение параметра насыщения активационной функции и разделить исходную выборку на обучающую и тестовую составляющие в заданном пользователем соотношении (рис. 2). Для разработки программно-алгоритмического
обеспечения использованы:
- язык программирования C#;
- система для построения приложений с
графическим интерфейсом WPF;
- интегрированная среда разработки Visual Studio 2017;
- библиотека OxyPlot для построения графиков.
В результате последовательной трехэтапной
оптимизации структуры нейронной сети лучшим вариантом оказался четырехслойный перцептрон с 16, 12 и 10 нейронами в скрытых слоях и 6-битовым форматом представления выходов (рис. 3).
■ MitfiWindo* □ У ■ Nn prjüjKt с X
filt PïSjttl
lot Ëi^hrpHlr- ТпНП jlr KJIC+ЧИОН Ulli Irin СыхОДОП
оьмксцягтошаотв % правильно 95 Мн&тмлиАч^Я iwpt^Tipah о iW&H** ihm
1ЛИ« - • Бинарные Ё-а"пды
% правильно кллссиЭмцгравлнньис 95 Kei*ï meïrtîT Пия nporiila HfüCuiiiдмм à нормали члц, ил ]
Путь Л ftHnOplwip^SMQM [flH
% Прмилопе 95 Küh*4 MiaxpiUÈ Г1"|ггь к ойучлющ!» и-Оорчп
К Прм»л(п0 VKCh^tHur-JWUHnvC 95
KDMII М1ахрч99 Û.!M*TJ2»i 5743Î Ки .miu« iao яюдп ■ Халичк «о muïcâhî
% правильно клжсиЗмц^раылны*: 95
JÎ3H-L ион 100
Время дДущцц ÖMÜMjOM5±1Ci IpWJbHW «ИШШТН» ник
jlplu Ьобуч
"Эчдть ткт fei.1 4t нра rinn ■ t нригык {mrh
о 1 1 Олим iiuftOf
Рис 2. Интерфейс пользователя и пример работы программного обеспечения
Х1
Х21
Х2
Рис 3. Оптимальная структура многослойного перцептрона для классификации медицинских данных
Полученный оптимальный перцептрон характеризуется ошибками обучения и тестирования на уровне 8,5 % и 12,5 % соответственно, а доля верно классифицированных примеров для него составляет 97-98 %. В то же время точность диагностирования состояния плода врачом, по данным американских специалистов, варьируется в пределах 36-78 %, а при использовании специальных анализирующих устройств этот показатель достигает 89 % [3].
Исходя из полученных результатов нейросетевого моделирования, можно сделать вывод о том, что при решении задачи классификации состояния плода по результатам кардиотокографии использование искусственных нейронных сетей дает очень высокий процент верных диагнозов. Это позволяет рекомендовать использование обученных многослойных перцептронов в качестве одного из основных инструментов диагностирования состояния плода.
Список литературы
1. Дударов С. П. Классификация данных нейронными сетями на основе радиально-базисных функций/ С. П. Дударов, М. В. Васильев, Г. В. Калайчев. - Информационные технологии в моделировании и управлении: подходы, методы, решения: Сборник науч. статей I Всероссийской науч. конф.: В двух частях, Часть 1: Материалы секций I, II. - Тольятти: Тольяттинский государственный университет, 2017. - с. 86-92.
2. Дударов С. П., Папаев П. Л. Теоретические основы и практическое применение искусственных нейронных сетей. - М.: РХТУ им. Д. И. Менделеева, 2014. - 104 с.
3. Способ повышения точности оценки состояния плода во время беременности, основанный на дополнительной регистрации его икотоподобных движений при кардиотокографии // Патент РФ № 2596719. 10.09.2016. Бюл. № 25 / В. Н. Демидов, К. Г. Краснова, М. А. Воронкова, А. В. Демидов.