访问训练过的自编码器的降维表示

这里是一个使用PyTorch在MNIST数据集上训练的自编码器:

我试图比较每张图像的低维表示。

打印每一层的维度:

for l in autoencoder.parameters() :     print(l.shape)

显示:

torch.Size([512, 784])torch.Size([512])torch.Size([512])torch.Size([512])torch.Size([512])torch.Size([128, 512])torch.Size([128])torch.Size([128])torch.Size([128])torch.Size([128])torch.Size([512, 128])torch.Size([512])torch.Size([512])torch.Size([512])torch.Size([512])torch.Size([784, 512])torch.Size([784])

看起来维度信息并未存储在学习的向量中?

换句话说,如果我有10000张图像,每张包含100个像素,执行上述将维度降至10像素的自编码器,应该可以访问所有10000张图像的10像素维度表示?


回答:

我对PyTorch不太熟悉,但将自编码器分成编码器和解码器模型似乎可行(我将隐藏层的尺寸从512改为64,将编码图像的维度从128改为4,以使示例运行得更快):

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注