为什么同一个人的不同图像,在某些限制下,在 50 维流形中?

人工智能 数据集 表征学习 解耦表示
2021-11-15 19:00:03

本次讲座中(从 1:31:00 开始),教授说一个人的所有图像的集合都生活在低维表面中(与所有可能图像的集合相比)。他说那个表面的维度是 50,他们通过将身体的三个平移、头部的三个旋转和面部肌肉的独立运动相加得到这个数字。他还补充说,它可能大于 50 但小于 100。我们如何得到数字 50 ?

教授之前说过(在同一堂课中,1:29:00),我们可以描述为自然并且可以解释的所有图像的集合都在一个流形中。我试图理解数字 50 是如何出现的:让我们拍摄一个人的图像,因为它是“自然的”,所以它属于那个流形。因此,该图像属于一个开集,并且存在从该开集到欧几里得空间的同胚映射。让我们假设(我不知道为什么,但这是我能想到的唯一可能理解的事情)同一个人的所有图像,无论他的位置和表情如何......,都在那个开放空间中,然后通过同胚映射我们在欧几里得空间中有“相同的点”,

我希望有人可以为我澄清事情,看来这不仅适用于图像,而且适用于所有类型的非结构化数据。

1个回答

数字 50 本质上只是在压缩和/或生成某种类型的数据时基于结果的猜测。“身体的三个平移、头部的三个旋转和面部肌肉的独立运动”等变量仅是示例。没有已知的具有明确定义的参数的正式地图来定义自然图像中“此人的清晰图像”的广为人知的流形。据我所知,讲师没有构建这样的地图,但做了一些相关的实验。

实验上,可以使用变分自动编码器生成对抗网络等模型建立有效的参数向量根据目标图像的大小以及您希望允许的主题变化量(姿势、照明、服装、发型、化妆、相机属性等),您最终会得到不同大小的嵌入向量似乎捕捉到了重要的变化。在与多人打交道时,通常会看到 64、128、256 的向量大小。

讲座建议使用清晰的背景、一致的照明、同一个人、只有姿势变化的图像进行压缩。这个相对简单的图像空间大约 50 维似乎是合理的,因为面部识别引擎使用 128 维嵌入在更复杂的领域中运行良好。

我希望讲师已经看到实验证据表明 50 维向量在表示这些图像中的所有变化方面表现良好,而且较小的向量表现得明显更差,而较大的向量表现不佳。通过构建具有特定大小的嵌入向量的 VAE 之类的东西,训练它,然后在重建一组测试图像时测量损失,这个实验是可能的。