КурсоваяМашинное обучениеГод: 2024МУИВ: Московский университет им. С.Ю. Витте
👁 30💼 0

Готовая курсовая: Ансамбли для диагностики диабета

Загружена: 23.02.2026 10:42

Исследование применения ансамблевых методов машинного обучения (Random Forest, Gradient Boosting, Bagging, Stacking, Voting) для классификации диабета на наборе Pima Indians. Реализованы предобработка (замена 0 на медиану, масштабирование), обучение моделей и оценка по Accuracy, Recall, F1 и ROC‑AUC; представлены готовые скрипты на Python.

Содержание

Введение	2
1.	Аналитическая часть	5
1.1.	Основные методы диагностики заболеваний	5
1.2.	Введение в методы ансамблевого обучения в машинном обучении. Теоретическая часть	6
1.3.	Модели ансамбля в медицине	7
1.4.	Текущее развитие научных проблем	8
2.	Практическая часть	10
2.1.	Выбор данных и сбор	10
2.2.	Анализ и исследование данных.	11
2.3.	Предобработка данных	14
2.3.1.	Обработка пропущенных значений	14
2.3.2.	Масштабирование признаков	14
2.3.3.	Разделение данных на две выборки: обучающую и тестовую	15
2.4.	Реализация ансамблевых методов	15
2.5.	Применение дополнительных ансамблиевых методов	25
2.6.	Улучшение ансамблиевых моделей	27
Заключение	30
Список источников	33
Приложение	35

Введение

Здравоохранение сталкивается с множеством серьезных проблем в современном мире. Одной из них является эффективная и своевременная диагностика заболеваний. На раннем этапе диагностика способствует улучшению предоставления лечения и снижению убытков человеческой жизни и социально-экономических затрат, связанных как с острыми, так и с хроническими заболеваниями, именно здесь и возникает потребность в разработке новых методов диагностики и их внедрения.
В силу продолжающих расти информационных технологий, становится очевидным, что интеграции в разные области жизни неминуемы, все медицинские данные, доступные общественности, становятся пищей для моделей машинного обучения, которые становятся надежным инструментом для анализа и интерпретации таких данных. Методы включают в себя ансамблевые методы, подобные случайным лесам, градиентному бустингу, бэггингу и стекингу, поскольку они считаются достаточно функциональными с точки зрения задач классификации и прогнозирования и также совмещают различные методы для более точных и последовательных результатов. 
Основание для анализа в том, что объект исследования считается не совсем точным. Необходимо создать более интеллектуальные и точные системы с использованием машинного обучения. В данном случае ансамблиевые модели повышают качество выходных данных после обучения, что положительно сказывается на диагностике заболеваний. Тем не менее, модели машинного обучения – ключевой аспект будущих исследований, а так же профилактики и лечения заболеваний с учетом особенностей каждого пациента. 

Степень востребованности темы
Компании здравоохранения на современном этапе сталкиваются со
множеством проблем, одной из которых является четкое и своевременное выявление болезней. Процесс ранней диагностики, кроме того, что он повышает эффективность лечения, позволяет избежать дополнительных потерь,  будь то человеческие жизни, или экономические и социальные убытки, вызванные как острыми, так и хроническими заболеваниями. Именно в такой ситуации может понадобиться использование новых методов их выявления и внедрения. Ну а информационные технологии на сегодняшний день становятся все более популярными, а объем медицинских данных, доступных широкой аудитории, растет, то в этом смысле машинное обучение – то отличная возможность для работы с данными. В целом, в машинном обучении древеса решений, алгоритмы регрессии больших пакетов и стекинг считаются хорошими способами категоризации и выдачи прогнозов. И дело в том, что ансамблевые методы дают возможность использовать сразу несколько моделей и в результате получать более дельные и последовательные результаты, чем тогда, когда используется только один алгоритм. Именно на этом основании была выбрана для изучения соответствующая тема о необходимости создания таких систем современных методов диагностики, а так-же  нужно отметить, что ансамблевые методы могут помочь выявить болезнь, даже когда ресурсы ограничены, и нужно срочно принимать решение. Ну а также важно отметить, что работы в этом направлении способствуют развитию персонализированной медицины, когда лечение болезни и профилактика болезней основаны на индивидуальных характеристиках пациента, что является одним из главных направлений в здравоохранении.
Данная курсовая работа посвящена исследованию эффективности ансамблевых методов машинного обучения для построения диагностических моделей заболеваний на примере конкретной задачи распознавания болезни.
Цели исследования:
1.	Анализ и выбор набора данных: изучение доступных медицинских наборов данных и выбор наиболее подходящего для решения проблемы диагностики диабета.
2.	Предварительная обработка данных: очистка данных, обработка пропущенных значений и масштабирование признаков при подготовке данных для обучения моделей.
3.	Реализация ансамблевых методов: разработка и реализация различных ансамблевых методов, включая случайные леса, градиентный бустинг, бэггинг и стекирование с использованием Python и Scikit-learn.
4.	Обучение и оценка моделей: обучение моделей на обучающем наборе, оценка их производительности с помощью нескольких показателей (точность, полнота, F-мера, ROC-AUC) и перекрестная проверка производительности.
5.	Сравнительное исследование: сравнение эффективности ансамблевых методов, будут выбраны наиболее эффективные для текущей проблемы, а результаты будут обсуждены.
6.	Интерпретации моделирования: изучить важность признаков и сформулировать результаты моделей относительно понимания факторов диагностики заболеваний.

