自动编码器以减少输入数据大小
Posted
技术标签:
【中文标题】自动编码器以减少输入数据大小【英文标题】:Auto-encoder to reduce input data size 【发布时间】:2013-12-21 00:03:46 【问题描述】:目前,我想使用自动编码器来减少输入数据的大小,以便将减少的数据用于另一个神经网络。我的任务是拍摄视频,然后将视频图像提供给自动编码器。当我只使用几张图像作为输入时,自动编码器工作得很好,但是当我想要一个图像序列时,它就不行了。
想象一下从一个移动的球中拍摄视频。例如,我们有 200 张图像。如果我对 200 张图像使用自动编码器,则误差很大,但如果我只对 5 张图像使用,则重建误差很小并且可以接受。似乎自动编码器没有学习球循环的顺序或时间运动。我也尝试表示堆叠自动编码器,但结果并不好。
有人知道问题出在哪里,或者可以使用自动编码器来完成这项任务吗?
【问题讨论】:
您问题中的error
,是总和误差还是平均误差?随着图像数量的增加,总和误差自然会增加。
【参考方案1】:
自编码器/变分自编码器不学习序列,它学习将输入数据“映射”到维度较少的潜在空间。例如,如果图像是 64x64x3
,您可以将其映射到 32 dim
张量/数组。
为了学习图像序列,您需要将自动编码器编码器部分的输出连接到 RNN (LSTM/GRU),该 RNN (LSTM/GRU) 可以了解编码帧的序列(潜在空间中的连续帧)。之后,RNN 的输出可以连接到自编码器的解码器部分,这样您就可以看到重建的帧。
Here you can find a GitHub project which tries to encode the video frames and then predict sequences
【讨论】:
以上是关于自动编码器以减少输入数据大小的主要内容,如果未能解决你的问题,请参考以下文章