Урок 3 Диагностика логистической регрессии

Урок 3 Диагностика логистической регрессии В предыдущих двух главах мы сосредоточились на вопросах, связанных с анализом логистической регрессии, например, как создавать переменные взаимодействия и как

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

  • Истинные условные вероятности - это логистическая функция независимых переменных.
  • Не пропущены никакие важные переменные.
  • Никакие посторонние переменные не включены.
  • Независимые переменные измеряются без ошибок.
  • Наблюдения независимы.
  • Независимые переменные не являются линейными комбинациями друг друга.

В этой главе мы продолжим использовать набор данных apilog.

3.1 Ошибка спецификации

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

Linktestкоманды Stata можно использовать для обнаружения ошибки спецификации, и она выдается после команды logitили logistic. Идея linktestзаключается в том, что если модель задана правильно, не должно быть возможности найти какие-либо дополнительные статистически значимые предикторы, кроме как случайно. После команды регрессии (в нашем случае логитаили логистики) linktestиспользует линейное прогнозируемое значение ( _hat) и линейное прогнозируемое значение в квадрате ( _hatsq) в качестве предикторов для восстановления модели. Переменная _hatдолжен быть статистически значимым предиктором, поскольку это прогнозируемое значение модели. Это будет так, если модель не указана полностью. С другой стороны, если наша модель задана правильно, переменная _hatsqне должна иметь большой предсказательной силы, за исключением случая. Следовательно, если _hatsqимеет значение, значит проверка ссылок. Обычно это означает, что либо мы пропустили соответствующие переменные, либо наша функция ссылки указана неправильно.

Теперь посмотрим на пример. В нашем наборе данных api у нас есть переменная с именем cred_ml, которая определена для 707 наблюдений (школ), процент учителей которых находится в среднем и нижнем диапазоне. Для этого субпопуляции школ, мы считаем , что переменные yr_rnd, питаниеи cred_mlявляются мощными предикторами для прогнозирования , если счет апи школы высок. Итак, мы выполнили следующую команду logit,а затем команду linktest.

Сначала мы видим на выходе из логиткоманды , что три предикторы все статистически значимые предикторы, а в LinkTest, последовавший, переменная _hatsqзначительна (с р-значение = 0,006). Это подтверждает, с одной стороны, что мы выбрали значимые предикторы. С другой стороны, он сообщает нам, что у нас есть ошибка спецификации (поскольку linktestимеет значение). Первое, что нужно сделать, чтобы исправить ситуацию, - это посмотреть, все ли соответствующие переменные мы включили. Чаще всего мы думали, что включили все переменные, но упускали из виду возможные взаимодействия между некоторыми из переменных-предикторов. Это может быть случай с нашей моделью. Поэтому мы пытаемся добавить в нашу модель термин взаимодействия. Мы создаем переменную взаимодействия ym= yr_rnd * foods, добавляем ее в нашу модель и снова пробуем тест ссылок. Прежде всего, значение взаимодействия имеет значение p-value = 0,015. Во-вторых, линктестуже не имеет значения. Это показатель того, что мы должны включить термин взаимодействия в модель, и, включив его, мы получим лучшую модель с точки зрения спецификации модели.

Теперь сравним две модели, которые мы только что построили. Из вывода нашей первой команды logitу нас есть следующее уравнение регрессии:

logit( hiqual) = 2.411226 - 1.185658 * yr_rnd-.0932877 * питание+ .7415145 * cred_ml

В этой модели нет взаимодействия переменных yr_rndи еды. Следовательно, эффект переменного питанияодинаков независимо от того, является ли школа круглогодичной школой или нет. С другой стороны, во второй модели

logit (hiqual)= 2.668048 - 2.816989 * yr_rnd-.1014958 * еда+ .7795476 * cred_ml+ .0459029 * ym,

Эффект от разнообразного питанияразличается в зависимости от того, является школа круглогодичной школой или нет. Точнее, если школа не является круглогодичной школой, влияние переменного питаниясоставляет -.1014958 на логит выходнойпеременной hiqual,а эффект -.1014958 + .0459029 = -.0555929 для круглогодичного проживания. школа. Это имеет смысл, поскольку в круглогодичной школе обычно более высокий процент учащихся, получающих бесплатное питание или питание по сниженной цене, чем в не круглогодичной школе. Поэтому в круглогодичных школах переменное питаниеуже не так эффективно, как в общеобразовательной школе. Это говорит нам о том, что, если мы неправильно определим нашу модель, влияние переменного приема пищиможно будет оценить с ошибкой.

