← 返回Book 2目录
第32章

Dirichlet分布可视化

Visualizing Dirichlet Distribution

从平面投影到重心坐标系的多维度可视化

32.1 平面上可视化Dirichlet分布

Dirichlet分布是多元Beta分布的推广,定义在概率单纯形上: θ₁ + θ₂ + θ₃ = 1,且θᵢ ≥ 0。由于单纯形约束,可以将三维分布投影到二维平面进行可视化。

Dirichlet分布PDF

p(θ|α) = (1/B(α)) ∏ᵢ θᵢ^(αᵢ-1)

其中B(α)是多元Beta函数(归一化常数),α = (α₁, α₂, α₃)是参数向量。

📐 平面投影原理

在θ₁-θ₂平面上,θ₃ = 1 - θ₁ - θ₂隐含表示。
有效域是满足θ₁+θ₂ ≤ 1的三角形区域。
斜线θ₁+θ₂=1是单纯形边界。

🎨 可视化方法

生成1001×1001网格点
使用mask过滤超出约束的点
plt.contour绘制等高线图

θ₁-θ₂平面上的Dirichlet分布

在直角坐标平面上可视化,θ₃ = 1 - θ₁ - θ₂(斜线约束)

α₁=1, α₂=2, α₃=4
θ₁θ₂000.50.511
α₁=2, α₂=4, α₃=8
θ₁θ₂000.50.511
α₁=4, α₂=1, α₃=2
θ₁θ₂000.50.511
α₁=4, α₂=8, α₃=2
θ₁θ₂000.50.511
α₁=2, α₂=4, α₃=1
θ₁θ₂000.50.511
α₁=8, α₂=2, α₃=4
θ₁θ₂000.50.511

📐 平面投影

在θ₁-θ₂平面上,θ₃ = 1 - θ₁ - θ₂
斜线θ₁+θ₂=1是单纯形边界
三角形区域是有效定义域

🎨 颜色映射

蓝色:低PDF值
白色:中等PDF值
红色:高PDF值(峰值)

🔍 参数影响

αᵢ大 → 向θᵢ方向偏移
所有α相等 → 对称分布
α越大 → 分布越集中

💡 观察要点:等高线的形状和位置反映了Dirichlet分布的特性。 参数α的相对大小决定了峰值位置,参数的绝对大小决定了分布的集中程度。 对比6种不同参数,观察峰值如何在三角形区域内移动。

32.2 Dirichlet分布PDF投影到斜面

将二维平面上计算的等高线投影到三维空间中的θ₁+θ₂+θ₃=1斜面上, 形成立体的可视化效果。可以添加三个坐标平面上的投影等高线。

θ₁-θ₂平面投影

zdir='z', offset=0
投影到z=0平面(底面)

θ₁-θ₃平面投影

zdir='y', offset=0
投影到y=0平面(侧面)

θ₂-θ₃平面投影

zdir='x', offset=0
投影到x=0平面(后面)

32.3 重心坐标系

重心坐标系(Barycentric Coordinates)用三角形三个顶点的权重表示平面上的点。 对于等边三角形内任意点,其重心坐标(θ₁, θ₂, θ₃)满足:θ₁+θ₂+θ₃=1且θᵢ≥0。

坐标转换

直角坐标 → 重心坐标

T = [r₁-r₃, r₂-r₃]
[θ₁, θ₂]ᵀ = T⁻¹ · (r - r₃)
θ₃ = 1 - θ₁ - θ₂

重心坐标 → 直角坐标

r = θ₁·r₁ + θ₂·r₂ + θ₃·r₃

线性组合,权重即为重心坐标

🔺 等边三角形顶点

r₁ = (0, 0) → θ₁=1方向
r₂ = (1, 0) → θ₂=1方向
r₃ = (0.5, √3/2) → θ₃=1方向

📏 三角网格细分

使用UniformTriRefiner
subdiv=2生成15个网格点
subdiv=8生成精细网格

🎨 重心坐标系RGB颜色混合

将重心坐标(θ₁, θ₂, θ₃)直接映射为RGB颜色值

稀疏密集

🎯 顶点颜色

θ₁顶点 (1,0,0) → 红色
θ₂顶点 (0,1,0) → 绿色
θ₃顶点 (0,0,1) → 蓝色
中心 (⅓,⅓,⅓) → 灰色
散点图(subdiv=4)
Red (1,0,0)Green (0,1,0)Blue (0,0,1)
平滑渐变效果

