C. 人工智能 — 迁移学习 - 终身学习
概述
- 别称
- Continuous Learning
- Never Ending Learning
- Incremental Learning
- 难点
- Knowledge Retention,but NOT Intransigence
- Knowledge Transfer
- Model Expansion,but Parameter Efficiency
- 其他
- 多任务学习,是终身学习的上限。LLL 的目标,是逼近多任务学习的效果
Knowledge Retention
- 相同网络结构,参数调整
- Elastic Weight Consolidation(EWC)
- 核心思想
- 通过正则化的方式,保留重要参数,只调整不重要的参数
- Guard的计算方法
- 例如:通过二次微分,查看对应参数所处的位置1. 平坦的地方,影响较小2. 在波谷,影响大
- 核心思想
- Gradient Episodic Memory(GEM)
- 特点
- 需要保存历史任务的少量资料
- 结合历史人物的梯度优化方向,和当前任务的梯度优化方向,取一个平衡点
- 特点
- Synaptic Intelligence(SI)
- Memory Aware Synapses(MAS)
- Elastic Weight Consolidation(EWC)
- multi-task
- 需要训练生成历史数据的模型
- 训练任务和测试任务的类别不一样(需要修改网络结构)
- Learning without forgetting(LwF)
- iCaRL:Incremental Classifier and Representation Learning
Knowledge Transfer
- 与Transfer Learning的区别
- Knowledge Transfer:需要关注task1的效果
- Transfer Learning:不需要关注task1的效果
Model Expansion
- 问题
- 任务太多,模型已经达到饱和状态
- 目标
- 算法
- Progressive Neural Networks
- Expert Gate
- 先对任务分类
- 把跟历史任务最相近的任务对应的模型,作为新任务的初始模型
- Net2Net
- 旧的Net,对Neural 进行分裂
- 添加 噪音
- PackNet
- 优先创建一个大的网络,每个任务,只使用一部分参数
- Compacting,Picking,and Growing(CPG)
任务排序
- 问题
- 学习任务的顺序,可能会影响到模型最终的效果
- 算法
扩展
- 论文:Three scenarios for continual learning
- task-incremental learning (Task-IL):有明确的任务定义(抽头网络)。(每个任务单独测试,观察指标变化,最后的指标是那个 numpy 矩阵)
- domain-incremental learning (Domain-IL):没有明确的任务 identifier,测试时需要同时解决所有 environments。(所有遇见过的任务放在一起进行测试,整体指标的变化,最后的指标是单独一个值在变化)
- class-incremental learning (Class-IL):测试时没有 task identifier,而且需要模型进行 infer 现在是哪个 task。