Мы должны помнить, что компоновка- это просто инструмент, который помогает в проверке нашей модели. У него есть свои пределы. Лучше, если мы будем иметь в виду теорию, которая будет руководить построением нашей модели, чтобы мы сверяли нашу модель с нашей теорией и чтобы мы проверяли нашу модель на основе нашей теории. Давайте посмотрим на другой пример, где проверка ссылокработает не так хорошо. Мы построим модель для прогнозирования hiqual,используя yr_rndи awards вкачестве предикторов. Обратите внимание, что псевдоквадрат равен 0,076, что находится на нижней стороне. Тем не менее, мы запускаем линктест, и оказывается очень незначительным (p = 0,909). Оказывается, _hatsq и _hat сильно коррелируют с корреляцией -.9617, что дает незначительный _hatsq, поскольку он не предоставляет много новой информации, кроме самого _hat.

Мы знаем, что переменная едаочень сильно связана с переменной результата и что она должна быть в нашей модели. Поэтому мы запускаем другую модель с приемом пищив качестве дополнительного предсказателя. На этот раз линктестоказался значимым. Какая модель лучше? Если мы посмотрим, например, на псевдоквадрат R, он возрастет от 0,076 до 0,5966. Мы обязательно остановимся на второй модели. Это говорит нам о том, что тестирование ссылок- это ограниченный инструмент для обнаружения ошибок спецификации, как и любые другие инструменты. Полезно помогать нам обнаруживать, но мы, как всегда, должны руководствоваться здравым смыслом.

Ранее мы видели, что отсутствие члена взаимодействия может вызвать проблемы со спецификацией модели. Точно так же у нас может возникнуть проблема спецификации модели, если некоторые из переменных-предикторов не будут преобразованы должным образом. Например, изменение зависимой переменной в предикторе может не быть линейным, но только линейный член используется в качестве предиктора в модели. Чтобы решить эту проблему,можно использовать программу Stata под названием boxtid. Это программа, написанная пользователем, которую вы можете загрузить через Интернет, набрав « search boxtid». boxtidрасшифровывается как модель Box-Tidwell, которая преобразует предиктор с использованием степенных преобразований и находит наилучшую степень соответствия модели на основе оценки максимального правдоподобия. Точнее, предиктор xпреобразуется вB 1+ B 2 x p,и наилучшее p находится с использованием оценки максимального правдоподобия. Помимо оценки степенного преобразования, boxtidтакже оценивает экспоненциальные преобразования, которые можно рассматривать как степенные функции в экспоненциальной шкале.

Давайте посмотрим на другую модель, в которой мы прогнозируем hiqaulот yr_rndи еды. Мы начнем с модели только с двумя предикторами. LinkTestимеет большое значение, что указывает на проблему с моделью спецификации. Затем мы используем boxtid, и при необходимости он отображает наилучшее преобразование переменных-предикторов.

Тест на нелинейность для различных блюдявляется статистически значимым с p-значением = 0,005 .Нулевая гипотеза состоит в том, что предсказывающая переменная едаимеет линейный член или, что то же самое, p1 = 1. Но она показывает, что p1 составляет около 0,55, чтобы быть оптимальным. Это предполагает квадратный корень преобразование переменной еды. Итак, давайте попробуем этот подход и заменим переменные блюдана квадратный корень из самого себя. Это может согласовываться с теорией о том, что эффект разнообразных приемов пищи в конце будет ослабевать.

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

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

3.2. Степень соответствия. Из наших предыдущих уроков мы видели, что результаты логистической регрессии Stata содержат логарифмический хи-квадрат правдоподобия и псевдо-R-квадрат для модели. Эти меры вместе с другими, которые мы также собираемся обсудить в этом разделе, дают нам общую оценку того, насколько модель соответствует данным. Начнем с модели, которую мы показали ранее.

