Анализ выживания используется для оценки продолжительности жизни конкретной исследуемой популяции. Он также называется “анализом времени до события”, поскольку его цель – оценить время, в течение которого частное лицо или взбалмошность людей могут испытать событие, вызывающее их интерес. Согласно этой точке зрения, продолжительность между событиями рождения и смерти “Анализ выживания” изначально разрабатывался и использовался медицинскими исследователями и аналитиками данных для определения продолжительности жизни конкретной популяции[1]. Но на протяжении многих лет он используется в различных других приложениях, таких как прогнозирование взращивания клиентов/сотрудников, оценка продолжительности жизни Машины и т.д. О событии рождения часто думают потому, что время, когда клиент начинает свое членство в корпорации, и поэтому событие смерти часто рассматривается потому, что клиент уходит из корпорации.

Данные

При анализе выживания нам не нужны точные начальные и конечные точки. Все наблюдения не всегда начинаются с нуля. Тема может быть введена в любое время в рамках исследования. Вся продолжительность относительна[7]. Все темы покупаются до стандартной стартовой линии, где время t равно нулю (t = 0), а у каждого из субъектов вероятность выживания адекватна единице, т.е. их шансы не пережить интересующее событие (смерть, отжиг и т.д.) составляют 100%.

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

Цензура

Важно знать, что не каждый член населения будет испытывать Событие интереса (смерть, отток и т.д.) в период исследования. Например, будут клиенты, которые все еще являются членами корпорации, или сотрудники, которые все еще работают на компанию, или машины, которые все еще функционируют в период наблюдения/обучения. Мы не знаем, когда они будут испытывать событие, представляющее интерес, на момент проведения исследования. Все мы знаем, что они еще не испытали его. Их время выживания дольше, чем время исследования. Их время выживания, таким образом, обозначено как “Цензура”, это означает, что их время выживания было прервано. Таким образом, Цензура позволяет вам прожить время жизни для населения, которое ещё не испытало событие, представляющее интерес.

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

Существуют различные типы цензуры, уничтожающей Анализ Выживания, как объяснено ниже[3]. Обратите внимание, что цензура не должна зависеть от долгосрочной ценности опасности для данного конкретного субъекта [24].

Правильный цензур: Это происходит, когда тема входит в t=0, т.е. в начале исследования, и заканчивается до наступления события, представляющего интерес. Это означает, что либо они не испытывают событие, представляющее интерес, во время исследования, т.е. они прожили больше времени, чем продолжительность исследования, либо не могут быть соседями исследования полностью и уехали раньше времени, не испытывая события, представляющего интерес, т.е. они уехали, и что мы больше не можем их изучать.

Оставили цензуру: Это происходит, когда событие рождения не было замечено. Здесь следует даже упомянуть еще одно понятие, называемое “выборочная выборка по длине”. Такая выборка возникает тогда, когда целью исследования является анализ людей/объектов, которые уже пережили это событие, и мы хотим удостовериться в том, что они снова его испытают. Пакет “Линии жизни” поддерживает левоцензурные наборы данных, добавляя ключевое слово left_censoring=True. Обратите внимание, что по умолчанию установлено значение False. Пример[9]:

model_name.fit(Время, событие, left_censoring=Истина).

Интервальная цензура: Это происходит, когда период наблюдения, т.е. время между наблюдениями, не является непрерывным. Это будет еженедельно, ежемесячно, ежеквартально и т.д.

Левая усеченная линия: упоминается как поздняя запись. темы могли испытать событие, представляющее интерес, до того, как поступить в исследование. есть аргумент, называемый “запись”, который определяет продолжительность между рождением и поступлением в исследование. Если мы заполним усеченную область, то это сделает нас излишне уверенными в том, что произойдет в ранний период после диагностики. Поэтому мы их и усекаем[9].

Короче говоря, субъекты, которые не испытали событие, представляющее интерес, в период исследования, подвергаются левой цензуре, а субъекты, рождение которых не было замечено, подвергаются левой цензуре[7]. Анализ выживания был разработан в основном для решения вопроса правоцензуры[7].

Функция выживания

Функция выживания дана

https://miro.medium.com/max/112/1*2gNtUSp_6nrw2NBfsXz4VA.png

Функция выживания определяет вероятность того, что интересующее событие не произошло в момент времени t. Это также может быть интерпретировано, так как вероятность выживания после времени t [7]. Здесь T – это случайная продолжительность жизни, взятая у популяции, и она не может быть отрицательной. Обратите внимание, что S(t) находится между нулем и единицей (включительно), а S(t) может быть не возрастающей функцией t[7].

Функция опасности

Функция опасности, также называемая функцией интенсивности, определяется потому, что вероятность того, что тема будет испытывать интерес в пределах интервала времени, пока человек выжил до начала этого интервала [2]. это мгновенная ставка, вычисленная за период времени, и эта ставка учитывается как постоянная [13]. Она также может быть учтена, поскольку риск испытать событие, представляющее интерес, в момент времени t. это количество испытуемых в интервале времени t, деленное на количество выживших в момент времени t и ширину интервала [2].

https://miro.medium.com/max/262/1*2Dia2xF_DVMccQh8saPYFg.png

