机器学习入门---简单线性回归

机器学习

机器学习就是模拟人类的学习能力,以获取新的知识或技能,来提升已有的知识结构的性能。

机器学习的步骤如下:

机器学习演算法就是通过学习训练数据的特征和标签,产生对应的演算法模型,预测数据特征对应的标签。其中特征是指属性,标签是指类别。

简单线性回归

线性回归在假设特证标签满足线性关系,根据给定的训练数据训练一个模型,并用此模型进行预测。

1.相关性

线性回归其实就是研究线性相关性,线性相关包括两种,正线性相关(两个变数同方向变化),负线性相关(两个变数反方向变化)。相关系数用来度量线性相关性, 相关系数r=frac{X和Y的协方差}{X的标准差*Y的标准差}=frac{cov(X,Y)}{sigma_{X}sigma_{Y}}

cov(X,Y)=E[(X-E[X])(Y-E[Y])]

相关系数的范围为, -1ll r ll 1 ,其中0表示不相关,负值表示负线性相关,正值表示正线性相关。

Python中用corr()计算相关系数,将返回一个相关系数矩阵,对角线为1,因为数据本身相关系数为1,矩阵关于对角线对称,所以只需要看对角线一侧的数据。

2.最佳拟合线

在训练数据的散点图上,我们可以画一条线,这条线可以最准确的表示散点的方向位置,我们叫这条线为最佳拟合线。回归方程为 y=a+bx ,其中a为截距,b为回归系数。

Python中用sklearn包中的LinearRegression()创建模型。

3.评估模型精确度

我们使用训练数据创建模型,用测试数据评估模型精确度。

决定系数R平方用来评估模型精确度,R平淡过越大,回归模型越精确。

决定系数R平方=1-frac{误差平方和}{总波动}

其中,

误差平方和=sum_{}^{}({y实际值-y预测值})^{2}

总波动=sum_{}^{}({y实际值-y平均值})^{2}

Python中用score()评估模型:


推荐阅读:
相关文章