Заключение

Результаты исследования
Следующая курсовая работа была выполнена таким образом, чтобы отразить и достичь основной цели исследования: изучить эффективность методов ансамблевого обучения для диагностики заболеваний для конкретного медицинского набора данных, ориентированного на диагностику диабета.
Ниже приведены основные этапы исследования:
1. Анализ и выбор набора данных: были изучены доступные медицинские базы данных и получена наиболее релевантная для случая диагностики диабета. Это дало возможность получения первичных данных для дальнейшего анализа с учетом их релевантности рассматриваемым случаям.
2. Предварительная обработка данных: данные прошли дедупликацию пропущенных значений и выбросов с последующей заменой неправильных значений медианой признаков. Далее было выполнено стандартное масштабирование данных с использованием стандартного масштабатора, чтобы сделать обучение модели эффективным с ними.
3. Внедрение ансамблевых методологий: были разработаны и внедрены различные ансамблевые методы, включая случайный лес, градиентный бустинг, бэггинг, стекирование и голосование, что позволило эффективно объединять выбранные модели для более высокой точности и стабильности прогнозируемых результатов.
4. Обучение и оценка моделей: выбранные модели, обученные на сбалансированных наборах данных, сгенерированных SMOTE, расширили возможности классификаторов по созданию неперекрывающихся границ принятия решений. Все модели оценивались с использованием метрик: чувствительность, точность, отзыв, оценка F1 и ROC-AUC с перекрестной проверкой согласованности результатов. 

6.	Сравнительное исследование: было проведено сравнительное исследование производительности гетерогенных методов для определения подходящей модели для диагностики диабета. Многие из метрик случайных лесов, градиентного бустинга, бэггинга и стекирования оказались наиболее эффективными моделями по большинству метрик.
Вывод, к которому было подведено в рамках данной работы:
1. Относительная эффективность некоторых методов: ансамблевые модели, такие как Random Forest и Gradient Boosting, были очень эффективны для обнаружения диабета. Контейнеры для обучения алгоритмов дали отличные результаты по критериям точности и стабильности по сравнению с базовыми алгоритмами.
2. Предварительная фильтрация и выделение признаков: соответствующим образом опережающая предобработка и выделение признаков во многом повысили производительность моделей. Применение в работе методов SelectKBest, SMOTE увеличило качество обучения и снизило риск переобучения.
3. Поиск адекватных значений гиперпараметров: подобраны лучшие настройки оптимизированных гиперпараметров для моделей с помощью RandomizedSearchCV, что повысило производительность этих моделей. О, как важно вот в таком числе понять важность составления точных настроек для создания подражаний самым благоприятным резалтам.
4. Сбалансированный подход к проблемам точности диагностики и времени обучения: поскольку, конечно же, все модели, кроме некоторых, таких как Bagging и Advanced Stacking, процессы по улучшению их точности занимают много времени для таких как подготовка. 
5. Персонализированная медицина: исследоваться возможности утверждают, что применение машинного обучения, в особенности ансаблевых методов, служит точно ускорением продвижения индивидуальной медицины. Модели, разработанные индивидуально, учитывают отличия и характеристики каждого пациента, благодаря чему точность диагностики возраста минимум в разы, а результативность лечения.
Подведение итогов исследования
В данной работе исследована эффективность применения ансамблевых методов машинного обучения в диагностике диабета, что подтверждает их пригодность для применения в медицинской науке. Представенные данные указывают на возможность создания диагностических систем, которые будут иметь лучшую точность и надежность и помогут улучшить уровень оказания медицинской помощи, а также социальную деятельность здравоохранения персонализированная медицина.
Несмотря на это, существует практическая возможность для улучшения модели или ее раздела и расширения исследования, что позволит получить еще лучшие результаты в части точности и эффективности. Использование машинного обучения в медицинской практике предлагает бесконечные новые области в области прогнозной диагностики и качественного лечения заболеваний, способствуя эффективному использованию ресурсов и удовлетворотельности качеством жизни пацинетов.

Список литературы

