马尔琴科–巴斯德分布
马尔琴科–巴斯德分布是当矩阵维度 和自由度
同时趋向于无穷且
时, Wishart 矩阵特征值的极限分布. 对于
,分布没有点质量,且概率密度函数是被明确定义的.
In[1]:=
![Click for copyable input](assets.zh/marchenko-pastur-distribution/In_70.png)
PDF[MarchenkoPasturDistribution[1/2], x]
Out[1]=
![](assets.zh/marchenko-pastur-distribution/O_31.png)
显示完整的 Wolfram 语言输入
Out[2]=
![](assets.zh/marchenko-pastur-distribution/O_32.png)
从具有单位尺度矩阵的 Wishart 分布采样,并计算缩放的特征值.
In[3]:=
![Click for copyable input](assets.zh/marchenko-pastur-distribution/In_72.png)
n = 10^4;
m = 10^3;
eigs = RandomVariate[
MatrixPropertyDistribution[Eigenvalues[x]/n,
x \[Distributed]
WishartMatrixDistribution[n, IdentityMatrix[m]]]];
比较采样结果与马尔琴科–巴斯德密度函数.
In[4]:=
![Click for copyable input](assets.zh/marchenko-pastur-distribution/In_73.png)
Show[Histogram[eigs, {0.05}, "PDF", ImageSize -> Medium,
PlotTheme -> "Detailed"],
Plot[PDF[MarchenkoPasturDistribution[m/n], x], {x, 0, 1.8},
PlotTheme -> "Detailed", PlotLegends -> None, Exclusions -> None]]
Out[4]=
![](assets.zh/marchenko-pastur-distribution/O_33.png)
对于 ,Wishart 矩阵是奇异的. 当概率为
时,分布在
处具有点质量.
In[5]:=
![Click for copyable input](assets.zh/marchenko-pastur-distribution/In_74.png)
m = 500; n = 2 m;
CDF[MarchenkoPasturDistribution[n/m], 0]
Out[5]=
![](assets.zh/marchenko-pastur-distribution/O_34.png)
生成具有单位协方差的奇异 Wishart 矩阵,并计算缩放的特征值.
In[6]:=
![Click for copyable input](assets.zh/marchenko-pastur-distribution/In_75.png)
matrix = Transpose[#].# &[RandomVariate[NormalDistribution[], {m, n}]];
eigvs = Chop[Eigenvalues[matrix]/m];
在特征值密度接近于 0 处有一个空隙,并且箱在 0 具有较大的密度.
In[7]:=
![Click for copyable input](assets.zh/marchenko-pastur-distribution/In_76.png)
Histogram[eigvs, {0.05}, PDF, PlotRange -> 1, ChartStyle -> Orange,
ImageSize -> Medium]
Out[7]=
![](assets.zh/marchenko-pastur-distribution/O_35.png)
将 MarchenkoPasturDistribution 拟合到特征值.
In[8]:=
![Click for copyable input](assets.zh/marchenko-pastur-distribution/In_77.png)
edist = EstimatedDistribution[eigvs,
MarchenkoPasturDistribution[\[Lambda], 1]]
Out[8]=
![](assets.zh/marchenko-pastur-distribution/O_36.png)
拟合分布的累积分布函数显示在原点有一个跳跃不连续点.
显示完整的 Wolfram 语言输入
Out[9]=
![](assets.zh/marchenko-pastur-distribution/O_37.png)