УДК 577.322
Селютин Александр Дмитриевич
студент Института прикладных информационных технологий и
коммуникаций
Саратовский Государственный Технический Университет им. Гагарина
Ю.А., г. Саратов
E-mail: cool.selutin99@yandex.ru
РАЗРАБОТКА НЕЙРОСЕТЕВОЙ МОДЕЛИ
ДЛЯ ДИАГНОСТИКИ СЕРДЕЧНЫХ ЗАБОЛЕВАНИЙ
Selyutin Alexander Dmitrievich
student of Institute information technology and communications
Saratov State Technical University, Saratov
DEVELOPMENT OF A NEURAL NETWORK
FOR THE DIAGNOSIS OF HEART DISEASES
Аннотация:
В
статье
приведено
решение
проблемы
диагностики сердечных заболеваний. Данная задача является
актуальной для экспертов кардиологов. Для решения стоящей
проблемы разработана нейросетевая модель многослойного
перцептрона, позволяющая классифицировать заболевания в
зависимости от поступающих входных параметров, а также,
создан пользовательский интерфейс для обученной модели.
Разработанный интерфейс позволяет взаимодействовать с
системой максимально комфортным способом. Представлены
фрагменты кода.
Abstract: The article provides a solution to the problem of
diagnosing heart diseases. This task is relevant for cardiology
experts. To solve this problem, a neural network model of a multilayer perceptron has been developed, which allows classifying
diseases depending on incoming input parameters, and a user
interface has been created for the trained model. The developed
interface allows you to interact with the system in the most
comfortable way. Fragments of the code are presented.
Ключевые слова: Заболевания сердечно-сосудистой системы,
нейронные сети, многослойный перцептрон
Keywords: Diseases of the cardiovascular
networks, multi-layer perceptron
system,
neural
Введение
Нейронные сети представляют собой новую и весьма
перспективную
вычислительную технологию, предоставляющую современные
подходы
к
исследованию
динамических
задач
в
разных
сферах
жизнедеятельности
человека.
Изначально,
нейронные
сети
открыли
новые
возможности в области распознавания образов, затем к этому
прибавились
статистические
и
основанные
на
методах
искусственного интеллекта средства поддержки принятия
решений
[4,
c.
98],
решения
задач
в
сфере
финансов,
медицинской области и др.
Способность к моделированию нелинейных процессов,
работе
с
зашумленными
возможности
применять
данными
и
нейронные
адаптивность
сети
для
дают
решения
широкого класса разных задач. Приложения нейронные сетей
охватывают
самые
распознавание
разнообразные
образов,
обработка
области
интересов:
зашумленных
данных,
дополнение образов, ассоциативный поиск, классификация,
оптимизация,
прогноз,
абстрагирование,
данных,
управление
сжатие
моделирование
диагностика,
информации,
сложных
обработка
процессами,
сложные
процессов,
сигналов,
сегментация
отображения,
машинное
зрение,
распознавание речи [3, c.102].
Особенно актуальной становится проблема разработки
экспертных систем, основанных на искусственных нейронных
сетях в медицинской области [5, c. 32], поскольку данные
системы могут спасти жизнь многим людям, диагностируя
заболевания на раннем этапе. Поскольку болезни сердца и
сосудов являются самыми распространёнными заболеваниями
в мире, уносящими миллионы жизней, особенно необходимо
применять
всевозможные
меры
по
выявлению
их
и
дальнейшему искоренению.
Целью
данной
работы
будет
являться
разработка
экспертной системы диагностики сердечных заболеваний на
основе искусственных нейронных сетей.
Модели искусственных нейронных сетей в
медицинских
экспертных системах
Интенсивное развитие медицинской науки, расширение
возможностей углубления в этиологию, патогенез заболевания,
увеличение данных о патологических состояниях диктует
необходимость поиска новых подходов к обработке полученных
результатов. На современном этапе развития важно провести
быстрый анализ большого числа данных и принять верное
решение, которое может повлиять на прогнозы, течение и
исходы заболевания. Для решения данных проблем существуют
экспертные
системы,
которые
представляют
собой
компьютерные программы, производящие анализ на основе
определенных
исходных
данных,
предназначенные
для
оказания помощи специалистам в конкретных областях знаний
и достижения значимых результатов [2, c. 78]. Применение
экспертных систем позволяет решить различные задачи, к
которым
относится
прогнозирование
рисков
развития
заболеваний, осложнений и эффективности лечения, ранняя
диагностика, планирование лечения, мониторинг состояния
здоровья пациента.
Экспертные
медицинские
системы
значимо
упрощают
работу в таких ситуациях, когда невозможно представить
задачу в числовой форме, отсутствует определенность или
точность
в изучаемых
параметрах или нет однозначного
алгоритма решения задач. Данные характеристики подходят
для решения и медицинских задач, представляющих собой
большой
объем
многомерных,
сложных
и
порой
противоречивых клинических данных [1, с. 53].
В
настоящее
время
в
медицинских
исследованиях
превалирует использование статистических методов обработки
данных.
Самыми
распространенными
описательными
методами, использующимися в традиционных статистических
исследованиях,
являются
анализ
выживаемости
и
многомерный комплексный анализ, классифицирующийся на
дискриминантный, кластерный, факторный и корреляционный.
Анализ предметной области
Сердечно-сосудистые
заболевания
представляют
собой
группу болезней сердца и кровеносных сосудов в которую
входят:
ишемическая
болезнь
сердца
–
болезнь
кровеносных
сосудов, снабжающих кровью сердечную мышцу;
болезнь сосудов головного мозга – болезнь кровеносных
сосудов, снабжающих кровью мозг;
болезнь периферических артерий – болезнь кровеносных
сосудов, снабжающих кровью руки и ноги;
ревмокардит – поражение сердечной мышцы и сердечных
клапанов в результате ревматической атаки, вызываемой
стрептококковыми бактериями;
врожденный порок сердца – существующие с рождения
деформации строения сердца;
тромбоз глубоких вен и эмболия легких – образование в
ножных венах сгустков крови, которые могут смещаться и
двигаться к сердцу и легким.
Инфаркты
и
инсульты
обычно
являются
острыми
заболеваниями и происходят, главным образом, в результате
закупоривания сосудов, которое препятствует току крови к
сердцу или мозгу. Самой распространенной причиной этого
является образование жировых отложений на внутренних
стенках кровеносных сосудов, снабжающих кровью сердце или
мозг [6, c. 43]. Кровотечения из кровеносного сосуда в мозге
или сгустки крови могут также быть причиной инсульта.
Причиной инфаркта миокарда и инсульта обычно является
наличие сочетания таких факторов риска, как употребление
табака,
нездоровое
питание
и
ожирение,
отсутствие
физической активности и вредное употребление алкоголя,
повышенное кровяное давление, диабет и гиперлипидемия.
Разработка экспертной системы принятия решений
по диагностике сердечных заболеваний
Для
системы
принятия
нейроэмулятор
на
решения
основе
будет
разрабатываться
многослойного
персептрона.
Изначально необходимо выделить признаки, которые будут
являться наиболее значимыми для диагностики сердечных
заболеваний. Далее необходимо найти данные на которых
нейросеть
будет
обучаться
и
тестироваться.
После
этого
остаётся
разработать
конфигурацию
сети
и
разработать
пользовательский интерфейс.
Технические требования и общее описание проекта
Данная
диагностики
Система
экспертная
сердечных
должна
система
предназначена
заболеваний
отвечать
на
на
вопрос:
ранней
для
стадии.
«Необходимо
ли
дальнейшее обследование и лечение?»
Разрабатываемая система должна с высокой точностью
диагностировать
наличие
сердечных
заболеваний.
Для
диагностики были выбраны следующие характеристики:
1. Возраст;
2. Пол;
3. Место локации боли в груди;
4. Артериальное давление;
5. Уровень холестерина (в мг / дл);
6. Уровень сахара в крови натощак (>120=>1:0, в мг / дл);
7. Результаты электрокардиографии;
8. Максимальная частота сердечных сокращений;
9. Стенокардия;
10. ST расстройство;
11. Наклон пика ST;
12. Количество крупных сосудов;
13. Талассемия.
Разработка нейроэмулятора
Был выбран набор данных с сайта kaggle.com, содержащий
информацию о людях, страдающих сердечными заболеваниями
(с
положительным
диагнозом
и
отрицательным).
Набор
содержит 330 записей. Далее, данные были нормализованы.
Разработка
нейронной
сети
производилась
на
языке
программирования
Python (версия 3.6) с использованием следующих библиотек:
Keras
Tensor Flow (как backend для фреймворка keras)
PyQT 5 (для создания GUI)
PyInstaller
(для
создания
исполняемого
файла
разработанной системы)
Листинг нейроэмулятора (архитектура – многослойный
персептрон) представлен на Листинге 1:
def process(dataset, epochs=200, batch=10):
# Разделение выборки
X = dataset[:, 0:13]
Y = dataset[:, 13]
# Разделение выборки на обучающую (67%) и тестовую (33%)
(X_train, X_test, Y_train, Y_test) = train_test_split(X, Y,
test_size=0.33, random_state=seed)
# Создать модель
model = Sequential()
model.add(Dense(13, input_dim=13, init='uniform',
activation='relu'))
model.add(Dense(8, init='uniform', activation='relu'))
model.add(Dense(1, init='uniform', activation='sigmoid'))
# Выбор метода обучения
model.compile(loss='binary_crossentropy', optimizer='adam',
metrics=['accuracy'])
# Обучение модели
model.fit(X_train, Y_train, validation_data=(X_test, Y_test),
nb_epoch=epochs, batch_size=batch, verbose=0)
# Проверка тестовой модели
scores = model.evaluate(X_test, Y_test)
print("Accuracy: %.2f%%" % (scores[1] * 100))
return model
def predict(array, model):
prediction = model.predict(array)
print(prediction)
return prediction
Листинг 1 – Нейроэмулятор разрабатываемой
экспертной системы
С
помощью
библиотеки
PyQT
5
был
разработан
пользовательский оконный интерфейс для данной нейросети.
Интерфейс представлен на Рисунке 1.
Рисунок 1 – Графический интерфейс разрабатываемой
системы
В зависимости от входных значений система высчитывает
результат.
Если
выходной
результат
нейроэмулятора
оказывается больше 45%, то обследуемому будет необходимо
дальнейшее лечение, так как сердечное заболевание имеется.
Заключение
Разработана экспертная система диагностики сердечных
заболеваний. Система имеет удобный графический интерфейс,
и с высокой точностью диагностирует наличие сердечного
заболевания.
Изучены
такие
фреймворки
для
работы
с
нейронными сетями как: Tensor Flow, Keras [7, c. 87]. Система
может использоваться в больничных учреждениях и помогать
врачам
диагностировать
сердечные
пациентов на ранних стадиях.
заболевания
у
своих
Список литературы:
1.
Васильев,
нейросетевого
Москва: Высшая
А.Н.
Тархов
моделирования
Д.А.
/
Принципы
А.Н.
школа,
и
техника
Васильев.
2015.
-
- 270 c.
2. Галушкин, А. И. Нейрокомпьютеры. Учебное пособие /
А.И. Галушкин. - М.: Альянс, 2014. - 528 c.
3. Гелиг, А. Х. Введение в математическую теорию
обучаемых распознающих систем и нейронных сетей. Учебное
пособие / А.Х. Гелиг, А.С. Матвеев. - М.: Издательство СПбГУ,
2014. - 224 c.
4. Кащенко, С. А. Модели волновой памяти / С.А. Кащенко,
В.В. Майоров. -
М.: Либроком, 2014. - 288 c.
5. Круглов, В. В. Искусственные нейронные сети. Теория и
практика / В.В. Круглов, В.В. Борисов. - М.: Либроком, 2002. 382 c.
6. Латыпова, Рамиля Нейронные сети / Рамиля Латыпова. М.: LAP Lambert Academic Publishing, 2012. - 274 c.
7. Омату, Сигеру Нейроуправление и его приложения.
Книга 2 / Сигеру Омату. - М.: Радиотехника, 2000. - 246 c.
Отзывы:
Авторизуйтесь, чтобы оставить отзыви хорошего настроения
удачи
успехов в конкурсе
Наверное было затрачено много времени и труда на работу
Продолжай свое исследование
Админам респект
И продвижения статьи в топы?
Как на счет взаимных комментариев под работами?)
Красиво написанная работа
Так держать
Молодец
Интересная работа!