我试着预测二维坐标的序列。但我不希望只有最可能的未来路径,而是所有最可能的路径在网格地图中可视化。为此,我有由40000个序列组成的训练数据。每个序列由10个2D坐标对作为输入,6个2D坐标对作为标签。所有的坐标都在一个固定的范围内。我预测所有可能的路径的第一步是什么?为了得到所有可能的路径,我必须最终应用一个softmax,其中网格中的每个单元格都是一个类,对吗?但是如何处理这些数据以反映这种类似网格的结构呢?有什么想法吗?
发布于 2018-03-20 08:10:49
一个softmax激活恐怕做不到这一点;如果您有无限多个组合,甚至是数据中没有出现的有限数量的组合,就无法将其转化为多类分类问题(否则,您将失去通用性)。
我能想到的唯一前进的方法是使用变分编码的递归模型。首先,您有很多带注释的数据,这是个好消息;一个由序列X (10,2 )构成的递归网络肯定能够预测序列Y (6,2,)。但既然你想要的不仅仅是一个,而是所有可能的序列,这是不够的。这里隐含的假设是,序列背后隐藏着一些概率空间,这会影响它们随时间的变化;因此,要正确地建模序列,需要对潜在的概率空间进行建模。变分自动编码器(VAE)就是这样做的,它学习潜在空间,因此在推理过程中,输出预测依赖于对该潜在空间的采样。对同一输入的多个预测会导致不同的输出,这意味着您最终可以对预测进行采样,从而在经验上近似于潜在输出的分布。
不幸的是,VAE并不能在堆栈溢出的单个段落中得到真正的解释,即使它们能够解释,我也不会是最有资格尝试的人。尝试在网上搜索LSTM,并耐心地武装自己;你可能需要做一些研究,但这绝对值得。查看吡咯或爱德华也可能是个好主意,它们是用于python的概率网络库,比Keras更适合当前的任务。
https://stackoverflow.com/questions/49386548
复制