New In

Лассо для моделей пропорциональных рисков Кокса

Если у вас есть данные о времени наступления события, также известные как данные о времени выживания или времени отказа, и множество предикторов, обратите внимание на lasso cox и elasticnet.

Основные моменты

  • Оценка: лассо и эластичная сеть

  • Левое усечение и правое цензурирование

  • Методы отбора

    • Кросс-валидация
    • Адаптивное лассо
    • BIC
    • Указанный пользователем
  • Штрафные и постселекционные прогнозы

  • Графики выживших и другие функции

команды. (Когда мы говорим «много предикторов», мы имеем в виду сотни, тысячи или даже больше!) Новые в Stata 18, эти команды расширяют существующий набор команд lasso для прогнозирования и выбора моделей, включая высокоразмерную полупараметрическую модель пропорциональных рисков Кокса.

После lasso cox и elasticnet cox вы можете использовать stcurve для построения графиков выживших, неудач, опасности или кумулятивной функции опасности или использовать любой другой инструмент постоценки, доступный после lasso и elasticnet.

Давайте посмотрим, как это работает

Мы проиллюстрируем lasso cox на примере прогнозирования риска смерти пациентов с аденокарциномой легких I стадии. Аденокарцинома легкого — один из наиболее распространенных видов немелкоклеточного рака легкого.

Аденокарцинома I стадии означает, что размер опухоли относительно невелик и рак не распространился на другие отдаленные органы. Выживаемость пациентов с аденокарциномой I стадии различна, несмотря на то что они находятся на ранней стадии развития рака. Например, по данным Yu et al. (2016), в одной когорте более 50 % пациентов с аденокарциномой I стадии умерли в течение 5 лет после постановки первоначального диагноза, а около 15 % пациентов прожили более 10 лет.

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

У нас есть вымышленный набор данных о выживаемости (lungcancer.dta), созданный по мотивам работы Yu et al. (2016). Переменная t фиксирует либо время смерти, либо цензуру в месяцах для пациентов с аденокарциномой легкого I стадии. Индикаторная переменная died равна 1 или 0, если пациент умер или подвергся цензуре, соответственно. Имеется 500 признаков гистопатологического изображения, от histfeature1 до hisfeature500, и только 250 пациентов. Цель анализа — отнести нового пациента к группе низкого или высокого риска, учитывая особенности гистопатологического изображения.

Сначала мы загружаем набор данных, а затем вводим команду stset, чтобы показать, что он уже был создан.

Затем мы разделили всю выборку на обучающие и тестовые данные. Обучающие данные будут использоваться для оценки, а тестовые — для измерения эффективности предсказания.

Мы используем функцию splitsample, чтобы разделить данные на две части. С помощью опции generate(group) мы создаем новую переменную group, которая равна 1, если она относится к обучающим данным, и 0 — к тестируемым. Опция split(0.6 0.4) указывает, что 60 % всех данных используются в качестве обучающих, а 40 % — в качестве тестовых. Чтобы сделать результаты воспроизводимыми, мы задаем опцию rseed().

. splitsample, generate(group) split(0.6 0.4) rseed(12345)

Для последующего использования мы сохраняем обучающие данные как lungcancer_training.dta, а тестирующие данные — как lungcancer_testing.dta.

. preserve

. keep if group == 1
(100 observations deleted)

. save lungcancer_training, replace
file lungcancer_training.dta not found
file lungcancer_training.dta saved

. restore

. preserve

. keep if group == 2
(150 observations deleted)

. save lungcancer_testing, replace
file lungcancer_testing.dta not found
file lungcancer_testing.dta saved

. restore

Теперь мы подгоним модель lasso cox, используя только обучающие данные. По умолчанию мы используем кросс-валидацию. Для воспроизводимости мы указываем rseed().

lasso cox выбирает 48 из 500 признаков. Теперь мы можем предсказать пенализированное отношение относительной опасности (переменная riskscore_training) и оценить баллы риска. Мы будем использовать медиану riskcore_training в качестве порогового значения для классификации пациента как пациента с низким или высоким риском. Мы сохраним значение медианы в глобальном макросе (median) для последующего использования.

Теперь мы используем данные тестирования для проверки модели. Сначала мы прогнозируем пенализированное отношение рисков (переменная riskscore_testing) в тестовой выборке. Затем мы сравниваем riskscore_testing с медианой отношения рисков, полученной в обучающих данных ($median). Пациент классифицируется как пациент высокого риска, если прогнозируемый балл риска больше или равен медиане. Пациент классифицируется как пациент с низким риском, если прогнозируемая оценка риска меньше медианы.

. use lungcancer_testing, clear
(Fictitious data on stage I adenocarcinoma lung cancer)

. predict riskscore_testing
(options hr penalized assumed; predicted hazard ratio with penalized
coefficients)

. generate byte risk = (riskscore_testing >= $median)

. label define risk_lb 1 "High risk" 0 "Low risk"

. label values risk risk_lb

Чтобы оценить эффективность классификации рисков, мы сначала смотрим на график Каплана-Мейера, на котором изображена кривая выживаемости для групп низкого и высокого риска.

. sts graph, by(risk)

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

Лог-ранковый тест отвергает гипотезу о том, что прогнозируемые пациенты с низким и высоким риском имеют одинаковые функции выживания. И график Каплана-Мейера, и лог-ранговый тест показывают, что использование медианы прогнозируемых коэффициентов опасности позволяет эффективно отличить пациента с низким риском от пациента с высоким риском. Теперь мы можем делать прогностические прогнозы на основе новых данных.

Набор данных (newlungcancer.dta) содержит гистопатологические изображения некоторых новых пациентов с аденокарциномой I стадии, и мы пока не наблюдаем их время выживания, поскольку они еще живы. Основываясь на модели прогнозирования lasso cox, мы хотим классифицировать этих новых пациентов как пациентов с низким или высоким риском. Чтобы достичь этой цели, нам нужно предсказать только коэффициенты опасности новых пациентов и сравнить их с медианным уровнем риска, полученным в обучающих данных.

Таблица прогнозируемого уровня риска показывает, что 27 пациентов относятся к категории низкого риска, а 23 пациента — к категории высокого риска.

Ссылка

Ю, К., К. Чжан, Г. Дж. Берри, Р. Б. Альтман, К. Ре, Д. Л. Рубин и М. Снайдер. 2016. Прогнозирование прогноза немелкоклеточного рака легкого с помощью полностью автоматизированных характеристик микроскопических патологических изображений. Nature Communications 7(12474).