ฉันจะไม่ rederive การกระจายในคำตอบที่ยอดเยี่ยมของ @ Alecos (เป็นผลลัพธ์มาตรฐานดูที่นี่สำหรับการสนทนาที่ดีอีกครั้ง) แต่ฉันต้องการกรอกรายละเอียดเพิ่มเติมเกี่ยวกับผลที่ตามมา! ประการแรกสิ่งที่ไม่การกระจาย null ของR2มีลักษณะเหมือนช่วงของค่าของnและk? กราฟในคำตอบของ @ Alecos เป็นตัวแทนของสิ่งที่เกิดขึ้นในการถดถอยหลายทางปฏิบัติ แต่บางครั้งก็มีการรวบรวมข้อมูลเชิงลึกได้ง่ายขึ้นจากกรณีที่เล็กกว่า ฉันได้รวมค่าเฉลี่ยโหมด (ซึ่งมีอยู่) และค่าเบี่ยงเบนมาตรฐาน กราฟ / ตารางสมควรได้รับลูกตาดีดูดีที่สุดที่ขนาดเต็ม ฉันสามารถรวมมุมมองได้น้อยลง แต่รูปแบบจะชัดเจนน้อยลง ฉันได้ต่อท้ายBeta(k−12,n−k2)R2nkR
รหัสเพื่อให้ผู้อ่านที่สามารถทดสอบกับส่วนย่อยที่แตกต่างกันของและknk
ค่าพารามิเตอร์รูปร่าง
โทนสีของกราฟแสดงให้เห็นว่าแต่ละพารามิเตอร์รูปร่างน้อยกว่าหนึ่ง (สีแดง) เท่ากับหนึ่ง (สีน้ำเงิน) หรือมากกว่าหนึ่ง (สีเขียว) ด้านซ้ายแสดงค่าของขณะที่βอยู่ทางด้านขวา ตั้งแต่α = k - 1αβค่าของมันเพิ่มขึ้นในความก้าวหน้าทางเลขคณิตโดยความแตกต่างทั่วไปของ1α=k−12เมื่อเราเลื่อนจากคอลัมน์หนึ่งไปอีกคอลัมน์หนึ่ง (เพิ่ม regressor เข้ากับโมเดลของเรา) ในขณะที่สำหรับค่าคงที่n,β=n-k12nลดลง1β=n−k2 . จำนวนรวมα+β=n-112ได้รับการแก้ไขสำหรับแต่ละแถว (สำหรับขนาดตัวอย่างที่กำหนด) แต่ถ้าเราจะแก้ไขปัญหาkและย้ายลงคอลัมน์ (เพิ่มขนาดกลุ่มตัวอย่างโดยการ 1) แล้วαการเข้าพักอย่างต่อเนื่องและβเพิ่มขึ้น1α+β=n−12kαβ . ในเงื่อนไขการถดถอยαคือครึ่งหนึ่งของจำนวน regressors ที่รวมอยู่ในแบบจำลองและβคือครึ่งหนึ่งขององศาอิสระที่เหลือ เพื่อกำหนดรูปทรงของการแจกแจงเราสนใจเป็นพิเศษในกรณีที่αหรือβเท่ากับหนึ่ง12αβαβ
พีชคณิตตรงไปตรงมาสำหรับ : เรามีk - 1αดังนั้นk=3 นี่เป็นคอลัมน์เดียวของพล็อตด้านที่เติมสีฟ้าทางด้านซ้าย ในทำนองเดียวกันα<1สำหรับk<3(คอลัมน์k=2เป็นสีแดงด้านซ้าย) และα>1สำหรับk>3(จากคอลัมน์k=4เป็นต้นไปด้านซ้ายเป็นสีเขียว)k−12=1k=3α<1k<3k=2α>1k>3k=4
สำหรับเรามีn - kβ=1จึงk=n-2 สังเกตว่ากรณีเหล่านี้ (ทำเครื่องหมายด้วยด้านขวามือสีน้ำเงิน) ตัดเป็นเส้นทแยงมุมข้ามพล็อตด้าน สำหรับβ>1เราได้k<n-2(กราฟที่มีด้านซ้ายสีเขียวอยู่ด้านซ้ายของเส้นทแยงมุม) สำหรับβ<1เราต้องการk>n-2ซึ่งเกี่ยวข้องกับเฉพาะกรณีที่ถูกต้องที่สุดในกราฟของฉัน: ที่n=kเรามีβ=0และการกระจายตัวลดลง แต่nn−k2=1k=n−2β>1k<n−2β<1k>n−2n=kβ=0โดยที่ β = 1n=k−1ถูกพล็อต (ด้านขวาเป็นสีแดง)β=12
เนื่องจาก PDF คือก็เป็นที่ชัดเจนว่าถ้า (และถ้ามี) α < 1แล้ว F ( x ) → ∞เป็น x → 0 เราสามารถมองเห็นได้ในกราฟ: เมื่อทางด้านซ้ายเป็นสีเทาสีแดงสังเกตพฤติกรรมที่ 0. ในทำนองเดียวกันเมื่อ β < 1แล้ว F ( x ) → ∞เป็น x → 1 ดูที่ด้านขวาเป็นสีแดง!f(x;α,β)∝xα−1(1−x)β−1α<1f(x)→∞x→0β<1f(x)→∞x→1
symmetries
หนึ่งในคุณสมบัติที่สะดุดตาที่สุดของกราฟคือระดับความสมมาตร แต่เมื่อมีการแจกแจงแบบเบต้ามีส่วนเกี่ยวข้องนี่ไม่น่าแปลกใจ!
การกระจายเบต้าตัวเองเป็นสมมาตรถ้า β สำหรับเราสิ่งนี้เกิดขึ้นหากn = 2 k - 1ซึ่งระบุพาเนลได้อย่างถูกต้อง( k = 2 , n = 3 ) , ( k = 3 , n = 5 ) , ( k = 4 , n = 7 )และ( k = 5 , n = 9 )α=βn=2k−1(k=2,n=3)(k=3,n=5)(k=4,n=7)(k=5,n=9). ขอบเขตของการแจกแจงแบบสมมาตรทั่วขึ้นอยู่กับจำนวนตัวแปรรีเคอเรเตอร์ที่เรารวมไว้ในโมเดลสำหรับขนาดตัวอย่างนั้น ถ้าk = n + 1R2=0.5k=n+12 the distribution of R2 is perfectly symmetric about 0.5; if we include fewer variables than that it becomes increasingly asymmetric and the bulk of the probability mass shifts closer to R2=0; if we include more variables then it shifts closer to R2=1. Remember that k includes the intercept in its count, and that we are working under the null, so the regressor variables should have coefficient zero in the correctly specified model.
There is also an obviously symmetry between distributions for any given n, i.e. any row in the facet grid. For example, compare (k=3,n=9) with (k=7,n=9). What's causing this? Recall that the distribution of Beta(α,β) is the mirror image of Beta(β,α) across x=0.5. Now we had αk,n=k−12 and βk,n=n−k2. Consider k′=n−k+1 and we find:
αk′,n=(n−k+1)−12=n−k2=βk,n
βk′,n=n−(n−k+1)2=k−12=αk,n
So this explains the symmetry as we vary the number of regressors in the model for a fixed sample size. It also explains the distributions that are themselves symmetric as a special case: for them, k′=k so they are obliged to be symmetric with themselves!
This tells us something we might not have guessed about multiple regression: for a given sample size n, and assuming no regressors have a genuine relationship with Y, the R2 for a model using k−1 regressors plus an intercept has the same distribution as 1−R2 does for a model with k−1 residual degrees of freedom remaining.
Special distributions
When k=n we have β=0, which isn't a valid parameter. However, as β→0 the distribution becomes degenerate with a spike such that P(R2=1)=1. This is consistent with what we know about a model with as many parameters as data points - it achieves perfect fit. I haven't drawn the degenerate distribution on my graph but did include the mean, mode and standard deviation.
When k=2 and n=3 we obtain Beta(12,12) which is the arcsine distribution. This is symmetric (since α=β) and bimodal (0 and 1). Since this is the only case where both α<1 and β<1 (marked red on both sides), it is our only distribution which goes to infinity at both ends of the support.
The Beta(1,1) distribution is the only Beta distribution to be rectangular (uniform). All values of R2 from 0 to 1 are equally likely. The only combination of k and n for which α=β=1 occurs is k=3 and n=5 (marked blue on both sides).
The previous special cases are of limited applicability but the case α>1 and β=1 (green on left, blue on right) is important. Now f(x;α,β)∝xα−1(1−x)β−1=xα−1 so we have a power-law distribution on [0, 1]. Of course it's unlikely we'd perform a regression with k=n−2 and k>3, which is when this situation occurs. But by the previous symmetry argument, or some trivial algebra on the PDF, when k=3 and n>5, which is the frequent procedure of multiple regression with two regressors and an intercept on a non-trivial sample size, R2 will follow a reflected power law distribution on [0, 1] under H0. This corresponds to α=1 and β>1 so is marked blue on left, green on right.
You may also have noticed the triangular distributions at (k=5,n=7) and its reflection (k=3,n=7). We can recognise from their α and β that these are just special cases of the power-law and reflected power-law distributions where the power is 2−1=1.
Mode
If α>1 and β>1, all green in the plot, f(x;α,β) is concave with f(0)=f(1)=0, and the Beta distribution has a unique mode α−1α+β−2. Putting these in terms of k and n, the condition becomes k>3 and n>k+2 while the mode is k−3n−5.
All other cases have been dealt with above. If we relax the inequality to allow β=1, then we include the (green-blue) power-law distributions with k=n−2 and k>3 (equivalently, n>5). These cases clearly have mode 1, which actually agrees with the previous formula since (n−2)−3n−5=1. If instead we allowed α=1 but still demanded β>1, we'd find the (blue-green) reflected power-law distributions with k=3 and n>5. Their mode is 0, which agrees with 3−3n−5=0. However, if we relaxed both inequalities simultaneously to allow α=β=1, we'd find the (all blue) uniform distribution with k=3 and n=5, which does not have a unique mode. Moreover the previous formula can't be applied in this case, since it would return the indeterminate form 3−35−5=00.
When n=k we get a degenerate distribution with mode 1. When β<1 (in regression terms, n=k−1 so there is only one residual degree of freedom) then f(x)→∞ as x→1, and when α<1 (in regression terms, k=2 so a simple linear model with intercept and one regressor) then f(x)→∞ as x→0. These would be unique modes except in the unusual case where k=2 and n=3 (fitting a simple linear model to three points) which is bimodal at 0 and 1.
Mean
The question asked about the mode, but the mean of R2 under the null is also interesting - it has the remarkably simple form k−1n−1. For a fixed sample size it increases in arithmetic progression as more regressors are added to the model, until the mean value is 1 when k=n. The mean of a Beta distribution is αα+β so such an arithmetic progression was inevitable from our earlier observation that, for fixed n, the sum α+β is constant but α increases by 0.5 for each regressor added to the model.
αα+β=(k−1)/2(k−1)/2+(n−k)/2=k−1n−1
Code for plots
require(grid)
require(dplyr)
nlist <- 3:9 #change here which n to plot
klist <- 2:8 #change here which k to plot
totaln <- length(nlist)
totalk <- length(klist)
df <- data.frame(
x = rep(seq(0, 1, length.out = 100), times = totaln * totalk),
k = rep(klist, times = totaln, each = 100),
n = rep(nlist, each = totalk * 100)
)
df <- mutate(df,
kname = paste("k =", k),
nname = paste("n =", n),
a = (k-1)/2,
b = (n-k)/2,
density = dbeta(x, (k-1)/2, (n-k)/2),
groupcol = ifelse(x < 0.5,
ifelse(a < 1, "below 1", ifelse(a ==1, "equals 1", "more than 1")),
ifelse(b < 1, "below 1", ifelse(b ==1, "equals 1", "more than 1")))
)
g <- ggplot(df, aes(x, density)) +
geom_line(size=0.8) + geom_area(aes(group=groupcol, fill=groupcol)) +
scale_fill_brewer(palette="Set1") +
facet_grid(nname ~ kname) +
ylab("probability density") + theme_bw() +
labs(x = expression(R^{2}), fill = expression(alpha~(left)~beta~(right))) +
theme(panel.margin = unit(0.6, "lines"),
legend.title=element_text(size=20),
legend.text=element_text(size=20),
legend.background = element_rect(colour = "black"),
legend.position = c(1, 1), legend.justification = c(1, 1))
df2 <- data.frame(
k = rep(klist, times = totaln),
n = rep(nlist, each = totalk),
x = 0.5,
ymean = 7.5,
ymode = 5,
ysd = 2.5
)
df2 <- mutate(df2,
kname = paste("k =", k),
nname = paste("n =", n),
a = (k-1)/2,
b = (n-k)/2,
meanR2 = ifelse(k > n, NaN, a/(a+b)),
modeR2 = ifelse((a>1 & b>=1) | (a>=1 & b>1), (a-1)/(a+b-2),
ifelse(a<1 & b>=1 & n>=k, 0, ifelse(a>=1 & b<1 & n>=k, 1, NaN))),
sdR2 = ifelse(k > n, NaN, sqrt(a*b/((a+b)^2 * (a+b+1)))),
meantext = ifelse(is.nan(meanR2), "", paste("Mean =", round(meanR2,3))),
modetext = ifelse(is.nan(modeR2), "", paste("Mode =", round(modeR2,3))),
sdtext = ifelse(is.nan(sdR2), "", paste("SD =", round(sdR2,3)))
)
g <- g + geom_text(data=df2, aes(x, ymean, label=meantext)) +
geom_text(data=df2, aes(x, ymode, label=modetext)) +
geom_text(data=df2, aes(x, ysd, label=sdtext))
print(g)