用v9做网站优化,主流网页设计软件,寻找南京帮助做网站的单位,企业管理有哪些课程这里提供一个 Python 实现的方法和原理趣分析方差膨胀因子是非常经典缓解多元共线性的方法#xff0c;原理简单#xff0c;实现优雅#xff0c;效果拔群。源代码源数据可私聊俺获取#xff0c;每天固定时间查看和回复。原理趣析多重线性回归模型的主要假设之一是我们的预测…这里提供一个 Python 实现的方法和原理趣分析方差膨胀因子是非常经典缓解多元共线性的方法原理简单实现优雅效果拔群。源代码源数据可私聊俺获取每天固定时间查看和回复。原理趣析多重线性回归模型的主要假设之一是我们的预测变量(自变量)彼此不相关。我们希望预测变量与反应变量(因变量)相关而不是彼此之间具有相关性。如言情剧中的 A 喜欢BB 却喜欢 C结果发现 C 其实喜欢 A而 B 的一举一动很有可能影响着 A所以当我们把 B和C 作为自变量来预测因变量 A 的行为时这两个自变量之间的相互影响就会有点让人难受。公式解释方差膨胀因子(Variance Inflation Factor以下简称VIF)是指解释变量之间存在多重共线性时的方差与不存在多重共线性时的方差之比。上图公式可以看出在方差膨胀因子的检测中每个自变量都会有一个膨胀因子值VIF_i最后根据值的大小来选择是否删减Ri^2 表示相关性是谁跟谁的相关性呢是自变量中的某一变量与除它外剩余的自变量进行多元线性回归取回归结果即模型精度来作为这个变量与剩余自变量的相关性。 听起来可能有点绕这里举一下实例(用 “ 面积、卧室数量和浴室数量 ” 作为自变量来预测房价在进行自变量的方差膨胀因子的检测时面积、卧室数和浴室数轮流做单独的因变量剩下的两个变量作为自变量来看看这三个自变量中那个变量对其余两个变量的解释性高)Ri^2 越大如已经到了 0.9那分母就很小vif_i 的值就等于 10即表示这个自变量已经同时解释了另外的某个或多个自变量存在多元共线性可以考虑删除一些自变量。VIF越大显示共线性越严重。经验判断方法表明当0效果实现本文将使用 Python 数据分析利器 Jupyter Notebook 实现。虽然前人大神们已经有了完整的实现步骤 https://etav.github.io/python/vif_factor_python.html但他们的实现方法还是会轻微复杂笔者这里提供一个自写函数的方法使用自写函数来检测各自变量的方差膨胀因子发现变量 bedrooms 和 bathrooms 的方差膨胀因子都超过了 10。其实方差因子通常成对出现通常较大的两个方差膨胀因子表明这两个变量自身本来就具有高度相关性即这两个变量一起才解释一种东西可以考虑去除一个自己并不怎么感兴趣的变量即可也回到了我们最开始的目的多重线性回归模型的主要假设之一是我们的预测变量彼此不相关我们希望预测变量与反应变量相关而不是彼此之间具有相关性。bedrooms 和 bathrooms 的方差膨胀因子异常也能从上一张 ols 建模结果的图中看到端倪。将变量之间的相关性以热力图的形式呈现后发现 ols 建模的结果是 bedrooms 每增加一个单位房价还减少 -2925.8063 而热力图则反映出bedrooms 与房价呈现比较强的正相关关系。所以我们可考虑去掉方差膨胀因子最大的变量 bedrooms后再进行一次 ols 建模对比两次建模结果发现其实删除某个方差膨胀因子异常的变量后建模结果也不变但我们需要注意的是具体问题还得结合具体业务来分析有时候尽管出现了多元共线性但也还是需要保留方差膨胀因子异常的变量。