如何将复杂的时间步长数据编码到单个矢量中以输入RNN?

时间:2016-06-03 17:39:06

标签: machine-learning neural-network tensorflow recurrent-neural-network

我正在研究用于音乐可视化的预测性TensorFlow RNN,类似于字符所见的here。例如,在标准字符RNN中,我的理解是每个字符被编码为稀疏的26长矢量。如果我要用80x80灰度图像做类似的事情,我会倾向于将其转换为6400宽的矢量。

然而,在我的情况下,在每个时间步长中,网络必须决定对象的坐标及其颜色(分类)以及具有不同数量的选项的一些其他分类属性。

例如,单个数据点可能如下所示:

[257 (1-500), 97 (1-400), 6 (1-9), 1 (0-1)]

我可以想象将这些数据转换为单个向量(4个单热矢量连接),然后在不同的时间间隔内运行softmax,但这似乎效率低下,我需要实现自定义softmax(不是世界末日) ...)。

我还可能将坐标编码为浮点数而不是稀疏矢量,并在计算整个集合的交叉熵之前将它们连接到其他稀疏矢量。

[0.514, .97, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1]

但是,我担心这会低估坐标的重要性,因为它们只代表两个数据点而不是11个分类段。

是否有更好的(内置?)方式来表示这样的数据?

0 个答案:

没有答案