【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就叫做预测值,而我们训练的整体过程就是在不断减少真实值和预测值之间的差距,但是怎么衡量这些差距,我们叫做代价函数,会在下一节中介绍

相关推荐
晴空闲雲6 分钟前
数据结构与算法-树和二叉树-二叉树的存储结构(Binary Tree)
数据结构·算法
索迪迈科技2 小时前
Flink Task线程处理模型:Mailbox
java·大数据·开发语言·数据结构·算法·flink
元亓亓亓3 小时前
LeetCode热题100--230. 二叉搜索树中第 K 小的元素--中等
算法·leetcode·职场和发展
草莓熊Lotso3 小时前
《算法闯关指南:优选算法-双指针》--01移动零,02复写零
c语言·c++·经验分享·算法·leetcode
焜昱错眩..4 小时前
代码随想录算法训练营第三十九天|62.不同路径 63.不同路径ll
算法
焦耳加热7 小时前
阿德莱德大学Nat. Commun.:盐模板策略实现废弃塑料到单原子催化剂的高值转化,推动环境与能源催化应用
人工智能·算法·机器学习·能源·材料工程
wan5555cn7 小时前
多张图片生成视频模型技术深度解析
人工智能·笔记·深度学习·算法·音视频
u6068 小时前
常用排序算法核心知识点梳理
算法·排序
蒋星熠10 小时前
Flutter跨平台工程实践与原理透视:从渲染引擎到高质产物
开发语言·python·算法·flutter·设计模式·性能优化·硬件工程
小欣加油10 小时前
leetcode 面试题01.02判定是否互为字符重排
数据结构·c++·算法·leetcode·职场和发展