ক্লাসগুলি ভালভাবে পৃথক করা হলে কেন লজিস্টিক রিগ্রেশন অস্থির হয়ে উঠবে?


34

ক্লাসগুলি ভালভাবে বিচ্ছিন্ন হয়ে গেলে লজিস্টিক রিগ্রেশন কেন অস্থিতিশীল হয়? ভালভাবে বিচ্ছিন্ন শ্রেণীর অর্থ কী? কেউ যদি উদাহরণ দিয়ে ব্যাখ্যা করতে পারে তবে আমি সত্যিই প্রশংসা করব।


4
আমি এখানে একটি প্রমাণ সহ বিস্তারিতভাবে বর্ণনা করছি: stats.stackexchange.com/questions/224863/…
ম্যাথু ড্রুরি

2
এবং প্রশ্নটি ব্যাখ্যা করার জন্য আমার কাছে কিছু ডেমো ছিল: stats.stackexchange.com/questions/239928/…
ডু

উত্তর:


31

এটি সঠিক নয় যে বিচ্ছেদ থাকা অবস্থায় লজিস্টিক রিগ্রেশন নিজেই অস্থির হয়ে ওঠে । পৃথকীকরণের অর্থ এমন কিছু ভেরিয়েবল রয়েছে যা খুব ভাল ভবিষ্যদ্বাণীকারী, যা ভাল, বা পৃথকীকরণ খুব কম পর্যবেক্ষণ / অত্যধিক ভেরিয়েবলের একটি নিদর্শন হতে পারে। যদি এটি হয় তবে সমাধানটি আরও ডেটা পেতে পারে। তবে বিচ্ছেদ নিজেই কেবল একটি লক্ষণ, এবং নিজেই কোনও সমস্যা নয়।

সুতরাং চিকিত্সা করার জন্য সত্যই আলাদা আলাদা কেস রয়েছে। প্রথমত, বিশ্লেষণের লক্ষ্য কী? বিশ্লেষণের চূড়ান্ত ফলাফল যদি কেসের কিছু শ্রেণিবিন্যাস হয় তবে বিচ্ছেদ কোনও সমস্যা নয়, এর সত্যিকার অর্থেই এখানে খুব ভাল ভেরিয়েবল রয়েছে যা খুব ভাল শ্রেণিবদ্ধকরণ দেয়। তবে লক্ষ্যটি যদি ঝুঁকি অনুমান হয় তবে আমাদের প্যারামিটারের অনুমানগুলি প্রয়োজন এবং পৃথকীকরণের সাথে স্বাভাবিক ম্লে (সর্বাধিক সম্ভাবনা) অনুমানের অস্তিত্ব থাকে না। সুতরাং আমাদের অবশ্যই অনুমানের পদ্ধতিটি পরিবর্তন করতে হবে maybe সাহিত্যে বেশ কয়েকটি প্রস্তাব রয়েছে, আমি আবার ফিরে আসব।

তারপরে পৃথক হওয়ার জন্য দুটি পৃথক সম্ভাব্য কারণ রয়েছে (উপরে যেমন বলা হয়েছে)। সম্পূর্ণ জনসংখ্যার মধ্যে বিচ্ছেদ হতে পারে, বা বিচ্ছিন্নতা কয়েকটি পর্যবেক্ষিত ক্ষেত্রে / খুব বেশি ভেরিয়েবলের কারণে ঘটতে পারে।

পৃথকীকরণের সাথে যা ভেঙে যায় তা হ'ল সর্বাধিক সম্ভাবনা অনুমানের পদ্ধতি। ম্যালের প্যারামিটার অনুমান (বা তাদের মধ্যে কমপক্ষে কিছু) অসীম হয়ে যায়। আমি এই উত্তরের প্রথম সংস্করণে বলেছিলাম যে এটি সহজে সমাধান করা যেতে পারে, সম্ভবত বুটস্ট্র্যাপিংয়ের মাধ্যমে, তবে এটি কার্যকর হয় না, যেহেতু প্রতিটি বুটস্ট্র্যাপের নমুনায় পৃথকীকরণ থাকবে, কমপক্ষে স্বাভাবিক ক্ষেত্রে বুটস্ট্র্যাপিং পদ্ধতিতে। তবে লজিস্টিক রিগ্রেশন এখনও একটি বৈধ মডেল, তবে আমাদের আরও কিছু প্রাক্কলন পদ্ধতি দরকার। কিছু প্রস্তাব দেওয়া হয়েছে:

  1. রিজ বা লাসোর মতো নিয়মিতকরণ, সম্ভবত বুটস্ট্র্যাপের সাথে মিলিত।
  2. সঠিক শর্তাধীন লজিস্টিক রিগ্রেশন
  3. অনুক্রম পরীক্ষা, https://www.ncbi.nlm.nih.gov/pubmed/15515134 দেখুন
  4. জন্মগুলি পক্ষপাত-হ্রাস অনুমান পদ্ধতি, দেখুন লজিস্টিক রিগ্রেশন মডেল রূপান্তর করে না
  5. অবশ্যই অন্যদের ...

