机器学习算法之线性回归

简介: 机器学习算法之线性回归

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]])
相关文章
|
21小时前
|
机器学习/深度学习 数据采集 人工智能
【机器学习】解释什么是线性回归?
【5月更文挑战第15天】【机器学习】解释什么是线性回归?
|
21小时前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】K-means算法与PCA算法之间有什么联系?
【5月更文挑战第15天】【机器学习】K-means算法与PCA算法之间有什么联系?
|
22小时前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】维度灾难问题会如何影响K-means算法?
【5月更文挑战第15天】【机器学习】维度灾难问题会如何影响K-means算法?
|
1天前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】聚类算法中,如何判断数据是否被“充分”地聚类,以便算法产生有意义的结果?
【5月更文挑战第14天】【机器学习】聚类算法中,如何判断数据是否被“充分”地聚类,以便算法产生有意义的结果?
|
1天前
|
机器学习/深度学习 运维 算法
【机器学习】可以利用K-means算法找到数据中的离群值吗?
【5月更文挑战第14天】【机器学习】可以利用K-means算法找到数据中的离群值吗?
|
2天前
|
机器学习/深度学习 数据采集 自然语言处理
理解并应用机器学习算法:神经网络深度解析
【5月更文挑战第15天】本文深入解析了神经网络的基本原理和关键组成,包括神经元、层、权重、偏置及损失函数。介绍了神经网络在图像识别、NLP等领域的应用,并涵盖了从数据预处理、选择网络结构到训练与评估的实践流程。理解并掌握这些知识,有助于更好地运用神经网络解决实际问题。随着技术发展,神经网络未来潜力无限。
|
2天前
|
机器学习/深度学习 分布式计算 并行计算
【机器学习】怎样在非常大的数据集上执行K-means算法?
【5月更文挑战第13天】【机器学习】怎样在非常大的数据集上执行K-means算法?
|
2天前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】列举几种情况,在这些情况下K-means算法难以取得较好效果
【5月更文挑战第13天】【机器学习】列举几种情况,在这些情况下K-means算法难以取得较好效果
|
2天前
|
机器学习/深度学习 传感器 算法
【机器学习】在聚类算法中,使用曼哈顿距离和使用欧式距离有什么区别?
【5月更文挑战第12天】【机器学习】在聚类算法中,使用曼哈顿距离和使用欧式距离有什么区别?
|
2天前
|
数据采集 机器学习/深度学习 人工智能
【机器学习】在使用K-means算法之前,如何预处理数据?
【5月更文挑战第12天】【机器学习】在使用K-means算法之前,如何预处理数据?

热门文章

最新文章