You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

变分自编码器隐向量可视化:按坐标分量着色可行性咨询

VAE 8维隐向量可视化方案

一、基于x/y分量着色的可行方案

完全可以通过点的x/y分量着色来强化与对应维度属性的关联,具体实现思路有三种:

  • 单分量颜色映射:在展示第i维和第j维的子图中,将点的x轴(第i维)数值映射为渐变色彩(比如从蓝到红的viridis色阶),直观呈现该维度数值分布与另一维度的关联;同理也可选用y轴(第j维)数值做颜色映射。
  • 双分量组合着色:利用颜色的两个通道(如RGB的R、G通道)分别对应x、y分量的归一化数值,让单个点的颜色同时反映两个维度的属性值,适合观察双维度的联合分布特征。
  • 属性关联着色:若隐维度对应属性有明确类别标签,可直接用标签对应固定颜色;针对数值型属性,前两种方案更适用。

以下是matplotlib实现的极简示例:

import matplotlib.pyplot as plt
import numpy as np

# 模拟20个样本的8维隐向量数据
latent_data = np.random.randn(20, 8)

# 创建8×8子图网格
fig, axes = plt.subplots(8, 8, figsize=(16, 16))

for i in range(8):
    for j in range(8):
        ax = axes[i, j]
        if i == j:
            # 对角子图展示单维度直方图
            ax.hist(latent_data[:, i], bins=5, edgecolor='black')
            ax.set_title(f"维度{i+1}")
        else:
            # 用x轴维度的数值映射颜色
            sc = ax.scatter(latent_data[:, j], latent_data[:, i], c=latent_data[:, j], cmap='viridis')
            ax.set_xlabel(f"维度{j+1}")
            ax.set_ylabel(f"维度{i+1}")

# 统一添加颜色条
fig.colorbar(sc, ax=axes, fraction=0.02, pad=0.01)
plt.tight_layout()
plt.show()

二、更高效的替代可视化方案

除了8×8两两子图,还有几种更适合高维隐向量的可视化方式:

  • 平行坐标图:将8个隐维度作为垂直轴,每个样本对应一条折线,折线在各轴上的位置即为该维度数值。可一次性展示所有维度的关联,快速发现维度间的相关性与样本分布模式。
  • t-SNE/UMAP降维可视化:将8维隐向量降维至2D/3D空间,保留样本间的相对距离;同时用某一关键隐维度的数值作为颜色映射,既能观察整体聚类趋势,又能关联具体维度的属性(注意降维存在信息损失,需结合原始维度分析)。
  • 维度相关性热力图:计算8个隐维度的皮尔逊相关系数矩阵,用热力图展示维度间的相关性强弱,可作为两两子图的补充,快速定位强关联维度。
  • 雷达图:每个样本对应一个雷达图,8个维度作为雷达的8个轴,适合对比少量样本(如20个)在各维度的属性差异;但样本过多会导致图表杂乱,仅适合小样本场景。

内容的提问来源于stack exchange,提问作者user3748950

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 16:17:22