为什么受限玻尔兹曼机 (RBM) 倾向于学习非常相似的权重?

数据挖掘 RBM
2021-09-18 13:07:09

在此处输入图像描述

这是我在训练受限玻尔兹曼机 (RBM)后得到的 4 个不同的权重矩阵,该机器具有约 4k 个可见单元和只有 96 个隐藏单元/权重向量。如您所见,权重非常相似 - 甚至面部的黑色像素都被复制了。其他 92 个向量也非常相似,尽管没有一个权重完全相同

我可以通过将权重向量的数量增加到 512 或更多来克服这个问题。但是我之前多次遇到过这个问题,使用不同的 RBM 类型(二进制、高斯、甚至卷积)、不同数量的隐藏单元(包括相当大的)、不同的超参数等。

我的问题是:权重获得非常相似的值的最可能原因是什么?他们都只是达到某个局部最小值吗?还是过度拟合的迹象?

我目前使用一种 Gaussian-Bernoulli RBM,代码可以在这里找到。

UPD。我的数据集基于CK+,其中包含 327 个人的 > 10k 图像。但是我做了相当繁重的预处理。首先,我只裁剪人脸外轮廓内的像素。其次,我将每张脸(使用分段仿射包裹)转换为相同的网格(例如,眉毛、鼻子、嘴唇等在所有图像上处于相同的 (x,y) 位置)。预处理后的图像如下所示:

在此处输入图像描述 在此处输入图像描述

在训练 RBM 时,我只取非零像素,因此外部黑色区域被忽略。

1个回答

受限玻尔兹曼机 (RBM) 学习原始输入的有损压缩,换句话说,就是概率分布。

这些是 4 个不同的权重矩阵,都是原始人脸输入的降维表示。如果您将权重可视化为概率分布,则分布值会有所不同,但它们与原始图像重建的损失量相同。