পইসন এবং নেতিবাচক দ্বিপদী রেজিস্ট্রেশনগুলি কখন একই সহগের সাথে খাপ খায়?


38

আমি লক্ষ করেছি যে আর, পোইসন এবং নেতিবাচক দ্বিপদী (এনবি) রিগ্রেশনগুলি সর্বদা শ্রেণিবদ্ধ, তবে ধারাবাহিক নয়, ভবিষ্যদ্বাণীকারীদের জন্য একই গুণফলের সাথে মানায়।

উদাহরণস্বরূপ, এখানে একটি শ্রেণিবদ্ধ ভবিষ্যদ্বাণীটির সাথে একটি প্রতিরোধ এখানে রয়েছে:

data(warpbreaks)
library(MASS)

rs1 = glm(breaks ~ tension, data=warpbreaks, family="poisson")
rs2 = glm.nb(breaks ~ tension, data=warpbreaks)

#compare coefficients
cbind("Poisson"=coef(rs1), "NB"=coef(rs2))

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

এখানে অবিচ্ছিন্ন ভবিষ্যদ্বাণীকারীর একটি উদাহরণ রয়েছে যেখানে পয়সন এবং এনবি বিভিন্ন সহগের সাথে ফিট করে:

data(cars)
rs1 = glm(dist ~ speed, data=cars, family="poisson")
rs2 = glm.nb(dist ~ speed, data=cars)

#compare coefficients
cbind("Poisson"=coef(rs1), "NB"=coef(rs2))

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

(অবশ্যই এগুলি ডেটা গণনা করা হয় না, এবং মডেলগুলি অর্থবহ নয় ...)

তারপরে আমি ভবিষ্যদ্বাণীকে একটি ফ্যাক্টর হিসাবে পুনঃনির্মাণ করলাম এবং দুটি মডেল আবার একই সহগের সাথে ফিট করে:

library(Hmisc)
speedCat = cut2(cars$speed, g=5) 
#you can change g to get a different number of bins

rs1 = glm(cars$dist ~ speedCat, family="poisson")
rs2 = glm.nb(cars$dist ~ speedCat)

#compare coefficients
cbind("Poisson"=coef(rs1), "NB"=coef(rs2))

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

যাইহোক, জোসেফ Hilbe এর ঋণাত্মক বাইনমিয়াল রিগ্রেশন একটি উদাহরণ (6.3, পৃষ্ঠা 118-119) যেইক্ষেত্রে কোনো নিঃশর্ত predictor, লিঙ্গ, পইসন (দ্বারা কিছুটা ভিন্ন কোফিসিয়েন্টস সঙ্গে ফিট দেয় ) ও বিশেষ দ্রষ্টব্য ( = 0.881 )। তিনি বলেছেন: “পইসন এবং এনবি মডেলগুলির মধ্যে ঘটনা হারের অনুপাত বেশ একই রকম। এই কাছাকাছি দেওয়া বিস্ময়কর α [সংশ্লিষ্ট 1 / θ শুন্যতে দ]। "b=0.883b=0.881α1/θ

summary(rs2)θ

তাহলে সহগ কেন ঠিক একই রকম? এবং কেন কেবল শ্রেণিবদ্ধ ভবিষ্যদ্বাণীদের জন্য?


সম্পাদনা # 1

এখানে দুটি অ-orthogonal ভবিষ্যদ্বাণী সহ একটি উদাহরণ is প্রকৃতপক্ষে সহগগুলি আর আগের মতো নেই:

data(cars)

#make random categorical predictor
set.seed(1); randomCats1 = sample( c("A","B","C"), length(cars$dist), replace=T)
set.seed(2); randomCats2 = sample( c("C","D","E"), length(cars$dist), replace=T)

rs1 = glm(dist ~ randomCats1 + randomCats2, data=cars, family="poisson")
rs2 = glm.nb(dist ~ randomCats1 + randomCats2, data=cars)

#compare coefficients
cbind("Poisson"=coef(rs1), "NB"=coef(rs2))

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

এবং, অন্য একজন ভবিষ্যদ্বাণীকারী সহ নতুন ভবিষ্যদ্বাণী অবিচ্ছিন্ন থাকা সত্ত্বেও মডেলগুলি বিভিন্ন সহগের সাথে ফিট করে। সুতরাং, এটি আমার আসল উদাহরণে আমি যে ডামি ভেরিয়েবলগুলি তৈরি করেছি তার অরথোগোনালটির সাথে কিছু করা?