Хи-квадрат логарифма правдоподобия - это комплексный тест, позволяющий определить, является ли модель в целом статистически значимой. Это в 2 раза больше разницы между логарифмической вероятностью текущей модели и логарифмической вероятностью модели, предназначенной только для перехвата. Поскольку Stata всегда начинает свой итерационный процесс с модели только с перехватом, логарифмическая вероятность на итерации 0, показанная выше, соответствует логарифмической вероятности пустой модели. Четыре степени свободы исходят от четырех переменных-предикторов, имеющихся в текущей модели.

Псевдоквадрат немного отличается по своему вкусу, но отражает более или менее то же самое в том смысле, что это пропорция изменения с точки зрения вероятности.

Это «псевдо» R-квадрат, потому что он не похож на R-квадрат, найденный в регрессии OLS, где R-квадрат измеряет долю дисперсии, объясняемую моделью. Псевдоквадрат не измеряетсяв терминах дисперсии, поскольку в логистической регрессии дисперсия фиксируется как дисперсия стандартного логистического распределения. Тем не менее, это все еще пропорция с точки зрения логарифма правдоподобия. Из-за проблемы, что он (что ??)никогда не будет 1, было много вариантов этого конкретного псевдо-R-квадрата. Мы также должны отметить, что разные псевдо-R-квадраты могут давать очень разные оценки соответствия модели, и что не существует одной версии псевдо-R-квадрата, которую большинство аналитиков предпочитало бы другим версиям.

Другой часто используемый тест соответствия модели - это критерий согласия Хосмера и Лемешоу. Идея, лежащая в основе теста согласия Хосмера и Лемешоу, заключается в том, что прогнозируемая частота и наблюдаемая частота должны точно совпадать, и чем точнее они совпадают, тем лучше соответствие. Статистика согласия Хосмера-Лемешоу вычисляется как хи-квадрат Пирсона из таблицы сопряженности наблюдаемых частот и ожидаемых частот. Подобно тесту на ассоциацию двухсторонней таблицы, хорошее соответствие, измеренное с помощью теста Хосмера и Лемешоу, даст большое p-значение. Когда в модели есть непрерывные предикторы, будет много ячеек, определяемых переменными предиктора, что составит очень большую таблицу непредвиденных обстоятельств, которая будет давать значительный результат чаще, чем часто.Таким образом, общепринятая практика состоит в том, чтобы объединить шаблоны, сформированные переменными-предикторами, в 10 групп и сформировать таблицу непредвиденных обстоятельств 2 на 10.

Имея p-значение 0,33, мы можем сказать, что критерий согласия Хосмера и Лемешоу показывает, что наша модель хорошо соответствует данным.

Существует множество других мер соответствия модели, такие как AIC (информационный критерий Акаике) и BIC (байесовский информационный критерий). Команда под названием fitstatотобразит большинство из них после модели.

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

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

3.3 Мультиколлинеарность

Мультиколлинеарность (или для краткости коллинеарность) возникает, когда две или более независимых переменных в модели приблизительно определяются линейной комбинацией других независимых переменных в модели. Например, у нас была бы проблема с мультиколлинеарностью, если бы мы измеряли высоту в дюймах и высоту в футах в одной и той же модели.Степень мультиколлинеарности может быть разной и может по-разному влиять на модель. Когда возникает идеальная коллинеарность, то есть когда одна независимая переменная является идеальной линейной комбинацией других, невозможно получить уникальную оценку коэффициентов регрессии со всеми независимыми переменными в модели. В этом случае Stata удаляет переменную, которая является идеальной линейной комбинацией других, оставляя только те переменные, которые не являются точно линейными комбинациями других в модели, чтобы гарантировать уникальную оценку коэффициентов регрессии. Например, мы можем искусственно создать новую переменную с именем perliкак сумму yr_rndи еды. Обратите внимание, что единственная цель этого примера и создание переменнойperli- показать, что делает Stata, когда возникает идеальная коллинеарность. Обратите внимание, что Stata выдает примечание, информирующее нас о том, что переменная yr_rndбыла удалена из модели из-за коллинеарности. Мы не можем предположить, что переменная, которую Stata удаляет из модели, является «правильной» переменной, которую следует исключить из модели; скорее, нам нужно полагаться на теорию, чтобы определить, какую переменную следует опустить.