Так как вероятность бесконечного варианта равняться конкретному значению равна нулю. Поэтому мы рассматриваем вероятность события, происходящего на определенном промежутке времени от T до (T + ΔT). Поскольку наша цель состоит в том, чтобы искать опасность случая, а не в том, чтобы опасность побуждала к большему, потому что интервал ΔT увеличивается. Таким образом, чтобы регулировать это, мы делим уравнение на ΔT. При этом уравнение масштабируется на ΔT[14]. Уравнение степени опасности дается как:

Ограничение ΔT приближается к нулю, что означает, что наша цель заключается в том, чтобы жить в условиях опасности, возникающей в определенный момент времени. Таким образом, при приближении предела ΔT к нулю получается бесконечно малый период времени [14].

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

Оценка Каплана-Майера

Kaplan-Meier Estimate используется для того, чтобы прожить часть субъектов, которые выжили в течение определенного периода времени t[4] при эквивалентных обстоятельствах[2]. это не даст среднего представления о населении[7]. Этот метод дополнительно называется товарным пределом. Он позволяет создать таблицу, называемую таблицей жизни, и график, называемый кривой выживания, для гораздо лучшего представления о населении, находящемся в опасности[2]. Время выживания определяется потому, что время от предопределенной точки до наступления интересующего события[5]. Кривая выживания Каплана-Майера – это вероятность выживания в течение заданного промежутка времени, где время учитывается через небольшие промежутки времени. Для анализа выживания с использованием оценки Каплана-Майера существует три предположения [4]:

Субъекты, которые подвергаются цензуре, имеют такие же перспективы выживания, как и те, которые все еще следуют за ними.

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

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

Вероятность выживания в каждый конкретный момент времени рассчитывается потому, что число выживших делится на количество людей, находящихся в опасности. В знаменатель не засчитываются прошедшие цензуру предметы[4]. Уравнение дается следующим образом:

https://miro.medium.com/max/117/1*e0K73uSLwzH4Xr5Dt2ZQIw.png

Здесь ni представляет количество субъектов, находящихся в опасности, до времени t. di представляет сумму интересующего их события в момент времени t.

Для кривой выживания для оценки Каплана-Мейера, ось y представляет вероятность того, что тема все еще не испытала событие, представляющее интерес, после времени t, где время t находится на оси x[9]. Для того, чтобы определить, насколько мы не уверены в целевых оценках, мы используем интервалы высокомерий[10]. Медианное время – это время, когда в среднем, половина населения пережила событие, связанное с импортом целых линий жизни KaplanMeierFitter

из lifelines.datasets импортировать load_waltons

df = load_waltons()

T = df[‘T’]

E = df[‘E’]

kmf = KaplanMeierFitter()

kmf.fit(T, event_observed=E)

kmf.plot()rest[9].

Регрессия выживания

Регрессия выживания подразумевает использование не только длительности и, следовательно, цензурных переменных, но и дополнительных данных (пол, возраст, заработная плата и т.д.) в качестве ковариантов. Мы “регрессируем” эти коварианты по отношению к переменной продолжительности.

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

Модель регрессии пропорциональной опасности Кокса

Многомерная аналитическая модель Кокса Proportional Hazards была введена Коксом и учитывает влияние нескольких переменных одновременно[2] и исследует связь распределения выживаемости с этими переменными[24]. Это почти как многофакторный корреляционный анализ, но разница в том, что зависящая переменная заключается в том, что функция опасностей в заданное время t. она поддерживает очень маленькие интервалы времени, называемые щелчками по времени, которые содержат в себе максимум одно интересующее Вас событие. это полупараметрический подход для оценки весов при модели пропорциональных опасностей[16]. Оценки параметров получаются путем максимизации частичной вероятности весов[16].

Градиентный спуск используется в соответствии с Коксовской моделью для данных[11]. Причина градиентного спуска выходит за рамки данного текста, но он находит веса, поэтому ошибка сведена к минимуму.

Формула для Коксовской модели регрессии пропорциональных опасностей приведена ниже. Модель работает таким образом, что лог-опасность частного субъекта может быть линейной функцией его статических ковариантов и базовой функцией опасности на уровне популяции, которая изменяется во времени. Эти коварианты часто оцениваются по частичной вероятности[24].

https://miro.medium.com/max/267/1*yGKtk9wXb2gSyvL3MumYNw.png

β0(t) является то, что базовая функция опасности и она определяется потому, что вероятность пережить событие, представляющее интерес, когда все другие коварианты равны нулю. И это единственная зависящая от времени составляющая в модели. Модель не делает предположений об исходной опасной функции и принимает параметрическую форму для влияния ковариантов на опасность[25]. Частичная опасность может быть скалярным фактором, не зависящим от времени, который только увеличивает или уменьшает базовую опасность. Это почти как перехват в обычной регрессии[2]. Коварианты или коэффициенты регрессии х дают пропорциональное изменение, которое будет ожидаться в пределах опасности[2].

