1

Новичка здесь.
Я пытаюсь воспроизвести LeNet на моем собственном наборе данных. Мои данные обучения - это 1D-данные, которые могут быть представлены как вектор 1x3000. Для каждого вектора 1x3000 у меня есть метка, которая является другим 1D-вектором двоичного вектора размера 1x64. У меня есть 100 тысяч таких данных (данных, ярлыков). Я смущен, как я могу накормить это для Caffe. Все примеры приведены для изображений размерности N x N.Кормление длинными 1D векторными данными, 1D этикеткой вектора для Caffe

Любая идея, как эти данные могут быть обработаны для подачи в Caffe?

Я думал о нулевом заполнении вектора и сделал его n (нулевое заполнение) xN, но это не кажется правильным. Также можно разрезать вектор 1x3000 в 1xn и уложить их вверх, чтобы сформировать матрицу mxn - решение? Кто-нибудь делал это раньше?

Любое предложение приветствуется.

+0

относящийся: http://stackoverflow.com/q/29213108/1714410 – Shai

ответ

0

Caffe может легко обрабатывать данные 1D, как для «данных», так и для «метки».
Я предполагаю, что самый прямой способ передачи данных в caffe использует файлы формата hdf5. Вы можете получить данные в двоичных файлах данных hdf5 с наборами данных 'data' и 'label'. Затем вы можете подать данные в caffe, используя слой "HDF5Data".

+0

Спасибо Shai за ваше предложение. У меня есть несколько последующих вопросов. 1. Итак, в этом случае все мои ядра как для сверточного, так и для пула слоев также будут иметь размеры 1xN? Это также поддерживается caffe? 2. Мои «ярлыки» действительно длинны, поэтому я волнуюсь, если это приведет к плохим результатам позже. Для одного 1x3000 данных у меня есть 64 (может увеличиться до 128) бинарная векторная метка. Это не похоже на то, что данные относятся к 64 различным классам (так как я видел некоторые предлагаемые решения для многоканальных). Одна метка может быть чем угодно в пространстве 2^64, и она специфична для данных 1x3000. Любое предложение здесь? – user2413711

+0

@ user2413711 (1) Да, вы должны использовать 'kernel_w' и' kernel_h' для указания ядра без прямоугольника (см. ['Caffe.proto'] (https://github.com/BVLC/caffe/blob/master/src /caffe/proto/caffe.proto#L556) для подробностей). (2) Вам необходимо использовать соответствующий уровень потерь. Для бинарных меток, я полагаю, вы можете проверить слой ['" SigmoidCrossEntropyLoss "'] (http://caffe.berkeleyvision.org/doxygen/classcaffe_1_1SigmoidCrossEntropyLossLayer.html). – Shai

Смежные вопросы