আপনি যদি আর ব্যবহার করেন তবে সিআরএএন-তে একটি প্যাকেজ রয়েছে SafeBinaryRegression, যা পৃথকীকরণের সাথে সমস্যাগুলি নির্ণয় করতে সহায়তা করে, গাণিতিক অনুকূলকরণের পদ্ধতি ব্যবহার করে বিচ্ছেদ বা কোয়েসিপারেশন রয়েছে কিনা তা পরীক্ষা করে দেখার জন্য! নিম্নলিখিতটিতে আমি এই প্যাকেজটি ব্যবহার করে একটি অনুকরণীয় উদাহরণ এবং elrmআনুমানিক শর্তাধীন লজিস্টিক রিগ্রেশন প্যাকেজটি দিচ্ছি ।

প্রথম, safeBinaryRegressionপ্যাকেজ সহ একটি সাধারণ উদাহরণ । এই প্যাকেজটি কেবল glmলিনিয়ার প্রোগ্রামিং পদ্ধতি ব্যবহার করে পৃথকীকরণের পরীক্ষা দিয়ে ওভারলোড করে ফাংশনটিকে নতুনভাবে সংজ্ঞায়িত করে । যদি এটি পৃথকীকরণ সনাক্ত করে, এটি ত্রুটির শর্তের সাথে প্রস্থান করে, ঘোষনা করে যে তিলের অস্তিত্ব নেই। অন্যথায় এটি কেবল glmথেকে সাধারণ ফাংশন চালায় stats। উদাহরণটি এর সাহায্য পৃষ্ঠা থেকে:

library(safeBinaryRegression)   # Some testing of that package,
                                # based on its examples
# complete separation:
x  <-  c(-2, -1, 1, 2)
y  <-  c(0, 0, 1, 1)
glm(y ~ x, family=binomial)
glm(y ~ x,  family=binomial,  separation="test")
stats::glm(y~ x, family=binomial)
# Quasicomplete separation:
x  <-  c(-2, 0, 0, 2)
y  <-  c(0, 0, 1, 1)
glm(y ~ x, family=binomial)
glm(y ~ x,  family=binomial,  separation="test")
stats::glm(y~ x, family=binomial)

এটি চালানো থেকে আউটপুট:

> # complete separation:
> x  <-  c(-2, -1, 1, 2)
> y  <-  c(0, 0, 1, 1)
> glm(y ~ x, family=binomial)
Error in glm(y ~ x, family = binomial) : 
  The following terms are causing separation among the sample points: (Intercept), x
> glm(y ~ x,  family=binomial,  separation="test")
Error in glm(y ~ x, family = binomial, separation = "test") : 
  Separation exists among the sample points.
    This model cannot be fit by maximum likelihood.
> stats::glm(y~ x, family=binomial)

Call:  stats::glm(formula = y ~ x, family = binomial)

Coefficients:
(Intercept)            x  
 -9.031e-08    2.314e+01  

Degrees of Freedom: 3 Total (i.e. Null);  2 Residual
Null Deviance:      5.545 
Residual Deviance: 3.567e-10    AIC: 4
Warning message:
glm.fit: fitted probabilities numerically 0 or 1 occurred 
> # Quasicomplete separation:
> x  <-  c(-2, 0, 0, 2)
> y  <-  c(0, 0, 1, 1)
> glm(y ~ x, family=binomial)
Error in glm(y ~ x, family = binomial) : 
  The following terms are causing separation among the sample points: x
> glm(y ~ x,  family=binomial,  separation="test")
Error in glm(y ~ x, family = binomial, separation = "test") : 
  Separation exists among the sample points.
    This model cannot be fit by maximum likelihood.
> stats::glm(y~ x, family=binomial)

Call:  stats::glm(formula = y ~ x, family = binomial)

Coefficients:
(Intercept)            x  
  5.009e-17    9.783e+00  

Degrees of Freedom: 3 Total (i.e. Null);  2 Residual
Null Deviance:      5.545 
Residual Deviance: 2.773    AIC: 6.773

