当我尝试使用定制的文本数据来拟合keras模型时,出现索引错误。我认为我必须将训练数据集的索引更改为某个索引范围。为此,我尝试了numpy.squeeze
和numpy.reshape
,但没有得到所需的输出。
较早的帖子:
我在previous post中提出了问题,我意识到必须将numpy数组的索引重置为所需的索引范围。
这是我的原始训练数据集存储在numpy
中的方式:
array([[ 7, 6968, 1141, ..., 0, 0, 0],
[2091, 964, 866, ..., 0, 0, 0],
[ 127, 101, 3546, ..., 0, 0, 0],
...,
[ 7, 3056, 184, ..., 0, 0, 0],
[5040, 55, 56, ..., 0, 0, 0],
[ 259, 430, 1981, ..., 0, 0, 0]])
这是尺寸信息:
x_train.shape - > (10240, 100)
我的目标是我想将numpy
以上数组的索引重置为(10240, 70)
,以使我的模型成功运行。我该如何进行深度学习模型配置?有什么方法可以在期望的索引范围内重置numpy
数组中训练数据集的索引?有什么主意吗?
答案 0 :(得分:0)
numpy.squeeze
和numpy.reshape
都保留元素数量。将形状为(10240, 100)
的numpy数组变成形状为(10240, 70)
的唯一方法是通过除掉元素,通过numpy slicing,然后重塑(使用reshape
或{ {1}})。
请注意,盲目切片数据集很可能会破坏它。最好重新构造ML模型以使用原始数据集或研究进行降维的方法。
答案 1 :(得分:-1)
如果您想从(10240, 100)
到(10240,70)
,就可以这样做
x_train_new = x_train[:,:70]
并删除30个尺寸。您将丢失这30个维度中的信息,但是从您发布的小示例来看,它们看起来始终为0。