一. 理论基础
- 线性回归
如果XTX没有逆矩阵,则不能用这种方法,可以采用梯度下降等优化方法求近似解。 - 岭回归
相当于在线性回归的基础上加了正则化。
3. lasso回归
相当于加了l1的正则化。
这里不能采用闭式解,可以采用前向逐步回归。
4. 局部加权线性回归
给待测点附近的每个点赋予一定的权重。
其中,wiwi表示第i个样本的权重。
局部加权线性回归使用”核“来对附近的点赋予更高的权重。核的类型可以自由选择,最常用的核就是高斯核,高斯核对应的权重如下:
这样就有一个只含对角元素的权重矩阵W, 并且点 xixi 与x 越近,wiwi也会越大。这里的参数k 决定了对附近的点赋予多大的权重,这也是唯一需要考虑的参数。
当k越大,有越多的点被用于训练回归模型;
当k越小,有越少的点用于训练回归模型。
二. python实现
- 代码
import numpy as np
from numpy.linalg import det
from numpy.linalg import inv
from numpy import mat
from numpy import random
import matplotlib.pyplot as plt
import pandas as pd
class LinearRegression:
''