一、贝叶斯理论:

1. 先验信息:

在抽样前有关统计推断的一些信息,贝叶斯公式数学表达为:

P(A|B)=P(A,B)P(B)1
<script type="math/tex; mode=display" id="MathJax-Element-1">P(A|B)= \frac{P(A ,B)}{P(B)} (公式1)</script>

2. 先验分布:

θΘ <script type="math/tex" id="MathJax-Element-2">\theta\in\Theta</script>当作取值于 Θ <script type="math/tex" id="MathJax-Element-3">\Theta</script>的随机变量,若 θΘ <script type="math/tex" id="MathJax-Element-4">\theta\in\Theta</script>满足概率密度函数 p(θ) <script type="math/tex" id="MathJax-Element-5">p(\theta)</script>,则称 p(θ) <script type="math/tex" id="MathJax-Element-6">p(\theta)</script>为参数 θ <script type="math/tex" id="MathJax-Element-7">\theta</script>的先验概率分布。

3. 似然函数:

假设样本 X={x1,x2,x3,x4,xN} <script type="math/tex" id="MathJax-Element-8">X=\{x_1,x_2,x_3,x_4,\ldots,x_N\}</script>,各样本是相互独立的,则样本的联合分布密度函数为:

p(x1,x2,x3,x4,xN,θ)=p(x1,x2,x3,x4,xN|θ)p(θ)2
<script type="math/tex; mode=display" id="MathJax-Element-9">p(x_1,x_2,x_3,x_4,\ldots,x_N,\theta)=p(x_1,x_2,x_3,x_4,\ldots,x_N|\theta)p(\theta)(公式2)</script>
p(x1,x2,x3,x4,N|θ)=p(X|θ)=i=1Np(xk|θ)3
<script type="math/tex; mode=display" id="MathJax-Element-10">p(x_1,x_2,x_3,x_4,\ldots,_N|\theta)=p(X|\theta)=\prod_{i=1}^N p(x_k|\theta)(公式3)</script> 其中, p(x1,x2,x3,x4,xN|θ) <script type="math/tex" id="MathJax-Element-11">p(x_1,x_2,x_3,x_4,\ldots,x_N|\theta)</script>为条件概率密度函数,称之为相对于样本集 X <script type="math/tex" id="MathJax-Element-12">X</script>的关于θ<script type="math/tex" id="MathJax-Element-13">\theta</script>的似然函数,记为:
l(θ)=k=1Np(xk|θ)4
<script type="math/tex; mode=display" id="MathJax-Element-14">l(\theta)=\prod_{k=1}^Np(x_k|\theta)(公式4)</script>

4. 后验分布:

在公式2的联合分布当中,若样本给定,设未知参数为 θ <script type="math/tex" id="MathJax-Element-15">\theta</script>,
那么 θ <script type="math/tex" id="MathJax-Element-16">\theta</script>的条件概率密度函数可表示为:

p(θ|X)=p(X,θ)p(X)=p(X|θ)p(θ)θp(X|θ)p(θ),dθ(5)
<script type="math/tex; mode=display" id="MathJax-Element-17">p(\theta|X)=\frac{p(X,\theta)}{p(X)}=\frac{p(X|\theta)p(\theta)}{\int_{\theta} p(X|\theta)p(\theta), d\theta}(公式5)</script>公式5为贝叶斯理论下概率密度函数的具体形式,它阐述了先验分布向后验分布的一种转化过程,称 p(θ|X) <script type="math/tex" id="MathJax-Element-18">p(\theta|X)</script>为 θ <script type="math/tex" id="MathJax-Element-19">\theta</script>的后验概率密度函数,即后验分布。

二、贝叶斯压缩感知

1.贝叶斯压缩感知

设一个原始信号 X <script type="math/tex" id="MathJax-Element-20">X</script>。它是实值、有限长并且一维离散的。假定X<script type="math/tex" id="MathJax-Element-21">X</script>在 RN <script type="math/tex" id="MathJax-Element-22">R^N</script>空间内有一个基础基,则能用 N <script type="math/tex" id="MathJax-Element-23">N</script>X1<script type="math/tex" id="MathJax-Element-24">1</script>维向量 {Ψi}Nt=i <script type="math/tex" id="MathJax-Element-25">\{\Psi_i\}^N_{t=i}</script>的线性组合可以表示 RN <script type="math/tex" id="MathJax-Element-26">R^N</script>内的任意信号。

