Ручная мини-пакетная генерация для PyTorch Geometric
В настоящее время у меня есть тензоры pytorch с формой
(batch_size, height, width, channel_size)
и я хочу преобразовать его в мини-пакет, описанный здесь. Моя текущая идея состоит в том, чтобы преобразовать каждый пример из тензорного представления в представление графа отдельно и сгруппировать их вместе. Я хочу сделать все это без сохранения/загрузки файлов, так как это, безусловно, будет снижать скорость (я заметил, что создание «наборов данных в памяти» делает это таким образом).
Тем не менее, я не нашел никакой функции для части примера группировки. Может ли кто-нибудь помочь дать правдоподобный рабочий процесс для него, и есть ли более разумный способ для этого преобразования от тензора к мини-пакету для pytorch-geometric?
1 ответ
Я думаю, что у меня есть аналогичный вопрос с вами. Если я правильно понимаю ваш вопрос, вы хотите совершить следующее преобразование
Input: Tensor = [#batch,#vertex,#feature]
Output: torch_geometric.data.BatchData = Large tensor
Моя реализация:
x = DataLoader([Data(x,edge_index=edges,num_node=#node) for x in x],batch_size=#batch)
data = next(iter(x))