Поскольку это одно из самых изнурительных событий для здоровья, которое может произойти с мозгом, существует огромная потребность в понимании контекстуальных факторов, которые способствуют возникновению инсульта. Используя модели машинного обучения для данных об инсульте, мы можем проанализировать 10 важных факторов, от пола/возраста до статуса курения, чтобы лучше понять, что мы можем сделать, чтобы предотвратить повторения в будущем. Прежде чем мы начнем, мы должны подтвердить пользователю Kaggle «fedesoriano» необработанные данные в формате csv. Большое спасибо за то, что поделились такой ценной информацией о здоровье.

Как и при любом комплексном анализе, необходимо провести некоторый исследовательский анализ данных, чтобы полностью понять структуру набора данных, а также его назначение. Набор данных чрезвычайно удобен для машинного обучения, так как есть четкая целевая переменная, а другие столбцы просто действуют как еще один фактор здоровья, в который нужно углубиться. Когда мы переходим к необработанному CSV-файлу, наиболее важными изменениями, которые произошли, было удаление столбца id, а также переход от категориальных к дискретным переменным для всех качественных столбцов. Это было легко достигнуто с помощью простой системы нумерации, обнуляющей каждый столбец. С максимум 4 качественными параметрами в одном столбце это был необходимый лакомый кусочек жесткого кодирования, чтобы обеспечить полную совместимость с будущими моделями машинного обучения. После этих быстрых исправлений этот высококачественный набор данных был практически готов к обучению машинному обучению.

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

Создав классическое разделение обучения/тестирования 70/30, данные были успешно разделены, после чего была проведена калибровка с помощью базовой оценки точности. С показателем базовой точности ~ 95,723% мы можем с полной уверенностью продолжать набор данных с таким отличным базовым сравнением.

Моделирование машинного обучения началось с отличной ноты, так как первая модель, классификатор упаковки, продемонстрировала ~ 95,316%. За классификатором мешков следовала классическая модель дерева решений. В этой конкретной итерации дерева решений использовался «энтропийный» критерий, и с показателем точности ~ 92,396% с самого начала было ясно, что несколько моделей будут чрезвычайно конкурентоспособными. Это было очень многообещающе, но также означало, что необходима дальнейшая работа по машинному обучению, особенно с некоторыми усилиями по регуляризации или перекрестной проверке.

Визуализация дерева решений в Python была, мягко говоря, хаотичной. Вероятно, это отпугнуло бы кого-то от дальнейшего изучения этого набора данных. Чтобы обойти это и предложить несколько более полезный вариант, я обратился к dtreeviz, созданному профессором Теренсом Парром из Университета Сан-Франциско. Спасибо за создание и распространение такого замечательного инструмента визуализации.

После успешного использования синтаксиса «dtreeviz» была создана визуализация ниже, демонстрирующая серьезную сложность набора данных:

Несмотря на красивую модель, созданную с помощью Дерева решений, точность ~92% явно не лучший вариант. Таким образом, единственный выбор — продолжать использовать другие классы моделей машинного обучения в надежде на более высокую оценку точности. Следующим классом был «Случайный лес», который продемонстрировал улучшенный показатель на уровне 95,519%, а также хорошие результаты по важности признаков. До этого момента класс случайного леса был лучшим вариантом, учитывая его наивысший балл, а также его сильную корреляцию с тремя наиболее важными функциями класса дерева решений. Тремя главными характеристиками для обоих методов были «Средний уровень глюкозы», «ИМТ» и «Возраст» (рис. 2). Позже будет проведен обширный диалог, чтобы сравнить общие результаты, но уже сейчас ясно, что данные соответствуют ведущим исследованиям по частоте инсультов.

