Тарсис Соуза, доктор философии, Густаво Венцель Сайнатто, доктор медицины, и Хели С.П. Соуза, доктор медицины.

Быстрая диагностика COVID-19 на основе машинного обучения на основе общих лабораторных тестов

Доказательства от 5644 пациентов в Бразилии

Резюме

  • Внезапный и быстрый рост числа случаев COVID-19 ложится тяжелым бременем на системы здравоохранения во всем мире. Быстрое, точное и раннее обнаружение SARS-CoV-2 имеет жизненно важное значение для борьбы с распространением вируса. Однако традиционное обнаружение SARS-CoV-2 с помощью ОТ-ПЦР может быть дорогостоящим, длительным и широко недоступным, что делает тестирование в каждом случае нецелесообразным.
  • Мы предлагаем основанный на машинном обучении подход для быстрого выявления случаев COVID-19 с использованием общедоступных данных лабораторных тестов.
  • Мы анализируем выборку из 5644 пациентов, 558 из которых дали положительный результат на SARS-CoV-2 из больницы Израэлита Альберта Эйнштейна в Сан-Паулу, Бразилия. Предлагаемая модель демонстрирует общую высокую производительность 92 % (AUC) с учетом отложенной тестовой группы, состоящей из ⅓ исходных выборочных данных.
  • Мы наблюдаем, что пациенты, госпитализированные с симптомами COVID-19, у которых был отрицательный результат на риновирусный энтеровирус, грипп B и Inf.A.H1N1.2009 и низкий уровень лейкоцитов и тромбоцитов, с большей вероятностью имели положительный результат на SARS-CoV-2. .
  • Мы представляем параметрическую модель, основанную на различных сценариях, которые заданы как функция целевого уровня чувствительности или общего количества потенциальных положительных случаев, которые больница могла бы расставить по приоритетам.
  • При 25% вместимости пациентов, признанных положительными по SARS-CoV-2, предлагаемая модель показывает чувствительность и специфичность более 84% и 96% соответственно, что доказывает, что она является полезным инструментом быстрой приоритизации.

Введение

Задний план

Всемирная организация здравоохранения (ВОЗ) охарактеризовала COVID-19, вызванный SARS-CoV-2, как пандемию 11 марта, в то время как экспоненциальный рост числа случаев рискует перегрузить системы здравоохранения по всему миру спросом на отделения интенсивной терапии. коек намного превышает существующую вместимость, яркими примерами являются регионы Италии.

Бразилия зарегистрировала первый случай SARS-CoV-2 26 февраля, и передача вируса очень быстро эволюционировала от завозных случаев только к местной и, наконец, к передаче в сообществе, а 20 марта федеральное правительство объявило о передаче вируса в масштабах всей страны.

До 27 марта 2020 года в штате Сан-Паулу было зарегистрировано 1223 подтвержденных случая заболевания COVID-19 с 68 связанными с ним летальными исходами, в то время как в округе Сан-Паулу с населением около 12 миллионов человек, где находится больница «Исраэлита Альберт Эйнштейн», 477 подтвержденных случаев и 30 связанных с ними смертей по состоянию на 23 марта. И штат, и округ Сан-Паулу решили ввести меры карантина и социального дистанцирования, которые будут применяться по крайней мере до начала апреля, чтобы замедлить распространение вируса.

Мотивация и цели

Эта работа направлена ​​на прогнозирование подтвержденных случаев COVID-19 среди подозреваемых случаев на основе обычно собираемых лабораторных исследований. Мы рассматриваем следующий исследовательский вопрос:

Основываясь на результатах лабораторных анализов, обычно собираемых при подозрении на COVID-19 во время посещения отделения неотложной помощи, можно ли предсказать результат теста на SARS-Cov-2 (положительный/отрицательный)?

Одним из мотивов этой работы является тот факт, что в условиях перегруженной системы здравоохранения с возможными ограничениями на проведение тестов для выявления SARS-CoV-2 тестирование каждого случая было бы непрактичным, а учитывая, что результаты тестов берутся из 48 часов до целой недели, они могут быть отложены, даже если тестируется только целевая подгруппа.

Вклад

