回归模型的对数似然值是衡量模型拟合度的一种方法。对数似然值越高,模型就越适合数据集。
一个给定模型的对数似然值可以从负无穷大到正无穷大。一个给定模型的实际对数似然值大多没有意义,但它对于比较两个或更多的模型很有用。
在实践中,我们经常对一个数据集拟合几个回归模型,并选择对数似然值最高的模型作为最适合数据的模型。
下面的例子说明了在实践中如何解释不同回归模型的对数似然值。
例子:对数似然值的解释
假设我们有以下数据集,显示了某一社区20个不同房屋的卧室数、浴室数和销售价格。
假设我们想拟合以下两个回归模型,并确定哪一个对数据的拟合效果更好。
模型1:价格=β0+β1(卧室数量)
模型2:价格 = β0 + β1(浴室数量)
下面的代码显示了如何在R中拟合每个回归模型并计算每个模型的对数可能性值:
#define data
df <- data.frame(beds=c(1, 1, 1, 2, 2, 2, 2, 3, 3, 3,
3, 3, 3, 3, 4, 4, 4, 5, 5, 6),
baths=c(2, 1, 4, 3, 2, 2, 3, 5, 4, 3,
4, 4, 3, 4, 2, 4, 3, 5, 6, 7),
price=c(120, 133, 139, 185, 148, 160, 192, 205, 244, 213,
236, 280, 275, 273, 312, 311, 304, 415, 396, 488))
#fit models
model1 <- lm(price~beds, data=df)
model2 <- lm(price~baths, data=df)
#calculate log-likelihood value of each model
logLik(model1)
'log Lik.' -91.04219 (df=3)
logLik(model2)
'log Lik.' -111.7511 (df=3)
第一个模型的对数似然值(-91.04)比第二个模型(-111.75)高,这意味着第一个模型对数据的拟合效果更好。
使用对数似然值的注意事项
在计算对数可能性值时,需要注意的是,在一个模型中加入更多的预测变量几乎总是会增加对数可能性值,即使额外的预测变量在统计学上不显著。
这意味着你只应该在两个回归模型之间比较对数可能性值,如果每个模型有相同数量的预测变量。
要比较具有不同数量预测变量的模型,你可以进行似然比检验来比较两个嵌套回归模型的拟合度。