Тем не менее, в постоянном стремлении к максимально возможной точности прогнозирования вероятности инсульта с учетом факторов риска следующей методикой для изучения стал AdaBoost. Известный как один из самых распространенных и рудиментарных методов бустинга, надежда заключалась в том, что форсирование ранее созданной модели дерева решений создаст более высокий показатель точности, чем случайный лес. После успешной инициализации AdaBoost с предыдущим деревом решений, выступающим в качестве базовой оценки, итерация AdaBoost дала ~ 95,248%. К сожалению, это означало, что Random Forest по-прежнему оставался лучшей доступной моделью. Учитывая размер набора данных и то, что было упомянуто ранее в отношении набора данных, было бы наивно предполагать, что не существует более высокой достижимой оценки точности. В этот момент, по правде говоря, было трудно продолжать из-за заманчивого характера просто принять 95% как наилучший возможный результат. Однако контекст набора данных слишком важен, чтобы принять 95%. Учитывая огромное влияние инсульта на человека и всю его систему поддержки, 95-процентная точность прогнозирования вероятности инсульта, откровенно говоря, слишком низкая. Другими словами, согласитесь ли вы вы с точностью 95 % для прогнозирования инсульта у члена семьи? Конечно, нет! Таким образом, стало ясно, что впереди еще много работы по машинному обучению.

Следующей техникой, которая была вызвана, на самом деле была более сложная техника повышения, а именно XGBoost. После создания матрицы данных (необходимый шаг для метода) были созданы прогнозы на основе X_test, и базовая оценка RMSE была рассчитана на уровне ~ 0,1979. После этого была рассчитана модель линейной регрессии для количественной оценки RMSE как для обучающего, так и для тестового набора, что привело к ~ 0,1937 и ~ 0,1950 соответственно. Наконец, пришло время перекрестной проверки (CV) в надежде получить еще более низкую оценку RMSE. Модель CV была разработана для 50 усиленных раундов с использованием среднеквадратичной ошибки в качестве метрики. Теперь итоговая оценка RMSE составила 0,193356, что означает, что мы успешно снизили RMSE по сравнению с исходными оценками RMSE! Для визуалов наши усилия специально для XGBoost привели к рисунку 3:

Если проанализировать визуализацию, на ум приходит один вопрос: «Где ИМТ?». Критический конфликт возник между двумя сценариями: 1. Возможно ли, что выходные данные о важности признаков предыдущих моделей были неверными в отношении важности ИМТ для прогнозирования инсульта? 2. Были ли некоторые признаки сильно коррелированы друг с другом в визуализации и впоследствии были опущены? Чтобы получить больше ясности в конфликте, было ясно, что должно было произойти дальше. С визуализацией важности функций для XGBoost (рис. 4) у нас будет возможность сравнить все модели по принципу «яблоки к яблокам», что абсолютно необходимо для правильного сравнения очень успешных конкурентоспособных моделей.

Как видно на рисунке 4, конфликт был основан на сценарии 2. К счастью, это означает, что XGBoost, возможно, является самой надежной моделью, созданной на сегодняшний день для точного прогнозирования вероятности инсульта. Для тех читателей, которые все еще настойчиво борются с моей попыткой объяснить XGBoost, большое спасибо за то, что дочитали до сих пор.

Для тех, кто ищет окончательный подход на высоте 30 000 футов в облаках к центральному вопросу о том, какую модель следует использовать, обратитесь к рисунку 5.

Рисунок 5 был создан путем построения показателя точности каждой соответствующей модели, упомянутой в статье, за исключением XGBoost. Как видно из множества моделей с высокой оценкой, безусловно, есть аргумент в пользу любой модели, в первую очередь случайного леса за ее самый высокий показатель точности из 4 моделей, визуализированных выше. Однако для тех, кто ищет больше контроля при оптимизации своих моделей, особенно в отношении регуляризации и перекрестной проверки, ясно, что из всех представленных моделей XGBoost является наиболее полезной моделью. Есть много вещей, которые нужно изучить, начиная от «количества раундов повышения» и заканчивая «метриками» и «альфа», и эта итерация XGBoost просто царапает поверхность настройки. Чтобы провести элементарную аналогию этой ситуации, если вы являетесь пользователем Apple (включая меня), вы ищете рисунок 5 и просто делаете вывод, что достаточно многих моделей; но если вам нужна индивидуальная настройка таких моделей, вы являетесь пользователем Android.

