По данным Всемирной организации здравоохранения (ВОЗ), в 2015 году в Индии было 69,2 миллиона человек, живущих с диабетом.

По оценкам, к 2030 году почти 98 миллионов человек в Индии могут иметь диабет 2 типа, согласно исследованию, недавно опубликованному журналом «Lancet Diabetes & Endocrinology».

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

Это было 768 записей в наборе данных, предоставленном NIDDKD (Национальный институт диабета, болезней органов пищеварения и почек), который использовался для построения модели машинного обучения, которая предсказывает, был ли у человека диабет в его / ее жизни с точностью около 94,5%. о невидимых данных.

Глядя на набор данных, он имеет следующие 8 функций

1.Беременность - количество беременностей
2.ГлюкозаПлазменная концентрация глюкозы 2 часа в пероральном тесте на толерантность к глюкозе
3.Кровяное давление - диастолическое артериальное давление (мм рт.ст.)
4.Толщина кожиТрицепсы - толщина кожной складки (мм)
5.Инсулин 2-часовой сывороточный инсулин (мЕЕ / мл)
6.BMIИндекс массы тела (вес в кг / (рост в м) ²)
7. ДиабетPedigreeFunction (pedi )
8. Возраст в годах

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

В отношении предоставленного набора данных было много проблем. Например, посмотрите на этот график 2-часовой концентрации инсулина в сыворотке крови (мЕд / мл).

Примерно 374 (48,7%) - нули в функции инсулина, что очень маловероятно. Учитывая, что модель будет больше всего зависеть от этой модели, эту аномалию следует устранить.

На самом деле это несбалансированный набор данных, где 0 указывает на здорового человека, а 1 - на диабетика. Проблема с несбалансированным набором данных заключается в том, что модель может отдавать предпочтение классу с большим количеством записей. В нашем случае есть шанс, что это будет в пользу здорового класса. Чтобы противостоять этому, как передискретизация, так и передискретизация применялись индивидуально. Было обнаружено, что передискретизация более эффективна, и она была применена к набору данных.

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

Глюкоза, ИМТ, толщина кожи, возраст играют важную роль в прогнозировании наличия у человека диабета.

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

Один алгоритм может обеспечить точность только от 85 до 90 процентов. Чтобы добиться большего, нам нужно использовать методы ансамбля, такие как упаковка.

Bagging ( Bootstrap aggregating) - это метаалгоритм ансамбля машинного обучения, разработанный для повышения стабильности и точности алгоритмов машинного обучения, используемых в статистической классификации и регрессии. Это также уменьшает дисперсию и помогает избежать переобучения.

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

В алгоритме случайного леса нам нужно настроить гиперпараметры для получения лучших результатов. Необходимо настроить около 5 гиперпараметров, а именно:

  1. Количество функций, которые следует учитывать при каждом сплите.
  2. Максимальное количество уровней в дереве.
  3. Минимальное количество выборок, необходимое для разделения узла.
  4. Минимальное количество выборок, необходимых для каждого конечного узла.
  5. Методика отбора образцов для обучения каждого дерева.

Алгоритм рандомизированного поиска использовался для настройки гиперпараметров с большим диапазоном.

После настройки гиперпараметров к набору данных был применен лучший набор гиперпараметров.

Алгоритм был адаптирован к обучающему набору данных. Точность обучающих данных составила 100%.

Кроме того, когда модель была протестирована на невидимых данных (тестовых данных), она составила 94,5%, а оценка рабочих характеристик приемника (ROC) оказалась равной 0,947.

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

В наборе данных было всего 768 строк, и точность можно еще больше повысить, предоставив модели больше данных.

Будут сделаны и представлены дальнейшие оптимизации.

Спасибо за ваше время!

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