贝叶斯神经网络(5)- 图像处理bayes-CNN

时间:2024-03-31 07:45:32

本文内容主要总结自coursera课程Bayesian Methods for Machine Learning

一、无偏估计

百度:无偏估计是用样本统计量来估计总体参数时的一种无偏推断。估计量的数学期望等于被估计参数的真实值,则称此此估计量为被估计参数的无偏估计,即具有无偏性,是一种用于评价估计量优良性的准则。无偏估计的意义是:在多次重复下,它们的平均数接近所估计的参数真值。无偏估计常被应用于测验分数统计中。

贝叶斯神经网络(5)- 图像处理bayes-CNN


二、计算图片的组成分布p(x)

用途:如果我们知道的图片的分布p(x),我们就可以生成新的图片,判断异常图片和处理图片的缺失部分,或者将图片的部分特征转化(如变换表情)

贝叶斯神经网络(5)- 图像处理bayes-CNN


计算图片的分布,即计算图片每一个像素点的分布

不适合的方案:

1、采用CNN:如果通过CNN计算x符合图片分布的概率,需要对cnn(x)进行标准化,但标准化的前提是我们需要知道整个图片的样本空间均值,但这个在实际业务中是很困难的,因为样本空间非常大

2、采用reNN:通过序列模型,依次生成每一个像素点的分布,这个的问题在于因为图片的像素点很多,每次生成一个像素点,生成整个图片的时间会很长

3、采用没有相关性的链式模型:实际图片各点的相关性是非常强的,不考虑相关性的计算结果通常是一堆乱码

最终方案:

4、有限的高斯分布:通过将图片的所有像素点,转换为有限的隐变量,通过计算隐变量的混合高斯模型,得到图片的实际分布


贝叶斯神经网络(5)- 图像处理bayes-CNN


三、隐变量模型

整个隐变量模型分为两个部分

第一部分:p(x)->p(t),将x分布通过隐变量t分布表示

第二部分:p(t)->p(x),将t分布结果还原为x分布,即得到结果


1、先说第二部分

传入t分布的数值,通过一个神经网络,得到高斯分布的mean(100*100)和sd(100*100),每一组mean和sd对应一个原图像素点的分布

贝叶斯神经网络(5)- 图像处理bayes-CNN

贝叶斯神经网络(5)- 图像处理bayes-CNN


2、第一部分

根据贝叶斯的一些理论,分布p(x)可以由多个q(t)分布的连乘近似得到

贝叶斯神经网络(5)- 图像处理bayes-CNN


3、最终模型

1)输入x,通过第一个cnn,得到多个隐变量q(t)的分布参数;

2)输入根据q(t)分布得到的一组t值,通过第二个cnn,得到最终图片p(x)的分布参数;

贝叶斯神经网络(5)- 图像处理bayes-CNN


4、如果在两个cnn模型之间只是通过参数传递数据,基本就类似与常见的autocoder神经网络模型

贝叶斯神经网络(5)- 图像处理bayes-CNN


5、应用

1)利用第一个cnn模型提出隐变量,可以基于隐变量判断是否异常值

2)通过变换输入隐变量参数t,利用第二个cnn模型得到新图片



四、补充说明

1、证明隐变量模型的计算是无偏的过程---略

贝叶斯神经网络(5)- 图像处理bayes-CNN

2、模型中通过分布q(t)得到t的过程,其实是一个避免过拟合的方法


3、优化版本

1)输入x,通过第一个cnn,得到多个隐变量q(t)的分布参数sd、mean;

2)通过标准高斯分布p(z)(就是均值为0,方差为1的高斯分布),得到一组z值。然后通过z*sd+mean,得到一组t值

3)输入t值,通过第二个cnn,得到最终图片p(x)的分布参数;

这个版本的优势是,将无需训练的标准分布p(z)剥离出来;需要训练的sd、mean只在线性表达式中。

贝叶斯神经网络(5)- 图像处理bayes-CNN


五、代码

https://github.com/MaxPoon/coursera-Advanced-Machine-Learning-specialization/blob/master/Bayesian-Methods-For-Machine-Learning/week5/assignment5/assignment.ipynb


六、其他资料

Diederik Kingma and Max Welling. "Auto-encoding variational Bayes."


The paper covered in this module on sparsifying neural networks:

Molchanov, Dmitry, Arsenii Ashukha, and Dmitry Vetrov. "Variational Dropout Sparsifies Deep Neural Networks."

Some other examples of successful application of Bayesian methods to deep learning:

Rezende, Danilo Jimenez, and Shakir Mohamed. "Variational inference with normalizing flows."

Ullrich, Karen, Edward Meeds, and Max Welling. "Soft weight-sharing for neural network compression."



The paper title is "Categorical Reparametrization with Gumbel-Softmax", by Eric Jang, Shixiang Gu and Ben Poole.

You can find PDF version of the paper on arXiv: https://arxiv.org/abs/1611.01144