Если у меня есть набор данных с очень редким положительным классом, и я понижаю выборку отрицательного класса, а затем выполняю логистическую регрессию, нужно ли мне корректировать коэффициенты регрессии, чтобы отразить тот факт, что я изменил распространенность положительного класса?
Например, допустим, у меня есть набор данных с 4 переменными: Y, A, B и C. Y, A и B являются двоичными, C - непрерывными. Для 11 100 наблюдений Y = 0, а для 900 Y = 1:
set.seed(42)
n <- 12000
r <- 1/12
A <- sample(0:1, n, replace=TRUE)
B <- sample(0:1, n, replace=TRUE)
C <- rnorm(n)
Y <- ifelse(10 * A + 0.5 * B + 5 * C + rnorm(n)/10 > -5, 0, 1)
Я соответствую логистической регрессии, чтобы предсказать Y, учитывая A, B и C.
dat1 <- data.frame(Y, A, B, C)
mod1 <- glm(Y~., dat1, family=binomial)
Однако, чтобы сэкономить время, я мог бы удалить 10 200 не-Y наблюдений, давая 900 Y = 0 и 900 Y = 1:
require('caret')
dat2 <- downSample(data.frame(A, B, C), factor(Y), list=FALSE)
mod2 <- glm(Class~., dat2, family=binomial)
Коэффициенты регрессии из двух моделей выглядят очень похоже:
> coef(summary(mod1))
Estimate Std. Error z value Pr(>|z|)
(Intercept) -127.67782 20.619858 -6.191983 5.941186e-10
A -257.20668 41.650386 -6.175373 6.600728e-10
B -13.20966 2.231606 -5.919353 3.232109e-09
C -127.73597 20.630541 -6.191596 5.955818e-10
> coef(summary(mod2))
Estimate Std. Error z value Pr(>|z|)
(Intercept) -167.90178 59.126511 -2.83970391 0.004515542
A -246.59975 4059.733845 -0.06074284 0.951564016
B -16.93093 5.861286 -2.88860377 0.003869563
C -170.18735 59.516021 -2.85952165 0.004242805
Что приводит меня к мысли, что понижающая выборка не повлияла на коэффициенты. Тем не менее, это единственный надуманный пример, и я предпочел бы знать наверняка.
mod2
),Pr(>|z|)
forA
равен почти 1. Мы не можем отвергнуть нулевую гипотезу о том, что коэффициентA
равен 0, поэтому мы потеряли ковариату, которая используется вmod1
. Разве это не существенная разница?Ответы:
Снижение выборки эквивалентно планам «случай-контроль» в медицинской статистике - вы фиксируете количество ответов и соблюдаете ковариатические модели (предикторы). Возможно, ключевым справочным материалом является Prentice & Pyke (1979), «Модели заболеваемости логистическими заболеваниями и исследования« случай-контроль », Biometrika , 66 , 3.
Они использовали теорему Байеса, чтобы переписать каждый член в вероятности для вероятности данного ковариатного шаблона, обусловленного тем, что он является случаем или контролем как два фактора; один представляет обычную логистическую регрессию (вероятность быть регистром или условным условием на ковариатном шаблоне), а другой представляет предельную вероятность ковариатного шаблона. Они показали, что максимизация общей вероятности с учетом ограничения на то, что предельные вероятности того, что дело или контроль фиксируются схемой выборки, дает те же оценки отношения шансов, что и максимизация первого фактора без ограничения (т. Е. Выполнение обычной логистической регрессии) ,
Конечно, отбрасывая данные, которые вам пришлось собрать, хотя и наименее полезные, вы снижаете точность своих оценок. Ограничения на вычислительные ресурсы - единственная веская причина, которую я знаю для этого, но я упоминаю об этом, потому что некоторые люди думают, что «сбалансированный набор данных» важен по какой-то другой причине, которую я так и не смог установить.
источник
success
экземпляры. Другими словами, очень низкий TPR. При изменении порога TPR увеличивается, но точность очень плохая, что означает, что более 70% случаев, помеченных как положительные, действительно являются отрицательными. Я читал, что в редких случаях логистическая регрессия не очень хороша, именно здесь играет роль метод Фёрта или, по крайней мере, одна из ролей, которые он может взять на себя. Но результаты метода Ферта оказались очень похожи на обычный логит. Я подумал, что могу ошибаться в исполнении Фёрта, но, похоже, все в порядке