SAS PROC LOGISTIC - почему тест Goodness of Fit отвергает модель?

Я моделирую набор данных для абитуриентов с помощью PROC LOGISTIC в SAS (9.2). Целевая переменная - «Зарегистрирован да / нет», и я моделирую ряд из 13 переменных (сочетание индикатора, непрерывного и класса), включая: количество поданных заявок, количество посещенных мероприятий, возраст кандидата и т. Д.

Я использую 50% всего набора данных для обучения модели, что дает мне размер выборки (для обучения) чуть менее 15 000 наблюдений.

Когда я запускаю PROC LOGISTIC, в выходных данных сообщается, что большинство переменных очень значимы на уровне <.0001.

Статистика «Проверка глобальной нулевой гипотезы: БЕТА = 0» также сообщает, что модель хороша при <0,0001, а таблица статистики ассоциации сообщает, что высокий процент (90% +) предсказанных вероятностей совпадают.

Все это кажется отличным, пока я не перейду к статистике отклонений для Goodness of Fit. Тесты Pearson, Deviance и Hossmer / Lemeshow также сообщают о значении Pr> ChiSq <0,0001. Если я интерпретирую это правильно (имея в виду Пола Эллисона), этот уровень значимости означает, что модель должна быть отклонена на основании плохого соответствия.

Я попытался использовать STEPWISE для уменьшения модели, но это привело только к отклонению одного фактора, и на статистику GOF это не повлияло.

Подозревая мультиколлинеарность, я попытался смоделировать только отдельные эффекты для зависимой переменной, но все еще получаю аналогичные результаты - высокая значимость p-значений оценки параметра, но также высокая значимость в тестах GOF ...

Что-то принципиально не так с моей моделью - или я неверно интерпретирую тесты GOF в данных обстоятельствах? Кто-нибудь может посоветовать, что мне нужно исследовать?

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

/*Applicant_Factors_TRAIN: Single Factor*/
proc logistic DATA=Applicant_Factors_TRAIN;
MODEL Applicant_Enrolled(EVENT='1')= Total_campus_visits/ AGGREGATE SCALE = NONE LACKFIT RSQ;
run;

Результат ниже:

введите описание изображения здесь

введите описание изображения здесь

введите описание изображения здесь

введите описание изображения здесь

введите описание изображения здесь


person Jon295087    schedule 18.04.2017    source источник
comment
Можете выложить вывод? Это не вопрос кода, это похоже на проблемы с методологией или интерпретацией, поэтому он может быть лучше подходит для stats.stackexchange.com   -  person Reeza    schedule 19.04.2017
comment
Привет, @Reeza. Вы, наверное, правы. Я добавил скриншоты вывода - спасибо за вашу помощь.   -  person Jon295087    schedule 19.04.2017
comment
Да, это необходимо разместить на stats.stackexchange.com.   -  person Reeza    schedule 19.04.2017
comment
Вполне возможно, что эффект (или все эффекты) будут статистически значимыми, но при этом окажут лишь незначительное влияние на предсказательную силу модели. Особенно, если у вас много данных.   -  person david25272    schedule 21.04.2017


Ответы (2)


I Текущее состояние модели

  1. У вашей модели очень высокий% связей (процент привязанных = 32,8%) и только 56,7% соответствия. Итак, точность вашей модели невысока. Значение «c» 0,729 или 72,9% не дает истинного представления о вашей модели. Значение 'c' или AUC = (0,567+ (0,328 / 2)). Это означает, что ваше значение c было искажено из-за высокого процента связей.

  2. Высокий% связывает многие из ваших точек данных, которые приводят к прогнозам, которые находятся на границе, то есть ни 0, ни 1.

II Итак, что вам нужно сделать: -

Вам нужно уменьшить% связей и попытаться достичь высокой согласованности, высокой точности и, следовательно, приемлемых параметров GOF

III Как вы можете улучшить свою модель

  1. Одна из вещей, которые я всегда делаю, обычные вещи, такие как пошаговое или обратное выделение, не работают, - это использовать BOOTSTRAPPING. Один из самых простых и надежных алгоритмов, который помогает нам получить наиболее релевантные переменные с использованием нескольких выборок, тем самым помогая повысить точность и стабильность модели.

  2. Если BOOTSTRAPPING также не удается, попробуйте Machine Learning techniques, например, Случайный лес, GBM и т. Д. Случайный лес считается одним из самых надежных алгоритмов классификации.

  3. Если отдельные алгоритмы также не работают, попробуйте stacking. Просто комбинация предсказательной силы нескольких алгоритмов классификации. ПРИМЕЧАНИЕ: - Используйте это, когда все вышеперечисленные варианты исчерпаны.

Надеюсь это поможет:-)

person India.Rocket    schedule 20.04.2017

С тех пор я читал, что тесты Goodness of Fit становятся проблематичными по своей сути при работе с большими наборами данных, и, следовательно, на основе литературы, я решил проигнорировать их в пользу подхода перекрестной проверки, который учитывает p-значение, проверку нулевой гипотезы, Статистика ROC AUC c, доверительные интервалы и статистика R-квадрата с максимальным масштабированием (Johnson and Wichern 1992) (Shmueli, Lin and Lucas Jr. 2013) (Li 2013)

person Jon295087    schedule 26.04.2017