এখন আমরা এমন একটি মডেল থেকে সিমুলেট করি যা কোনও লজিস্টিক মডেল দ্বারা ঘনিষ্ঠভাবে ঘনিষ্ঠ হতে পারে, নির্দিষ্ট কাটঅফের উপরে ইভেন্টের সম্ভাবনা হুবুহু 1.0 এর ব্যতীত। বায়োসায় সমস্যা সম্পর্কে ভাবুন, তবে কাটফট এর উপরে বিষ সর্বদা মারে:

pl  <-  function(a, b, x) 1/(1+exp(-a-b*x))
a  <-  0
b  <-  1.5
x_cutoff  <-  uniroot(function(x) pl(0,1.5,x)-0.98,lower=1,upper=3.5)$root
### circa 2.6
pltrue  <-  function(a, b, x) ifelse(x < x_cutoff, pl(a, b, x), 1.0)

x <- -3:3

### Let us simulate many times from this model,  and try to estimate it
### with safeBinaryRegression::glm  That way we can estimate the probability
### of separation from this model

set.seed(31415926)  ### May I have a large container of coffee 
replications  <-  1000
p  <-  pltrue(a, b, x)
err  <-  0
good  <- 0

for (i in 1:replications) {
    y  <- rbinom(length(x), 1, p)
    res  <-  try(glm(y~x, family=binomial), silent=TRUE)
    if (inherits(res,"try-error")) err <-  err+1 else good <- good+1
}
P_separation  <-  err/replications
P_separation

এই কোডটি চালানোর সময়, আমরা বিচ্ছেদ হওয়ার সম্ভাবনাটি 0.759 হিসাবে অনুমান করি। কোডটি নিজে চালান, এটি দ্রুত!

তারপরে আমরা এলার্ম থেকে বিভিন্ন অনুমানের পদ্ধতি, ম্লে এবং আনুমানিক শর্তাধীন লজিস্টিক রিগ্রেশন চেষ্টা করার জন্য এই কোডটি প্রসারিত করি। এই সিমুলেশনটি চালানো আমার কম্পিউটারে প্রায় 40 মিনিট সময় নেয়।

library(elrm)  # from CRAN
set.seed(31415926)  ### May I have a large container of coffee
replications  <-  1000
GOOD  <-  numeric(length=replications) ### will be set to one when MLE exists!
COEFS <- matrix(as.numeric(NA), replications, 2)
COEFS.elrm <- matrix(as.numeric(NA), replications, 2) # But we'll only use second col for x
p  <-  pltrue(a, b, x)
err  <-  0
good  <- 0

for (i in 1:replications) {
    y  <- rbinom(length(x), 1, p)
    res  <-  try(glm(y~x, family=binomial), silent=TRUE)
    if (inherits(res,"try-error")) err <-  err+1 else{ good <- good+1
                                                     GOOD[i] <- 1 }
    # Using stats::glm
    mod  <-  stats::glm(y~x, family=binomial)
    COEFS[i, ]  <-  coef(mod)
    # Using elrm:
    DATASET  <-  data.frame(x=x, y=y, n=1)
    mod.elrm  <-  elrm(y/n ~ x,  interest= ~ x -1, r=4, iter=10000, burnIn=1000,
                       dataset=DATASET)
    COEFS.elrm[i, 2 ]  <-  mod.erlm$coeffs       
}
### Now we can compare coefficient estimates of x,
###  when there are separation,  and when not:

non  <-  which(GOOD==1)
cof.mle.non  <-  COEFS[non, 2, drop=TRUE]
cof.mle.sep  <-  COEFS[-non, 2, drop=TRUE]
cof.elrm.non  <-  COEFS.elrm[non, 2, drop=TRUE]
cof.elrm.sep  <-  COEFS.elrm[-non, 2, drop=TRUE]

এখন আমরা ফলাফলগুলি প্লট করতে চাই, তবে তার আগে, নোট করুন যে সমস্ত শর্তযুক্ত হিসাব সমান! এটি সত্যিই অদ্ভুত এবং এর একটি ব্যাখ্যা দরকার ... সাধারণ মান 0.9523975। তবে কমপক্ষে আমরা সুনির্দিষ্ট অনুমান পেয়েছি, আত্মবিশ্বাসের ব্যবধানগুলির সাথে সত্যিকারের মান রয়েছে (এখানে দেখানো হয়নি)। সুতরাং আমি বিচ্ছিন্নতা ছাড়াই কেবল ম্লে অনুমানের একটি হিস্টোগ্রাম দেখাব:

hist(cof.mle.non, prob=TRUE)

