如何以最佳方式为神经网络编码复杂数据?

How to encode the complex data for the neural network in the best way?

数据由多条记录组成。一条记录如下: [位向量,数值向量,一些数值]。 位向量对于每条记录具有不同的长度,对于数值向量也是如此。 每条记录的数值个数是所有记录的常量。

输出是2个数字。它们的值(均在 [0.0, 1.0] 范围内)用于搜索算法中的 evaluation/fitness 函数逼近。

所以,我的问题是: 如何represent/normalize将这些数据用于神经网络? 特别是,是否有一种(棘手的)方法来紧凑地表示位向量?它的长度可以达到几千。

除了少数经典问题外,没有唯一正确的方法可以将复杂数据输入神经网络。这是一门艺术,事实上,深度学习的最新进展在很大程度上促进了表示复杂数据的方式的进步。

因此,在不了解您数据的性质的情况下,很难给出任何具体建议。为什么你有可变长度的向量?它们代表某种序列吗?位向量中编码的是什么?

从纯技术的角度来看,可变长度数据意味着您需要用零填充到恒定长度(最简单但通常不是很好)或特殊的 NN 架构,如卷积或循环网络,选择将取决于您的性质数据集。如果您的位向量表示一组某种二进制特征,那么每位需要一个神经元,或者您可以尝试使用自动编码器训练紧凑的实值嵌入。

要获得更有用的答案,请向stats.stackexchange.com

描述您的问题的性质和post您的问题