Перейти к:
Оценка вероятности тромбоэмболии легочной артерии при помощи модели машинного обучения
https://doi.org/10.15829/1560-4071-2024-5679
EDN: QHZHPQ
Аннотация
Цель. Разработать и валидировать модель машинного обучения, предназначенную для выявления подозрения на тромбоэмболию легочной артерии (ТЭЛА) по различным клиническим признакам из электронных медицинских карт (ЭМК) пациентов, обращающихся за амбулаторной и стационарной помощью.
Материал и методы. Данные 19730 пациентов из 7 регионов Российской Федерации были взяты для анализа. Период накопления данных ЭМК: с 21.03.2007 по 04.02.2022. В качестве диагностических признаков использованы жалобы, клинические признаки, результаты лабораторных исследований, сопутствующие заболевания. У 1379 пациентов была диагностирована ТЭЛА. Диагностика ТЭЛА была на основании кодов МКБ-10 в заключительном диагнозе случая лечения. Было применено 7 алгоритмов машинного обучения для выполнения задачи диагностики ТЭЛА: XGBoost, LightGBM, CatBoost, Logistic Regression, MLP Classifier, Random Forest Classifier, Gradient Boosting Classifier.
Результаты. Модель на основе алгоритма Gradient Boosting Classifier была выбрана для дальнейшей проспективной апробации: чувствительность 0,899 (95% доверительный интервал (ДИ): 0,864-0,932), специфичность 0,875 (95% ДИ: 0,863-0,86), площадь под ROC-кривой 0,952 (95% ДИ: 0,938-0,964). Наибольшую значимость для предсказания имели признаки: кашель, дыхательные нарушения, креатинин крови, температура тела, общая слабость, частота сердечных сокращений, частота дыхания, отеки, антигипертензивная терапия, сатурация и возраст.
Заключение. Обученная модель рассчитана для использования при первичном обращении за медицинской помощью пациентов с жалобами и подозрением на ТЭЛА вне зависимости от вида помощи.
Ключевые слова
Для цитирования:
Гаврилов Д.В., Андрейченко А.Е., Ермак А.Д., Кузнецова Т.Ю., Гусев А.В. Оценка вероятности тромбоэмболии легочной артерии при помощи модели машинного обучения. Российский кардиологический журнал. 2024;29(4):5679. https://doi.org/10.15829/1560-4071-2024-5679. EDN: QHZHPQ
For citation:
Gavrilov D.V., Andreichenko A.E., Ermak A.D., Kuznetsova T.Yu., Gusev A.V. Assessment of pulmonary embolism probability using a machine learning model. Russian Journal of Cardiology. 2024;29(4):5679. (In Russ.) https://doi.org/10.15829/1560-4071-2024-5679. EDN: QHZHPQ
Сокращения: ДИ — доверительный интервал, ТЭЛА — тромбоэмболия легочной артерии.
Тромбоэмболия легочной артерии (ТЭЛА) представляет собой неотложное состояние, имеющее потенциально высокий риск смерти. Распространенность ТЭЛА среди острых состояний уступает только инфаркту миокарда и инсульту, занимая третье место в мире [1]. Несмотря на современные алгоритмы диагностики и подходы к терапии, смертность от этого заболевания остается высокой и составляет 30% при не леченной и 8% при леченной ТЭЛА [2]. При этом имеется проблема своевременной диагностики этого состояния: из проанализированных >370 тыс. смертей от ТЭЛА 34% умерли внезапно до начала терапии, у 59% ТЭЛА как причина летального исхода была диагностирована лишь посмертно [3].
Сложность распознавания ТЭЛА обусловлена неспецифичностью клинических проявлений, которые в значительной мере совпадают с другими смежными заболеваниями: острым коронарным синдромом, сердечной недостаточностью, пневмонией, обструктивной болезнью легких [4]. Для решения этой проблемы клинические признаки были объединены в алгоритмы, построенные с использованием логистической регрессии и позволяющие оценить вероятность ТЭЛА на основании балльной оценки каждого признака. Разработанные алгоритмы Geneva [5] и Wells [6] были валидированы и рекомендованы к практическому использованию [7], в то время как точность данных алгоритмов не признавалась высокой. Например, для шкалы Wells площадь под ROC-кривой 0,72, а валидация на проспективных данных пациентов в стратифицированных группах с низкой, средней и высокой вероятностью показала распространенность ТЭЛА 2%, 15% и 43% [8].
Важным аспектом ТЭЛА является то, что возросшая настороженность и увеличивающаяся доступность диагностических инструментальных методов, таких как компьютерная томография (КТ) легочных артерий (ЛА), привели к тому, что клиницисты сегодня подозревают ТЭЛА и инициируют соответствующее обследование чаще, чем ранее: подтверждение ТЭЛА среди пациентов, проходящих диагностическое обследование, в недавних исследованиях составило всего 5% против показанной в начале 1980-х годов распространенности, составившей ~50% [9]. Имеющийся тренд свидетельствует об увеличении финансовых трат при подозрении на ТЭЛА и рисков осложнений диагностических процедур. Таким образом, крайне важно, чтобы современные диагностические алгоритмы для ТЭЛА были способны безопасно исключать ТЭЛА в популяциях пациентов с низкой претестовой вероятностью заболевания.
Методы машинного обучения позволяют создавать модели, способные включать в анализ неограниченное количество клинических признаков, определять их значимость для рассчитываемого события, повышать точность оценки, а работа таких моделей с данными электронных медицинских карт (ЭМК) более точно поддерживает клинические решения [10]. Эти особенности являются потенциалом как для улучшения мониторинга пациентов с высоким риском ТЭЛА и для ее более ранней диагностики, так и для безопасного исключения этого заболевания.
Целями данного исследования стали разработка и валидация модели машинного обучения для выявления подозрения на ТЭЛА по клиническим признакам из ЭМК.
Материал и методы
Источник данных
Источником информации для создания модели послужила база данных (БД) платформы прогнозной аналитики "Webiomed", содержащая деперсонифицированные формализованные данные ЭМК пациентов реальной клинической практики. Данные были собраны ретроспективно и деидентифицированы в соответствии с законами Российской Федерации о персональных данных и, следовательно, не требовали одобрения этического комитета и добровольного согласия пациентов. На обработку взяты данные 2,9 млн пациентов, связанные с ними обращения в медицинские организации амбулаторного и стационарного звена в период с 01.01.2001 до 31.12.2022, находящиеся в следующих регионах Российской Федерации: Кировская, Челябинская, Волгоградская области, Ямало-Ненецкий автономный округ, Республика Карелия, Пермский и Алтайский край. Данные о пациентах включают в себя: демографические, лабораторные и инструментальные данные, симптомы, лекарственные препараты и диагнозы.
При описании построения модели были использованы рекомендации TRIPOD (https://bmcmedicine.biomedcentral.com/articles/10.1186/s12916-014-0241-z/tables/1).
Когорта пациентов для формирования набора данных
В БД были использованы зарегистрированные случаи лечения. Под случаем лечения понимаются записи ЭМК, соответствующие следующим условиям: даты начала и завершения, кодирование случая при помощи кодов МКБ-10, медицинские документы, соответствующие периоду начала и завершения случая.
Критерии первичного отбора пациентов из БД:
- возраст пациента на дату начала случая старше 14 лет;
- амбулаторный или стационарный случаи лечения;
- имеющиеся заболевания, со схожей клинической картиной ТЭЛА, отобранные по заключительным диагнозам случая лечения согласно кодам и подкодам МКБ-10: пневмония (J12-J16, J18); острый бронхит (J20-J22); хронический бронхит (J41, J42); хроническая обструктивная болезнь легких (J43, J44); бронхиальная астма (J45); сердечная недостаточность (I50); ТЭЛА (I26).
Собранные случаи лечения были разделены на две группы: с ТЭЛА и без ТЭЛА (пневмония, острый бронхит, хронический бронхит; хроническая обструктивная болезнь, бронхиальная астма, сердечная недостаточность).
Подготовка данных
В набор данных (НД) были включены случаи лечения, в которых присутствовали значения признаков "возраст" и "пол"; если у уникального пациента было несколько последовательных либо одновременных случаев, то оставляли один с наибольшей заполненностью значений признаков. Для всех отобранных пациентов из БД были выгружены значения признаков на даты случая лечения и за 4 дня до даты начала случая (табл. 1). Признаки отбирались согласно знаниям о клинических проявлениях описанных выше заболеваний, присутствию их в ЭМК. Такие признаки, как иммобилизация, болезненная пальпация вен ног, хирургическая операция, отсутствовали в ЭМК и не были взяты для анализа. Если значений у признаков было несколько в этот период, то бралось самое позднее. Если значения количественных признаков оказывались вне пределов допустимых значений, то данные значения признаков удалялись из итогового НД.
Для бинарных признаков пропущенные значения были заполнены значениями "нет". Для методов машинного обучения Logistic Regression, MLP Classifier, Gradient Boosting Classifier и Random Forest Classifier пропуски в значениях количественных признаков были заполнены фиксированным значением: -10000. Для методов машинного обучения XGBoost, CatBoost и LightGBM пропуски не заполнялись.
Общая схема подготовки данных и дизайн исследования представлены на рисунке 1.
Описание процесса разработки и оценки/валидации модели
На сформированном НД на языке программирования Python были обучены модели машинного обучения, диагностирующие ТЭЛА исходя из значений 23 признаков пациентов. Мы сравнили 7 различных методов машинного обучения к созданию моделей на основе табличных данных: Logistic Regression (логистическая регрессия), MLP Classifier (многослойный перцептон), Random Forest Classifier (алгоритм случайного леса), XGBoost, LightGBM, CatBoost, Gradient Boosting Classifier (алгоритмы градиентного бустинга).
Для методов XGBoost, LightGBM, CatBoost использовались одноименные библиотеки, для всех остальных методов библиотека Scikit-learn.
Отдельный регион был выбран для внешней валидации моделей (рис. 1) согласно рекомендациям по валидации многофакторных предиктивных моделей TRIPOD. Оставшийся НД был разделен случайным образом в соотношении 80% — выборка для обучения, 20% — для тестирования.
Для оценки точности моделей использовался ROC-анализ и основные метрики точности при пороге срабатывания, определенном для максимального значения индекса Юдена для чувствительности и специфичности. Использовались метрики точности: чувствительность (Recall), специфичность, прогностическая ценность положительного класса (Precision), прогностическая ценность отрицательного класса, F1 (положительный класс), F1 (отрицательный класс), площадь под ROC-кривой, точность.
Выбор наилучшей модели проводился по максимальному значению площади под ROC-кривой и с учетом минимального изменения оптимального порога срабатывания между тестовой выборкой и выборкой внешней валидации. Доверительные интервалы (ДИ) для метрик точности и площади под характеристической кривой (95%) были рассчитаны методом Бутстрэп с числом итераций 1000 с помощью функции sklearn.utils.resample. Значимость признаков для выбранной модели определялась путем расчета относительного влияния каждой переменной на результат работы модели с помощью метода SHAP.
Статистический анализ. Статистический анализ и построение моделей машинного обучения выполняли на языке программирования Python, версия 3.9. Нормальность распределения количественных переменных оценивалась при помощи критерия Шапиро-Уилка, их данные отражены в виде медианы с указанием межквартильного размаха [Q25%; Q75%], категориальных — в виде долей (N, %). Сравнение количественных переменных в группах с целевым событием и без проводили при помощи теста Манна-Уитни, категориальных — при помощи χ2 Пирсона, значение p<0,05 считалось статистически значимым.
Таблица 1
Клинические признаки, отобранные для обучения модели
№ |
Признак |
Характеристика признака |
1 |
Возраст пациента |
лет |
2 |
Пол |
мужской/женский |
3 |
Рост |
см |
4 |
Масса тела |
кг |
5 |
Температура тела |
С |
6 |
Систолическое артериальное давление |
мм рт.ст. |
7 |
Диастолическое артериальное давление |
мм рт.ст. |
8 |
Кровохарканье |
|
9 |
Кашель |
|
10 |
Набухание вен шеи |
|
11 |
Цианоз кожи |
|
12 |
Нарушение сознания |
|
13 |
Дыхательные нарушения* |
|
14 |
Боль в грудной клетке |
|
15 |
Тромбоз глубоких вен ног** |
код МКБ-10 I80.0-80.3 |
16 |
Злокачественные новообразования** |
код МКБ-10 C00-C97 |
17 |
Сатурация |
% |
18 |
Табакокурение |
|
19 |
Частота дыхания |
в мин |
20 |
Частота сердечных сокращений |
в мин |
21 |
Отеки |
|
22 |
Антигипертензивная терапия |
|
23 |
Креатинин крови |
мкмоль/л |
Примечание: * — признак "дыхательные нарушения" сформирован из признаков "одышка", "одышка в покое", "одышка при физической нагрузке", "инспираторная одышка", "экспираторная одышка"; ** — признаки сформированы на основании данных о заболеваниях пациента, которые были диагностированы до даты обращения за помощью по рассматриваемому случаю лечения.
Рис. 1. Схема отбора данных и дизайн исследования.
Сокращения: ТЭЛА — тромбоэмболия легочной артерии, ХОБЛ — хроническая обструктивная болезнь легких.
Результаты
Данные пациентов, вошедших в итоговый набор, были получены в период с марта 2007 по февраль 2022гг. Всего модели обучались на данных 19730 пациентов. В обучающей выборке пациентов с целевым событием было 7,3% (791 из 10831), в тестовой — 7,3%, валидационной — 6,3%. Состав НД с указанием разделения на обучающую, тестовую выборки и выборку для внешней валидации приведен в таблице 2. В среднем, пациенты перенесшие ТЭЛА были старше, женского пола, чаще у них встречались кровохарканье, симптомы дыхательных нарушений, цианоз кожи и отеки, диагностированы злокачественные новообразования (ЗНО) и тромбофлебит, имели повышенный креатинин крови, частоту сердечных сокращений. Полное описание признаков НД для обучения приведено в таблице 3. Такие признаки, как симптомы, диагнозы, являющиеся булевскими, половозрастные характеристики, являющиеся обязательными, имеют полную заполненность в НД. Количественные признаки, такие как измеряемые параметры при осмотре и лабораторные, имеют различную распространенность, меньшую чем 100%. Заполненность значений признаков итогового НД представлена на рисунке 2.
Были применены 7 алгоритмов машинного обучения для построения моделей. Основные метрики диагностической точности вместе с 95% ДИ для всех исследованных моделей приведены в таблицах 4 (тестовая выборка) и 5 (внешняя валидация). Из всех исследованных моделей наименьшую точность на одном и том же НД показала модель MLP Classifier. Остальные модели, а именно LightGBM, Random Forest Classifier и Logistic Regression, CatBoost, XGBoost и Gradient Boosting Classifier показали сравнимые метрики, и значения площади под ROC-кривой пересекались в пределах ДИ. Диапазон значений площади под ROC-кривой у этих моделей на тестовой выборке составил (0,934-0,954), а на выборке внешней валидации (0,909-0,927).
Наименьшую разницу в порогах срабатывания (0,002) на тестовой выборке и при внешней валидации показала модель на основе алгоритма Gradient Boosting Classifier, поэтому данная модель была выбрана наиболее подходящей для проспективной апробации.
ROC-кривая модели Gradient Boosting Classifier представлена на рисунке 3. Выход модели представляет собой число от 0 до 1 — вероятность наличия заболевания ТЭЛА у пациента. Порог классификации для модели 0,063. Если выход модели ниже отметки 0,063, то вероятность наличия ТЭЛА у пациента низкая, если выше — вероятность наличия ТЭЛА у пациента высокая. Порог классификации был подобран с помощью максимума индекса Юдена. Значимость признаков для модели, построенной с помощью Gradient Boosting Classifier, приведена на рисунке 4.
Таблица 2
Состав выборок для обучения, тестирования и внешней валидации
Характеристики |
Обучающая выборка |
Тестовая выборка |
Внешняя валидация |
Уникальные пациенты |
10831 |
2708 |
6191 |
Пациенты без целевого события (класс 0) |
10040 |
2510 |
5801 |
Пациенты с целевым событием (класс 1) |
791 |
198 |
390 |
Рис. 2. Исходная заполненность значений признаков НД.
Примечание: синий цвет — значение признака заполнено, желтый — не заполнено. Цветное изображение доступно в электронной версии журнала.
Сокращения: АД — артериальное давление, SpO2 — сатурация крови кислородом.
Таблица 3
Распространенность признаков и их значений в НД
Признак |
Параметр |
Класс 0 (N=18351) |
Класс 1 (N=1379) |
Вся выборка (N=19730) |
P value |
SpO2 |
Min-Max значения |
(54,0; 100,0) |
(24,0; 100,0) |
(24,0; 100,0) |
p<0,001*** |
Медиана (25, 75 процентили) |
97,0 (95,0, 98,0) |
95,0 (90,0, 97,0) |
97,0 (95,0, 98,0) |
p<0,001** |
|
Число заполненных записей |
4631 (25,0%) |
864 (63,0%) |
5495 (28,0%) |
||
Антигипертензивная терапия |
Отрицательное значение |
16405 (89,4%) |
930 (67,4%) |
17335 (87,9%) |
p<0,001* |
Положительное значение |
1946 (10,6%) |
449 (32,6%) |
2395 (12,1%) |
||
Боль в груди |
Отрицательное значение |
16886 (92,0%) |
1064 (77,2%) |
17950 (91,0%) |
p<0,001* |
Положительное значение |
1465 (8,0%) |
315 (22,8%) |
1780 (9,0%) |
||
Вес |
Min-Max значения |
(40,0; 196,0) |
(42,0; 200,0) |
(40,0; 200,0) |
p<0,001*** |
Медиана (25, 75 процентили) |
76,0 (65,0, 88,0) |
80,0 (70,0, 95,0) |
76,0 (65,0, 89,0) |
p<0,001** |
|
Число заполненных записей |
7102 (39,0%) |
500 (36,0%) |
7602 (39,0%) |
||
Возраст |
Min-Max значения |
(14,0; 104,0) |
(17,0; 97,0) |
(14,0; 104,0) |
p<0,001*** |
Медиана (25, 75 процентили) |
55,0 (38,0, 64,0) |
63,0 (52,0, 73,0) |
55,0 (39,0, 65,0) |
p<0,001** |
|
Число заполненных записей |
18351 (100,0%) |
1379 (100,0%) |
19730 (100,0%) |
||
Диастолическое АД |
Min-Max значения |
(20,0; 140,0) |
(20,0; 130,0) |
(20,0; 140,0) |
p<0,001*** |
Медиана (25, 75 процентили) |
80,0 (75,0, 80,0) |
80,0 (70,0, 83,5) |
80,0 (70,0, 80,0) |
p<0,001** |
|
Число заполненных записей |
14779 (81,0%) |
1219 (88,0%) |
15998 (81,0%) |
||
Дыхательные нарушения |
Отрицательное значение |
11983 (65,3%) |
377 (27,3%) |
12360 (62,6%) |
p<0,001* |
Положительное значение |
6368 (34,7%) |
1002 (72,7%) |
7370 (37,4%) |
||
Злокачественное новообразование |
Отрицательное значение |
17300 (94,3%) |
1238 (89,8%) |
18538 (94,0%) |
p<0,001* |
Положительное значение |
1051 (5,7%) |
141 (10,2%) |
1192 (6,0%) |
||
Кашель |
Отрицательное значение |
4861 (26,5%) |
960 (69,6%) |
5821 (29,5%) |
p<0,001* |
Положительное значение |
13490 (73,5%) |
419 (30,4%) |
13909 (70,5%) |
||
Креатинин крови |
Min-Max значения |
(10,0; 500,0) |
(10,0; 817,0) |
(10,0; 817,0) |
p<0,001*** |
Медиана (25, 75 процентили) |
57,5 (28,0, 82,0) |
91,0 (76,0, 113,0) |
78,0 (45,0, 100,0) |
p<0,001** |
|
Число заполненных записей |
396 (2,0%) |
416 (30,0%) |
812 (4,0%) |
||
Кровохарканье |
Отрицательное значение |
17334 (94,5%) |
1165 (84,5%) |
18499 (93,8%) |
p<0,001* |
Положительное значение |
1017 (5,5%) |
214 (15,5%) |
1231 (6,2%) |
||
Набухание яремных вен |
Отрицательное значение |
18351 (100,0%) |
1378 (99,9%) |
19729 (100,0%) |
|
Положительное значение |
0 (0,0%) |
1 (0,1%) |
1 (0,0%) |
||
Общая слабость |
Отрицательное значение |
12275 (66,9%) |
719 (52,1%) |
12994 (65,9%) |
p<0,001* |
Положительное значение |
6076 (33,1%) |
660 (47,9%) |
6736 (34,1%) |
||
Отеки |
Отрицательное значение |
17482 (95,3%) |
812 (58,9%) |
18294 (92,7%) |
p<0,001* |
Положительное значение |
869 (4,7%) |
567 (41,1%) |
1436 (7,3%) |
||
Пол |
Женщина |
11064 (60,3%) |
744 (54,0%) |
11808 (59,8%) |
p<0,001* |
Мужчина |
7287 (39,7%) |
635 (46,0%) |
7922 (40,2%) |
||
Рост |
Min-Max значения |
(120,0; 200,0) |
(125,0; 200,0) |
(120,0; 200,0) |
p<0,001*** |
Медиана (25, 75 процентили) |
164,0 (158,0, 171,0) |
166,0 (160,0, 174,0) |
164,0 (158,0, 171,0) |
p<0,001** |
|
Число заполненных записей |
7365 (40,0%) |
522 (38,0%) |
7887 (40,0%) |
||
Систолическое АД |
Min-Max значения |
(43,0; 240,0) |
(40,0; 230,0) |
(40,0; 240,0) |
0,029 |
Медиана (25, 75 процентили) |
120,0 (120,0, 130,0) |
120,0 (110,0, 140,0) |
120,0 (120,0, 130,0) |
p<0,001** |
|
Число заполненных записей |
14781 (81,0%) |
1224 (89,0%) |
16005 (81,0%) |
||
Табакокурение |
Отрицательное значение |
16305 (88,9%) |
1199 (86,9%) |
17504 (88,7%) |
0,035 |
Положительное значение |
2046 (11,1%) |
180 (13,1%) |
2226 (11,3%) |
||
Температура тела |
Min-Max значения |
(34,0; 41,4) |
(35,0; 39,5) |
(34,0; 41,4) |
p<0,001*** |
Медиана (25, 75 процентили) |
36,8 (36,6, 37,5) |
36,6 (36,5, 37,4) |
36,8 (36,6, 37,5) |
p<0,001** |
|
Число заполненных записей |
10706 (58,0%) |
537 (39,0%) |
11243 (57,0%) |
||
Флебит |
Отрицательное значение |
18098 (98,6%) |
1103 (80,0%) |
19201 (97,3%) |
p<0,001* |
Положительное значение |
253 (1,4%) |
276 (20,0%) |
529 (2,7%) |
||
Цианоз кожи |
Отрицательное значение |
18257 (99,5%) |
1174 (85,1%) |
19431 (98,5%) |
p<0,001* |
Положительное значение |
94 (0,5%) |
205 (14,9%) |
299 (1,5%) |
||
Частота дыхания |
Min-Max значения |
(8,0; 65,0) |
(10,0; 60,0) |
(8,0; 65,0) |
p<0,001*** |
Медиана (25, 75 процентили) |
17,0 (16,0, 18,0) |
18,0 (17,0, 20,8) |
17,0 (16,0, 18,0) |
p<0,001** |
|
Число заполненных записей |
15245 (83,0%) |
1130 (82,0%) |
16375 (83,0%) |
||
Таблица 3. Продолжение |
|||||
Признак |
Параметр |
Класс 0 (N=18351) |
Класс 1 (N=1379) |
Вся выборка (N=19730) |
P value |
Частота сердечных сокращений |
Min-Max значения |
(30,0; 182,0) |
(30,0; 181,0) |
(30,0; 182,0) |
p<0,001*** |
Медиана (25, 75 процентили) |
76,0 (70,0, 81,0) |
87,0 (74,0, 100,0) |
76,0 (70,0, 83,0) |
p<0,001** |
|
Число заполненных записей |
11045 (60,0%) |
1043 (76,0%) |
12088 (61,0%) |
Примечание: * — критерий согласия хи-квадрат (Н0: распределение значений признаков не зависит от класса); ** — тест Шапиро-Уилка для всей выборки
(Н0: распределение значений признаков нормальное); *** — U-критерий Манна-Уитни (Н0: распределение значений признаков не зависит от класса).
Сокращения: АД — артериальное давление, SpO2 — сатурация крови кислородом.
Таблица 4
Метрики диагностической точности моделей на тестовой выборке
Модель |
Площадь под характеристической кривой/ROC-AUC |
Доля правильных ответов (Accuracy) |
Полнота (Recall) |
Специфичность (Spec) |
Прогностическая ценность положительного класса (Prec) |
Прогностическая ценность отрицательного класса |
F1 (положительный класс) |
F1 (отрицательный |
XGBoost |
0,945 |
0,888 |
0,864 |
0,890 |
0,383 |
0,988 |
0,531 |
0,937 |
LightGBM |
0,954 |
0,922 |
0,848 |
0,928 |
0,483 |
0,987 |
0,615 |
0,957 |
CatBoost |
0,952 |
0,892 |
0,884 |
0,892 |
0,393 |
0,99 |
0,544 |
0,939 |
Logistic Regression |
0,934 |
0,889 |
0,833 |
0,894 |
0,382 |
0,986 |
0,524 |
0,937 |
MLP Classifier |
0,860 |
0,807 |
0,763 |
0,810 |
0,241 |
0,977 |
0,366 |
0,886 |
Random Forest Classifier |
0,945 |
0,909 |
0,828 |
0,915 |
0,435 |
0,985 |
0,570 |
0,949 |
Gradient Boosting Classifier |
0,952 |
0,877 |
0,899 |
0,875 |
0,362 |
0,991 |
0,516 |
0,929 |
Рис. 3. ROC-кривая модели Gradient Boosting Classifier по результатам внутреннего тестирования (А) и внешней валидации (Б).
Таблица 5
Метрики диагностической точности моделей на выборке для внешней валидации
Модель |
Тип порога |
Значение порога |
Площадь под характеристической кривой/ROC-AUC |
Доля правильных ответов (Accuracy) |
Полнота (Recall) |
Специфичность (Spec) |
Прогностическая ценность положительного класса (Prec) |
Прогностическая ценность отрицательного класса |
F1 (положительный класс) |
F1 (отрицательный класс) |
XGBoost |
Порог согласно внутреннему тестированию |
0,712 |
0,919 |
0,891 |
0,733 |
0,902 |
0,334 |
0,981 |
0,459 |
0,939 |
Максимум индекса Юдена при внешней валидации |
0,583 |
0,919 |
0,84 |
0,841 |
0,840 |
0,261 |
0,987 |
0,399 |
0,908 |
|
LightGBM |
Порог согласно внутреннему тестированию |
0,106 |
0,927 |
0,915 |
0,690 |
0,930 |
0,400 |
0,978 |
0,506 |
0,954 |
Максимум индекса Юдена при внешней валидации |
0,042 |
0,927 |
0,838 |
0,864 |
0,836 |
0,261 |
0,989 |
0,401 |
0,906 |
|
CatBoost |
Порог согласно внутреннему тестированию |
0,071 |
0,919 |
0,876 |
0,769 |
0,883 |
0,307 |
0,983 |
0,439 |
0,93 |
Максимум индекса Юдена при внешней валидации |
0,049 |
0,919 |
0,831 |
0,851 |
0,83 |
0,252 |
0,988 |
0,389 |
0,902 |
|
Logistic Regression |
Порог согласно внутреннему тестированию |
0,535 |
0,922 |
0,905 |
0,731 |
0,917 |
0,371 |
0,981 |
0,492 |
0,948 |
Максимум индекса Юдена при внешней валидации |
0,311 |
0,922 |
0,83 |
0,879 |
0,826 |
0,254 |
0,99 |
0,394 [0,357; 0,428] |
0,901 |
|
MLP Classifier |
Порог согласно внутреннему тестированию |
0,002 |
0,856 |
0,833 |
0,741 |
0,839 |
0,237 |
0,98 |
0,359 |
0,904 |
Максимум индекса Юдена при внешней валидации |
0,005 |
0,856 |
0,872 |
0,713 |
0,883 |
0,291 |
0,979 |
0,413 |
0,928 |
|
Random Forest Classifier |
Порог согласно внутреннему тестированию |
0,555 |
0,909 |
0,896 |
0,677 |
0,911 |
0,338 |
0,977 |
0,451 |
0,943 |
Максимум индекса Юдена при внешней валидации |
0,453 |
0,909 |
0,854 |
0,813 |
0,857 |
0,276 |
0,986 |
0,412 |
0,917 |
|
Gradient Boosting Classifier |
Порог согласно внутреннему тестированию |
0,063 |
0,920 |
0,871 |
0,795 |
0,877 |
0,302 |
0,985 |
0,438 |
0,927 |
Максимум индекса Юдена при внешней валидации |
0,061 |
0,920 |
0,862 |
0,810 |
0,865 |
0,288 |
0,985 |
0,424 |
0,921 |
Рис. 4. Значимость признаков у модели Gradient Boosting Classifier.
Сокращения: АД — артериальное давление, SpO2 — сатурация крови кислородом.
Обсуждение
В проведенном исследовании нами продемонстрирована способность моделей машинного обучения выявлять пациентов высокого риска возникновения ТЭЛА. Хотя для этой задачи было использовано 7 различных подходов, алгоритм градиентного бустинга работал наиболее точно, что, возможно, связано с лучшей обработкой этим алгоритмом пропущенных данных, которые часто встречались в используемом НД. Вполне возможно, что другие нейронные сети могут быть более приспособлены к этой задаче, чем многослойная модель персептрона, используемая в настоящем исследовании.
При планировании данной модели изначально предполагалась поддержка клинического решения для выявления ТЭЛА на этапе до назначения дополнительных методов исследования: Д-димера, КТ ЛА. Для решения этой задачи исследованы признаки в момент начала амбулаторного или стационарного обращения, включающие в себя жалобы, данные объективного осмотра, анамнеза, ранее имеющиеся заболевания, лабораторные данные. По результатам проведенного машинного обучения определены признаки, которые имеют наибольшую значимость для предсказания ТЭЛА: кашель, дыхательные нарушения, креатинин крови, температура тела, общая слабость, отеки ног, частота сердечных сокращений, частота дыхания. Все эти признаки согласуются с распространёнными клиническими проявлениями ТЭЛА [7]. К признакам с меньшей значимостью относятся сатурация, возраст, тромбофлебит, кровохарканье, цианоз кожи, систолическое и диастолическое артериальное давление (АД), ЗНО. Систолическое АД и ЗНО традиционно считаются значимыми факторами и проявлениями ТЭЛА, но на наших данных не было получено сильное их влияние на целевое событие. Мы можем объяснить низкую роль систолического АД особенностями внесения данных в ЭМК, когда возможны ошибки введения информации о давлении или тиражирование шаблона врачебного осмотра без коррекции значений параметров. Несильное влияние ЗНО объясняется их незначительной частотой в НД для обучения (5,7%) и отсутствием анализа по виду рака, что имеет значение для риска тромбоза. В нашем исследовании использован НД для обучения со схожими по клинической картине заболеваниями, такими как пневмония, острый бронхит, хронический бронхит; хроническая обструктивная болезнь, бронхиальная астма, сердечная недостаточность с той целью, что модель более точно определит связь смежных симптомов с ТЭЛА. Это позволяет использовать модель на раннем этапе диагностического поиска ТЭЛА: сбор жалоб, анамнеза, объективных данных.
Опубликовано немного моделей машинного обучения и исследований, связанных с использованием данных ЭМК для диагностики ТЭЛА. В исследовании Logan R, et al. [11] была разработана модель предсказания ТЭЛА на данных ЭМК госпитализированных пациентов, и аналогично нашим данным алгоритм градиентного бустинга показал свое превосходство (площадь под ROC-кривой 0,85). Особенностями этого исследования были: сбор данных, ограниченный первыми 3 ч пребывания в стационаре, использование данных одного центра, анализ анамнестических, расширенных лабораторных и ограниченных объективных данных; верификация ТЭЛА на основании кодов МКБ-10 и приема антикоагулянтов или проведения тромболитической терапии. В нашем исследовании ТЭЛА была верифицирована только при помощи кодов МКБ-10, что объясняется ограниченными возможностями БД. Коды МКБ-10 для верификации ТЭЛА имеют высокую чувствительность (~90%) [12], но риск ложноположительных результатов при таком подходе все же имеется, а использование дополнительных критериев верификации диагноза ТЭЛА позволяет уменьшить этот риск. Особенностью исследования van Es N, et al. [13] было то, что использовались данные 16 проспективных исследований с 28 тыс. пациентов для построения модели индивидуальной вероятности ТЭЛА. По результатам обучения были взяты 9 предикторов: возраст, пол, предыдущие венозные тромбозы, хирургические вмешательства/иммобилизация, кровохарканье, ЗНО, нахождение в стационаре, уровень Д-димера. Обученная модель показала точность по статистическому показателю 0,87. Авторы сделали вывод, что модель можно использовать в качестве альтернативы традиционным алгоритмам для принятия решения о необходимости визуализации ЛА. В исследовании Somani SS, et al. [14] были разработаны 3 модели для диагностики ТЭЛА: по данным электрокардиографии (ЭКГ), ЭМК и гибридная, объединяющая данные 1 и 2 модели. Гибридная модель (0,81 — площадь под ROC-кривой) превзошла по точности как модели ЭКГ (0,59) и ЭМК (0,65), так и шкалы, и Geneva (AUROC 0,50-0,58). В исследовании Banerjee I, et al. [15] была разработана модель машинного обучения PERFORM, которая учитывает множество факторов риска ЭМК у пациентов с подозрением на ТЭЛА. Модель преобразует необработанные данные ЭМК во временные векторы признаков и моделирует решение для отбора и направления на КТ ЛА. Для обучения и валидации было использовано 3397 КТ-исследований по поводу ТЭЛА у 3214 пациентов. Модели прошли внешнюю валидацию на 240 пациентах. Наилучшая точность модели по площади под ROC-кривой 0,90 (95% ДИ: 0,87-0,91) на внутренних данных и 0,71 (95% ДИ: 0,69-0,72) на внешних.
Разработанная нами модель имеет ряд ограничений. Данные врачебных записей в ЭМК могут иметь ошибки интерпретации и ввода клинических данных, прежде всего жалоб. Их влияние на прогноз сейчас не известно и будет проверяться при эксплуатации модели. Не были учтены некоторые значимые в патогенезе ТЭЛА признаки (иммобилизация, операции) из-за отсутствия их в ЭМК или невозможности извлечения. Для извлечения признаков из медицинских текстов были использованы NLP-модели, которые имеют собственную точность работы, колеблющуюся от 0,80 до 0,99, что может влиять на правильность извлечения признаков и дальнейшую их обработку. При обучении модели не использовались ЭКГ данные, которые могут увеличить результативность работы данной модели. Поэтому имеются перспективы для повышения точности обученной модели — дообучение на новых данных, использование дополнительных предикторов. Перспективным с клинической точки зрения является сравнение предсказательной способности разработанной модели и шкал, применяемых для выявления подозрения на ТЭЛА, являющихся стандартом клинической практики.
Заключение
Была разработана модель для оценки вероятности ТЭЛА на российских данных ЭМК с использованием технологии машинного обучения. Точность модели по метрике площадь под ROC-кривой 0,952 (95% ДИ: 0,938-0,964) согласно внутреннему тестированию и 0,920 (95% ДИ: 0,903-0,936) на внешней валидации. Обученная модель рассчитана для использования при первичном обращении за медицинской помощью пациентов с жалобами и подозрением на ТЭЛА вне зависимости от вида помощи. Использование комбинации моделей машинного обучения (анализ данных ЭМК, рентгеновских и электрокардиографических изображений) позволит смоделировать полноценный диагностический процесс ТЭЛА или выдвинуть альтернативную диагностическую гипотезу.
Отношения и деятельность: все авторы заявляют об отсутствии потенциального конфликта интересов, требующего раскрытия в данной статье.
Список литературы
1. Raskob GE, Angchaisuksiri P, Blanco AN, et al. Thrombosis: a major contributor to global disease burden. Arterioscler Thromb Vasc Biol. 2014;34:2363-71. doi:10.1161/ATVBAHA.114.304488.
2. Beckman MG, Hooper WC, Critchley SE, Ortel TL. Venous thromboembolism: a public health concern. Am J Prev Med. 2010;38:495-501. doi:10.1016/j.amepre.2009.12.017.
3. Cohen AT, Agnelli G, Anderson FA, et al. VTE Impact Assessment Group in Europe (VITAE). Venous thromboembolism (VTE) in Europe. The number of VTE events and associated morbidity and mortality. Thromb Haemost. 2007;98:756-64.
4. Pollack CV, Schreiber D, Goldhaber SZ, et al. Clinical characteristics, management, and outcomes of patients diagnosed with acute pulmonary embolism in the emergency department: initial report of EMPEROR (Multicenter Emergency Medicine Pulmonary Embolism in the Real World Registry). J Am Coll Cardiol. 2011;57:700-6. doi:10.1016/j.jacc.2010.05.071.
5. Grégoire Le Gal, Marc Righini, Pierre-Marie Roy, et al. Prediction of pulmonary embolism in the emergency department: the revised Geneva score. Ann Intern Med. 2006;144(3):165-71. doi:10.7326/0003-4819-144-3-200602070-00004.
6. Wells PS, Anderson DR, Rodger M, et al. Derivation of a simple clinical model to categorize patients probability of pulmonary embolism: increasing the models utility with the SimpliRED D-dimer. Thromb Haemost. 2000;83(3):416-20.
7. Konstantinides SV. Рекомендации ESC по диагностике и лечению острой легочной эмболии, разработанные в сотрудничестве с Европейским респираторным обществом (ERS), 2019. Российский кардиологический журнал. 2020;25(8):3848. doi:10.15829/1560-4071-2020-3848.
8. Wolf SJ, McCubbin TR, Feldhaus KM, et al. Prospective validation of Wells Criteria in the evaluation of patients with suspected pulmonary embolism. Ann Emerg Med. 2004;44(5):503-10. doi:10.1016/j.annemergmed.2004.04.002.
9. Righini M, Robert-Ebadi H, Le Gal G. Diagnosis of acute pulmonary embolism. J Thromb Haemost. 2017;15:1251-61. doi:10.1111/jth.13694.
10. Adlung L, Cohen Y, Mor U, Elinav E. Machine learning in clinical decision making. Med 2021;2(6):642-65. doi:10.1016/j.medj.2021.04.006.
11. Ryan L, Maharjan J, Mataraso S, et al. Predicting pulmonary embolism among hospitalized patients with machine learning algorithms Pulmonary Circulation. 2022;12:e12013. doi:10.1002/pul2.12013.
12. Burles K, Innes G, Senior K, et al. Limitations of pulmonary embolism ICD‐10 codes in emergency department administrative data: let the buyer beware. BMC Med Res Methodol. 2017;17:89. doi:10.1186/s12874-017-0361-1.
13. van Es N, Takada T, Kraaijpoel N, et al. Diagnostic management of acute pulmonary embolism: a prediction model based on a patient data meta-analysis. European Heart Journal. 2023;44(32):3073-81. doi:10.1093/eurheartj.
14. Somani SS, Honarvar H, Narula S, et al. Development of a machine learning model using electrocardiogram signals to improve acute pulmonary embolism screening. European Heart Journal — Digital Health. 2022;3(1):56-66. doi:10.1093/ehjdh/ztab101.
15. Banerjee I, Sofela M, Yang J, et al. Development and Performance of the Pulmonary Embolism Result Forecast Model (PERFORM) for Computed Tomography Clinical Decision Support. JAMA Netw Open. 2019;2(8):e198719. doi:10.1001/jamanetworkopen.2019.8719.
Об авторах
Д. В. ГавриловРоссия
Гаврилов Денис Владимирович — руководитель медицинского направления.
Петрозаводск
Конфликт интересов:
Нет
А. Е. Андрейченко
Россия
Андрейченко Анна Евгеньевна — руководитель направления искусственного интеллекта.
Петрозаводск
Конфликт интересов:
Нет
А. Д. Ермак
Россия
Ермак Андрей Дмитриевич — аналитик данных направления искусственного интеллекта.
Петрозаводск
Конфликт интересов:
Нет
Т. Ю. Кузнецова
Россия
Кузнецова Татьяна Юрьевна — д. м. н., доцент, зав. кафедрой факультетской терапии, фтизиатрии, инфекционных болезней и эпидемиологии.
Петрозаводск
Конфликт интересов:
Нет
А. В. Гусев
Россия
Гусев Александр Владимирович — к. т. н., эксперт.
Москва
Конфликт интересов:
Нет
Дополнительные файлы
- Диагностика тромбоэмболии легочной артерии (ТЭЛА) представляет собой трудности из-за неспецифичности клинических проявлений, совпадающих с многими терапевтическими заболеваниями.
- Объединение клинических проявлений ТЭЛА с использованием технологии машинного обучения позволяет анализировать большое количество клинически значимых параметров и улучшать предсказательную точность.
- Обученная модель включает в себя ранее используемые диагностические параметры и новые признаки, встречающиеся в электронных медицинских картах, с целью поддержки врачебных решений для диагностики ТЭЛА.
Рецензия
Для цитирования:
Гаврилов Д.В., Андрейченко А.Е., Ермак А.Д., Кузнецова Т.Ю., Гусев А.В. Оценка вероятности тромбоэмболии легочной артерии при помощи модели машинного обучения. Российский кардиологический журнал. 2024;29(4):5679. https://doi.org/10.15829/1560-4071-2024-5679. EDN: QHZHPQ
For citation:
Gavrilov D.V., Andreichenko A.E., Ermak A.D., Kuznetsova T.Yu., Gusev A.V. Assessment of pulmonary embolism probability using a machine learning model. Russian Journal of Cardiology. 2024;29(4):5679. (In Russ.) https://doi.org/10.15829/1560-4071-2024-5679. EDN: QHZHPQ