New In

Ласо за модели на Кокс с пропорционални опасности

Ако разполагате с данни от време до събитие, известни също като данни за време на оцеляване или време на отказ, и много предиктори, разгледайте Lasso Cox и Elasticnet.

Акценти

  • Оценяване: ласо и еластична мрежа

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

  • Методи за подбор

    • Кръстосано потвърждение
    • Адаптивно ласо

    • BIC

    • Определено от потребителя

  • Прогнози с наказани и след селекция

  • Графики на функциите за оцеляване и други функции

команди. (И когато казваме много предиктори, имаме предвид стотици, хиляди или повече!) Новото в Stata 18 е, че тези команди разширяват съществуващия набор от ласо за прогнозиране и избор на модел, като включват високоразмерен полупараметричен модел на Кокс за пропорционални опасности.

След lasso cox и elasticnet cox можете да използвате stcurve, за да изведете графиката на функцията на оцеляване, неуспех, опасност или кумулативна опасност, или да използвате някой от другите инструменти за последваща оценка, налични след lasso и elasticnet.

Нека видим как работи

Илюстрираме lasso cox с пример, който предсказва риска от смърт при пациенти с аденокарцином на белия дроб в първи стадий. Аденокарциномът на белия дроб е един от най-често срещаните недребноклетъчни видове рак на белия дроб.

Стадий 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, за да покажем, че той вече е бил 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

Сега използваме ласо-кокс модел, като използваме само данните от обучението. По подразбиране използваме кръстосана проверка. Посочваме rseed() за възпроизводимост.

Lasso Cox избира 48 от 500 функции. Сега можем да предскажем наказаното съотношение на относителния риск (променлива riskscore_training) и да оценим оценките на риска. Ще използваме медианата на riskscore_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)

Графиката показва, че прогнозираните високорискови пациенти имат по-стръмно падаща крива на преживяемост, отколкото прогнозираните нискорискови пациенти. За да потвърдим това предположение, правим log-rank тест.

Тестът log-rank отхвърля хипотезата, че прогнозираните нискорискови и високорискови пациенти имат еднакви функции на преживяемост. Както графиката на Kaplan-Meier, така и тестът log-rank показват, че използването на медианата на прогнозираните съотношения на риска може ефективно да разграничи пациент с нисък риск от пациент с висок риск. Вече можем да правим прогнозни оценки при наличието на нови данни.

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

Таблицата за прогнозираното ниво на риск показва, че 27 пациенти са класифицирани като нискорискови, а 23 пациенти – като високорискови.

Справка

Yu, K., C. Zhang, G. J. Berry, R. B. Altman, C. Ré, D. L. Rubin и M. Snyder. 2016. Прогнозиране на прогнозата при недребноклетъчен рак на белия дроб чрез напълно автоматизирани характеристики на микроскопски патологични изображения. Nature Communications 7(12474).