zoukankan      html  css  js  c++  java
  • CONTRASTIVE REPRESENTATION DISTILLATION

    Tian Y., Krishnan D., Isola P. CONTRASTIVE REPRESENTATION DISTILLATION. arXiv preprint arXiv 1910.10699, 2019.

    感觉其和的相似度有50%, 不过这篇写得早一点, 所以后者是借鉴了这篇文章? 这篇文章总的来说就是将distillation 和 contrastive learning 结合起来.

    主要内容

    在这里插入图片描述

    思想便是, 希望(f^S(x_i))靠近(f^T(x_i)), 而(f^S(x_j))远离(f^T(x_i)). 定义

    [S:=f^S(x), quad T:= f^T(x). ]

    假设源于同一样本的联合分布(P(S,T|C=1))(P_1(S,T)), 而源于不同样本的联合分布(P(S,T|C=0))(P_0(S)P_0(T)). 则我们很自然地希望最大化互信息:

    [I(S,T)= mathbb{E}_{P_1(S,T)} log frac{P_1(S,T)}{P_0(S)P_0(T)}. ]

    接下来就是负采样和对比学习的东西了, 假设数据集是如此构造的: 一个特征(T), 以及N+1个特征({S,S_1,ldots, S_N}), 其中(S,T)构成正样本对(即来源于同一个样本, 其余(S_i,T)构成负样本对. 则我们有先验

    [P(C=1)=frac{1}{N+1}, P(C=0)=frac{N}{N+1}. ]

    于是便有

    [P(C=1|T,S)=frac{P_1(T,S)}{P_1(T,S)+NP_0(T)P_0(S)}, ]

    [egin{array}{ll} log P(C=1|T,S) &= -log (1+Nfrac{P_0(T)P_0(S)}{P_1(T,S)}) \ & le -log N + log frac{P_1(T,S)}{P_0(T)P_0(S)}. end{array} ]

    两边关于(P_1(T,S))求期望可知

    [I(T,S) ge log N + mathbb{E}_{P_1(T, S)} log P(C=1|T,S). ]

    但是(P(C=1|T,S))未知, 故作者采用(h(T,S))去拟合, 通过极大似然估计

    [mathcal{L}_{critic}(h)= mathbb{E}_{P_1(T,S)} log h(T,S) + N mathbb{E}_{P_0(T,S)}log (1-h(T,S)). ]

    只要(h)的拟合能力够强, 最后便能很好的逼近(P(C=1|T,S)). 设其最优解为(h^*). 但是需要注意的一点是, (h^*)(T, S)有关系, 则其隐式地和(f^S)有关系, 而(f^S)又需要

    [max_{f^S} mathbb{E}_{P_1} log h^*(T,S), ]

    所以这就成了一个交替迭代的过程. 作者就另辟蹊径, 既然

    [egin{array}{ll} I(T,S) &ge log N + mathbb{E}_{P_1(T,S)} log h^*(T,S) + N mathbb{E}_{P_0(T,S)}log (1-h^*(T,S)) \ & ge log N + mathbb{E}_{P_1(T,S)} log h(T,S) + N mathbb{E}_{P_0(T,S)}log (1-h(T,S)). end{array} ]

    便不妨共同优化(f^S, h).

    注: 第二个不等式成立, 因为(h(T,S) in [0, 1]), 故第二项非正.

    文中取的(h)

    [h(T,S)=frac{e^{g^T(T)'g^S(S)/ au}}{e^{g^T(T)'g^S(S)/ au} + frac{N}{M}}, ]

    其中, (g)为一线性变换, ( au)为temperature, (M)为整个数据集的大小.

    超参数的选择

    CIFAR100:
    N: 16384
    ( au): 0.1

    代码

    原文代码

  • 相关阅读:
    SGU 271 Book Pile (双端队列)
    POJ 3110 Jenny's First Exam (贪心)
    HDU 4310 Hero (贪心)
    ZOJ 2132 The Most Frequent Number (贪心)
    POJ 3388 Japanese Puzzle (二分)
    UVaLive 4628 Jack's socks (贪心)
    POJ 2433 Landscaping (贪心)
    CodeForces 946D Timetable (DP)
    Android Studio教程从入门到精通
    Android Tips – 填坑手册
  • 原文地址:https://www.cnblogs.com/MTandHJ/p/13795190.html
Copyright © 2011-2022 走看看