Мы предлагаем простую модель для быстрого прогнозирования пациентов с самым высоким риском заражения SARS-CoV-2, позволяющую расставить приоритеты для них и потенциально позволяющую применять меры изоляции и связанные с ними медицинские процедуры. Наш вклад состоит из трех частей:

  1. Быстрый высокоточный тест на SARS-CoV-2: предлагаемая модель основана исключительно на общедоступных данных лабораторных испытаний и демонстрирует высокую эффективность с AUC 92% и уровнями чувствительности более 85% с разумными уровнями специфичности более 85%.
  2. Интерпретируемость: важность переменной и условные зависимости с переменной результата легко извлекаются из модели, и ее интерпретация может направлять принятие медицинских решений.
  3. Гибкость: построение модели является гибким для различных сценариев политики в зависимости от целевых уровней чувствительности, вместимости больниц и распространенности заболевания.

Набор данных

Набор данных содержит анонимные данные пациентов, которые наблюдались в больнице Израэлита Альберта Эйнштейна в Сан-Паулу, Бразилия, и у которых были собраны образцы для проведения ОТ-ПЦР на SARS-CoV-2 и дополнительных лабораторных тестов во время посещения больницы.

Все данные обезличены в соответствии с лучшими международными практиками и рекомендациями. Все клинические данные были стандартизированы, чтобы иметь среднее значение, равное нулю, и единичное стандартное отклонение.

Набор данных содержит 109 переменных (предикторов), идентификатор пациента и одну переменную целевого результата, которая указывает, был ли у пациента положительный/отрицательный результат теста на SARS-Cov-2. Доступно 5644 образца с 558 положительными случаями, что составляет 10% набора данных.

Подготовка данных

Во-первых, мы выполняем некоторые основные процедуры очистки данных:

  1. Сделайте имена переменных синтаксически правильными, удалив специальные символы, пробелы и символы.
  2. Преобразуйте строки, представляющие отсутствующие данные, в NA, а именно следующие значения: «Não Realizado» и «not_done».
  3. Преобразовать строковые категориальные значения в факторы
  4. Преобразуйте переменную Urine…pH в числовую, поскольку она содержит сочетание строковых и числовых значений во входных данных.

Наша переменная результата имеет имя SARS.Cov.2.exam.result. Это двоичная переменная, которая указывает, был ли у пациента положительный или отрицательный результат на вирус SARS-COV2. Мы преобразуем эту переменную таким образом, что $SARS.Cov.2.exam.result = 1$, если у пациента положительный результат, и $SARS.Cov.2.exam.result = 0$ в противном случае.

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

Следовательно, мы удаляем переменные со слишком большим количеством отсутствующих точек данных (›= 95%). Мы также удаляем образцы, которые слишком разрежены в лабораторных данных, мы решили оставить отрицательные образцы, которые имеют как минимум 10 переменных с доступными точками данных. Это делается, чтобы избежать сценария переобучения, когда несколько выборок (разреженных, но положительных) могут оказать чрезмерное влияние на прогностическую модель.

Были удалены следующие переменные:

[1] "Serum.Glucose" [2] "Mycoplasma.pneumoniae" [3] "Alanine.transaminase" [4] "Aspartate.transaminase" [5] "Gamma.glutamyltransferase." [6] "Total.Bilirubin" [7] "Direct.Bilirubin" [8] "Indirect.Bilirubin" [9] "Alkaline.phosphatase" [10] "Ionized.calcium." [11] "Magnesium" [12] "pCO2..venous.blood.gas.analysis." [13] "Hb.saturation..venous.blood.gas.analysis." [14] "Base.excess..venous.blood.gas.analysis." [15] "pO2..venous.blood.gas.analysis." [16] "Fio2..venous.blood.gas.analysis." [17] "Total.CO2..venous.blood.gas.analysis." [18] "pH..venous.blood.gas.analysis." [19] "HCO3..venous.blood.gas.analysis." [20] "Rods.." [21] "Segmented" [22] "Promyelocytes" [23] "Metamyelocytes" [24] "Myelocytes" [25] "Myeloblasts" [26] "Urine...Esterase" [27] "Urine...Aspect" [28] "Urine...pH" [29] "Urine...Hemoglobin" [30] "Urine...Bile.pigments" [31] "Urine...Ketone.Bodies" [32] "Urine...Nitrite" [33] "Urine...Density" [34] "Urine...Urobilinogen" [35] "Urine...Protein" [36] "Urine...Sugar" [37] "Urine...Leukocytes" [38] "Urine...Crystals" [39] "Urine...Red.blood.cells" [40] "Urine...Hyaline.cylinders" [41] "Urine...Granular.cylinders" [42] "Urine...Yeasts" [43] "Urine...Color" [44] "Partial.thromboplastin.time..PTT.." [45] "Relationship..Patient.Normal." [46] "International.normalized.ratio..INR." [47] "Lactic.Dehydrogenase" [48] "Prothrombin.time..PT...Activity" [49] "Vitamin.B12" [50] "Creatine.phosphokinase..CPK.." [51] "Ferritin" [52] "Arterial.Lactic.Acid" [53] "Lipase.dosage" [54] "D.Dimer" [55] "Albumin" [56] "Hb.saturation..arterial.blood.gases." [57] "pCO2..arterial.blood.gas.analysis." [58] "Base.excess..arterial.blood.gas.analysis." [59] "pH..arterial.blood.gas.analysis." [60] "Total.CO2..arterial.blood.gas.analysis." [61] "HCO3..arterial.blood.gas.analysis." [62] "pO2..arterial.blood.gas.analysis." [63] "Arteiral.Fio2" [64] "Phosphor" [65] "ctO2..arterial.blood.gas.analysis."

Остальные переменные следующие:

[1] "Patient.age.quantile" [2] "SARS.Cov.2.exam.result" [3] "Patient.addmited.to.regular.ward..1.yes..0.no." [4] "Patient.addmited.to.semi.intensive.unit..1.yes..0.no." [5] "Patient.addmited.to.intensive.care.unit..1.yes..0.no." [6] "Hematocrit" [7] "Hemoglobin" [8] "Platelets" [9] "Mean.platelet.volume" [10] "Red.blood.Cells" [11] "Lymphocytes" [12] "Mean.corpuscular.hemoglobin.concentration..MCHC." [13] "Leukocytes" [14] "Basophils" [15] "Mean.corpuscular.hemoglobin..MCH." [16] "Eosinophils" [17] "Mean.corpuscular.volume..MCV." [18] "Monocytes" [19] "Red.blood.cell.distribution.width..RDW." [20] "Respiratory.Syncytial.Virus" [21] "Influenza.A" [22] "Influenza.B" [23] "Parainfluenza.1" [24] "CoronavirusNL63" [25] "Rhinovirus.Enterovirus" [26] "Coronavirus.HKU1" [27] "Parainfluenza.3" [28] "Chlamydophila.pneumoniae" [29] "Adenovirus" [30] "Parainfluenza.4" [31] "Coronavirus229E" [32] "CoronavirusOC43" [33] "Inf.A.H1N1.2009" [34] "Bordetella.pertussis" [35] "Metapneumovirus" [36] "Parainfluenza.2" [37] "Neutrophils" [38] "Urea" [39] "Proteina.C.reativa.mg.dL" [40] "Creatinine" [41] "Potassium" [42] "Sodium" [43] "Influenza.B..rapid.test" [44] "Influenza.A..rapid.test" [45] "Strepto.A"

Предиктивный анализ

Обучение модели

Чтобы предсказать вероятность того, что пациент инфицирован вирусом SARS-Cov2, мы случайным образом разделили набор данных на обучающие и тестовые тесты с соотношением разделения обучения к тесту 2/3. Мы разлагаем набор данных таким образом, чтобы переменная результата также соответствовала тому же соотношению разделения между обучающими и тестовыми наборами.

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

Интерпретируемость модели

Мы оцениваем интерпретируемость модели, рассматривая относительную важность переменных, а также вероятность их условной зависимости относительно переменной результата. Объяснения моделей важны, потому что их можно использовать для улучшения принятия медицинских решений и руководства инициативами по разработке политики.

Ниже приведены 10 наиболее важных переменных, возвращаемых моделью. Показатели важности нормализованы и основаны на том, сколько раз переменная выбирается для разделения дерева, взвешиваются по улучшению модели в результате каждого разделения и усредняются по всем деревьям.