Умеренная мультиколлинеарность довольно распространена, поскольку любая корреляция между независимыми переменными указывает на коллинеарность. Когда возникает серьезная мультиколлинеарность, стандартные ошибки для коэффициентов имеют тенденцию быть очень большими (завышенными), и иногда расчетные коэффициенты логистической регрессии могут быть крайне ненадежными. Рассмотрим следующий пример. В этой модели, зависимой переменной будет hiqual, а переменные предсказателя будет включать в себя avg_ed, yr_rnd, питание, полный, и взаимодействие между yr_rndи полным,yxfull. После процедуры логита мы также запустим тест на соответствие. Обратите внимание, что тест согласия показывает, что в целом наша модель подходит.

Тем не менее, обратите внимание, что отношение нечетных чисели стандартная ошибка для переменной yr_rndневероятно высоки. Видимо что-то пошло не так. Непосредственной причиной невероятно большого отношения нечетных чисел и очень большой стандартной ошибки является мультиколлинеарность независимых переменных. Мы можем использовать программу под названием collinдля обнаружения мультиколлинеарности. Вы можете скачать программу с сайта ATS программ Stata для обучения и исследований. (поисковый тег)

Все меры в приведенных выше выходных данных являются показателями силы взаимосвязей между переменными. Обычно используются две мер толерантность (показатель того , насколько коллинеарности , что регрессионный анализ может терпеть) и ПНП ( variance яnflation е-актер в п индикатор того , насколько большой частью инфляции стандартной ошибки может быть вызвано коллинеарностью). Допуск для конкретной переменной составляет 1 минус R 2.что является результатом регрессии других переменных по этой переменной. Соответствующий VIF - это просто 1 / допуск. Если все переменные ортогональны друг другу, другими словами, полностью не коррелированы друг с другом, и допуск, и VIF равны 1. Если переменная очень тесно связана с другой переменной (переменными), допуск становится равным 0, и инфляция дисперсии становится очень большой. Например, в выходных данных выше мы видим, что допуск и VIF для переменной yxfullравны 0,0291 и 34,34 соответственно. Мы можем воспроизвести эти результаты, выполнив соответствующую регрессию.

Обратите внимание, что R 2- 0,9709. Следовательно, допуск составляет 1-0,9709 = 0,0291. VIF равен 1 / 0,0291 = 34,36 (разница между 34,34 и 34,36 является ошибкой округления). Как показывает практика, допуск 0,1 или меньше (эквивалентно VIF 10 или больше) является поводом для беспокойства.

Теперь мы увидели, что измеряют толерантность и VIF, и убедились, что существует серьезная проблема коллинеарности, что нам с этим делать? Обратите внимание, что в приведенной выше регрессии переменные fullи yr_rndявляются единственными значимыми предикторами, а коэффициент для yr_rndочень велик. Это связано с тем, что часто, когда мы создаем термин взаимодействия, мы также создаем некоторую проблему коллинеарности. Это можно увидеть на выходе корреляции ниже.Один из способов фиксации проблемы коллинеарности центрировать переменную полную, как показано ниже. Мы используем команду sumдля получения среднего значения переменной full, а затем генерируем новую переменную с именемfullc, то есть полноеминус его среднее значение. Затем мы генерируем взаимодействие yr_rndи fullc, называемое yxfc. Наконец, мы запускаем команду logit с fullcи yxfc вкачестве предикторов вместо fullи yxfull. Помните, что если вы используете центрированную переменную в качестве предиктора, вы должны создавать все необходимые условия взаимодействия, используя центрированную версию этой переменной (а не нецентрированную версию).

