sklearn-User Guide 监督学习-- 广义线性模型(一)

下面的式子就是一个线性回归,其目标值是输入变量的线性组合,预测值可以表示为:


1.1.2 普通的最小二乘法

线性回归的思路是:用线性系数w来模拟模型,通过调整系数的值,使得预测值和准确值之间的均方误差最小。数学上可表示为:


sklearn-User Guide 监督学习-- 广义线性模型(一)_第1张图片

下面为线性拟合的代码及解释:

#从sklearn中导入linear_model模块包
>>> from sklearn import linear_model
#线性回归类,并且实例化
>>> clf = linear_model.LinearRegression()
#调用fit方法进行拟合
#原型:clf.fit(X, y, sample_weight=None),其中X=[[0, 0], [1, 1], [2, 2]],y=[0,1,2]
>>> clf.fit ([[0, 0], [1, 1], [2, 2]],[0,1,2])
LinearRegression(copy_X=True, fit_intercept=True, n_jobs=1, normalize=False)
#得到w权值
>>> clf.coef_
array([ 0.5, 0.5])

然而,普通二乘法的系数估计依赖于模型各项的独立性(这样求解线性方程组才会有确切的解)。当矩阵的列之间是近似线性关系的时候,矩阵就是奇异的,导致在用最小二乘估计的时候就会产生随机错误,产生较大的方差。这个地方是在选取特征的时候尤其应该注意的。

线性回归举例

为了得到回归的二维图,这个例子只用了糖尿病数据集的第一个特征。如图所示,线性回归尝试画一条直线,这条直线能够使均方误差最小。在下面也计算了系数、均方误差、还有方差。


sklearn-User Guide 监督学习-- 广义线性模型(一)_第2张图片

你可能感兴趣的:(sklearn-User Guide 监督学习-- 广义线性模型(一))