What:
auto encoder的升级版
显式的 最大化当投影到同一空间时views之间的联系 (这里的view指的是图像,声音这种不同的输入源)
比如视频分类任务中就想把声音结合进去。
Formally Define这个任务是:
我们有一组数据Z,每个Z是由特征X,和特征Y concat起来的 (比如X来自视频的图像,Y来自视频的音频)
1.首先 h1(X) 和 h2(Y) 应该是高度相关的 这里h1(),h2()为在同一个空间中投影的函数 (可以理解为提了相同长度的特征)
2. 同时可以从 X重构Y,反之依然 (打个比方,无声电影配声,从声音猜电影)
网络模型:
模型看上去比较简单= = 像auto encoder
Z输入 中间压缩一下成 h(Z) 然后再还原出 Z’
h()是隐层的函数的缩写。
训练过程中:
优化目标:1.最小化 xi 重构 xi , yi 重构 yi的error (这个称为self-reconstruction)
2.最小化 xi 重构 yi , yi重构xi 的error (这个称为 cross-reconstruction)
3.最大化 h1(xi)和 h2(yi)的联系 (这里两个特征维数是相同的,虽然xi和yi不同)
所以构造了目标函数
L为重构error,是平方loss。
从公式可以看出,corr这一项类似cos距离。
其中h(xi) 是指代 h(xi,0)
其中h(yi) 是指代 h(0,yi)
多余的数据:
有时候会碰到 X view的数据比Y 多的情况,我们仍可以利用这个X数据来计算self重构loss。(不浪费,不蒸发)
实验:
使用标准MNIST
60,000 train 10,000 test 28*28
他们使用图片的左一半和右一半分别作为view 那么都是 14*28=392 维的
第二列是MAE 第三列是本篇的方法 left2right的accuracy比其他方法都高。
之后作者还测了 core loss
显示出 corrnet弄出来的multi view特征,关联度高。