【李宏毅2020 ML/DL】补充:Meta Learning - Metric-based Approach & Train+Test as RNN
我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的、自己不知道的东西。
本次笔记补充视频 BV1JE411g7XF 的缺失部分。在油管李老师主页即可找到。本节内容 35 分钟左右。
本节内容综述
- 由 Face Verification 是一个 few-shot 人物。因为我们只采样很少的数据,一张人脸。我们希望,一个网络能够吃两个图片,判断是不是一个类别。
- 直观地解释 Siamese Network 。
- 如果不是一个单纯回答 YES/NO 的问题怎么做呢?见 N-way Few / One-shot Learning 。
- 之后是最后一部分,Train+Test as RNN。
文章目录
小细节
Face Verification
如上,我们希望,一个网络能够吃两个图片,判断是不是一个类别。
训练的是其分辨的能力,而非单纯地识别数据。
Siamese Network
这个网络的架构可以如上。
Siamese 是“孪生”的意思。
Siamese Network: Intuitive Explanation
如上,孪生网络可以看作二分类问题。
我们希望通过 CNN ,投影到特征空间中,把相同的人投影到相近的地方。
To learn more …
如上,还有其他方法,李老师不详细解释了。
N-way Few / One-shot Learning
如上,输入六个对象:五个是不同类的,网络要判断,第六个是哪一类。
Prototypical Network
如上,用被比对的数据分别与类别比较相似度。
Matching Network
与 Prototypical Network 类似,但是 Matching Network 认为类别可能有关系。因此一起处理类别的图片。
此外,Matching Network 使用了 Multiple hop 。
Relation Network
思想也与上面的方法类似,只不过,Relation Network 先抽出 embedding ,然后都与被比对数据 concat ,再输入新网络,用网络计算相似度。
Few-shot Learning for Imaginary
如上,对于人来说,看到三玖的脸,就可以想象其各种情绪的样子。
因此,我们在机器学习中,也训练一个 Generator ,用于生成数据。
Train+Test as RNN
如上,我们有种更疯狂的想法:把训练集与测试集放入神经网络,其自己分辨;并且,不用特意设计网络结构。
LSTM
如上,RNN这种结构其实可以解决这种问题。每一个类别用 one-hot 来表示。但是很难训练起来。因此提出 MANN 与 SNAIL 。
SNAIL
这个 RNN 里面有 Attention 。
其结果看起来蛮厉害的。