如何理解机器学习

系列文章见: 《回忆AI时代-从图灵机到Agent》

什么是机器学习

机器学习(Machine Learning, ML)本质就是让计算机“通过数据自己学规律”,而不是人手写规则。

举个例子:如下房价面积表格,人一眼就能看出来这里的规律是面积 * 2 = 房价,机器学习的目标就是,不告诉机器公式,让它自己从数据中学出来。

面积(㎡) 房价(万)
50 100
60 120
70 140
80 160

用一个Python程序来举例学习房价表格的规律:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 # 训练数据
x = [50, 60, 70, 80]
y = [100, 120, 140, 160]

# 机器随机猜一个参数
w = 1.0

# 学习率
lr = 0.0001

# 训练10000次
for epoch in range(10000):

grad = 0

# 计算梯度
for xi, yi in zip(x, y):
pred = w * xi
grad += (pred - yi) * xi

# 更新参数
w = w - lr * grad

print("学到的参数:", w)

# 预测
area = 90
price = w * area

print("90平米预测房价:", price)

运行结果大概:

1
2
学到的参数: 2.0
90平米预测房价: 180

程序运行逻辑:

1
2
3
4
5
6
7


算错多少

调整

再猜

譬如:

1
w = 1

于是

1
2
50㎡ -> 50万
60㎡ -> 60万

然后计算误差:

1
2
3
4
真实值: 100
预测值: 50

误差 = 50

根据误差调整参数:

1
w = w - lr * grad

最终 w=2,和我们人算出来的一样,这就是机器学习,用一句话解释它规则 + 数据 = 结果

机器学习三大类型

  • 监督学习:有标准答案的。
  • 无监督学习:没有标准答案。
  • 强化学习:通过奖励和惩罚学习。
  1. 监督学习(Supervised Learning)
    有标准答案。
1
2
3
图片 → 猫
图片 → 狗
图片 → 猫

学习后:

1
新图片 → 猫

应用场景:

  • 垃圾邮件识别
  • 房价预测
  • 图像分类
  1. 无监督学习(Unsupervised Learning)
    没有彼岸准答案,自己找规律,譬如:
1
2
3
4
用户A
用户B
用户C
...

自动分类:

1
2
3
年轻用户
中年用户
老年用户

应用场景:

  • 用户画像
  • 聚类分析
  • 异常检测
  1. 强化学习(Reinforcement Learning)
    通过奖励和惩罚学习,如下棋:
1
2
3
4
走一步

赢了 +1
输了 -1

经过几百万局,学会最佳策略。应用场景:

  • AlphaGo
  • 游戏AI
  • 机器人控制