问题标签 [autoencoder]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
310 浏览

machine-learning - 取而代之的是 LBFGS,在稀疏自动编码器中使用梯度下降

在 Andrew Ng 的讲义中,他们使用 LBFGS 并获得了一些隐藏的特性。我可以改用梯度下降并产生相同的隐藏特征吗?其他参数都一样,只是改变优化算法。

因为当我使用 LBFGS 时,我的自动编码器可以产生与讲义中相同的隐藏特征,但是当我使用梯度下降时,隐藏层中的特征消失了,看起来完全随机。

具体来说,为了优化成本函数,我实现了 1)成本函数,2)每个权重和偏差的梯度。并将它们放入 scipy 优化工具箱中以优化成本函数。而这个设置可以给我合理的隐藏功能。

但是当我改为梯度下降时。我试图让“Weight - Gradient of the Weight”和“Bias - Gradient of the Bias”。但由此产生的隐藏特征看起来完全是随机的。

有人可以帮我知道原因吗?谢谢。

0 投票
1 回答
991 浏览

python - Tensorflow autoencoder cost not decreasing?

I am working on unsupervised feature learning using autoencoders using Tensorflow. I have written following code for the Amazon csv dataset and when I am running it the cost is not decreasing at every iteration. Can you please help me find the bug in the code.

The link to the dataset is here. The link to the python file is here.

Following is the result untill 31 epoch and it remains same till all 50 epoch.

0 投票
3 回答
2185 浏览

machine-learning - 深度自动编码器的 Python/Keras/Theano 尺寸错误

我正在尝试遵循 Deep Autoencoder Keras示例。我遇到了尺寸不匹配异常,但对于我的生活,我无法弄清楚为什么。它在我只使用一个编码维度时有效,但在我堆叠它们时无效。

例外:输入 0 与图层 dense_18 不兼容:
预期形状 =(无,128),找到形状 =(无,32)*

错误在线decoder = Model(input=encoded_input, output=decoder_layer(encoded_input))

0 投票
0 回答
73 浏览

python - 在 theano 中使用布尔变量

我正在研究 theano 中的双语自动编码器。以本教程为参考,我创建了两个单语自动编码器。每个都采用一个句子的单热向量并创建一个潜在表示,它是一个 100 维的 numpy 数组。然后我将这两个(lat_1,lat_2)连接起来,这就是我遇到问题的地方。我想用 50% 的噪声掩盖其中一个潜在表示,以便一种语言需要使用另一种潜在表示作为重建自身的线索。从理论上讲,这将交替每个时期,以便两者都以最佳表示结束。

目前,我想我只用一方面来管理它。我的想法是在开始时添加一个 self.corrupted 变量并将其设置为 0 并在每个 epoch 之后更改变量,以便它交替出现。这是我为此添加的代码。

然而,在训练时,它只会在开始时打印一次“corrupting lat_1”并继续训练。有谁知道让这个交替的方法?

0 投票
2 回答
889 浏览

deep-learning - 深度自编码器训练,小数据与大数据

我正在训练一个深度自动编码器(现在是 5 层编码和 5 层解码,使用泄漏的 ReLu)来将数据的维度从大约 2000 维降低到 2。我可以在 10k 数据上训练我的模型,结果是可以接受的。当我使用更大的数据(50k 到 1M)时,就会出现问题。使用具有相同优化器的相同模型并退出等不起作用,并且训练在几个时期后陷入困境。我正在尝试对优化器进行一些超参数搜索(我正在使用 adam),但我不确定这是否能解决问题。

我应该寻找其他东西来改变/检查吗?在这种情况下,批量大小是否重要?我应该通过微调优化器来解决问题吗?我应该玩辍学率吗?...

非常感谢任何建议。

ps 我正在使用 Keras。非常方便。如果您对此不了解,请查看: http: //keras.io/

0 投票
1 回答
3198 浏览

noise - Keras dropout 和 GaussianNoise 层是否在每批中应用不同的噪声实例?

我正在 Keras 中构建一个去噪自动编码器。我正在使用的模型是

如果我随后打电话

是否有为每个批次创建的噪音的新实例?换句话说,对于上面的每个时期,每个批次是否有不同的噪声实例?还是所有批次的噪声实例都固定为同一事物,并且仅在时代变化时才发生变化?或者更糟糕的是,是否只为整个事物选择了一个噪声实例?

0 投票
1 回答
301 浏览

machine-learning - 自动编码器可以用于重建非二进制向量吗?

我最近了解了自动编码器,并计划构建一个作为具有隐式反馈的推荐系统的一部分。

根据经典自动编码器的工作原理,它们似乎可用于重构分量不一定为 0 或 1 的向量。然而,所有介绍性材料似乎都表明自动编码器对二进制向量进行操作,x = [0,1] ^d,如此处,或本文第 2.2 节。

为了将自动编码器用于非二进制向量,在我看来唯一的区别是应该使用 L2 误差函数而不是适用于二进制情况的交叉熵。

如果有人可以为我澄清这一点,我将不胜感激。

0 投票
1 回答
92 浏览

theano - 自动编码器对图像进行分类?

我目前是一名学生,我正在开发一个神经网络项目来对图像数据集进行分类。由于这些图像没有标记,我需要一种无监督的学习方法。有人建议我应该使用自动编码器,是否可以使用自动编码器来“发现”重要特征,然后将“隐藏层”中学习的特征用于多层感知器网络,所以我可以对图像进行分类吗?谢谢大家的帮助。

0 投票
1 回答
1504 浏览

python - 如何在 python 中加载我自己的数据或在线数据集以训练 CNN 或自动编码器?

在 python 中加载数据集时,我遇到了一个简单的问题。我想定义调用函数loading_dataset()以在训练自动编码器中使用它我的代码是

正在下载 MNIST 数据集...

出现了这个错误

我还尝试使用以下代码从桌面加载数据,用于 os.walk(pat) 中的路径、目录、文件: for filename in files: fullpath = os.path.join(path, filename) with open(fullpath, 'r ') as f: s=np.load(f) data = f.read() 打印数据

但我未能将数据加载为 X_train、y_train、X_val、y_val、X_test、y_test 的值

0 投票
0 回答
73 浏览

deep-learning - 图像的预先存在的特征提取器

我们想要构建一个图像分类器,将图像分类到大约 15 个类中的一个。我们确实有一个大型的标记训练语料库。因此,我们可以使用 Caffe 或其他一些深度学习库来训练深度神经网络。

我们正在探索的另一个选择是查看是否有任何公开可用的预先存在的特征提取模型来从一般图像中提取特征(例如针对大型图像语料库训练的自动编码器)。通过这样做,我们将能够进行降维,这将使我们能够使用更简单的分类模型和更少的训练数据进行训练,因为特征数量较少(维度灾难)。

我们看到的唯一缺点是,如果用于训练自动编码器/特征提取器的数据集与用于监督学习问题的数据集之间数据的概率分布差异很大,那么整体性能可能不会那么好。另一方面,我们获得的优势是我们不必训练复杂的深度神经网络。通过特征提取,我们可以使用随机森林等普通分类算法完成剩下的工作。

所以,我的问题本质上是:是否有人已经训练(并可供重用)一个为给定图像提取特征的模型?