我有几个特征的二元分类问题。(正则化)逻辑回归的系数是否具有可解释的含义?
我认为它们可以表明影响的大小,因为这些特征是预先标准化的。但是,在我的问题中,系数似乎敏感地取决于我选择的特征。甚至系数的符号也会随着选择作为输入的不同特征集而变化。
检查系数的值是否有意义,找到最有意义的系数并用文字说明其含义的正确方法是什么?一些拟合模型和它们的系数符号是否错误——即使它们有点拟合数据?
(我在特征之间的最高相关性只有 0.25,但这肯定会起作用吗?)
我有几个特征的二元分类问题。(正则化)逻辑回归的系数是否具有可解释的含义?
我认为它们可以表明影响的大小,因为这些特征是预先标准化的。但是,在我的问题中,系数似乎敏感地取决于我选择的特征。甚至系数的符号也会随着选择作为输入的不同特征集而变化。
检查系数的值是否有意义,找到最有意义的系数并用文字说明其含义的正确方法是什么?一些拟合模型和它们的系数符号是否错误——即使它们有点拟合数据?
(我在特征之间的最高相关性只有 0.25,但这肯定会起作用吗?)
输出中的系数确实有意义,尽管它对大多数人来说不是很直观,当然对我来说也不是。这就是为什么人们将它们更改为优势比。但是,优势比的对数是系数;等效地,指数系数是优势比。
这些系数对于插入给出每个因变量水平的预测概率的公式最有用。
例如在R
library("MASS")
data(menarche)
glm.out = glm(cbind(Menarche, Total-Menarche) ~ Age,
family=binomial(logit), data=menarche)
summary(glm.out)
年龄的参数估计值为 1.64。这是什么意思?好吧,如果你将它与截距的参数估计(-21.24)结合起来,你可以得到一个预测月经初潮可能性的公式:
但是这个公式(即使只有一个变量!)并不能很好地说明年龄与月经初潮的关系。如果我们使用优势比(即这意味着,每增加一岁,初潮的几率就会增加 5.16 倍(不完全是 5.16 倍,但经常使用这种解释)。
直接解释系数是困难的并且可能会产生误导。您无法保证如何在变量之间分配权重。
快速示例,类似于您描述的情况:我研究了用户与网站交互的模型。该模型包括两个变量,分别代表用户会话第一个小时和第二个小时内的“点击”次数。这些变量彼此高度相关。如果这些变量的两个系数都是正的,那么我们很容易误导自己,并相信更高的系数可能表明“更高”的重要性。但是,通过添加/删除其他我们可以很容易地得到一个模型,其中第一个变量有正号,另一个有负号。我们最终得出的理由是,由于大多数可用变量对之间存在一些显着(尽管很低)的相关性,我们无法使用系数对变量的重要性得出任何可靠的结论(如果这个解释是正确的)。
如果你想获得一个更容易解释一个想法的模型,那就是使用 Lasso(L1 范数的最小化)。这导致稀疏解决方案是变量彼此之间的相关性较低。但是,这种方法不会轻易选择上一个示例的两个变量 - 一个将是零加权的。
如果您只想评估特定变量或变量集的重要性,我建议直接使用一些特征选择方法。这种方法会导致更有意义的见解,甚至基于某些标准对变量的重要性进行全球排名。
这些系数肯定是有意义的。在某些软件包中,可以通过两种方式中的任何一种来指导模型以产生两种类型的系数中的任何一种。例如,在 Stata 中,既可以使用 Logistic 命令,也可以使用 logit 命令;在使用其中一个时,该模型给出了传统系数,而在使用另一个时,该模型给出了优势比。
你可能会发现一个对你来说比另一个更有意义。
关于您“...系数似乎取决于敏感性...”的问题。
您是说结果取决于您在模型中放入的变量吗?
如果是这样,是的,这是进行回归分析时的生活事实。原因是回归分析正在查看一堆数字并以自动方式处理它们。
结果取决于变量之间的关系以及未测量的变量。它既是一门艺术,也是一门科学。
此外,如果与样本量相比,模型的预测变量过多,则符号可能会以一种疯狂的方式翻转——我认为这是说该模型正在使用影响很小的变量来“调整”其对这些变量的估计有很大的影响(比如一个小的音量旋钮来进行小的校准)。发生这种情况时,我倾向于不相信影响较小的变量。
另一方面,当您添加新的预测变量时,符号最初可能会发生变化,因为您越来越接近因果事实。
例如,让我们想象格陵兰白兰地可能对一个人的健康有害,但收入对一个人的健康有好处。如果忽略收入,而更多的富人喝白兰地,那么模型可能会“拾取”忽略的收入影响并“说”酒精对您的健康有益。
毫无疑问,系数取决于所包含的其他变量,这是一个不争的事实。要了解更多信息,请查看“省略的变量偏差”和“虚假关系”。如果您以前没有遇到过这些想法,请尝试找到满足您需求的统计课程介绍 - 这可以在做模型时产生巨大的差异。