[সিমুলেটেড প্যারামিটার অনুমানের হিস্টোগ্রাম [1]

লক্ষণীয় বিষয়টি হ'ল সমস্ত অনুমানটি সত্য মানের 1.5 এর চেয়ে কম। এটি একটি পরিবর্তিত মডেল থেকে আমরা সিমুলেটেড, তদন্ত প্রয়োজন যে সত্য সঙ্গে করতে পারেন।



1
(+1) তবে এটি বলার অপেক্ষা রাখে না যে আমাদের সর্বাধিক সম্ভাবনা ব্যতীত একটি অনুমান পদ্ধতি দরকার । অসীম প্রতিকূলতা এবং প্রতিকূল অনুপাতগুলি বুদ্ধিমান পয়েন্টের অনুমান হতে পারে; প্রায়শই যথেষ্ট হয় বিচ্ছেদ দ্বারা সৃষ্ট সমস্যাটি কেবল ভাল বিরতি অনুমান করে।
Scortchi - পুনর্বহাল মনিকা

@ কেজেটিভালভর্সেন পুরানো থ্রেডটি পুনরুদ্ধার করার জন্য ক্ষমা চাইছেন, তবে আমি ভাবছিলাম যে আপনি অজগরটিতে একই জাতীয় প্যাকেজ সম্পর্কে অবগত আছেন?
মিপ করুন

দুঃখিত, তবে আমি পাইথন সম্পর্কে জানি না। তবে অজগর থেকে আর চালানো সম্ভব হবে should
কেজেটিল বি হালওয়ারসেন 21

25

@ Sean501 এবং @kjetilbhalvorsen থেকে এখানে ভাল উত্তর রয়েছে। আপনি একটি উদাহরণ চেয়েছিলেন। নীচের চিত্রটি বিবেচনা করুন। আপনি এমন কিছু পরিস্থিতি দেখতে পাবেন যেখানে ডেটা উত্পন্নকরণ প্রক্রিয়াটি প্যানেল এ-তে প্রদর্শিত চিত্রের মতো । যদি তা হয় তবে এটি সম্ভবত সম্ভব যে আপনি যে তথ্যটি সংগ্রহ করেন তা প্যানেল বি এর মতো দেখায় । এখন, আপনি যখন একটি পরিসংখ্যানগত মডেল তৈরি করতে ডেটা ব্যবহার করেন, তখন ধারণাটি হ'ল সত্য উপাত্ত তৈরির প্রক্রিয়াটি পুনরুদ্ধার করা বা কমপক্ষে একটি আনুমানিক সাথে যুক্ত হওয়া উচিত যা যুক্তিসঙ্গতভাবে নিকটবর্তী। সুতরাং, প্রশ্নটি হল, বি এর উপাত্তগুলিতে কোনও লজিস্টিক রিগ্রেশন ফিটিং করা কি এমন একটি মডেল প্রদান করবে যা এ এর ​​নীল রেখার সাথে সীমাবদ্ধ ? আপনি যদি প্যানেল সি তাকান, আপনি দেখতে পাচ্ছেন যে ধূসর লাইনটি সঠিক ফাংশনটির চেয়ে ডেটাটিকে আরও ভাল করে সংযুক্ত করে, তাই সেরা ফিটের জন্য লজিস্টিক রিগ্রেশন নীল রঙের পরিবর্তে ধূসর রেখাকে ফিরিয়ে দিতে 'পছন্দ' করবে। তবে সেখানেই থেমে নেই। প্যানেলে ডি, কালো রেখাটি ধূসর রঙের চেয়ে ডেটাটিকে আরও ভালভাবে অনুমান করে — আসলে, এটি সম্ভবত সবচেয়ে ভাল ফিট fit সুতরাং লজিস্টিক রিগ্রেশন মডেলটি সেই লাইনটি অনুসরণ করছে। এটি নেতিবাচক অনন্তের একটি বিরতি এবং অনন্তের opeালুতে মিলে যায়। এটি অবশ্যই সত্য থেকে খুব দূরে যে আপনি পুনরুদ্ধার আশা করছেন। সম্পূর্ণ পৃথকীকরণ আপনার চলকগুলির জন্য পি-মানগুলির গণনাতে সমস্যা তৈরি করতে পারে যা লজিস্টিক রিগ্রেশন আউটপুট (সেখানে ব্যাখ্যাটি কিছুটা আলাদা এবং আরও জটিল) standard তদ্ব্যতীত, এখানে অন্যান্য চেষ্টাগুলির সাথে ফিটগুলি একত্রিত করার চেষ্টা করা হচ্ছে, উদাহরণস্বরূপ একটি মেটা-বিশ্লেষণের সাথে, অন্যান্য অনুসন্ধানগুলি কেবল কম নির্ভুল করে তুলবে।

এখানে চিত্র বর্ণনা লিখুন


1
(+1) এটি সমস্যার খুব সহায়ক উদাহরণ ration
এমকেটি - মনিকা

আপনার চিত্রের একটি আকর্ষণীয় দিকটি হ'ল আপনি আদর্শভাবে চান যে নমুনাটি "এক্স স্পেস" থেকে আসা উচিত যা 50-50 সম্ভাব্যতার দিকে নিয়ে যায় (উদাহরণস্বরূপ 12 <x <15 রেঞ্জের পয়েন্ট)। আসলে আমি মনে করি আপনি সম্ভবত এই মধ্যবর্তী অঞ্চলটি (10 <x <17) থেকে বাস্তব জীবনের দৃশ্যে আরও বেশি তথ্য সংগ্রহ করতে চান যা এই ফলাফলটি সরবরাহ করেছিল।
সম্ভাব্যতা

পছন্দ করুন সম্পর্কের বিষয়ে বেশিরভাগ তথ্য মধ্য অঞ্চল থেকে প্রাপ্ত তথ্যগুলিতে থাকে।
গুং - মনিকা পুনরায়

10

এর অর্থ এখানে একটি হাইপারপ্লেন রয়েছে যে একদিকে সমস্ত ধনাত্মক পয়েন্ট রয়েছে এবং অন্যদিকে সমস্ত নেতিবাচক। সর্বাধিক সম্ভাব্য সমাধানটি তখন একদিকে সমতল 1 এবং অন্যদিকে ফ্ল্যাট 0, যা অনন্তের সহগের সাথে যুক্তিযুক্ত ফাংশন দিয়ে 'অর্জন' করা হয়।


6

আপনি যেটিকে "বিচ্ছেদ" বলছেন ('বিচ্ছেদ' নয়) দুটি ভিন্ন পরিস্থিতি কভার করে যা একই সমস্যার কারণ হয়ে দাঁড়ায় - যা আমি বলব না, তবে আপনি যেমন করেন তেমন "অস্থিতিশীলতা" এর একটি সমস্যা।

একটি উদাহরণ: টাইটানিক উপর বেঁচে থাকা

  • ডিভী(0,1)এসভী

    এসভীডিভী01

  • এসভীডিভী

    যদি টাইটানিকের সমস্ত প্রথম শ্রেণির যাত্রী ধ্বংসস্তূপ থেকে বেঁচে থাকে এবং দ্বিতীয় শ্রেণির যাত্রীদের কেউই বাঁচতে না পারে তবে এটি ঘটবে ।

  • এসভীডিভী=0ডিভী=1

    এসভীডিভী=1ডিভী=0

    এসভীডিভী=0ডিভী=1

ডিভীএসভীএসভী

এই ক্ষেত্রে লজিস্টিক রিগ্রেশন কেন "অস্থির"?

এটি রাইনী 2016 এবং জর্ন 2005 এ ভালভাবে ব্যাখ্যা করা হয়েছে ।

  • ডিভী1এসভী=1ডিভী0এসভী=0

    এসভী=1

    01এসভীডিভী

  • 01ডিভীএসভী=0এসভী=1

উভয় ক্ষেত্রেই, আপনার মডেলটির সম্ভাবনা ফাংশন সর্বাধিক সম্ভাবনার অনুমানের সন্ধান করতে অক্ষম হবে: এটি কেবলমাত্র মূল্যবোধের নিকটবর্তী হয়ে সেই মানটির একটি সীমাবদ্ধতা খুঁজে পাবে।

আপনি যেটিকে "অস্থিতিশীলতা" বলছেন তা হ'ল সম্পূর্ণ বা আধা-সম্পূর্ণ বিচ্ছেদের ক্ষেত্রে, লজিস্টিক মডেলটি পৌঁছানোর কোনও সীমাবদ্ধ সম্ভাবনা নেই। তবে আমি এই শব্দটি ব্যবহার করব না: সম্ভাবনার কাজটি আসলে, অনন্তের দিকে তার সহগ মানগুলি নির্ধারণের ক্ষেত্রে বেশ "স্থিতিশীল" (একঘেয়েমি) হওয়া।


দ্রষ্টব্য: আমার উদাহরণটি কাল্পনিক। টাইটানিকের উপর বেঁচে থাকা কেবল যাত্রীবাহী শ্রেণির সদস্যপদ লাভ করতে পারেনি। হল দেখুন (1986)

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.