1.	Brownlee, J. Machine Learning Mastery with Python: Understand Your Data, Create Accurate Models, and Work Projects End-to-End / J. Brownlee: Machine Learning Mastery, 2018.
2.	Pedregosa, F., Varoquaux, G., Gramfort, A., Michel, V., Thirion, B., Grisel, O., … & Duchesnay, E. Scikit-learn: Machine Learning in Python / F. Pedregosa, G. Varoquaux, A. Gramfort, V. Michel, B. Thirion, O. Grisel, … & E. Duchesnay. – Journal of Machine Learning Research, 12, 2825-2830, 2011. (Journal Series).
3.	McKinney, W. Data Structures for Statistical Computing in Python
/ W. McKinney. – Proceedings of the 9th Python in Science Conference, 445, 51-56, 2010.
4.	VanderPlas, J. Python Data Science Handbook: Essential Tools for Working with Data / J. VanderPlas. – O’Reilly Media, 2016.– (Handbooks Series).
5.	Raschka, S. Python Machine Learning / S. Raschka. – Packt Publishing, 2015.
6.	Bishop, C. M. Pattern Recognition and Machine Learning / C. M. Bishop. – Springer, 2006.
7.	Friedman, J., Hastie, T., & Tibshirani, R. The Elements of Statistical Learning / J. Friedman, T. Hastie, R. Tibshirani. – Springer, 2001.
8.	Imbalanced-learn: A Python Toolbox to Tackle the Curse of Imbalanced Datasets in Machine Learning Доступно по ссылке: https://imbalanced- learn.org
9.	Brownlee, J. Mastering Machine Learning Algorithms: Expert
techniques for implementing popular machine learning algorithms and solving complex statistical problems / J. Brownlee. – Machine Learning Mastery, 2020.
 
10.	Géron, A. Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems / A. Géron. – O’Reilly Media, 2019.
11.	Kotlowski, J., & Zientara, M. Boruta: An all relevant feature selection method / J. Kotlowski, M. Zientara. – WSEAS Transactions on Systems, 11(2), 166-172, 2016.
12.	Li, L., & Gutierrez, J. An introduction to Bayesian Optimization /
L. Li, J. Gutierrez. – arXiv preprint arXiv:1807.02811, 2018.
13.	Pima	Indians	dataset:	URL: https://github.com/jbrownlee/Datasets/blob/master/pima-indians-diabetes.data.csv (Дата обращения 08.11.2024).

Подробное описание

📘 О чем эта работа

Курсовая посвящена разработке и сравнительному исследованию ансамблевых моделей машинного обучения для задач диагностики сахарного диабета. Объект исследования — набор Pima Indians Diabetes (768 записей, 9 признаков), предмет — построение и оценка ансамблей (Random Forest, Gradient Boosting, Bagging, Stacking, Voting) для бинарной классификации Outcome.

📚 Что внутри

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

  • Исходный набор: Pima Indians Diabetes (768 записей, атрибуты: Pregnancies, Glucose, BloodPressure, SkinThickness, Insulin, BMI, DiabetesPedigreeFunction, Age, Outcome).
  • Предобработка: обнаружение "нулевых" значений в ряде признаков, замена 0 на медиану, масштабирование StandardScaler, стратифицированное разделение 80/20, использование SMOTE для балансировки в описании итогов.
  • Реализация моделей: RandomForest, GradientBoosting, Bagging, Stacking (с мета‑оценщиком LogisticRegression), Voting (hard/soft), а также базовые классификаторы LogisticRegression, SVM, KNN.
  • Оценка: метрики Accuracy, Precision, Recall, F1, ROC‑AUC; кросс‑валидация (cv=5); сравнение времени обучения моделей.
  • Улучшения: оптимизация гиперпараметров (GridSearchCV/RandomizedSearchCV), отбор признаков (SelectKBest, RFE), альтернативные масштабаторы (MinMax, Robust), конвейеры для воспроизводимости.
  • Визуализации: распределения признаков, матрицы результатов, графики важности признаков (feature_importances_, permutation importance).
  • Код и репродуцируемость: прилагаются скрипты 'model_training.py' и 'model_ensemble.py', сохранение моделей в .pkl и таблицы результатов в CSV.

📊 Для кого подходит

Полезно студентам и преподавателям профильных направлений (машинное обучение, прикладная информатика, биомедицинская информатика) для выполнения курсовых/лабораторных работ, а также разработчикам ML‑прототипов в медицине, желающим быстро получить рабочий пайплайн на Python.

✨ Особенности

Конкретика и готовность к использованию: в работе приведены реальные метрики для каждой модели (Gradient Boosting показал наивысшую точность и ROC‑AUC, Random Forest и Stacking близки по качеству), а также сравнительный анализ времени обучения. Важнейшие признаки, влияющие на предсказание диабета — Glucose, BMI и Age — подтверждены графиками важности.

Практические артефакты: готовые Python‑скрипты с пайплайнами, сохранённые модели (.pkl) и CSV с итоговыми метриками — всё это позволяет воспроизвести результаты и адаптировать их под другие наборы данных.

❓ Частые вопросы

Подойдет ли для моего ВУЗа?
Структура (введение, аналитическая и практическая части, заключение, список литературы, приложения) соответствует стандартным требованиям курсовых работ и легко адаптируется под локальные методички.

Можно адаптировать?
Да. Код модульный: можно заменить набор данных, настроить масштабирование, метод обработки пропусков, добавить GridSearch или другие модели (например, XGBoost) и быстро получить новые результаты.