Знак коэффициентов регрессии, βi, играет задачу в пределах опасности объекта . Изменение этих коэффициентов регрессии или ковариантов либо увеличивает, либо уменьшает исходную опасность[2]. Положительный знак для βi означает, что опасность случая выше, а значит, и прогноз события, представляющего интерес для данного конкретного субъекта, выше. Аналогичным образом, отрицательный знак означает, что опасность события ниже. Отметим также, что величина, т.е. ценность сама по себе тоже играет роль[2]. Например, ценность переменной, равной хотя бы одной, будет означать, что она не окажет никакого влияния на Опасность. При величине, равной, по крайней мере, единице, она уменьшит Хазард, а при величине, превышающей единицу, увеличит Хазард[15]. Эти коэффициенты регрессии, β, оцениваются путем максимизации частичной вероятности[23].

Модель пропорциональной опасности Кокса может быть полупараметрической моделью в том смысле, что базовая функция опасности не нуждается в уточнении, т.е. она может изменяться, позволяя использовать специальный параметр для каждого уникального времени выживания. Но она предполагает, что коэффициент скорости остается пропорциональным в течение всего периода наблюдения[13]. Это приводит к повышению гибкости модели. Полностью параметрическая модель пропорциональных опасностей также предполагает, что базовая функция опасности часто параметризуется в соответствии с конкретной моделью для распределения времени выживания[2].

Коксовая модель может обрабатывать данные с правоцензурой, но не может обрабатывать данные с левой или интервальной цензурой напрямую[19].

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

Термин “пропорциональные опасности” относится к идее непрерывной связи между переменной и, следовательно, коэффициентами регрессии [2]. Таким образом, это говорит о том, что опасные функции для любых двух субъектов в любой момент времени являются пропорциональными. Модель пропорциональных опасностей предполагает наличие мультипликативного эффекта ковариантов на функцию опасности [16].

Добавочная модель Аалена

Как и модель Кокса, эта модель является дополнительной регрессионной моделью, но в отличие от модели Кокса, она определяет степень опасности как добавку, а не как мультипликативную линейную модель. Опасность определяется как:

https://miro.medium.com/max/263/1*cXdV68PzjNk0-oXrYRGzNQ.png

В процессе оценки на каждом этапе вычисляется прямолинейная регрессия. Регрессия может стать нестабильной из-за малого размера выборки или высокой колинеарности в наборе данных. Добавление термина coef_penalizer помогает контролировать стабильность. Начните с маленького термина и увеличивайте его, если он становится слишком нестабильным[11].

Это параметрическая модель, которая предполагает, что это функциональная форма с параметрами, к которым мы подгоняем информацию. Параметрические модели позволяют нам увеличить функцию выживания, функцию опасности или кумулятивную функцию опасности за пределы нашей максимальной наблюдаемой длительности. Эта идея называется Экстраполяция[9]. Функция выживания модели Вейбулла выглядит следующим образом:

https://miro.medium.com/max/138/1*vBCImVQBmn0ctk5SeXbvkQ.png

Здесь λ и ρ оба положительны и больше нуля. Их значения оцениваются, когда модель соответствует информации . Функция “Опасность” дана как:

https://miro.medium.com/max/85/1*AerPaHc4cWyLDEBAGXkI7g.png

Ускоренная модель регрессии времени отказа

Если нам дать две отдельные популяции A и B, каждая из которых имеет свои собственные функции выживания, данные SA(t) и SB(t), и что они связаны друг с другом некоторой ускоренной частотой отказов, λ, такова,

λ часто моделируется как функция ковариантов[11]. Она описывает растяжение или сжатие времени выживания как функцию предикторных переменных[19].

https://miro.medium.com/max/106/1*9z8pYGGotkx5vWrI5PGUOQ.png

Где

https://miro.medium.com/max/188/1*fEMFFrF1VAPNMVJIlvjRiA.png

В зависимости от ковариата субъекта модель может ускорять или замедлять время отказа. увеличение xi означает изменение среднего/среднего времени выживания на элемент exp(bi)[11]. Затем мы выбираем параметрическую форму для функции выживания. Для этого выберем форму Вейбуля.

https://miro.medium.com/max/102/1*qjicQ_XX5ov75BRoX2F0aQ.png

Анализ выживания на питоне с помощью пакета Lifelines

установка трубопроводов спасательных трубопроводов

Первый шаг – поместить в пакет спасательных трубопроводов на Питоне. Вы установите его с помощью трубопровода.

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

model_name.fit(Время, событие, left_censoring=True)

Вход в подходящий метод выживания регрессии, т.е. CoxPHFitter, WeibullAFTFitter и AalenAdditiveFitter, должен включать в себя длительность, цензуру индикаторов и коварианты в виде фрейма Pandas DataFrame. Длительность и цензурированный индикатор должны быть изложены в решении о подходящем методе[8].

Пакет спасательных линий содержит функции в lifelines.statistics для соответствия двум кривым выживаемости[9]. Журнал-тест сравнивает генераторы двух серий событий. У серий есть разные генераторы, если стоимость, возвращаемая из теста, превышает некоторое заданное значение.

из lifelines.statistics import logrank_test

results = logrank_test(Timeline_1, Timeline_2, Event_1, Event_2, alpha=.99)

results.print_summary()