
摘要
正则流(Normalising Flows, NFS)通过一个可微双射将两个密度函数进行映射,其雅可比行列式的计算可以高效完成。最近,作为手工设计双射的一种替代方案,Huang等人(2018年)提出了神经自回归流(Neural Autoregressive Flow, NAF),这是一种用于密度函数的通用近似器。他们的流是一个神经网络(NN),其参数由另一个神经网络预测。后者随着前者规模的增大而呈二次增长,因此需要一种高效的参数化技术。我们提出了一种更为紧凑的密度函数通用近似器——块神经自回归流(Block Neural Autoregressive Flow, B-NAF),其中我们直接使用单个前馈网络来建模双射。通过精心设计每个仿射变换中的块矩阵,确保了该流的自回归性和(严格)单调性。我们在密度估计和潜在变量模型的近似推理方面将B-NAF与其他已建立的流进行了比较。实验结果表明,我们的方法在多个数据集上具有竞争力,同时使用的参数数量减少了几个数量级。
代码仓库
Naagar/Glow_NormalizingFlow_implimentation
pytorch
GitHub 中提及
nicola-decao/BNAF
官方
pytorch
GitHub 中提及
sshish/NF
pytorch
GitHub 中提及
metachenyiyan/BreezeForest
pytorch
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| density-estimation-on-bsds300 | B-NAF | Log-likelihood: 157.36 |
| density-estimation-on-caltech-101 | B-NAF | NLL: 105.42 Negative ELBO: 94.91 |
| density-estimation-on-freyfaces | B-NAF | NLL: 4.42 Negative ELBO: 4.33 |
| density-estimation-on-omniglot | B-NAF | NLL: 100.08 Negative ELBO: 94.83 |
| density-estimation-on-uci-gas | B-NAF | Log-likelihood: 12.06 |
| density-estimation-on-uci-hepmass | B-NAF | Log-likelihood: -14.71 |
| density-estimation-on-uci-miniboone | B-NAF | Log-likelihood: -8.95 |
| density-estimation-on-uci-power | B-NAF | Log-likelihood: 0.61 |