机器学习第一道菜(一):线性回归的理论模型

机器学习第一道菜(一):线性回归的理论模型

前面讲了机器学习的"四大绝技",今天,开始研究第一绝技"回归",这篇文章就从最简单的线性回归开始讲起。

一、问题:千金买笑

1.1 散点图

以追女孩为例,假设送的礼物越贵,妹子对我们抱以微笑的时候就越多。也就是说,二者成线性关系:妹子的微笑次数是礼物金额的一次函数。

假设某君实际统计了一系列礼物金额与微笑次数的数据,并画出散点图:

现在交给你个任务,请回答:送6000元礼物能有多少次微笑回馈。

这个问题很简单,一眼就能看个差不离,大概四五十次的样子。

1.2 机器学习能搞啥

那能不能根据已有数据,找出一条最佳直线来表示礼物金额和微笑次数的函数关系呢?如果找到了这条线,不就可以预测出要花多少钱就能让妹子对我们笑一万次了吗?

这就是机器学习要做的事情:分析数据找规律。

只不过呢,机器学习可能会有点意见,认为解这道题有点大材小用。

咱们这样简化处理纯为方便理解,现实生活中可能有1000个影响因素,还拿妹子的微笑来说,真是你花钱就能买到的吗?可能你扶个老妹妹过马路,被妹子看到都会大方地给你个微笑。

二、模型的建立

2.1 线性回归

不管是简单版还是复杂版,类似这样的问题都属于机器学习的回归任务。回归就是要找到一条函数曲线,去近似模拟真实世界的规律。有关回归更详细的介绍参见:【深度解析】机器学习的"四大绝技"

这些已有的离散点越多,机器学习吃得越饱,模拟得也就越精确。找到了这条曲线,就可以用来预测未来下一个点会打在什么地方,或者某个条件下点会打在什么地方。

不过咱们要找的线不是什么复杂的曲线,而是一条直线,像这样的回归问题叫"线性回归"。

因为两点确定一条直线,显然,对于上面的散点图来说,不可能找到一条完美的直线,通过所有点。这很好理解,妹子的微笑不可能完全由一根直线决定,因此这些点是有噪声的。

我们要找的应该是类似下图的一条直线:

这个过程在数学中叫"拟合"。

2.2 回归模型

一次函数的表达式为y=kx+b,其中k是斜率、b是截距。

只要确定了斜率和截距,一次函数的图像形状也就确定了,因此我们要做的就求出k和b。

NO,NO,NO。

这里我们要来个画风突变。

在机器学习的世界里,我们要用统计学的风格来表达函数关系,将表达式写成下面的形式:
y = θ 0 + θ 1 x y=\theta_0 + \theta_1x y=θ0+θ1x
θ \theta θ读作"西塔(theta)",就是接下来我们要求的未知数(或者叫参数)。

为什么要搞个"西塔"出来,还要带下标呢?有两个原因:

(1)命名习惯。在统计学领域,常使用θ来表示未知数和推测值。

(2)队伍多了不好带。如果函数有很多项,那就会大量出现a、b、c、d...这样的符号,显得很混乱,就像一支军队个个都穿得花里胡哨的。此外,如果有1000项,集齐全世界的符号都不够用了,而用数字做下标就不存在问题了。所以,为了整齐划一、多带队伍,就得统一军装,并下发编号。

现在机器学习的理论模型就算搭建好了,接下来要做的就是不断地给机器喂x、y,让它求出 θ \theta θ的过程。

怎么计算呢?

计算机也不知道给多大的值合适,那就先随便给个随机值,比如设 θ 0 = 1 \theta_0=1 θ0=1、 θ 1 = 2 \theta_1=2 θ1=2,则表达式变为:
y = 1 + 2 x y=1 + 2x y=1+2x

然后开始喂数据,假设把x=2000代入表达式,则:
y = 1 + 2 x = 1 + 2 × 2000 = 4001 y=1 + 2x =1 + 2\times2000 =4001 y=1+2x=1+2×2000=4001

这差得也太远了吧,从图上看y的实际值也就应该20左右的样子。

计算值与实际值差别大,就说明刚才假设 θ 0 = 1 \theta_0=1 θ0=1、 θ 1 = 2 \theta_1=2 θ1=2是不正确的,这就需要调整 θ 0 \theta_0 θ0 、 θ 1 \theta_1 θ1的值,使计算值与实际值的差最小。

只使这一组数据的差值最小显然不行,应该使所有数据的差都尽量的小。

怎么办呢?聪明的你肯定能想到,那就对所有数据的差求和,只要这个和最小就可以了。

这就需要用到"最小二乘法",咱们以后再说。

:有关机器学习的其他文章
数据分析vs机器学习
离程序库越近,离真理越远
TensorFlow的简明介绍:机器学习界的谷大拿
机器学习与人工智能的关系
机器学习的爆发秘密
【深度解析】机器学习的"四大绝技"

相关推荐
玉木子13 分钟前
机器学习(七)决策树-分类
决策树·机器学习·分类
悠哉悠哉愿意44 分钟前
【数学建模学习笔记】机器学习分类:KNN分类
学习·机器学习·数学建模
ningmengjing_1 小时前
理解损失函数:机器学习的指南针与裁判
人工智能·深度学习·机器学习
nju_spy1 小时前
Kaggle - LLM Science Exam 大模型做科学选择题
人工智能·机器学习·大模型·rag·南京大学·gpu分布计算·wikipedia 维基百科
中國龍在廣州2 小时前
GPT-5冷酷操盘,游戏狼人杀一战封神!七大LLM狂飙演技,人类玩家看完沉默
人工智能·gpt·深度学习·机器学习·计算机视觉·机器人
THMAIL2 小时前
深度学习从入门到精通 - 神经网络核心原理:从生物神经元到数学模型蜕变
人工智能·python·深度学习·神经网络·算法·机器学习·逻辑回归
非门由也3 小时前
《sklearn机器学习——多标签排序指标》
人工智能·机器学习·sklearn
XZSSWJS3 小时前
机器学习基础-day06-TensorFlow线性回归
人工智能·机器学习·tensorflow
Wilber的技术分享3 小时前
【大模型实战笔记 1】Prompt-Tuning方法
人工智能·笔记·机器学习·大模型·llm·prompt
博大世界4 小时前
解剖智驾“大脑”:一文读懂自动驾驶系统软件架构
人工智能·机器学习·自动驾驶