📐 线性插值

RGB = (θ₁×255, θ₂×255, θ₃×255)
任意点颜色是三个顶点的加权平均

🔺 几何意义

重心坐标表示点P相对三顶点的"亲近程度"
θᵢ越大,颜色越接近顶点i的颜色

🎨 颜色混合

边中点:黄(RG)、青(GB)、品红(RB)
中心:灰色(等量RGB混合)

💡 教学意义:这个可视化揭示了重心坐标的本质——线性插值。 任意点的属性(颜色)是三个顶点属性的加权平均,权重就是重心坐标。 这个原理在计算机图形学、有限元分析等领域广泛应用。

32.4 重心坐标系展示Dirichlet分布

结合重心坐标系和三角形剖分技术,直接在等边三角形内绘制Dirichlet分布的等高线填充图。 这是最直观的Dirichlet分布可视化方法,清晰展示分布的对称性和集中趋势。

🔧 技术实现

scipy.stats.dirichlet.pdf()
计算给定重心坐标网格上点的Dirichlet分布概率密度函数值
plt.tricontourf()
绘制基于三角形网格的等高线填充图

🔺 Dirichlet分布探索器

调整参数α = (α₁, α₂, α₃),观察Dirichlet分布在三角形单纯形上的形状变化

分布特征

参数α: (2, 2, 2)

均值E[θ]: (0.333, 0.333, 0.333)

模式Mode: (0.333, 0.333, 0.333)

🎯 中心集中(对称)

θ₂θ₃θ₁

📐 单纯形约束

θ₁ + θ₂ + θ₃ = 1
θᵢ ≥ 0
定义域是等边三角形内部

🎯 参数作用

α = 1: 均匀分布
α > 1: 向中心集中
α < 1: 向边界/顶点集中

📊 对称性

α₁ = α₂ = α₃: 对称分布
αᵢ不等: 偏向某顶点
调整α控制偏向程度

🎨 Dirichlet分布画廊

重心坐标系三角形上的Dirichlet分布,展示不同α参数的影响

α=(2,1,1)
θ₃θ₁θ₂
α=(1,2,1)
θ₃θ₁θ₂
α=(1,1,2)
θ₃θ₁θ₂
α=(1,2,2)
θ₃θ₁θ₂
α=(2,1,2)
θ₃θ₁θ₂
α=(2,2,1)
θ₃θ₁θ₂
α=(4,2,1)
θ₃θ₁θ₂
α=(2,1,4)
θ₃θ₁θ₂
α=(2,4,1)
θ₃θ₁θ₂
α=(1,2,4)
θ₃θ₁θ₂
α=(1,4,2)
θ₃θ₁θ₂
α=(4,1,2)
θ₃θ₁θ₂

📊 第1组:偏向分布

参数不对称,分布偏向某个或两个顶点

🎯 第2组:集中分布

参数较大,分布向中心或某方向集中

⚖️ 对称型:均匀到集中

α相等,从边界集中(α<1)到中心集中(α>1)

💡 观察规律:αᵢ越大,分布越偏向θᵢ顶点。 当所有α相等时:α<1时分布向顶点集中,α=1时均匀分布,α>1时向中心集中。 颜色从深蓝(低PDF)到红色(高PDF)表示概率密度大小。

参数α的影响规律

α = [1,1,1]

均匀分布
整个三角形内PDF相等

α > 1(全部)

向中心集中
α越大越集中

α < 1(全部)

向顶点/边界集中
稀疏分布

αᵢ不等

偏向分布
αᵢ大则偏向θᵢ

📊 均值与模式公式

均值 E[θᵢ] = αᵢ / Σαⱼ
模式 Mode[θᵢ] = (αᵢ-1) / (Σαⱼ-3)(当αᵢ>1时)

🎯 核心洞察与应用

几何意义

  • Dirichlet分布定义在概率单纯形上
  • 重心坐标系是自然的参数化空间
  • 参数α控制分布的形状和集中程度
  • 三角形可视化揭示对称性和偏向性

贝叶斯应用

  • LDA主题模型:文档-主题分布的先验
  • 混合模型:混合权重的先验分布
  • 多项分布:共轭先验关系
  • 后验更新:观测数据更新α参数

可视化方法对比: 平面投影利用隐含变量减少维度,3D斜面展示完整几何结构, 重心坐标三角形提供最直观的表示,RGB颜色混合揭示线性插值性质。 每种方法都从不同角度揭示Dirichlet分布的性质。