我正在尝试使用弹性网(Lasso
alpha 为 0.5 的 Matlab 函数)进行变量选择。我总共有 75 个预测变量(有些是相互关联的,因此使用弹性网而不是套索),我想得到其中的一个子集,它们是我结果的良好预测变量。
所以我的问题是:我如何计算像这样的东西来显示我的结果有多少是由这些选定的变量解释的?
如果我在多元线性回归模型中使用选定的变量,是否有效,因为我的变量是相关的?
我可以计算交叉验证的(使用留一法)以获得更准确的吗?
之外,还有其他方法可以让我的变量选择方法预测得很好吗?
我正在尝试使用弹性网(Lasso
alpha 为 0.5 的 Matlab 函数)进行变量选择。我总共有 75 个预测变量(有些是相互关联的,因此使用弹性网而不是套索),我想得到其中的一个子集,它们是我结果的良好预测变量。
所以我的问题是:我如何计算像这样的东西来显示我的结果有多少是由这些选定的变量解释的?
如果我在多元线性回归模型中使用选定的变量,是否有效,因为我的变量是相关的?
我可以计算交叉验证的(使用留一法)以获得更准确的吗?
之外,还有其他方法可以让我的变量选择方法预测得很好吗?
只需使用常规,即拟合值与实际值之间的平方相关。无论模型是通过 OLS 拟合还是通过惩罚 OLS(例如弹性网)拟合,它仍然会反映解释的方差比例。
但是请注意,如果在用于模型构建的相同数据(例如变量选择)上评估模型,则在模型选择之后应用的模型诊断和性能测量(例如 )可能(并且将会)过于乐观.