বহুগুণ রিগ্রেশন জন্য বৈপরীত্য


17

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

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

write=52.7870+14.2587X0.9680X20.1554X3,

যেখানে এর ইন্টারভাল ভেরিয়েবলের বিভিন্ন স্তর অনুসারে 1 , 2 , 3 বা 4X মান নেওয়া উচিত ।1234

এটা কি সঠিক? এবং যদি তা হয় তবে বহুপদী বিপরীতে উদ্দেশ্য কী ছিল?


7
না, এই সহগগুলি অরথোগোনাল বহুবচনীয় পদগুলির জন্য: আপনি কাঁচা বহুপদী পদগুলির জন্য মডেলটি লিখেছেন । X , X2 , এবং প্রতিস্থাপন করুন যথাক্রমে এল , কিউ এবং সিX3 এর মানগুলি (চেহারা সারণী থেকে)। LQC
স্কর্চচি - মনিকা পুনরায় ইনস্টল করুন

1
প্রিয় @ স্কোর্টচি, আপনার উত্তরের জন্য আপনাকে ধন্যবাদ। আপনার অর্থটি বোঝার জন্য আমি অনুমান করি তবে এই অরথোগোনাল বহুপদী পদগুলি কীভাবে কাজ করে তা আমি সৎভাবে বুঝতে পারি নি। : পি
পিপ্পো

