机器学习入门:线性回归与特征向量详解
机器学习入门:线性回归与特征向量详解
本文主要介绍机器学习中的线性回归概念,包括简单回归和多元回归,并通过多个实际例子帮助读者理解这些概念。
一、简单回归
简单回归是线性回归的一种最基本形式,它用于研究一个自变量(输入)与一个因变量(输出)之间的线性关系。其数学表达形式为:
$$
y = wx + b
$$
其中:
- $y$:因变量(输出),即我们要预测的目标值
- $x$:自变量(输入),即影响因变量的已知因素
- $w$(权重/斜率):表示自变量对因变量的影响程度
- $b$(偏置/截距):表示当 $x = 0$ 时,$y$ 的取值
通俗举例 1:通过身高预测体重
假设我们想要建立一个简单的模型,根据一个人的身高来预测体重,我们有以下数据:
身高(cm) | 体重(kg) |
---|---|
150 | 50 |
160 | 60 |
170 | 70 |
180 | 80 |
建模思路:
- 设身高 $x$,体重 $y$,假设两者之间有一个线性关系 $y=wx+b$。
- 通过拟合这些数据,模型可能会得到类似的方程: 体重$=0.5×$身高$-25$, 在这里:
- $w=0.5$(表示每增加 1 cm 身高,体重约增加 0.5 kg)
- $b=-25$(表示身高为 0 时的理论体重,但在实际场景中无意义,仅为模型参数)
预测:
如果一个人的身高是 175 cm,则模型预测体重为:
$$
y = 0.5×175 - 25 = 62.5 \text{kg}
$$
通俗举例 2:学习时间与考试分数
假设我们想要研究学习时间(小时)对考试分数的影响,收集了一些数据:
学习时间(小时) | 考试分数(分) |
---|---|
1 | 50 |
2 | 55 |
3 | 65 |
4 | 70 |
建模思路:
我们尝试建立一个简单回归模型来预测分数:
$$
考试分数 = 10×学习时间 + 45
$$
在这里:
- 斜率 $w=10$(表示每增加 1 小时学习时间,分数提高 10 分)
- 截距 $b=45$(表示即使不学习,可能的最低分数是 45 分)
预测:
如果某人学习 5 小时,预测的考试分数为:
$$
10×5+45=95
$$
简单回归的特点
- 只涉及一个自变量(单输入)
- 假设变量之间是线性关系(如果关系复杂,可能需要更高级的回归方法)
- 易于解释和计算(适合初学者理解和使用)
简单回归的应用场景
- 通过温度预测冰淇淋销量
- 通过广告支出预测销售额
- 通过年龄预测血压
二、多元回归
什么是多元回归?
多元回归(Multiple Linear Regression, MLR)是线性回归的一种扩展,它用于研究多个自变量(输入)与一个因变量(输出)之间的关系。简单来说,它是一种能同时考虑多个影响因素的回归模型。
多元回归的数学公式:
其中:
- $y$:因变量(输出)
- $x_1,x_2,...,x_n$:自变量(输入特征)
- $w_1,w_2,...,w_n$:各特征的权重(回归系数),衡量每个特征对结果的影响程度
- $b$:偏置项(截距),表示所有输入特征为 0 时的输出值
通俗举例 1:房价预测
假设我们想要预测一套房子的价格,影响房价的因素有:
面积(㎡) | 房龄(年) | 离市中心距离(km) | 价格(万元) |
---|---|---|---|
100 | 5 | 3 | 200 |
120 | 10 | 5 | 180 |
80 | 2 | 2 | 220 |
150 | 15 | 10 | 150 |
在这里,我们可以建立一个多元回归模型:
通俗举例 2:学生考试成绩预测
假设某个学生的考试成绩可能受到上课时长、作业完成情况、睡眠时间等因素的影响,我们收集到以下数据:
上课时长(小时) | 作业完成率(%) | 睡眠时间(小时) | 考试成绩(分) |
---|---|---|---|
10 | 90 | 8 | 85 |
8 | 70 | 6 | 70 |
12 | 95 | 9 | 90 |
6 | 50 | 5 | 60 |
建立回归模型:
多元回归的特点
- 同时考虑多个因素,适合更复杂的现实场景
- 线性关系假设,适用于数据中存在一定的线性相关性
- 解释性强,可以分析每个变量对结果的贡献
多元回归的应用场景
- 市场营销:影响销售额的因素可能包括广告投放、产品价格、品牌影响力等
- 医学研究:预测患者的疾病风险,考虑年龄、体重、血压、运动习惯等
- 商业分析:评估员工绩效,考虑工作时长、项目数量、经验等
三、特征向量
如何简单理解特征向量?
通俗来说,特征向量(Feature Vector)就是用一组数字来描述一个对象的“特征”。在机器学习中,我们用特征向量来表示数据,使得计算机能够处理和学习这些数据的模式。
简单例子 1:水果分类
假设你要训练一个模型来识别不同的水果,比如苹果、橘子、香蕉。我们可以用以下特征来描述水果:
- 重量(克)
- 颜色(红色=1,橙色=2,黄色=3)
- 大小(直径 cm)
如果你拿到一个水果,它的特征如下:
- 重量:150 克
- 颜色:1(红色,代表苹果)
- 大小:8 cm
那么,这个水果可以表示成一个特征向量:
$$
[150,1,8]
$$
同样,橘子和香蕉的特征可能分别是:
- [120,2,7](橘子)
- [130,3,9](香蕉)
这些特征向量可以作为机器学习模型的输入,让模型学习如何区分不同的水果。
简单例子 2:学生成绩分析
假设你想分析学生的表现,考虑以下特征:
- 上课时长(小时)
- 作业完成率(%)
- 考试成绩(分)
学生 A:
- [10, 90, 85]
学生 B:
- [8,70,78]
这些数据可以组成特征向量,让我们对学生的学习情况进行分析和预测。
特征向量的特点
- 数值化:将现实世界的特征转换为计算机可处理的数值形式。
- 多维度:可以同时包含多个属性,描述一个对象的多个方面。
- 通用性:适用于分类、回归、聚类等各种机器学习任务。
总结
特征向量就是用一组数字来表示事物的特征,它帮助计算机更好地理解和分析数据。你可以把它想象成一个“数据快照”,每个维度(数值)代表事物的一个属性。