【mechine learning-六-supervise learning之线性回归模型】

监督学习之线性回归模型

线性模型是人工智能监督学习中最广泛的应用,所以有必要先学习一下这个基础模型,做好基石。

线性回归模型

顾名思义,它的涵义就是指用一条直线,来拟合样本数据。还是以预测房价为例:

线性模型

我们有一堆样本数据,如上图中红色表示的数据来表示房屋的面积和价格关系。

然后有人说自己的房子1500 英尺,想让你帮忙估算房子的价格,这时候应该怎么做呢?

当然方法有很多,线性回归模型的做法就是把这些数据拟合成一条直线,得到的就是上图中的那条蓝色的直线
这就是这个模型称作线性模型的原因。

假设我们拟合的这个线性模型是y = x + 50,这时候1500英尺的房子很容易就预测出价格了。

当然这是最简单的线性模型,因为房价不可能只受一个因素影响,比如还有这个地区的犯罪率、靠近地铁站等等因素。所以实际上模型不是简单的y=wx + b的模型,更可能是y = wx1 + wx2 + ...+ b的形式

回归模型

之所以还被称做回归模型,是因为模型输出的数据不是有限的,是个无限可能的具体值,这种输出的模型被称为回归模型,这块在第二节中有过详细的讲解。

如何使用线性模型实现智能化预测呢

寻找数据

首先是寻找合适的数据,还是以我们这次使用的房价来说,那我们就需要关于这个地方的房价的数据,足够多的数据才能能够更好的拟合样本特性。比如我们使用的波士顿房价这个数据集。

打开这个数据集,数据中的数据是这样的:

数据中的每一列都是一个特征,所谓的特征就是房屋尺寸等这些因素,上图中最后一列是房价,按照顺序这些列的说明如下:

可以看到这些列包括犯罪率等等影响因素

这块可以详细看下 https://lib.stat.cmu.edu/datasets/boston

训练模型

有了数据以后,我们就要训练模型了。

把数据中每一行都输入到线性模型中,从输入的这些数据,训练一个线性模型,来拟合这些样本数据。那么它到底做了什么呢,又是怎么达到效果的呢?

输入、特征、目标、预测值、模型

样本数据中除去最后价格列,我们称为模型输入input或者特征features

样本数据中最后一列是我们要预测的价格,称为输出,这些值是真实值,也就是target或者说label

代价函数

要预测的那列为y,而作为依据的则是模型输入x。

模型要做的就是在x和y之间找到一个映射关系,能够从x映射到y,这个y是label,也就是真实值。

但是模型不可能完全拟合样本,它只能无限的逼近这个label,这个训练过程中产生的y,这个y就叫做预测值,而我们训练的整体过程就是在不断减少真实值和预测值之间的差距,但是怎么衡量这些差距,我们叫做代价函数,会在下一节中介绍

相关推荐
淡海水12 小时前
07-04-并发-ConcurrentBag-T-工作窃取WorkStealing算法
开发语言·算法·c#·bag·concurrent·workstealing
leobertlan12 小时前
好玩系列:训练一个神经网络模型指导小孩玩游戏2-大局观教练
算法
Tisfy13 小时前
LeetCode 3876.构造奇偶一致的数组 II:三种情况分类讨论(其实还是脑筋急转弯)
算法·leetcode·题解·脑筋急转弯
乐迪信息14 小时前
智慧港口船舶AI算法实现在线状态监测
大数据·人工智能·深度学习·算法·计算机视觉
木井巳15 小时前
【BFS/DFS 解决 FloodFill 算法】太平洋大西洋水流问题
java·算法·leetcode·深度优先·广度优先·宽度优先·推荐算法
statistican_ABin16 小时前
全球教育水平提升预测分析报告——基于R语言随机森林回归模型的全球40国1960-2020年教育水平预测研究
随机森林·回归·r语言
心抵鹊16 小时前
归并排序之翻转对(hard)
数据结构·算法
白山编程大哥16 小时前
Java 集合算法:从排序、查找到底层原理的实战指南
java·python·算法
shehuiyuelaiyuehao16 小时前
算法34,位运算符操作,总结
算法
Navigator_Z16 小时前
LeetCode //C - 1224. Maximum Equal Frequency
c语言·算法·leetcode