Ниже мы анализируем графики условной вероятности пяти наиболее важных переменных, где ось x представляет предиктор, а ось y представляет вероятность заражения (числа нормализованы). Наблюдаем следующее:

  1. Когда Rhinovirus.Enterovirus, Influenza.B или Inf.A.H1N1.2009 не обнаружены, пациенты с большей вероятностью получат положительный результат теста на SARS-COV2.
  2. Пациенты с низким уровнем лейкоцитов или тромбоцитов с большей вероятностью будут иметь положительный результат теста на SARS-COV2.

Одной из переменных, которая широко обсуждается в качестве ведущего показателя тяжелых случаев COVID-19, является возраст. Поэтому мы анализируем двумерную связь между переменной age_quantile и пятью наиболее важными переменными, о которых говорилось ранее. Мы наблюдаем, что возрастной квантиль пациента может увеличить вероятность заражения SARS-COV2, если его рассматривать в сочетании с другими 5 основными изученными переменными.

Прогноз

Мы применяем обученную модель к тестовому набору данных 668 пациентов. Мы видим, что модель работает очень хорошо с AUC 92%. Однако определение специфичности и чувствительности модели зависит от определения порога вероятности для определения пациентов, которые будут считаться вероятными положительными случаями COVID-19 среди подозреваемых случаев.

Ниже мы можем визуализировать, как выбор порога может повлиять на чувствительность и специфичность модели (анализ в выборке с использованием набора поездов). Модель с высокой чувствительностью дает хорошие результаты при поиске положительных пациентов среди истинно положительных пациентов. Однако прогнозируемое количество пациентов с положительным результатом может быть слишком большим и влиять на специфичность модели. Более того, у больницы может не хватить ресурсов для проведения необходимых процедур для всех пациентов с положительной меткой, если это число слишком велико. Следовательно, идеальной моделью является хорошо сбалансированная модель, т. е. модель с высокой чувствительностью, но не приписывающая пациентам чрезмерных положительных оценок.

Чтобы определить, какую вероятность выбрать и как определить, какие пациенты должны быть приоритетными как более вероятно инфицированные, мы обсудим различные сценарии, которые могут быть привязаны к различным политикам в больницах, городах, штатах или странах. Для каждого сценария мы выберем порог из набора поездов, который оптимизирует заданную целевую целевую функцию, определяемую политикой в ​​сценарии в случае.

Сценарий 1: Высокая доступность ресурсов

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

Мы используем данные поезда, чтобы выбрать порог, который максимизирует чувствительность модели. Затем мы применяем этот порог к прогнозируемым вероятностям в тестовом наборе. Процедура возвращает пороговое значение вероятности 1,6 %, а модель представляет высокое значение чувствительности 95 %, как и предполагалось. Однако высокий отзыв достигается за счет специфичности, которая представляет собой низкое значение 34%. Более того, около 74% пациентов из тестовой выборки были отмечены как положительные, поэтому модель имеет ограниченное использование в качестве инструмента определения приоритетов.

Сценарий 2: Ограниченные ресурсы

В Сценарии 2 мы предполагаем среду с ограниченными ресурсами и, следовательно, допустимо снижение чувствительности модели, если мы можем получить хорошо сбалансированную модель в целом. Для этой цели мы выбираем в качестве целевой функции ту, которая максимизирует статистику Юдена J, определяемую как $ max (чувствительность + специфичность) $.

Ниже мы можем визуализировать влияние порога на значение соответствующей статистики Юдена Дж. (анализ в выборке). Мы наблюдаем, что слишком низкие или слишком высокие пороговые значения приводят к субоптимальному балансу в модели.

Сделав прогноз на тестовом наборе, мы затем выберем порог из набора поездов, который максимизирует статистику Youden J для достижения хорошо сбалансированной модели. Мы видим, что модель в Сценарии 2 теперь обеспечивает чувствительность 84% по сравнению с 95% в Сценарии 1. Однако она возвращает специфичность 96% при сохранении высокой AUC 92% (поскольку выбор порога не влияет на AUC), что обеспечивает более сбалансированную модель, как и ожидалось. Более того, теперь модель присваивает только 26% набора тестов положительные метки, показывая свою полезность в качестве потенциального инструмента определения приоритетов пациентов.

