R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化

时间:2022-11-07 10:02:06

 

在进行​​交叉验证​​之前,很自然地说“我会预烧 50%(比如说)我的数据来训练一个模型,然后用剩下的来拟合模型”。例如,我们可以使用训练数据进行变量选择(例如,在逻辑回归中使用一些逐步过程),然后,一旦选择了变量,就将模型拟合到剩余的观察集上。一个自然的问题通常是“这真的重要吗?”。

为了可视化这个问题,考虑我的(简单)​​数据集​​

使用心脏病数据,预测急诊病人的心肌梗死,包含变量:

  1. 心脏指数
  2. 心搏量指数
  3. 舒张压
  4. 肺动脉压
  5. 心室压力
  6. 肺阻力
  7. 是否存活

让我们生成 100 个训练样本(我们保留大约 50% 的观察值)。在它们中的每一个上,我们使用逐步过程,并保留剩余变量的估计值(以及它们的标准差)


1.  M=matrix(NA,100,ncol(MODE))
2. for(i in 1:100){
3. reg=step(glm(PRO=="CS"~.,dataYE[idx,]))
4.

然后,对于 7 个协变量(和常数),我们可以查看​​拟合​​在训练样本上的模型中的系数值,以及拟合在验证样本上的模型上的值


1.   
2. idx=which(!is.na(M[,j]))
3. plot(M[idx,j],M2[idx,j])
4. abline
5. segments

例如,对于截距,我们有以下

R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化

其中水平段是模型上拟合在训练样本上的参数的置信区间,垂直段是验证样本上的置信区间。蓝色部分表示某种一致性,而红色部分表示实际上,一个模型的系数为负,另一个模型为正。

我们还可以可视化两个估计量的联合分布,


1.  for(j in 1:8){
2.
3. fa = kde(x=Z, H=H)
4. image(fat$eots[[1]],

在这里,几乎在对角线上,

R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化

这意味着两个样本的截距(或多或少)相同。然后我们可以查看其他参数。

R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化

 

R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化

在该变量上,它似乎在训练数据集上很显著(不知何故,这与它在逐步过程之后保留在模型中的事实一致)但在验证样本上不显著(或几乎不显著)。

其他的则更加一致(有一些可能的异常值)

R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化

R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化

R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化

R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化

R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化

R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化

在下一个问题上,我们在训练样本上又有显著性,但在验证样本上没有。

R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化

R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化

R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化

R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化

可能更有趣:

R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化

R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化

两者非常一致。


 

R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化