যদি আমার খুব বিরল ধনাত্মক শ্রেণীর সাথে একটি ডেটাসেট থাকে এবং আমি নেতিবাচক শ্রেণিকে নিম্ন-নমুনা করি, তবে লজিস্টিক রিগ্রেশন করান, আমি ইতিবাচক শ্রেণীর প্রসারকে পরিবর্তন করেছি এই প্রতিস্থাপনের জন্য আমার কি রিগ্রেশন সহগের সমন্বয় করা দরকার?
উদাহরণস্বরূপ, ধরা যাক আমার 4 টি ভেরিয়েবল সহ একটি ডেটাসেট রয়েছে: ওয়াই, এ, বি এবং সি ওয়াই, এ, এবং বি বাইনারি, সি অবিচ্ছিন্ন। 11,100 পর্যবেক্ষণের জন্য Y = 0 এবং 900 ওয়াই = 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)
এ, বি এবং সি দেওয়া ওয়াইয়ের পূর্বাভাস দেওয়ার জন্য আমি একটি লজিস্টিক রিগ্রেশন ফিট করি given
dat1 <- data.frame(Y, A, B, C)
mod1 <- glm(Y~., dat1, family=binomial)
যাইহোক, সময় বাঁচাতে আমি ১০,০০০ নন-ওয়াই পর্যবেক্ষণগুলি সরিয়ে ফেলতে পারি, 900 ওয়াই = 0 এবং 900 ওয়াই = 1 দিয়ে:
require('caret')
dat2 <- downSample(data.frame(A, B, C), factor(Y), list=FALSE)
mod2 <- glm(Class~., dat2, family=binomial)
2 টি মডেলের রিগ্রেশন সহগগুলি খুব মিল দেখায়:
> 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|)
জন্য A
প্রায় 1.আমরা নাল হাইপোথিসিস যে সহগ প্রত্যাখ্যান না পারে A
0 তাই আমরা একটি covariate যা ব্যবহার করা হয় হারিয়েছে mod1
। এটি কি যথেষ্ট পার্থক্য নয়?