什么是Covariate Shift
- 在普通的深度学习或机器学习任务中,宏观上讲,Covariate Shift是指模型的输入数据和测试数据来自不同的分布;微观上讲,Covariate Shift是指,每次迭代模型都会经过反向传播调整参数,这样就使得每次迭代,神经网络各个层的输出数据分布都是变化的,这就导致神经网络参数要进行相应的调整从而拟合新的数据分布,疲于奔命。这又被称为Internal Covariate Shift。
- 在迁移学习中,Covariate Shift的情况下,源域和目标域的边缘概率分布是不同的,而条件概率分布是相同的,即 P s ( x ) ! = P t ( x ) P_s(x)!=P_t(x) Ps(x)!=Pt(x), P s ( x ∣ y ) = P t ( x ∣ y ) P_s(x|y)=P_t(x|y) Ps(x∣y)=Pt(x∣y)。
例子
- 这里有两篇博客帮助理解:
https://zhuanlan.zhihu.com/p/26352087
https://blog.csdn.net/mao_xiao_feng/article/details/54317852