Keras 如何将不同长度的数据用于第一层为conv1的cnn?

Keras 如何将不同长度的数据用于第一层为conv1的cnn?,keras,input,conv-neural-network,Keras,Input,Conv Neural Network,我有一个不同形状的数组列表,即 list = [array([1,2,3]), dtype=int16), array([1,2,3,4,5]), dtype=int16), array([1,2]), dtype=int16), array([1,2,3,4,5,6,7,8,9]), dtype=int16)] 我想在cnn中使用这些数据作为输入,其中第一层是conv1。我应该如何转换数据才能工作?我应该在数组中填入

我有一个不同形状的数组列表,即

list = [array([1,2,3]), dtype=int16), 
            array([1,2,3,4,5]), dtype=int16), 
            array([1,2]), dtype=int16),
            array([1,2,3,4,5,6,7,8,9]), dtype=int16)]

我想在cnn中使用这些数据作为输入,其中第一层是conv1。我应该如何转换数据才能工作?我应该在数组中填入
零吗?数据是来自心脏设备的信号。d

如您所知,每个样本数据必须具有相同的形状才能为任何Keras模型提供数据,因此您必须使所有样本的形状相同。为此,您可以利用sklearn.impute.SimpleImputer使用虚拟数字使形状相同。 SimpleImputer有一些选项需要填写,请参考下面的站点

如果最小的样本形状(例如[1,2])仍然相对较大,则可以修剪其他样本的数据以适合最小的形状。如果最小的一个仍然很小,你应该考虑是否应该省略它。
给定的数据是心跳波数据,我将尝试使用零,正如您首先提到的。

谢谢您的回答。我使用pad函数处理了数据,最终数据的形状相同
(852818286)
。我应该根据什么标准来决定它是大还是小?我会建议你提供你能找到的每一个数据集,这是反复试验的事情。因此,我们没有明确的答案,特别是关于数据集的大小,因为它取决于您的问题和您优化的模型。就像CNN的计算机视觉问题一样,没有人能说出有多少图片是有意义的。