DOI: 10.7256/2306-4196.2016.2.17904
Received:
07-02-2016
Published:
03-03-2016
Abstract:
Diabetes is a chronic disease, in the pathogenesis of which is a lack of insulin in the human body causing a metabolic disorder and pathological changes in various organs and tissues, often leading to a high risk of heart attack and kidney failure. The author makes an attempt to create a system for early diagnosis of diabetes patients using the device of artificial neural networks. The article presents a model of neural network based on multilayer perceptron trained by back-propagation algorithm. For the design of the neural network the author used Neural Network Toolbox из MATLAB 8.6 (R2015b) which is a powerful and flexible tool for working with neural networks. The results of training and performance tests of the neural network designed show its successful application for the task and the ability to find patterns and complex relationships between the different characteristics of the object. The sensitivity of the developed neural network model is 89.5%, specificity of 87.2%. Once the network is trained it becomes a reliable and inexpensive diagnostic tool.
Keywords:
diabetes, artificial neural network, computer diagnostics, specificity, sensitivity, data classification, multilayer perceptron, back propagation of error, direct distribution network, training with teacher
На сегодняшний день в мире диабет считается одним из наиболее распространенных заболеваний. Согласно данных Всемирной организации здравоохранения, около 350 млн. человек всех возрастов и рас страдают разными формами диабета [1]. Сахарный диабет не является следствием патологии какого-то конкретного органа, он возникает из-за общего сбоя в обмене веществ. Его признаки появляются со стороны органов и систем органов, наиболее чувствительных к этому процессу. Клинические признаки диабета зависят от типа заболевания, пола, возраста, уровня инсулина, артериального давления и других факторов. В работе рассматривается система ранней диагностики сахарного диабета обследуемого пациента использующая аппарат искусственных нейронных сетей.
Нейросетевые технологии призваны решать трудноформализуемые задачи, к которым, в частности, сводятся многие проблемы медицины. Это связано с тем, что исследователю часто предоставлено большое количество разнородного фактического материала, для которого еще не создана математическая модель. Хороший результаты показали модели искусственных нейронных сетей для диагностики психических расстройств [2], болезни Паркинсона [3] и Хантингтона [4]. Модели многослойных персептронов применяются для прогнозирования риска возникновения остеопороза [5]. Логический вывод и обобщенная регрессия использованы для диагностирования гепатита B [6].
Одним из наиболее удобных инструментов для решения подобных задач являются искусственные нейронные сети – мощный и одновременно гибкий метод имитации процессов и явлений. Современные искусственные нейронные сети представляют собой программно-аппаратные средства создания специализированных моделей и устройств и позволяют решать широкий круг задач диагностики на основе применения алгоритмов теории распознавания образов. Отличительное свойство нейронных сетей состоит в их способности обучаться на основе экспериментальных данных предметной области. Применительно к медицинской тематике экспериментальные данные представляются в виде множества исходных признаков или параметров объекта и поставленного на основе них диагноза. Обучение нейронной сети представляет собой интерактивный процесс, в ходе которого нейронная сеть находит скрытые нелинейные зависимости между исходными параметрами и конечным диагнозом, а также оптимальную комбинацию весовых коэффициентов нейронов, соединяющих соседние слои, при которой погрешность определения класса образа стремится к минимуму [7]. К достоинствам нейронных сетей следует отнести их относительную простоту, нелинейность, работу с нечеткой информацией, не критичность к исходным данным, способность обучаться на материале конкретных примеров. В процессе обучения на вход нейронной сети подается последовательность исходных параметров наряду с диагнозами, которые эти параметры характеризуют.
Для обучения нейронной сети необходимо иметь достаточное количество примеров для настройки адаптивной системы с заданной степенью достоверности. Если примеры относятся к разным диагностическим группам, то обученная таким образом искусственная нейронная сеть позволяет в последующем диагностировать и дифференцировать любой новый случай, представленный набором показателей, аналогичных тем на которых проводилось обучение нейронной сети. Несомненным достоинством нейронной модели является то, что при ее создании не нужно представлять весь набор сложных закономерностей описания диагностируемого феномена.
Вместе с тем, с применением нейронных сетей в практических задачах связан ряд трудностей. Одной из главных проблем применения нейросетевых технологий является заранее неизвестная степень сложности проектируемой нейронной сети, которой будет достаточно для достоверной постановки диагноза. Эта сложность может оказаться недопустимо высокой, что потребует усложнения архитектуры сетей. Простейшие однослойные нейронные сети способны решать только линейно разделяемые задачи [8]. Это ограничение преодолимо при использовании многослойных нейронных сетей.
В данной работе использовалась модель многослойного персептрона (нейронная сеть прямого распространения) обученная на основе алгоритма обратного распространения ошибки. В качестве активационной функции в работе, использовалась логистическая активационная функция (рис. 1):
`F=1/(1+exp(-alphaY)`
где ` alpha` – параметр наклона логистической функции.
Рис. 1. Логистическая функция активации
Многослойный персептрон обладает высокой степенью связности, реализуемой посредством синаптических соединений. Изменение уровня связности сети требует изменения множества синаптических соединений или их весовых коэффициентов. Комбинация всех этих свойств наряду со способностью к обучению на собственном опыте обеспечивает вычислительную мощность многослойного персептрона.
Искусственная нейронная сеть содержала входной слой, один скрытый слой и выходной слой. Входной слой, нейронной сети, имеет 12 нейронов, выходной слой имеет два нейрона (рис. 2).
Рис. 2. Архитектура нейронной сети
Таблица 1. Параметры входного слоя нейронной сети
Параметр
|
Тип данных, единица измерения
|
Возраст
|
Число (лет)
|
Физические нагрузки
|
Логический (да/ нет)
|
Пол
|
Логический (М / Ж)
|
Число беременностей
|
Число
|
Наличие диабета у близких родственников
|
Логический (да/ нет)
|
Индекс массы тела
|
Число (кг/м2)
|
Толщина кожи
|
Число (мм)
|
Уровень холестерина
|
Число, мг/дл
|
Диастолическое давление
|
Число, мм. рт. ст.
|
2-х часовой сывороточный инсулин
|
Число, мкЕд/мл
|
Наличие стресса, депрессии
|
Логический (да/ нет)
|
Уровень глюкозы в плазме крови
|
Число, мг/дл
|
Для проектирования нейронной сети был использован пакет Neural Network Toolbox из MATLAB 8.6 (R2015b). Пакет представляет набор функций и структур данных описывающих функции активации, алгоритмы обучения, установку синаптических весов и др.
Рис. 3. Схема работы алгоритма обратного распространения ошибки
Алгоритм обратного распространения ошибки (рис. 3) предполагает вычисление ошибки, как выходного слоя, так и каждого нейрона обучаемой сети, а также коррекцию весов нейронов в соответствии с их текущими значениями. На первом шаге данного алгоритма веса всех межнейронных связей инициализируются небольшими случайными значениями (от 0 до 1). После инициализации весов в процессе обучения нейронной сети выполняются следующие шаги:
- прямое распространение сигнала;
- вычисление ошибки нейронов последнего слоя;
- обратное распространение ошибки.
Прямое распространение сигнала производится послойно, начиная со входного слоя, при этом рассчитывается сумма входных сигналов для каждого нейрона и при помощи функции активации генерируется отклик нейрона, который распространяется в следующий слой с учетом веса межнейронной связи согласно. В результате выполнения данного этапа мы получаем вектор выходных значений нейронной сети. Следующий этап обучения – вычисление ошибки нейронной сети как разницы между ожидаемым и действительным выходными значениями.
Полученные значения ошибок распространяются от последнего, выходного слоя нейронной сети, к первому. При этом вычисляются величины коррекции весов нейронов в зависимости от текущего значения веса связи, скорости обучения и ошибки, внесенной данным нейроном. После завершения данного этапа шаги описанного алгоритма повторяются до тех пор, пока ошибка выходного слоя не достигнет требуемого значения.
База обучающих и тестовых данных содержала 486 записей о пациентах, 243 из которых имели клинически установленный диагноз «сахарный диабет», другая часть пациентов была здорова.
Нейронная сеть была обучена на 240 выборках и протестирована на 146 выборках. Чувствительность разработанной нейросетевой модели составила 89.5%, специфичность 87.2%. Некоторая сложность теоретического обеспечения использования, трудоемкость и временные затраты по моделированию и обучению нейронных сетей компенсируется простотой их применения конечным пользователем. Если задача создания конкретной нейронной сети адекватной поставленной задаче и ее оптимальное обучение доступна лишь специалисту, то ее практическое применение конечным пользователем требует только навыков владения компьютером. Сложность интерпретации системы знаний обученной нейросетевой модели, является ненужной пользователю нейронной сети, так как для большинства конечных пользователей важно не понимание сущности работы нейронной сети, а ее результативность, информативность, безошибочность и быстродействие.
References
1. faktov o diabete. [Elektronnyi resurs] Ofitsial'nyi sait Vsemirnoi organizatsii zdravookhraneniya http://www.who.int/features/factfiles/diabetes/ru/ (data obrashcheniya: 13.01.2016)
2. Berebin M.A., Pashkov S.V. Opyt primeneniya iskusstvennykh neironnykh setei dlya tselei differentsial'noi diagnostiki i prognoza narushenii psikhicheskoi adaptatsii. Vestnik Yuzhno-Ural'skogo gosudarstvennogo universiteta, 2006, №14, s.41-45.
3. Gil D., Johnsson M. Diagnosing Parkinson by using artificial neural networks and support vector machines. Global Journal of Computer Science and Technology, 2009, №9(4). pp.63-71.
4. Singh M., Singh M., Singh P. Artificial Neural Network based classification of Neuro-Degenerative diseases using Gait features. International Journal of Information Technology and Knowledge Management, 2013, Vol. 7, №1, pp. 27-30.
5. Basit A., Sarim M., Raffat K., etc. Artificial Neural Network: A Tool for Diagnosing Osteoporosis. Research Journal of Recent Sciences, 2014, Vol. 3(2), pp.87-91.
6. Mahesh C., Suresh V. G., Babu M. Diagnosing Hepatitis B Using Artificial Neural Network Based Expert System. International Journal of Engineering and Innovative Technology, 2013, Vol. 3, Issue 6, pp.139-144.
7. Yakh''yaeva G.E. Nechetkie mnozhestva i neironnye seti. M.: Internet-Universitet informatsionnykh tekhnologii: BINOM. Laboratoriya znanii, 2006. – 316 s.
8. Galushkin A. Neironnye seti. Osnovy teorii. Goryachaya Liniya – Telekom, 2012. - 496 s.
|