Мы отображаем корреляционную матрицу до и после центрирования и замечаем, сколько изменений произвело центрирование. (Где эти корреляционные матрицы ??)Центрирование переменной fullв этом случае устранило проблему коллинеарности, и наша модель в целом хорошо подходит. Переменная yr_rndбольше не является значимым предиктором, но является условиемвзаимодействия между yr_rndи полнымявляется. Имея возможность сохранить все предикторы в нашей модели, нам будет легко интерпретировать эффект каждого из предикторов. Этот метод центрирования является частным случаем преобразования переменных. Преобразование переменных - лучшее средство от мультиколлинеарности, когда оно работает, поскольку мы не теряем никаких переменных из нашей модели. Но выбор трансформации часто бывает трудным, кроме простых, таких как центрирование. Было бы неплохо, если бы преобразование имело смысл с точки зрения моделирования, поскольку мы можем интерпретировать результаты. (Что было бы хорошим выбором? Это предложение излишне?)Другие часто рекомендуемые меры включают удаление некоторых переменных и увеличение размера выборки для получения дополнительной информации. Первый вариант не всегда является хорошим вариантом, так как он может привести к неправильной спецификации модели, а второй вариант не всегда возможен. Мы отсылаем наших читателей к Берри и Фельдману (1985, стр. 46-50) для более подробного обсуждения средств от коллинеарности. название книги или статьи?

3.4 Важные наблюдения

До сих пор мы видели, как обнаруживать потенциальные проблемы при построении модели. Теперь мы сосредоточимся на обнаружении потенциальных наблюдений, которые оказывают значительное влияние на модель. Есть несколько причин, по которым нам необходимо обнаруживать важные наблюдения. Во-первых, это могут быть ошибки ввода данных. Во-вторых, важные наблюдения могут представлять для нас интерес сами по себе. Кроме того, влиятельные точки данных могут сильно исказить оценку регрессии. (Я не понимаю, что это на самом деле означает ??)В регрессии OLS у нас есть несколько типов остатков и мер влияния, которые помогают нам понять, как каждое наблюдение ведет себя в модели, например, если наблюдение находится слишком далеко от остальных наблюдений, или если наблюдение слишком сильно влияет на линия регрессии. Подобные методы были разработаны для логистической регрессии.

Остатки Пирсона и их стандартизированная версия - это один из типов остатков. Остатки Пирсона определяются как стандартизованная разница между наблюдаемой частотой и прогнозируемой частотой. Они измеряют относительные отклонения между наблюдаемыми и подобранными значениями. Остаточное отклонение - еще один тип остатка. Он измеряет расхождение между максимумами наблюдаемой и подобранной логарифмической функций правдоподобия. Поскольку логистическая регрессия использует принцип максимального правдоподобия, цель логистической регрессии - минимизировать сумму остатков отклонения. Следовательно, этот остаток параллелен необработанному остатку в регрессии OLS, где цель состоит в том, чтобы минимизировать сумму квадратов остатков. Другая статистика, иногда называемая диагональю шляпы, поскольку технически это диагональ матрицы шляпы, измеряет эффективность наблюдения.Его также иногда называют кредитным плечом Pregibon. Эти три статистики, остаток Пирсона, остаток отклонения и кредитное плечо Pregibon, считаются тремя основными строительными блоками для диагностики логистической регрессии. Мы всегда хотим сначала проверить их. Их можно получить у Статы послеlogitили логистическаякоманда. Хороший способ взглянуть на них - построить график с предсказанными вероятностями или просто числами наблюдений. Давайте посмотрим на них на примере. Мы продолжаем использовать модель, которую мы построили в нашем последнем разделе, как показано ниже. Мы получим как стандартизованные остатки Пирсона, так и остатки отклонения и построим их график против предсказанных вероятностей. Кажется, что это не просто графики остатков Пирсона и отклонений ниже. Кроме того, может быть полезно иметь комментарий в коде, описывающий график, например, * график остатков Пирсона в сравнении с предсказанными вероятностями.

Как вы можете видеть, мы создали два типа графиков с использованием этой статистики: графики статистики по сравнению с предсказанными значениями и графики этой статистики по идентификатору индекса (поэтому он также называется графиком индекса). Эти два типа графиков в основном несут одну и ту же информацию. Точки данных кажутся более разбросанными на индексных графиках, что упрощает просмотр индекса для экстремальных наблюдений. Что мы видим на этих сюжетах? Мы видим некоторые наблюдения, которые далеки от большинства других наблюдений. Это моменты, требующие особого внимания. Например, наблюдение со школой № 1403 имеет очень высокий остаток по Пирсону и отклонению. Наблюдаемый хиквалисхода равен1, но прогнозируемая вероятность очень и очень низкая.(это означает, что модель предсказывает результат равным 0). Это приводит к большим остаткам. Но обратите внимание, что наблюдение 1403 не так уж и плохо с точки зрения рычага воздействия. То есть, если не включать это конкретное наблюдение, наша оценка логистической регрессии не будет слишком сильно отличаться от модели, которая включает это наблюдение. Перечислим наиболее выдающиеся наблюдения на основе графиков.

