নিম্নলিখিত কোডে আমি গ্ল্যাম ব্যবহার করে গ্রুপযুক্ত ডেটা এবং মাই 2 ব্যবহার করে "হাত দ্বারা" লজিস্টিক রিগ্রেশন করি। আর কেন লগলিক ফাংশন আমাকে লগের সম্ভাবনা লগ (ফিট.glm) = - ২.৩336 দেয় যা একটি লগলিক (ফিট.এমএল) = - 5.514 এর থেকে আলাদা?
library(bbmle)
#successes in first column, failures in second
Y <- matrix(c(1,2,4,3,2,0),3,2)
#predictor
X <- c(0,1,2)
#use glm
fit.glm <- glm(Y ~ X,family=binomial (link=logit))
summary(fit.glm)
#use mle2
invlogit <- function(x) { exp(x) / (1+exp(x))}
nloglike <- function(a,b) {
L <- 0
for (i in 1:n){
L <- L + sum(y[i,1]*log(invlogit(a+b*x[i])) +
y[i,2]*log(1-invlogit(a+b*x[i])))
}
return(-L)
}
fit.ml <- mle2(nloglike,
start=list(
a=-1.5,
b=2),
data=list(
x=X,
y=Y,
n=length(X)),
method="Nelder-Mead",
skip.hessian=FALSE)
summary(fit.ml)
#log likelihoods
logLik(fit.glm)
logLik(fit.ml)
y <- Y
x <- X
n <- length(x)
nloglike(coef(fit.glm)[1],coef(fit.glm)[2])
nloglike(coef(fit.ml)[1],coef(fit.ml)[2])
3
এই ধরনের পার্থক্যের একটি সাধারণ কারণটি হ'ল সম্ভাবনাটি কেবল একটি গুণক ধ্রুবক পর্যন্ত সংজ্ঞায়িত হয় : " আরও স্পষ্টতই, সম্ভাব্যতা ফাংশনটি কোনও ফাংশনের সমতুল্য শ্রেণীর কোনও প্রতিনিধি, যেখানে আনুপাতিকতার ধ্রুবক উপর নির্ভর করার অনুমতি নেই এবং যে কোনও একটিতে ব্যবহৃত সমস্ত সম্ভাবনা ফাংশনগুলির জন্য একই হতে হবে তুলনা।
—
গ্লেন_বি -রেইনস্টেট মনিকা
"লগ-সম্ভাবনা পরিবর্তে একটি স্বেচ্ছাচারী ধ্রুবক দ্বারা স্থানান্তরিত হতে পারে। ... (সিটিডি)
(সিটিডি) ... এটি এই বিশেষ পার্থক্যের জন্য ব্যাখ্যা হিসাবে বলা যায় না, তবে এটি বিভিন্ন ফাংশনগুলি কীভাবে আলাদা সম্ভাবনা দেয় তার মধ্যে পার্থক্যের একটি সাধারণ কারণ।
—
গ্লেন_বি -রিনস্টেট মনিকা
আমি ভুলভাবে ধরে নিয়েছি যে লগ সম্ভাবনা পিডিএফ এর কার্নেল দিয়ে সংজ্ঞায়িত করা হয়েছিল এবং তাই এই সমস্যার জন্য অনন্য ছিল।
—
টম
এটি তদন্তযোগ্য, যদিও কখনও কখনও ব্যাখ্যাটি অন্যরকম হয়।
—
গ্লেন_বি -রিনস্টেট মনিকা