«Почему у меня не получается прогностическая модель?» — часто спрашивают коллеги. Речь идёт о многофакторных моделях, построенных методом линейной или логистической регрессии, либо с помощью регрессии Кокса.
При этом, действительно, есть все предпосылки для того, чтобы считать, что исход Y зависит от предикторов X. Но статистическая программа выдаёт какие-то странные значения коэффициентов и p-value. Предикторы, для которых предполагалось прямое влияние, вдруг показывают обратную связь. OR или HR принимают невообразимо огромные значения… В-общем, непонятно, как такое вообще могло произойти.
Между тем, такие странности всегда имеют определённые причины. Разберём правила разработки регрессионных моделей, следуя которым Вы избежите описанных проблем (или хотя бы сможете их предвидеть).
Не все предикторы одинаково полезны!
Регрессия не относится к методам разведочного анализа (а вот, например, деревья решений — относятся). Это значит, что не следует без предварительного анализа «сваливать» в модель все имеющиеся факторы, даже при условии проведения шагового отбора.
Следует вначале оценить связь каждого предиктора с зависимой переменной с помощью обычного однофакторного анализа. И далее включать в модель только те, которые показали наличие связи. При этом может использоваться более «мягкий» порог p-value — не традиционный p<0,05, а, например, p<0,1 или даже p<0,2.
В компании с другими факторами предиктор ведёт себя по другому
Почему иногда предиктор, показавший статистически значимую связь с зависимой переменной в однофакторном анализе, в составе многофакторной модели становится незначимым, или наоборот?
Это нормальное явление, так как для предикторов в многофакторной модели рассчитываются скорректированные (adjusted) показатели. Они описывают влияние предиктора при условии того, что остальные факторы в модели имеют неизменное значение.
- Например, наличие сахарного диабета (СД) увеличивает риск гипертонии. Но при добавлении в модель уровня глюкозы в крови влияние СД будет оцениваться уже при условии, что уровень глюкозы у пациентов имеет неизменное, константное значение. Естественно, при этом связь диабета с гипертонией будет деформироваться вплоть до потери значимости или даже изменения направления с прямого на обратное.
Подготовиться к такой ситуации поможет оценка связей между предикторами. Сильно коррелирующие между собой предикторы не включаются одновременно в состав общей многофакторной модели.
Чем больше исследуемых, тем лучше!
Регрессионный анализ требует достаточного объема наблюдений. При этом численность выборки напрямую зависит от количества предикторов. Чем их больше — тем больше исследуемых должно быть набрано.
Важным условием является не только достаточное общее число пациентов, но и достаточная частота событий в исследуемой выборке. Можно набрать 1000 пациентов для анализа выживаемости, но если среди них за исследуемый период произошло всего 5 событий, оценить влияние факторов на выживаемость не представляется возможным.
- Распространённый подход к расчёту минимального объема выборки для линейной, логистической регрессии или регрессии Кокса — не менее 10 случаев исхода на каждый предиктор. Также в двух последних случаях рекомендуют минимальный объём рассчитывать как 50+8*N, где N — число предикторов в модели.
Пропущенные значения доставляют хлопот!
Пропущенные значения всегда являются проблемой для статанализа. И многофакторные модели — не исключение. Ведь модель строится по данным только тех пациентов, у которых известны значения всех изучаемых предикторов.
- Представим, что анализируется влияние двух показателей X1 и X2 на вероятность исхода у 200 пациентов. При этом X1 определен у всех пациентов, а X2 — только у 50 человек. Если мы захотим разработать модель с участием обоих показателей, то 150 пациентов, у которых известны только значения X1 и неизвестны значения X2, будут исключены программой из анализа со всеми вытекающими последствиями.
На ноль делить нельзя!
Иногда статпрограмма выдаёт странные значения отношения шансов или отношения рисков, размер которых достигает устрашающей величины (например, 10 в степени 100 и выше!). В других программах OR или HR могут быть обозначены знаком ∞ или Inf (Infinity — бесконечность). Что это значит?
Скорее всего, в одной из сравниваемых групп частота исхода или фактора равна 0. Другими словами, ни у одного из пациентов данной группы не было либо изучаемого исхода, либо фактор принимал только одно значение. В связи с этим при делении частот или шансов друг на друга получается деление на 0. А результат такого деления, как известно, стремится к бесконечности.
Такие факторы лучше исключать из регрессионного анализа. Вместо этого просто напишите, что при таких-то значениях предиктора не было выявлено ни одного исхода (например, при данном лечении не было ни одного рецидива заболевания).
Следите за кодировкой бинарных данных!
Распространённая ситуация, когда вместо ожидаемой прямой связи исследователь получает обратную, и наоборот. Выражается это в значениях OR или HR меньше или больше 0, не соответствующих предварительному однофакторному анализу.
Причиной может быть не только неверная исходная гипотеза или изменение направления связи из-за учёта влияния других факторов, но и техническая ошибка в кодировке данных. Правильным является вариант расчёта OR или HR, когда наличие признака относится к отсутствию признака. Например, курящие — к некурящим. Наличие признака называется целевой категорией.
В каких случаях может возникнуть ошибка в кодировке?
- Присвоили наличию фактора меньшее значение, например, 1, а отсутствию — большее, например, 2. По умолчанию большинство программ считают целевой категорией — большее значение.
- В программе неверно задана целевая категория. Такая настройка есть в большинстве программ, включая StatTech, поэтому всегда следует проверять, какое значение программа обозначила как целевую категорию.
Надеюсь, приведённые правила помогут получить действительно ценную, теоретически обоснованную и практически применимую регрессионную модель.
Добавить комментарий