У меня есть массив и разреженная матрица в тензорном типе, и оба они должны быть введены в классификатор нейронной сети. Поскольку данные слишком велики, мне нужно разделить их по партиям.
Как мне объединить мою разреженную матрицу и массив вместе, а затем разделить пакет данных поезда?
tensor(indices=tensor([[ 0, 0, 0, ..., 426017, 426017, 426017],
[ 223, 310, 1045, ..., 39, 14, 542]]),
values=tensor([0.0730, 0.0722, 0.0911, ..., 0.3244, 0.0883, 0.1659]),
size=(426018, 10000), nnz=19173512, layout=torch.sparse_coo)
torch.Size([426018, 16])
tensor([[0.0154, 0.3296, 0.7500, ..., 0.7628, 0.1643, 0.0092],
[0.1041, 0.6322, 1.0000, ..., 0.7612, 0.1629, 0.1283],
[0.4987, 0.3387, 0.7500, ..., 0.8692, 0.1879, 0.0150],
...,
[0.1158, 0.6453, 1.0000, ..., 0.6511, 0.2130, 0.0590],
[0.0751, 0.2653, 0.7500, ..., 0.7232, 0.1644, 0.0208],
[0.4051, 0.3801, 1.0000, ..., 0.8479, 0.2427, 0.1179]],
dtype=torch.float64)
Выше показаны две части одного и того же набора данных, в которых одна - числовые функции (16), а вторая - функции tfidf в разреженной матрице.Так что, чтобы разделить его по пакету, мне нужно объединить их все вместе. Я знаю одну функцию data.utils.data.DataLoader
, но не знаю, как скомбинировать свой набор данных для передачи в него.