Чтобы лучше контекстуализировать это путешествие, важно понимать ценность такого набора данных. Возможность точно предсказать вероятность инсульта — это действительно следующий шаг в цифровом здравоохранении. Учитывая снижение барьера ML и более высокую доступность (учитывая, что я очень новичок в этой области), мы все должны делать все возможное для дальнейшего поощрения исследований в области здравоохранения. Для некоторых наиболее серьезных событий, связанных со здоровьем, кроме инсультов, таких как инфаркт миокарда (ИМ) и эпилептические припадки, существует острая потребность в более сложной статье, в которой используются некоторые из принципов машинного обучения, которые использовались здесь, на гораздо более высоком уровне сложности для большее понимание. Как скажет вам любой студент, изучающий машинное обучение, самый важный вопрос, который необходимо решить в первую очередь, касается качества исходных данных. Как и все технологические эволюции, данные о здоровье передаются сверху вниз, а это означает, что люди с самым высоким социально-экономическим статусом получают плоды новых технологий быстрее, чем любая другая группа общества. Тем не менее, в случае серьезных нарушений здоровья, таких как инсульты и инфаркты миокарда, имеются обширные исследования, показывающие, что группы с низким доходом в гораздо большей степени страдают от крупных событий со здоровьем из-за сниженной способности управлять непредвиденными затратами, неожиданной потери источника дохода или повышенного риска. риск ожирения из-за дефицита/недоедания в городах (https://www.iied.org/urban-food-insecurity-malnutrition-are-about-more-just-food). Следовательно, мы должны видеть рыночный спрос снизу вверх, несмотря на технологическое предложение сверху вниз. Кто это исправляет? Мощные технологические компании, а именно Apple, лучше всех могут воспользоваться этой возможностью.

Учитывая, что я не являюсь экспертом в области инсульта, важно сравнить эти результаты с ранее опубликованными научными исследованиями, чтобы выполнить окончательную перекрестную проверку результатов в реальной жизни. Несмотря на то, что в моделях есть небольшие различия, явный вывод заключался в том, что три основные характеристики были одинаковыми: средний уровень глюкозы, ИМТ и возраст. Впоследствии важно убедиться, что это согласуется с реальными научными исследованиями. Беме и др. Al обсуждают важность диеты и здоровья сердечно-сосудистой системы, что коррелирует со средним уровнем глюкозы (Boehme et. Al, 2017). Кроме того, Джонсон и др. Al демонстрируют совпадение, заявляя, что диета, возраст, курение, низкий уровень физической активности и абдоминальное ожирение являются важными факторами для инсульта (Johnson et. Al, 2016). Наконец, остальные факторы возраста и социально-экономического статуса подробно обсуждались Johnston et. Ал. Исследовательская группа отметила, что страны с низким уровнем доходов явно больше подвержены инсультам, и что в настоящее время отсутствуют современные технологии, позволяющие в полной мере отразить последствия инсульта в среде с низким уровнем доходов (Johnston et. Al, 2009).

Путь к более высокой точности прогнозирования, основанный на наборе необработанных данных, привел как к внутренним, так и к внешним перекрестным ссылкам. На внутреннем уровне регуляризация и перекрестная проверка позволили потенциально улучшить существующие модели с более низкими показателями ошибок и более высокими показателями точности; внешне ключевые выводы моделей машинного обучения были подтверждены ранее опубликованными научными работами по инсультам. Таким образом, теперь можно сделать вывод, что этот набор данных успешно помог предсказать вероятность инсульта путем анализа 10 критических факторов. Это путешествие помогло нам проверить факторы «Большой тройки» для инсульта, а также продемонстрировало различные методы машинного обучения и их соответствующие возможности для применения в других приложениях здравоохранения. Это всего лишь начало гораздо более глубоких исследований в области здравоохранения.

Большое спасибо за чтение.

Кредиты:

  • Пользователь Kaggle fedesoriano
  • создатель dtreeviz, профессор Университета Сан-Франциско Terence Parr

Научные источники:

Беме, Амелия К., Чарльз Эсенва и Митчелл С.В. Элкинд. «Факторы риска инсульта, генетика и профилактика». Исследование тиражей 120.3 (2017): 472–495.

Джонсон, Уолтер и др. «Инсульт: необходим глобальный ответ». Бюллетень Всемирной организации здравоохранения 94.9 (2016): 634.

Джонстон, С. Клэйборн, Шанти Мендис и Колин Д. Мазерс. «Глобальные различия в бремени инсульта и смертности: оценки на основе мониторинга, наблюдения и моделирования». The Lancet Neurology 8.4 (2009): 345–354.