对数据分布进行约束

写这一篇博客,并不是想要系统的讲解深度学习中所使用到的与概率论相关的知识,只是近期在阅读一些论文时,频繁地遇到了与此相关的知识点。我上网查了相关资料,总结出此文。

1 supervised learning

对于 supervised learning,分布指的是关于特征 \(X\) 和结果 \(Y\) 的联合分布 \(F(X,Y)\) 或条件分布 \(F(Y|X)\)

训练集和测试集如果服从同一个分布,指的是训练集和测试集都是由服从同一分布的随机样本组成的。即:

\[(X_{train}, Y_{train}),(X_{test}, Y_{test}) \ \ i.i.d \ \ \text{~} F(X,Y) \]

2 unsupervised learning

对于 unsupervised learning,分布指的是特征 \(X\) 的分布 \(F(X)\),即:

\[X_{train}, X_{test} \ \ i.i.d \text{~} \ \ F(X) \]

3 分布约束

  • KL散度(Kullback-Leibler divergence):

    两个几率分布P和Q差别非对称性的度量。 KL散度是用来度量使用基于Q的分布来编码服从P的分布的样本所需的额外的平均比特数。典型情况下,P表示数据的真实分布Q表示数据的理论分布、估计的模型分布、或P的近似分布。

  • 离散型随机变量:

    对于离散随机变量,其几率分布PQ的KL散度可按下式定义为

    \[D_{KL}(P||Q) = -\sum_{i} P(i)\ln \frac{Q(i)}{P(i)} \]

    等价于

    \[D_{KL}(P||Q) = \sum_{i} P(i) \ln \frac{P(i)}{Q(i)} \]

    在深度学习中更多使用离散型随机变量 KL 散度。

  • 分布约束

    我们可以对原数据求其真实分布\(P\), 并且根据 \(P\) 计算其满足某一个先验分布 \(Q\),然后计算 \(P\)\(Q\) 的差异(可以通过 KL 散度等方法)约束 \(P\)\(Q\) 尽可能相似。

posted @ 2021-08-08 13:37  popozyl  阅读(437)  评论(0编辑  收藏  举报