X=k=1NΨkSk()
<script type="math/tex; mode=display" id="MathJax-Element-27">X=\sum\limits_{k=1}^N\Psi_kS_k (稀疏转换)</script> 也就是X可能不稀疏但在 Ψ <script type="math/tex" id="MathJax-Element-28">\Psi</script>基内可能稀疏。也就满足了压缩感知稀疏的条件。
基于压缩感知框架,将x投影到某个测量矩阵 Φ <script type="math/tex" id="MathJax-Element-29">\Phi</script>上。
y=ΦX=ΦΨS=ΘS()
<script type="math/tex; mode=display" id="MathJax-Element-30">y=\Phi X=\Phi \Psi S=\Theta S(测量)</script> 下面也就是根据 y <script type="math/tex" id="MathJax-Element-31">y</script>和Θ<script type="math/tex" id="MathJax-Element-32">\Theta</script>重建 S <script type="math/tex" id="MathJax-Element-33">S</script>的问题了。
y=ΦX+n2.1
<script type="math/tex; mode=display" id="MathJax-Element-34">y=\Phi X+n(公式2.1)</script>其中 nN{0,σ2} <script type="math/tex" id="MathJax-Element-35">n \sim N\{0,\sigma^2\}</script>为测量噪声。应用前面的概率论的知识,根据公式2.1可得高斯似然函数:
p(y|xs,σ2n)=(2πσ2n)k2exp(12σ2n||yΦxs||2)
<script type="math/tex; mode=display" id="MathJax-Element-36">p(y|x_s,\sigma^2_n)=(2\pi\sigma^2_n)^{\frac{k}{2}}exp(-\frac{1}{2\sigma^2_n}||y-\Phi x_s||^2)</script>原始信号 xs <script type="math/tex" id="MathJax-Element-37">x_s</script>的重构问题就可以利用贝叶斯理论进行求解了。

2. 简单代码demo

要运行下面这段代码,还必须去这个网站
http://people.ee.duke.edu/~lcarin/BCS.html
上面下载 bcs_ver0.1.zip 这个代码包。复制里面的BCS_fast_rvm.m文件和下面这段代码放在同一个workspace下面就可以了。另外需要下载lena.bmp这张256*256大小的测试图片。

%------------------------------------------------------
% This code generates Figure 2 of the following paper: 
% "Bayesian Compressive Sensing" (Preprint, 2007)
% This example is modified from l1qc_example.m, an example 
% from l1magic.
% Coded by: Shihao Ji, ECE, Duke University
% last change: Jan. 2, 2007
%------------------------------------------------------
clear all
addpath('BCSdemo');
img=imread('lena.bmp');     % read in the image "lena.bmp"
img=double(img);
[height,width]=size(img);
img_rec=zeros(height,width);
N=height; % signal length
K = 150; % number of CS measurements

% projection matrix
phi= randn(K,N);
phi = phi./repmat(sqrt(sum(phi.^2,2)),[1,N]);   
% noisy observations
sigma = 0.0001;
e = sigma*randn(K,1);

%DCT基
mat_dct_1d=zeros(256,256);  % building the DCT basis (corresponding to each column)
for k=0:1:255 
    dct_1d=cos([0:1:255]'*k*pi/256);
    if k>0
        dct_1d=dct_1d-mean(dct_1d); 
    end;
    mat_dct_1d(:,k+1)=dct_1d/norm(dct_1d);
end

Theta_1d=phi*mat_dct_1d;%测量矩阵乘上基矩阵

for i=1:width
%利用BCS重建
x=img(:,i);
y =phi*x + e;
initsigma2 = std(y)^2/1e2;% std(y):Standard deviation
[weights,used,sigma2,errbars] = BCS_fast_rvm(Theta_1d,y,initsigma2,1e-8);
x_BCS = zeros(N,1); err = zeros(N,1);
x_BCS(used) = weights; err(used) = errbars;
img_rec(:,i)=x_BCS';         
end
img_rec=mat_dct_1d*img_rec;           % inverse transform 稀疏系数乘上
figure
subplot(1,2,1),imshow(uint8(img)),title('original image')
subplot(1,2,2),imshow(uint8(img_rec)),title('rec image')

3. 结果

这里写图片描述
.

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