Что мы можем найти в каждом из наблюдений? Что отличает их от других? Наблюдение с snum= 1402 имеет большое кредитное плечо. Его процентная доля полностью аттестованных учителей составляет 36. Когда мы посмотрим на распределение полногос опцией детализации, мы поняли, что 36 процентов действительно мало, поскольку пороговая точка для нижних 5% составляет 61. С другой стороны, его api оценка довольно высока с api00 = 761. Это несколько противоречит нашей интуиции о том, что при низком проценте полностью аттестованных учителей школа должна быть школой с плохой успеваемостью.

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

Мы видим, что это единичное наблюдение изменяет переменную yxfcс значимой на незначительную, а переменную yr_rndс незначительной на почти значимую. (Можно ли сказать «почти значимо? Вместо этого укажите p-значения? Yr_rnd было бы статистическим сигналом, если бы наш альфа-уровень был 0,06?»Это единственное наблюдение имеет огромное влияние на регрессионную модель.

А как насчет двух других наблюдений? Вы можете сравнить логистический регрессионный анализ с включенным наблюдением и без наблюдения, как мы это сделали здесь. Мы заметили, что avg_edравен 5 для наблюдения с snum= 1819, максимально возможным. Это означает, что в каждой семье учащихся есть аспирантура. Это звучит слишком хорошо, чтобы быть правдой. Вполне возможно, что это ошибка ввода данных. Это вполне может быть причиной того, что это наблюдение так сильно отличается от других. Это заставляет нас более тщательно проверять наш набор данных. Мы можем перечислить все наблюдения с идеальным avg_ed.

Есть три школы с отличным среднимбаллом. Очень маловероятно, что среднее образование для любой из школ достигнет 5 баллов. Наблюдение с snum= 3098 и наблюдение с snum= 1819 кажутся более маловероятными, чем наблюдение с snum= 1081, однако, поскольку их api оценки очень низкие. В любом случае, похоже, нам следует дважды проверить ввод данных здесь. Что мы хотим делать с этими наблюдениями? Это действительно зависит от обстоятельств. Иногда мы можем вернуться, чтобы исправить ошибку ввода данных. Иногда нам, возможно, придется их исключить. Регрессионная диагностика может помочь нам найти эти проблемы, но они не говорят нам, что именно с ними делать.

До сих пор мы видели три основных диагностических статистики: остаток Пирсона, остаток отклонения и кредитное плечо (значение шляпы). Они являются основными строительными блоками в диагностике логистической регрессии. Есть и другая диагностическая статистика, которая используется для разных целей. Одним из важных аспектов диагностики является выявление наблюдений, оказывающих существенное влияние либо на статистику соответствия хи-квадрат, либо на статистику отклонения. Например, мы можем захотеть узнать, какое изменение либо в статистике соответствия хи-квадрат, либо в статистике отклонения может вызвать одно наблюдение. Это приводит к статистике dx2и dd. dx2обозначает разность хи-квадратов и ddобозначает разницу отклонений. В Stata мы можем просто использовать команду прогнозированияпосле команды logitили logisticдля создания этих переменных, как показано ниже. Затем мы можем их визуально осмотреть. Стоит отметить, что, во-первых, эти статистические данные представляют собой только одноэтапное приближение разницы, а не совсем точное различие, так как было бы слишком сложно получить точную разницу для каждого наблюдения с вычислительной точки зрения. (Я не совсем понимаю, что такое «одношаговое» приближение?)Во-вторых, Stata выполняет всю диагностическую статистику логистической регрессии с использованием ковариатных шаблонов. Каждое наблюдение будет иметь точно такую ​​же диагностическую статистику, что и все другие наблюдения в том же ковариатном шаблоне.Возможно, дайте переменным имена, отличные от опций, чтобы избежать путаницы.

Наблюдение с snum= 1403, очевидно, существенно с точки зрения как соответствия хи-квадрат, так и статистики отклонения. Например, на первом графике мы видим, что dx2составляет около 216 для этого наблюдения и ниже 100 для остальных наблюдений. Это означает, что, когда это наблюдение исключено из нашего анализа, статистика соответствия хи-квадрат Пирсона уменьшится примерно на 216. На втором графике наблюдение с snum= 1403 увеличит отклонение примерно на 11. Мы можем провести два анализа и сравнить их хи-квадраты Пирсона, чтобы увидеть, так ли это.

Это не совсем 216. (Ммм, в большинстве случаев 171 не считается чем-то близким к 216. Это действительно хороший пример?)Это из-за одношаговой аппроксимации. Таким же образом мы можем посмотреть на разницу между отклонениями.

Поскольку отклонение просто вдвое больше логарифмической вероятности, мы можем вычислить разницу отклонений как двукратную разницу в логарифмической вероятности. Когда может случиться так, что наблюдение будет иметь большое влияние на статистику соответствия, но не слишком сильно на оценки параметров? Это действительно так для наблюдения с snum= 1403, потому что его плечо не очень велико. Обратите внимание, что наблюдение с snum= 1403 имеет довольно большую невязку. Это означает, что значения для независимых переменных наблюдения не находятся в экстремальной области, но наблюдаемый результат для этой точки сильно отличается от прогнозируемого значения. Из приведенного ниже списка наблюдения мы видим, что процент студентов, получающих бесплатное питание или питание по сниженной цене, составляет около 100 процентов, среднее значениеоценка 2,19, и это круглогодичная школа. Учитывая все обстоятельства, мы не ожидали, что эта школа будет школой с высокими показателями. Но его рейтинг api составляет 808, что очень много.

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

Последний тип диагностической статистики связан с коэффициентом чувствительности. Это касается того, какое влияние каждое наблюдение оказывает на оценку каждого параметра. Подобно регрессии OLS, у нас также есть dfbeta для логистической регрессии. Программа под названием ldfbetaдоступна для скачивания (поисковый тег). Как и другие диагностические статистические данные для логистической регрессии, ldfbetaтакже использует одношаговое приближение. В отличие от других средств диагностики логистической регрессии в Stata, ldfbetaнаходится на уровне индивидуального наблюдения, а не на уровне ковариатного паттерна. После команды logitили logisticмы можем просто выполнить команду ldfbetaкоманда. Его можно использовать без каких-либо аргументов, и в этом случае dfbetaвычисляется для каждого предиктора. Это займет некоторое время, так как это требует больших вычислительных ресурсов. Или мы можем указать переменную, как показано ниже. Например, предположим, что мы хотим знать, как каждое отдельное наблюдение влияет на оценку параметров для различных приемов пищи.

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

Мы видели довольно много диагностической статистики логистической регрессии. Насколько большим должен быть каждый, чтобы считаться влиятельным? Прежде всего, мы всегда должны делать свои суждения, основываясь на нашей теории и нашем анализе. Во-вторых, существуют некоторые практические ограничения при большом размере выборки. Они показаны ниже. Когда размер выборки большой, асимптотическое распределение некоторых показателей будет следовать некоторому стандартному распределению. Вот почему у нас есть эти пороговые значения, и почему они применяются только тогда, когда размер выборки достаточно велик. Обычно мы смотрим на относительную величину статистики, которую наблюдение имеет по сравнению с другими. То есть мы ищем точки данных, которые находятся дальше от большинства точек данных.

Мера Стоимость
кредитное плечо (значение шляпы) >В 2 или 3 раза выше среднего кредитного плеча
абс (остатки Пирсона) >2
abs (Остаточные отклонения) >2

3.5 Общие числовые проблемы с логистической регрессией

В этом разделе мы собираемся обсудить некоторые общие числовые проблемы с логистическим регрессионным анализом.

Когда у нас есть категориальные переменные-предикторы, мы можем столкнуться с проблемой «нулевых ячеек». Давайте посмотрим на пример. В наборе данных hsb2у нас есть переменная writeдля записи оценок. В целях иллюстрации мы разделили эту переменную на две группы как новую переменную с именем hw. Обратите внимание, что одна группа действительно мала. Что касается другой переменной, ses, перекрестная таблица показывает, что некоторые ячейки имеют очень мало наблюдений, и, в частности, ячейка с hw= 1 и ses= low, количество наблюдений равно нулю. Это вызовет проблему с вычислениями, когда мы запустим логистическую регрессию с использованием hwв качестве зависимой переменной и sesв качестве переменной-предиктора, как показано ниже.

Обратите внимание, что для запуска этой простой модели требуется больше итераций, и, в конце концов, стандартная ошибка для фиктивной переменной _Ises_2 отсутствует. Stata также выдает предупреждение в конце. Так что же случилось? 47 отказов в предупреждающем примечании соответствуют наблюдениям в ячейке с hw= 0 и ses= 1, как показано в перекрестной таблице выше. Несомненно, что результатом будет 0, если переменная sesпринимает значение 1, поскольку в ячейке с hw= 1 и ses= 1 нет наблюдений . Хотя sesкажется хорошим предсказателем, пустая ячейка вызывает сбой процедуры оценки. Фактически, отношение шансов каждой из переменных-предикторов зашкаливает:

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

Вот банальный пример идеального разделения. Напомним, что наша переменная hwсоздается на основе оценки записи. Так что же происходит, когда мы используем переменную writeдля предсказания hw? Конечно, у нас будет идеальный прогноз с hw= 1 тогда и только тогда, когда write>= 67. Поэтому, если мы попытаемся запустить эту модель логита в Stata, мы не увидим никаких оценок, а просто сообщение:

Это очень надуманный пример для иллюстрации.

3.6 Обзор полезных команд

    • linktest - выполняет тест ссылки для спецификации модели, в нашем случае, чтобы проверить, является ли logit правильной функцией ссылки для использования. Эта команда выдается после команды logit или logistic.
    • lfit - выполняет критерий согласия, вычисляет статистику согласия по критерию хи-квадрат Пирсона или критерий согласия по критерию Хосмера-Лемешоу в зависимости от того, используется ли групповая опция.
    • fitstat - это команда пост-оценки, которая вычисляет различные меры соответствия.
    • lsens - графики зависимости чувствительности и специфичности от вероятности отсечения.
    • lstat - отображает сводную статистику, включая таблицу классификации, чувствительность и специфичность.
    • lroc - строит график и рассчитывает площадь под кривой ROC на основе модели.
    • listcoef - перечисляет оценочные коэффициенты для различных моделей регрессии, включая логистическую регрессию.
    • предсказать dbeta - статистика влияния дельта-бета Pregibon
    • предсказать отклонение - остаток отклонения
    • предсказать dx2 - изменение Хосмера и Лемешоу в статистике влияния хи-квадрат
    • предсказать dd - изменение статистики отклонений Хосмера и Лемешоу
    • предсказать шляпу - кредитное плечо Pregibon
    • прогнозировать остаток - остатки Пирсона; с поправкой на ковариантный паттерн
    • прогнозировать rstandard - стандартизованные остатки Пирсона; с поправкой на ковариатный паттерн
    • ldfbeta - влияние каждого отдельного наблюдения на оценку коэффициента (без поправки на ковариатный паттерн)
    • график с параметром [weight = some_variable]
    • scatlog - строит диаграмму разброса для логистической регрессии.
    • boxtid – выполняет степенное преобразование независимых переменных и выполняет тест на нелинейность.

    использованная литература

    Берри, У. Д., и Фельдман, С. (1985) Множественная регрессия на практике. Серия статей Университета Сейдж по количественным приложениям в социальных науках, 07-050. Беверли-Хилл, Калифорния: Сейдж.

    Прегибон, Д. (1981) Диагностика логистической регрессии, Annals of Statistics, Vol. 9, 705-724.

    Long and Freese, Модели регрессии для категориальных зависимых переменных с использованием Stata, 2-е издание.

    Менар, С. (1995) Прикладной логистический регрессионный анализ. Серия работ Университета Сейдж по количественным приложениям в социальных науках, 07-106. Таузенд-Оукс, Калифорния: Сейдж.