rs1 = glm(dist ~ randomCats1 + speed, data=cars, family="poisson")
rs2 = glm.nb(dist ~ randomCats1 + speed, data=cars)

#compare coefficients
cbind("Poisson"=coef(rs1), "NB"=coef(rs2))

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


6
(+1) দুর্দান্ত প্রশ্ন। আমি কয়েক ঘন্টা আপনার জন্য কিছু লিখতে চেষ্টা করব। এর মধ্যে, আপনি চেষ্টা করে দেখতে পারেন যে একাধিক শ্রেণিবদ্ধ ভবিষ্যদ্বাণীগুলির সাথে কি ঘটে যা অরথোগোনাল (ইঙ্গিত!) নয়।
কার্ডিনাল

1
চক্রান্ত! আমি অবশ্যই চেষ্টা করব। এবং আপনাকে ধন্যবাদ, আমি অধীর আগ্রহে আপনার উত্তরটির অপেক্ষায় রয়েছি।
অর্ধ-পাস

দুঃখিত @ অর্ধ পাস; আমি এটি সম্পর্কে ভুলিনি এবং এক দিনের মধ্যে কিছু উত্থাপন করার চেষ্টা করব। (আমার অর্ধ জবাব একসাথে রাখা হয়েছে, তবে অন্যান্য কাজগুলি এড়িয়ে গেছে)) আশা করি অনুগ্রহটি অন্যান্য উত্তরগুলিকেও আকর্ষণ করবে। চিয়ার্স। :-)
কার্ডিনাল

কোনও উদ্বেগ নেই, @ কার্ডিনাল! আমি জানি আপনি এবং এখানকার অন্যান্য সমস্ত আশ্চর্য গুরুরা সিভির বাইরে জীবনযাপন করেছেন :)
অর্ধ-পাস

উত্তর:


29

আপনি সর্বাধিক সম্ভাবনা অনুসারে জিএলএমগুলির একটি অন্তরঙ্গ, তবে জেনেরিক সম্পত্তি আবিষ্কার করেছেন । ফলাফলের আউট ড্রপ একবার এক সব সহজ ক্ষেত্রে বিবেচনা করে: একটি মানানসই একক একটি পরামিতি একক পর্যবেক্ষণ!

μ^j=y¯jj

log

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

জিএলএম এবং ঘাতক ছত্রভঙ্গ পরিবারগুলি: ক্রাশ কোর্স

logf(y;θ,ν)=θyb(θ)ν+a(y,ν).

θνν

θy=b(θ^)νy¯=b(θ^)

θ

θElogf(Y;θ,ν)=Eθlogf(Y;θ,ν)=0.
b(θ)=EY=μ

y¯=μ^

μiμi=g1(xiTβ)gxijμi=g(βj)βj

একটানা ভবিষ্যদ্বাণীকারীদের সম্পর্কে এত আলাদা কী?

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

i=1n(yiμi)xijσi2μiλi=0,
j=1,,pλi=xiTββνμi=g(λi)=g(xiTβ)σi2

এইভাবে, লিঙ্ক ফাংশন এবং ধরে নেওয়া ত্রুটি মডেল অনুমানের সাথে প্রাসঙ্গিক হয়ে ওঠে।

উদাহরণ: ত্রুটি মডেল (প্রায়) কিছু যায় আসে না

k=6

log

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

      negbin  poisson gaussian invgauss    gamma
XX1 4.234107 4.234107 4.234107 4.234107 4.234107
XX2 4.790820 4.790820 4.790820 4.790820 4.790820
XX3 4.841033 4.841033 4.841033 4.841033 4.841033

0

উদাহরণ: লিঙ্ক ফাংশন (প্রায়) কিছু যায় আসে না

loglog(β^)log(β^2)β^

> coefs.po
         log       id     sqrt
XX1 4.234107 4.234107 4.234107
XX2 4.790820 4.790820 4.790820
XX3 4.841033 4.841033 4.841033

শিরোনামে সতর্কতামূলকভাবে লিঙ্ক ফাংশনটির সাথে কাঁচা অনুমানগুলি পরিবর্তিত হতে পারে তা বোঝায় , তবে বোঝানো গড়-পরামিতি অনুমানগুলি হবে না।

আর কোড

# Warning! This code is a bit simplified for compactness.
library(MASS)
n <- 5
m <- 3
set.seed(17)
b <- exp(5+rnorm(m))
k <- 6

# Random negbin data; orthogonal factors
y <- rnbinom(m*n, size=k, mu=rep(b,each=n))
X <- factor(paste("X",rep(1:m,each=n),sep=""))