1
একটি উল্লেখযোগ্য বিষয় হিসাবে, আপনার কাছে যা যথেষ্ট ফিট করা মডেল নয়। আপনার হয় রাইনের (বা ই [লেখার) ওপরে একটি বিশাল 'টুপি' দরকার, যার অর্থ লেখার পূর্বাভাসিত মান বা লেখার প্রত্যাশিত মান; অথবা অবশিষ্টাংশগুলি নির্দেশ করতে আপনার শেষে '+ ই' দরকার।
গুং - মনিকা পুনরায়

@ স্কোর্টচি কী "বা" কীভাবে আপনি "সন্ধানী টেবিল" খুঁজে পাবেন?
আন্তনি পরল্লদা

2
@ অ্যান্টোনিপ্রেল্লদা: এটি ওপিতে লিখিত পৃষ্ঠার টেবিল: ats.ucla.edu/stat/r/library/contrast_coding.htm#ORTHOGONAL । & সঙ্গে পেয়েছিলাম contr.polyআর মধ্যে
Scortchi - পুনর্বহাল মনিকা

উত্তর:


29

কেবল পুনরুদ্ধার করতে (এবং ভবিষ্যতে ওপি হাইপারলিঙ্কগুলি ব্যর্থ হওয়ার ক্ষেত্রে) আমরা একটি ডেটাসেটের দিকে তাকিয়ে রয়েছি hsb2:

   id     female race ses schtyp prog read write math science socst
1  70        0    4   1      1    1   57    52   41      47    57
2 121        1    4   2      1    3   68    59   53      63    61
...
199 118      1    4   2      1    1   55    62   58      58    61
200 137      1    4   3      1    2   63    65   65      53    61

যা এখানে আমদানি করা যায়

আমরা ভেরিয়েবলটিকে readঅর্ডার / অর্ডিনাল ভেরিয়েবলে পরিণত করি:

hsb2$readcat<-cut(hsb2$read, 4, ordered = TRUE)
(means = tapply(hsb2$write, hsb2$readcat, mean))
 (28,40]  (40,52]  (52,64]  (64,76] 
42.77273 49.97849 56.56364 61.83333 

এখন আমরা কেবলমাত্র একটি নিয়মিত আনোভা চালাতে প্রস্তুত - হ্যাঁ, এটি আর, এবং মূলত আমাদের একটানা নির্ভরশীল ভেরিয়েবল write, এবং একাধিক স্তর সহ একটি ব্যাখ্যামূলক ভেরিয়েবল readcat,। আর-তে আমরা ব্যবহার করতে পারিlm(write ~ readcat, hsb2)


1. বিপরীতে ম্যাট্রিক্স তৈরি করা:

অর্ডারযুক্ত ভেরিয়েবলের জন্য চারটি আলাদা স্তর রয়েছে readcat, সুতরাং আমাদের বিপরীতে থাকবে।এন-1=3

table(hsb2$readcat)

(28,40] (40,52] (52,64] (64,76] 
     22      93      55      30 

প্রথমে আসুন অর্থের জন্য যাই, এবং বিল্ট-ইন আর ফাংশনটি একবার দেখে নিই:

contr.poly(4)
             .L   .Q         .C
[1,] -0.6708204  0.5 -0.2236068
[2,] -0.2236068 -0.5  0.6708204
[3,]  0.2236068 -0.5 -0.6708204
[4,]  0.6708204  0.5  0.2236068

এবার হুডের নীচে কী ঘটেছিল তা ছড়িয়ে দিন:

scores = 1:4  # 1 2 3 4 These are the four levels of the explanatory variable.
y = scores - mean(scores) # scores - 2.5

Y=[-1.5,-0.5,0.5,1.5]

seq_len (n) - 1=[0,1,2,3]

n = 4; X <- outer(y, seq_len(n) - 1, "^") # n = 4 in this case

[11.52.253.37510.50.250.12510.50.250.12511.52.253.375]

কি ঘটেছিল? outer(a, b, "^")উপাদান উত্থাপন aউপাদানে b, যাতে অপারেশন থেকে প্রথম কলামে ফলাফল, , ( - 0.5 ) 0 , 0.5 0 এবং 1.5 0 ; থেকে দ্বিতীয় কলামে ( - 1.5 ) 1 , ( - 0.5 ) 1 , 0.5 1 এবং 1.5 1 ; তৃতীয়টি ( - 1.5 ) 2 = 2.25 থেকে(1.5)0(0.5)00.501.50(1.5)1(0.5)10.511.51(1.5)2=2.25, , 0.5 2 = 0.25 এবং 1.5 2 = 2.25 ; এবং চতুর্থ, ( - 1.5 ) 3 = - 3.375 , ( - 0.5 ) 3 = - 0.125 , 0.5 3 = 0.125 এবং 1.5 3 = 3.375(0.5)2=0.250.52=0.251.52=2.25(1.5)3=3.375(0.5)3=0.1250.53=0.1251.53=3.375

পরবর্তী আমরা না এই ম্যাট্রিক্সের orthonormal পচানি এবং Q এর কম্প্যাক্ট প্রতিনিধিত্ব নিতে ( )। এই পোস্টে ব্যবহৃত আর-এর কিউআর ফ্যাক্টরীকরণে ব্যবহৃত ফাংশনের অভ্যন্তরীণ কিছু কাজগুলি এখানে আরও ব্যাখ্যা করা হয়েছেQRc_Q = qr(X)$qr

[202.500.52.23604.5840.50.447200.50.8940.92961.342]

... যার মধ্যে আমরা কেবল তির্যকটি সংরক্ষণ করি ( z = c_Q * (row(c_Q) == col(c_Q)))। তির্যকটিতে কী রয়েছে: Q আর পচনটির অংশের কেবল "নীচে" এন্ট্রি । শুধু? ভাল, না ... দেখা যাচ্ছে যে উপরের ত্রিভুজাকার ম্যাট্রিক্সের তির্যকটিতে ম্যাট্রিক্সের ইগেনভ্যালু রয়েছে!RQR

এরপরে আমরা নিম্নলিখিত ফাংশনটিকে কল করি: raw = qr.qy(qr(X), z)যার ফলাফলটি দুটি ক্রিয়াকলাপ দ্বারা "ম্যানুয়ালি" প্রতিলিপি করা যেতে পারে: ১. রূপটি , অর্থাৎ , কিউতে রূপান্তর করা , একটি রূপান্তর যা অর্জন করা যায় , এবং 2. বহন করে ম্যাট্রিক্সের গুণক Q z , হিসাবে রয়েছে ।Qqr(X)$qrQQ = qr.Q(qr(X))QzQ %*% z

গুরুতরভাবে, আর এর ইগেনাল্যুয়ু দ্বারা গুণিত করা সংবিধানের কলামের ভেক্টরগুলির অরথোগোনালটির পরিবর্তন করে না, তবে যে ইগেনভ্যালুগুলির পরম মানটি উপরের বাম থেকে নীচে ডানদিকে ক্রমকে ক্রমান্বয়ে প্রদর্শিত হবে , Q z এর গুণনটি হ্রাস পাবে উচ্চতর ক্রমের বহুপদী কলামগুলিতে মানগুলি:QRQz

Matrix of Eigenvalues of R
     [,1]      [,2] [,3]      [,4]
[1,]   -2  0.000000    0  0.000000
[2,]    0 -2.236068    0  0.000000
[3,]    0  0.000000    2  0.000000
[4,]    0  0.000000    0 -1.341641

ফ্যাক্টরীকরণ অপারেশনগুলির আগে এবং পরে পরবর্তী কলামের ভেক্টরগুলির (চতুর্ভুজ এবং ঘনক) মানগুলি এবং অপ্রয়োজনীয় প্রথম দুটি কলামের সাথে তুলনা করুন ।QR

Before QR factorization operations (orthogonal col. vec.)
     [,1] [,2] [,3]   [,4]
[1,]    1 -1.5 2.25 -3.375
[2,]    1 -0.5 0.25 -0.125
[3,]    1  0.5 0.25  0.125
[4,]    1  1.5 2.25  3.375


After QR operations (equally orthogonal col. vec.)
     [,1] [,2] [,3]   [,4]
[1,]    1 -1.5    1 -0.295
[2,]    1 -0.5   -1  0.885
[3,]    1  0.5   -1 -0.885
[4,]    1  1.5    1  0.295

অবশেষে আমরা (Z <- sweep(raw, 2L, apply(raw, 2L, function(x) sqrt(sum(x^2))), "/", check.margin = FALSE))ম্যাট্রিক্সকে rawএকটি অর্থোমনাল ভেক্টরগুলিতে রূপান্তর বলি :

Orthonormal vectors (orthonormal basis of R^4)
     [,1]       [,2] [,3]       [,4]
[1,]  0.5 -0.6708204  0.5 -0.2236068
[2,]  0.5 -0.2236068 -0.5  0.6708204
[3,]  0.5  0.2236068 -0.5 -0.6708204
[4,]  0.5  0.6708204  0.5  0.2236068

এই ফাংশনটি "/"প্রতিটি উপাদানকে column দ্বারা ভাগ করে ( ) কলামওয়াইজ করে ম্যাট্রিক্সকে কেবল "নরমালাইজ" করে । সুতরাং এটি দুটি ধাপে পচে যেতে পারে:(i)যার ফলস্বরূপ,(ii)প্রতিটি কলামের জন্যডোনামিনেটরযেখানে একটি কলামের প্রতিটি উপাদান(i)এর সাথে সম্পর্কিত মান দ্বারা বিভক্ত হয়।col.xi2(i) apply(raw, 2, function(x)sqrt(sum(x^2)))2 2.236 2 1.341(ii)(i)

এই মুহুর্তে কলামের ভেক্টরগুলি এর একটি অর্থনোমিকাল ভিত্তি গঠন করে , যতক্ষণ না আমরা প্রথম কলামটি মুক্তি না পেয়ে থাকি, যা বাধা হয়ে দাঁড়াবে, এবং আমরা ফলাফলটির পুনরুত্পাদন করেছি :R4contr.poly(4)

[0.67082040.50.22360680.22360680.50.67082040.22360680.50.67082040.67082040.50.2236068]

এই ম্যাট্রিক্সের কলামগুলি অরথনরমাল , যেমন দেখানো যেতে পারে (sum(Z[,3]^2))^(1/4) = 1এবং z[,3]%*%z[,4] = 0উদাহরণস্বরূপ (ঘটনাচক্রে একই সারিগুলির জন্য যায়)। এবং, প্রতিটি কলামের প্রাথমিক উত্থাপন ফল করতে 1 -st, 2 -nd এবং 3 অর্থাত - -rd ক্ষমতা যথাক্রমে রৈখিক, দ্বিঘাত এবং ঘনscores - mean123


২. ব্যাখ্যাযোগ্য ভেরিয়েবলের স্তরের পার্থক্য ব্যাখ্যা করতে কোন বিপরীতে (কলামগুলি) উল্লেখযোগ্য অবদান রাখে?

আমরা কেবল আনোভা চালাতে পারি এবং সংক্ষিপ্তসারটি দেখতে পারি ...

summary(lm(write ~ readcat, hsb2))

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  52.7870     0.6339  83.268   <2e-16 ***
readcat.L    14.2587     1.4841   9.607   <2e-16 ***
readcat.Q    -0.9680     1.2679  -0.764    0.446    
readcat.C    -0.1554     1.0062  -0.154    0.877 

... দেখতে একটি রৈখিক প্রভাব আছে যে readcatউপর write, তাই মূল মান (পোস্টের শুরুতে কোডের তৃতীয় খণ্ড মধ্যে) নামে পুনরুত্পাদন করা যাবে যে:

coeff = coefficients(lm(write ~ readcat, hsb2))
C = contr.poly(4)
(recovered = c(coeff %*% c(1, C[1,]),
               coeff %*% c(1, C[2,]),
               coeff %*% c(1, C[3,]),
               coeff %*% c(1, C[4,])))
[1] 42.77273 49.97849 56.56364 61.83333

... বা ...

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

... বা আরও ভাল ...

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

হচ্ছে লম্ব বৈপরীত্য তাদের উপাদান এর সমষ্টি শূন্য যোগ জন্য একটি 1 , , একটি টি ধ্রুবক, এবং তাদের কোন দুটি ডট পণ্য শূন্য। আমরা যদি তাদের কল্পনা করতে পারি তবে তারা এ জাতীয় কিছু দেখতে পাবে:i=1tai=0a1,,at

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

X0,X1,.Xn

গ্রাফিক্যালি এটি বোঝা অনেক সহজ। বৃহত স্কোয়ার ব্ল্যাক ব্লকের গ্রুপগুলির দ্বারা প্রকৃত উপায়গুলির পূর্বাভাসিত মানগুলির সাথে তুলনা করুন এবং দেখুন যে চতুষ্কোণ এবং ঘনক বহুবর্ণের ন্যূনতম অবদানের সাথে একটি সরলরেখার সান্নিধ্যকরণ (কেবলমাত্র ধনুগুলির সাথে আনুষঙ্গিক বক্ররেখা) সর্বোত্তম কেন:

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

যদি কেবলমাত্র কার্যকরভাবে, আনোভা এর গুণাগুণগুলি অন্যান্য অনুমানের (চতুর্ভুজ এবং ঘনক) জন্য রৈখিক বিপরীতে এতটা বড় ছিল, এরপরে অযৌক্তিক প্লটটি প্রতিটি "অবদান" এর বহুভুজ প্লটগুলিকে আরও স্পষ্টভাবে চিত্রিত করবে:

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

কোডটি এখানে


+1 বাহ এই উত্তরটি (আমি এখনও অবধি শেষ পর্যন্ত এটি পড়িনি) আমার পুরানো, ভুলে যাওয়া প্রশ্নেরও খুব উত্তর হিসাবে দেখা যাবে ? Stackexchange.com/q/63639/3277 ?
ttnphns

(+1) @ttnphns: সম্ভবত এটি এটি আরও ভাল ফিট করে fit
স্কর্চচি - মনিকা পুনরায় ইনস্টল করুন

কেবলমাত্র একটি পরামর্শ: আপনি এখানে একটি লিঙ্ক দিয়ে আমাকে মন্তব্য করতে চাইতে পারেন; বা সেখানে একটি উত্তর জারি করুন - যা আমি গ্রহণ করতে পারি।
ttnphns

1
@ttnphns এবং @cortchi আপনাকে ধন্যবাদ! আমি এই ধারণাগুলিটি বোঝার চেষ্টা করে বেশ কিছুটা সময় ব্যয় করেছি এবং খুব বেশি প্রতিক্রিয়া আশা করিনি। সুতরাং এটি একটি খুব ইতিবাচক অবাক। আমি মনে করি qr.qy()ফাংশনটি ব্যাখ্যা করার ক্ষেত্রে কিছুটা কুঁচকিয়ে উঠেছে , তবে আমি কিছুক্ষণ পরেই আপনার প্রশ্নটি সম্পর্কে সামান্যতম সুসংগত কিছু বলতে পারি কিনা তা আমি অবশ্যই চেষ্টা করার চেষ্টা করব।
আন্তনি পরল্লদা

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

5

এটি কীভাবে কাজ করে তা বোঝাতে আমি আপনার উদাহরণ ব্যবহার করব। বহু গ্রুপের বিপরীতে ব্যবহার করে চারটি গ্রুপের ফলন পাওয়া যায়।

WRআমিটি1=μ-0.67এল+ +0.5প্রশ্নঃ-0.22সিWRআমিটি2=μ-0.22এল-0.5প্রশ্নঃ+ +0.67সিWRআমিটি3=μ+ +0.22এল-0.5প্রশ্নঃ-0.67সিWRআমিটি4=μ+ +0.67এল+ +0.5প্রশ্নঃ+ +0.22সি

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

WRআমিটিআমি=μ+ +Rএকটিআমিএল+ +Rএকটিআমি2প্রশ্নঃ+ +Rএকটিআমি3সি

সাধারণত পরিবর্তে এল,প্রশ্নঃ,সি আপনি করতেন β1,β2,β3 and written at first position. But this writing resembles the one with polynomial contrasts. So numbers in front of L,Q,C are actually instead of readi,readi2,readi3. You can see that coefficients before L have linear trend, before Q quadratic and before C cubic.

Then R estimates parameters μ,L,Q,C and gives you

μ^=52.79,L^=14.26,Q^=0.97,C^=0.16
Where μ^=14i=14Ewritei and estimated coefficients μ^,L^,Q^,C^ are something like estimates at normal linear regression. So from the output you can see if estimated coefficients are significantly different from zero, so you could anticipate some kind of linear, quadratic or cubic trend.

In that example is significantly non-zero only L^. So your conclusion could be: We see that the better scoring in writing depends linearly on reading score, but there is no significant quadratic or cubic effect.

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