1.应用场景
•房价预测
通过以往房屋面积与房屋价格对应情况,推断出现有房屋的价格。
•销售额度预测
销售额度受影响因素很多,比如广告,市场环境等等。我们可以分析出其中的关系,从而预测销售额度。
•贷款额度预测
银行对于每个人的贷款额度参考,预测出某人的贷款额度。
......更多精彩文章请关注公众号『Pythonnote』或者『全栈技术精选』
2.线性回归
在说线性回归之前,需要先搞清楚『分类』和『回归』这两个概念,这也是机器学习中很重要的概念。简单来讲,『分类』和『回归』都是预测目标值的过程,但是『分类』预测的是离散型变量,而『回归』预测的是连续型变量。下面开始介绍线性回归:
线性回归(Linear regression
)是利用回归方程(函数)对一个或多个自变量(特征值)和因变量(目标值)之间关系进行建模的一种分析方式。下面即对应公式:
只有一个自变量的情况称为单变量回归,多于一个自变量情况的叫做多元回归
那么怎么理解呢?我们来看几个例子
期末成绩 = 0.7 × 考试成绩 + 0.3 × 平时成绩
房子价格 = 0.02 × 中心区域的距离 + 0.04 × 城市一氧化氮浓度 + (-0.12 × 自住房平均房价) + 0.254 × 城镇犯罪率
上面两个例子,我们看到特征值与目标值之间建立了一个关系,这个关系可以理解为线性模型。
如果还是难以理解的话,那么再通俗易懂的解释一下:
假设有很多小点点在屏幕上,他们看似杂乱,但貌似又有些关系。线性回归就是找出一条直线,尽可能的让给定的特征值点(屏幕上的小点点)都落到线上或均匀分布于两侧并靠近于这条线。
当然这些点分布的不能过于散乱,他们的整体趋势必须是线性的,否则拟合结果就是非线性。
这样看来,像不像给定几个点,然后求直线方程呢?(无限趋于完美情况,所有点都在直线上)这个直线方程就是「线性回归方程」,要求的参数就是「回归参数」更多精彩文章请关注公众号『Pythonnote』或者『全栈技术精选』
3.特征值与目标值关系分析
线性回归当中线性模型有两种:一种是线性关系,另一种是非线性关系。在这里我们只能画一个平面更好去理解,所以都用单个特征或两个特征举例子。更多精彩文章请关注公众号『Pythonnote』或者『全栈技术精选』
3.1 线性关系
3.1.1 单变量线性关系
3.1.2 多变量线性关系
注释:单特征与目标值的关系呈直线关系,或者两个特征与目标值呈现平面的关系。
更高维度的我们不用自己去想,记住这种关系即可
3.2 非线性关系
4.线性回归api初步使用
4.1 api
sklearn.linear_model.LinearRegression()# LinearRegression.coef_:回归系数
4.2 举例
4.2.1 步骤分析
•1.获取数据集•2.数据基本处理(该案例中省略)•3.特征工程(该案例中省略)•4.机器学习•5.模型评估(该案例中省略)
4.2.2 代码过程
•导入模块
from sklearn.linear_model import LinearRegression
•构造数据集
x = [[80, 86], [82, 80], [85, 78], [90, 90], [86, 82], [82, 90], [78, 80], [92, 94]] y = [84.2, 80.6, 80.1, 90, 83.2, 87.6, 79.4, 93.4]
机器学习-- 模型训练
# 实例化API estimator = LinearRegression() # 使用fit方法进行训练 estimator.fit(x,y) # 回归系数 estimator.coef_ # 预测 estimator.predict([[100, 80]])