# Fit a bunch of GLMs with a log link
con <- glm.control(maxit=100)
mnb <- glm(y~X+0, family=negative.binomial(theta=2))
mpo <- glm(y~X+0, family="poisson")
mga <- glm(y~X+0, family=gaussian(link=log), start=rep(1,m), control=con)
miv <- glm(y~X+0, family=inverse.gaussian(link=log), start=rep(2,m), control=con)
mgm <- glm(y~X+0, family=Gamma(link=log), start=rep(1,m), control=con)    
coefs <- cbind(negbin=mnb$coef, poisson=mpo$coef, gaussian=mga$coef
                   invgauss=miv$coef, gamma=mgm$coef)

# Fit a bunch of Poisson GLMs with different links.
mpo.log  <- glm(y~X+0, family=poisson(link="log"))
mpo.id   <- glm(y~X+0, family=poisson(link="identity"))
mpo.sqrt <- glm(y~X+0, family=poisson(link="sqrt"))   
coefs.po <- cbind(log=mpo$coef, id=log(mpo.id$coef), sqrt=log(mpo.sqrt$coef^2))

+1, পরিষ্কার এবং বিস্তৃত, আমি যা দিয়েছি তার থেকে উত্তম উত্তর।
এমআরপি

@ এমপিআর, আমি এটিকে আপনার পরিপূরক হিসাবে ভাবতে বেশি পছন্দ করি। আমি আপনার পোস্ট দেখে খুব খুশি হয়েছিলাম; আপনি যা চলছে তা স্পষ্টভাবে এবং সংক্ষিপ্তভাবে বর্ণনা করেছেন (এবং দেখানো হয়েছে)। আমার পোস্টগুলি পড়ার জন্য মাঝে মাঝে কিছুটা দীর্ঘ হয়; আমি আশঙ্কা করি এটি তাদের মধ্যে একটি।
কার্ডিনাল

তুমি দুজনই আশ্চর্য। এই ধরণের স্পষ্টতা এবং কঠোরতার সাথে আমার কাছে এটি ব্যাখ্যা করার জন্য আপনাকে অনেক ধন্যবাদ। আমাকে এখন হজম করার জন্য আরও কিছুটা সময় ব্যয় করতে হবে :)
অর্ধ-পাস করুন

@ কার্ডিনাল আপনি কোথা family=negative.binomial(theta=2)থেকে 2 " " পেয়েছেন?
টিমোথি.এস.লাউ

23

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

> rs1 = glm(breaks ~ tension-1, data=warpbreaks, family="poisson")
> rs2 = glm.nb(breaks ~ tension-1, data=warpbreaks)

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

>  exp(cbind("Poisson"=coef(rs1), "NB"=coef(rs2)))
          Poisson       NB
tensionL 36.38889 36.38889
tensionM 26.38889 26.38889
tensionH 21.66667 21.66667

এই প্যারামিটারগুলি বিভিন্ন বিভাগের মানগুলির সাথে প্রকৃত মাধ্যমের সাথে সামঞ্জস্য করে:

> with(warpbreaks,tapply(breaks,tension,mean))
       L        M        H 
36.38889 26.38889 21.66667 

λ

λ

λθθλ

L(X,λ,θ)=(θλ+θ)θΓ(θ+xi)xi!Γ(θ)(λλ+θ)xilogL(X,λ,θ)=θ(logθlog(λ+θ))+xi(logλlog(λ+θ))+log(Γ(θ+xi)xi!Γ(θ))ddλlogL(X,λ,θ)=xiλθ+xiλ+θ=n(x¯λx¯+θλ+θ),
λ=x¯

log(λ)λ

λλ251055=25λ11


5
(+1) ভাল উত্তর। আমি মনে করি যে এখানে একটি আরও স্পষ্টভাবে আঁকতে পারে তা হ'ল পোইসন এবং নেতিবাচক দ্বিপদী মধ্যে কোনও সম্পর্কের সাথে এর আসলে কোনও সম্পর্ক নেই, তবে সর্বাধিক সম্ভাবনার মাধ্যমে জিএলএম ফিট করার বিষয়ে আরও মৌলিক তথ্য রয়েছে।
কার্ডিনাল

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

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

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

2
@ হাফ পাস: আপনার সমস্ত অরথোগোনাল শ্রেণিবদ্ধ মডেলগুলিকে ফিট y~X+0করুন এবং আবার চেষ্টা করুন। :-)
কার্ডিনাল
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.