学习环境
Windows 10 + pycharm + anaconda3
广义线性模型
目标值y是变量x的线性组合,$\hat{y}$是预测值
定义向量 $\omega=(\omega1,\omega_2,…,\omega_p)$作为conf,定义 $\omega0$作为intercept
普通最小二乘法
(LinearRegression )拟合一个带有系数 w = (w_1, …, w_p) 的线性模型,使得数据集实际观测数据和预测数据(估计值)之间的残差平方和最小。
算法复杂度:
该方法使用 X 的奇异值分解来计算最小二乘解。如果 X 是一个 size 为 (n, p) 的矩阵,设 n \geq p ,则该方法的复杂度为 O(n p^2).
岭回归
岭(Ridge)回归,又称脊回归、吉洪诺夫正则化(Tikhonov regularization),是对不适定问题(ill-posed problem)进行回归分析时最经常使用的一种正则化方法。实际上是一种最小二乘法的改良,放弃了最小二乘法的无偏性,以损失部分信息、降低精度为代价获得更为符合实际和可靠的回归系数的回归方法,对于病态数据的拟合要强于最小二乘法。岭回归通过对系数的大小施加惩罚来解决 普通最小二乘法 的一些问题。 岭系数最小化的是带罚项的残差平方和。
其中, $\alpha \geq 0$ 是控制系数收缩量的复杂性参数: $\alpha$ 的值越大,收缩量越大,这样系数对共线性的鲁棒性也更强。
算法复杂度:
该方法使用 X 的奇异值分解来计算最小二乘解。如果 X 是一个 size 为 (n, p) 的矩阵,设 n \geq p ,则该方法的复杂度为 O(n p^2).
设置正则化参数:广义交叉验证
RidgeCV 通过内置的 Alpha 参数的交叉验证来实现岭回归。 该对象与 GridSearchCV 的使用方法相同,只是它默认为 Generalized Cross-Validation(广义交叉验证 GCV),这是一种有效的留一验证方法(LOO-CV):
Lasso
估计稀疏系数的线性模型。倾向于使用具有较少参数值的情况,有效地减少给定解决方案所依赖变量的数量。 因此,Lasso 及其变体是压缩感知领域的基础。 在一定条件下,它可以恢复一组非零权重的精确集.
最小化的目标函数是:
其中,$\alpha$ 是一个常数, $||w||_1$ 是参数向量的 $\ell_1-norm$ 范数。