Сценарий 3: Ограниченные ресурсы, разные политики

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

Наша целевая функция

$max(чувствительность + r*специфичность)$,

где

$r = 1 — распространенность / стоимость * распространенность$

$r$ — относительная стоимость ложноотрицательной классификации (по сравнению с ложноположительной классификацией). В разных странах и регионах может быть разная распространенность, а в разных больницах могут быть разные правила определения параметра $cost$.

Наши результаты показывают, что практическая модель может быть представлена ​​как со специфичностью, так и с чувствительностью выше 85% с процентным числом пациентов ($num.positivie.pct$), помеченных как положительные, ниже 30%, что, следовательно, служит подходящим инструментом определения приоритетов. Кроме того, модель параметризована, чтобы обеспечить легкую точную настройку для настройки целевой чувствительности, распространенности или максимального количества пациентов, которым необходимо отдать приоритет.

Практическое применение

На практике медицинские работники/больницы, использующие предложенную модель, определят политику для минимально приемлемого уровня чувствительности или целевого числа пациентов, которым следует отдать приоритет, а также укажут текущую распространенность. Эти параметры будут служить входными данными для модели для определения пациентов, которым будет отдан приоритет как наиболее вероятный положительный результат теста. Затем модель будет выводить двоичный индикатор инфекции SARS-CoV-2, меру вероятности и точность. Выходные данные модели можно использовать в качестве инструмента для расстановки приоритетов и поддержки дальнейших процессов принятия медицинских решений. Периодически можно обновлять входные параметры и политику больницы в зависимости от состояния системы здравоохранения. Затем модель будет повторно обучена, а также будет включать новые доступные данные.

Заключение

В этой работе мы показали, что можно предсказать результат теста на SARS-CoV-2 на основе результатов лабораторных тестов, обычно собираемых при подозрении на COVID-19, путем анализа выборки из 5644 пациентов, из которых 558 дали положительный результат на коронавирус. SARS-CoV-2 из больницы Израильта Альберта Эйнштейна.

Предлагаемая модель имеет практическое применение с AUC 92% и уровнями чувствительности/специфичности выше 85% в зависимости от целевых политик/сценариев. Модель имеет высокую интерпретируемость, что также показывает, что пациенты, госпитализированные с симптомами COVID-19, у которых был отрицательный результат на риновирусный энтеровирус, грипп B и Inf.A.H1N1.2009 и у которых были низкие уровни лейкоцитов и тромбоцитов, с большей вероятностью имели положительный результат на SARS-CoV. -2.

Мы также изучили, как производительность модели может быть адаптирована в соответствии с различными сценариями, которые определяются в зависимости от целевой чувствительности или политики больницы по приоритизации количества пациентов. Мы показали, что уровни специфичности выше 98% могут быть достигнуты, если больница согласится рассмотреть тест, который отбирает до 75% пациентов с вероятностью положительного результата теста. Тем не менее, мы показали, что хорошо сбалансированная модель может быть достигнута (как специфичность, так и чувствительность выше 85%) при уровне приоритетности пациента около 25%, что, таким образом, оказалось подходящей процедурой приоритизации. Баланс производительности модели может быть определен как функция политики конкретной больницы, которая учитывает распространенность, уровень приоритетности пациентов или целевые уровни чувствительности.

Мы использовали экономный подход к моделированию и построили простую, но эффективную и прозрачную базовую модель. Мы признаем, что результаты следует воспринимать с осторожностью из-за нескольких ограничений исследования, в том числе: (i) небольшое количество выборок данных; (ii) несбалансированный набор данных; (iii) высокая разреженность предикторов. Кроме того, набор данных имеет потенциальную погрешность из-за наличия вирусного скрининга в обычных лабораторных тестах конкретной больницы, изучаемой в этом исследовании, что может быть недоступно во многих других медицинских учреждениях в Бразилии или во всем мире.

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

Заявление о доступности данных и кода

В этой работе сообщается о результатах набора данных Kaggle Диагностика COVID-19 и его клинический спектр, созданного больницей Израэлита Альберта Эйнштейна в Сан-Паулу, Бразилия.

Полный код доступен по адресуhttps://github.com/souzatharsis/covid-19-ML-Lab-Test.