机器学习的 Learning theory 学习理论综述
Learning Theory and Advanced Machine Learning
先放一张课程大纲的图,各种 learning 方法,大概纠葛缠绕成这个样子:
![e6ba3561da4b12dde0426a5e91e77b77.webp](https://filescdn.proginn.com/a86e8eb437608ec260c6502c3863fdad/e6ba3561da4b12dde0426a5e91e77b77.webp)
1.
Introduction
所谓的 learning,一句话说就是关于从有限的数据中推断预测和规律。那么,
- 我们希望得到什么样的保证?
- 我们如何获得它们?
另外,学习可能意味着多个学习 agents,如集成学习:
- 他们之间应该交流什么信息?
在 stationary 环境的情况下,有一个完善的理论称为“ learning 的统计理论”。
但 learning 也可能意味着几个连续的学习任务,如:
- domain adaptation (领域适应)
- transfer learning (迁移学习)
- online learning (在线学习)。
也叫做 Out-Of-Distribution learning。而这也就引申出了一些问题,比如:
- 当训练数据和测试数据之间的环境发生变化时,可以做什么?
- 同样,上下文之间应该传达什么?
The statistical theory of learning(学习的统计理论)
介绍一下机器学习里最基本的概念。
- 预测错误的 cost。
- 也就是 loss function(损失函数)。
- 如果我选择 h,expected cost (期望风险)是多少?
- real risk (或者叫作 true risk)
![64e11c1149c3719efbd15401b141e380.webp](https://filescdn.proginn.com/8d9f1b0526babd0dbff6ea096c02905b/64e11c1149c3719efbd15401b141e380.webp)
- 另外还有一个概念是:empirical risk(经验风险)
![2f49989b6409c1d988638d5a4f063cf9.webp](https://filescdn.proginn.com/6d1ab7b6a3c2de5b81d1b65f66907594/2f49989b6409c1d988638d5a4f063cf9.webp)
ERM (Empirical risk minimization)经验风险最小化
学习策略:
– 选择具有零经验风险的假设(无训练误差)
– 期望 h 的泛化性能如何?
– 出现错误 R(h) > ε 的风险是什么?
![5306dd6ea4f08423409998cca92f2b35.webp](https://filescdn.proginn.com/aceda6faf876cb9d328d0eaeb005b918/5306dd6ea4f08423409998cca92f2b35.webp)
PAC learning(Probably Approximatively Correct)概率近似正确学习
概念
PAC 学习是机器学习的理论框架,它为学习算法的准确性和置信度提供数学保证。
它的目标是找到一个具有高概率“可能近似正确”的假设(模型或预测规则),这意味着该假设将以高置信度接近真实函数。该理论提供了一种评估学习算法的样本复杂度和计算复杂度的方法,使其成为设计和分析机器学习算法的有用工具。
Learning 最后就变成了:
- 假设空间(hypothesis space) H 的选择
– 受必要性的限制
- 归纳准则 (inductive criterion) 的选择
– 经验风险必须被 regularized
- 为了最小化正则化经验风险的 H 探索策略 (exploration strategy)
– 必须高效:
• 快速地
• 如果可能,只有一个最优解(例如凸问题)
2.
Semi-supervised learning (半监督学习)
半监督学习其实是有监督学习和无监督学习的结合。它利用一小部分标记数据和大量未标记数据训练,模型必须从这些数据中学习并对新数据进行预测。
General principle
– 决策函数不穿过 X 的高密度区域
– 例如 SVM 算法
给个图比较好理解:
![9e6a07ca825e20413d5c03221c7ea69a.webp](https://filescdn.proginn.com/6259593812de7ea5552140d644a29fd0/9e6a07ca825e20413d5c03221c7ea69a.webp)
半监督学习:如何在理论上接近它?
unlabeled 数据提供帮助的能力取决于两个量:
- 目标函数确实满足给定假设的程度:即决策函数不切割高密度区域。
- 该分布允许这个假设排除替代假设的程度:即无监督训练样本有助于限制可能的决策函数。
(The extent to which the distribution allows this assumption to rule out alternative hypotheses)
其它 learning scenarios
- Transductive learning (转导式学习)
- Weakly supervised learning (弱监督学习)
- The Multi-Instance problem (多实例问题)
- Analogical induction (类比归纳法)
Transductive learning (转导式学习)
它和半监督学习的区别在于:
– 半监督学习在输入空间 X 上寻求一般假设(decision rule)
– Transductive learning 试图仅对测试点(问题)进行预测。
所以,我提前知道我会在哪里被 queried:
![4582b9671169ffe37e7577294a099155.webp](https://filescdn.proginn.com/4ce2ab018c1dc24b233c38daaffd47a0/4582b9671169ffe37e7577294a099155.webp)
放一点人生哲学:
“在解决感兴趣的问题时,不要将解决更一般的问题作为中间步骤。
尝试获得你真正需要的答案,而不是更笼统的答案。”
——(Vapnik, 1995)
3.
LUPI Framework(Learning Using Privileged Information 基于特权信息的学习方法)
这个方法是受 learning at school 的启发
- 目标是学习一个函数
- 假设学习时比测试时有更多的可用信息
- 那么我们能否提高泛化性能
在计算机视觉中,我们用下面这个图来解释:
![280f1d6ce544d5f915c181a1b5460c15.webp](https://filescdn.proginn.com/75847461cf1910f324b91edf2afd0ce8/280f1d6ce544d5f915c181a1b5460c15.webp)
- 核心在于特权信息允许我们区分简单和困难的例子训练集。
- 假设相对于特权信息容易/困难的 example 对于原始数据也将是容易/困难的,我们使信息从特权信息传输到原始数据模态。
- 更具体地说,我们首先定义并确定哪些样本很容易并且对于分类任务来说很难,并结合将特权信息放入编码容易/困难的样本权重中。”(更重视简单的例子)
real risk 和 empirical risk 的界限
![42a7235974a6f9cc1abf4cb9ca3b2cbe.webp](https://filescdn.proginn.com/d0ade91333ffdbcdbf2c82fc23196c3a/42a7235974a6f9cc1abf4cb9ca3b2cbe.webp)
一个解决方法是 SVM+
经典的优化问题是这样的:
![9039d110be5f0d39d9ba5141464e4e27.webp](https://filescdn.proginn.com/6323d643feccff939d724391a27404b8/9039d110be5f0d39d9ba5141464e4e27.webp)
然后我们可以变成:
![2b91e1826b3e21941fbbc8fa8fe8949d.webp](https://filescdn.proginn.com/eaee834803990cf5a7ce74e8885a4b31/2b91e1826b3e21941fbbc8fa8fe8949d.webp)
Intuition:
- 找出比较难分类的数据点(outliers)
- 因此回到 realizable case 并获得 而不是 的收敛率
Early Classification of Time Series(早期时间序列分类)
标准的时间序列分类:
下图中新时间序列 的类别是什么?
![6713a580035993d51c02cdc82f72c58b.webp](https://filescdn.proginn.com/dbb9687e9e28fe3b785d3f85ac3e99a6/6713a580035993d51c02cdc82f72c58b.webp)
早期时间序列分类
下图中新的不完整时间序列 的类别是什么?
![c6a7daee84b5af6ba4e2acd68575029b.webp](https://filescdn.proginn.com/d3986b0dfc7a39b5527ea93b789364df/c6a7daee84b5af6ba4e2acd68575029b.webp)
这里,我们就可以用 LUPI framework 了,但是不完全一样,因为我们不需要检查数据点是简单还是困难。
新决策问题:Early Classification
-
数据流
-
分类任务
-
越早越好
-
trade-off
-
- 分类效果
- 延迟预测的 cost
在线决策问题
• 可以选择在每个时间点推迟
– 如果预期的未来表现能够克服延迟决策的成本。
比如说,我们有一个输入序列:
然后,我们有:
-
错误分类的 cost 函数:
-
delaying decision 的 cost 函数:
那么,做出决定的最佳时间是什么呢?
![7c99582e73f14bb89235c17ce7e5017b.webp](https://filescdn.proginn.com/f5e653e3b226397d4f081f6ec577b239/7c99582e73f14bb89235c17ce7e5017b.webp)
Optimal time 就是:
Early classification 和 LUPI
那么要怎么 take advantage of 这两个东西呢呢?
- 未来可能序列的信息
- 学习所有时间步长的分类器的可能性
原理
-
Training:
识别训练集中有意义的时间序列子集:
对于这些子集 中的每一个,以及对于每个时间步长 ,估计混淆矩阵:
-
Testing: 对于任何新的不完整输入序列
确定最可能的子集:更接近 的形状
计算所有未来时间步的预期决策成本
![8dd0d69fe84a87ef9f88cb3b0243d7fd.webp](https://filescdn.proginn.com/4cc2ce0c12a85d1630bf6ee0f7e35b02/8dd0d69fe84a87ef9f88cb3b0243d7fd.webp)
Out Of Distribution (OOD) learning (分布外学习)
先说一点背景:
- 世界为大脑提供了时间结构化的输入流,这些输入流不是独立的,也不是同分布的
- 生物体面对连续的任务并且它们能够完成持续学习
- 在学习任务 A 之后学习任务 B 可能会产生积极或消极的干扰:迁移学习
OOD learning 就是使用来自源域 (source domain) 的知识改进目标域 (target domain) 中的目标预测函数。
解释一些概念:
-
源域和目标域可以相同,但具有不同的概率分布:“Domain Adaptation”
Covariate shift:表示的就是同样的决策函数 , 但是不同的分布 .
-
Concept Drift (概念漂移):决策函数 不同
-
或者它们可以来自不同的域,也就是 Transfer Learning (迁移学习) 了。
-
Non-stationary 环境:
-
Co-variate shift(协变量偏移):
– Virtual drift (虚拟漂移)
– Non i.i.d.
比如说, moving robot
-
Change of concept(概念改变):
– Concept drift(概念漂移)
– Non i.i.d. + non stationary
比如说,消费者的 expectations,
介绍几种不同的 transfer(迁移):
![d9cd138542b8786d778394c49bde176e.webp](https://filescdn.proginn.com/595ba78017abecff37241889130fae1c/d9cd138542b8786d778394c49bde176e.webp)
• 领域适应
和
– 但不同的分布
• 概念转变
和
– 但不同的分布
• 迁移学习
和/或
Hypothesis Transfer Learning
-
Target domain:
- 训练集:
- Distribution:
-
Source domain:
– Source hypothesis
我们想找的是:
Hypothesis Transfer Learning Algorithm:
![eb6f6bb0092a7865ba66009d4cc5eb29.webp](https://filescdn.proginn.com/823717d17991b15457835d794d88a138/eb6f6bb0092a7865ba66009d4cc5eb29.webp)
Covariate shift
先举几个例子:
-
垃圾邮件过滤
– 不是同一个用户: 可能不同
- 例如,对我来说,conference 公告很重要,但可能会打扰到其他人。
-
消费者口味或期望的变化
-
药物的变化
– 例如 COVID 变体的严重程度不同
所以,对于 Covariate shift,不再是经验风险和实际风险之间的“直接”联系。
输入分布会发生改变:
funtional relation 不发生改变:
![5096c51bf77bc99d9b00116dba87321d.webp](https://filescdn.proginn.com/642e11e09fa2184e5ac8a914ba2cbb6f/5096c51bf77bc99d9b00116dba87321d.webp)
Distillation(蒸馏)
Motivation(动机):
-
我们想在计算受限的设备(例如智能手机)上部署分类器 (NN)
– 不能使用深度神经网络
-
学习任务困难,需要大数据集和复杂的学习方法(例如深度神经网络)
那么问题来了:
我们可以使用学习到的深度神经网络作为老师来帮助学生(即受限设备)学习更简单的分类器吗?
一种很复杂的 learning 技术——GoogLeNet:
![83d96ed521ab1f7b1d27fac8b7b2c2e3.webp](https://filescdn.proginn.com/f7eaa089f9d4d19ae6e7e98505c8db4e/83d96ed521ab1f7b1d27fac8b7b2c2e3.webp)
Catastrophic forgetting
Pivot feature
Structural Correspondence Learning
4.
Transfer learning (迁移学习)
-
domain 变更
– 例如:在不同的环境中识别相同的对象
-
task 变更
– 例如:学会下国际象棋后又学下象棋
下面是 domain adaptation(领域适应) 的例子
![8cac5f2b03e83db91c26667aa918ed7a.webp](https://filescdn.proginn.com/156ddb3debd01ea703ad1e509d1b3388/8cac5f2b03e83db91c26667aa918ed7a.webp)
其实上面说的 OOD Leaning 和 Curriculum Learning 都算是迁移学习的一种。
Reference
知乎链接: https://zhuanlan.zhihu.com/p/604599762
https://machinelearningmastery.com/what-is-semi-supervised-learning