Вычисление CrossEntropyLoss по разреженным тензорамPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Вычисление CrossEntropyLoss по разреженным тензорам

Сообщение Anonymous »

Хотя следующее работает должным образом:

Код: Выделить всё

import torch
from torch.nn import CrossEntropyLoss

loss = CrossEntropyLoss()

T1 = torch.randn(10, 20, 4, 4) # The BatchSize is a 10 times repeated tensor (1,20,4,4)
T2 = torch.randint(1,20, (10, 4, 4))

loss(T1, T2)
работает так, как ожидалось, аналогичный подход с разреженными тензорами, похоже, на данный момент не реализован:

Код: Выделить всё

import torch
from torch.nn import CrossEntropyLoss

loss = CrossEntropyLoss()

T1 = torch.randn(10, 20, 4, 4)
T2 = torch.randint(1,20, (10, 4, 4))

T1_sparse = T1.to_sparse_coo()
T2_sparse = T2.to_sparse_coo()

loss(T1_sparse, T2_sparse)
Мой «BatchSize» на самом деле намного больше (около 3000), но мои GT-Data очень тонкие на слой, поэтому я подумал, что, возможно, это возможно с разреженными тензорами.
В настоящий момент я переношу разреженный код в_dense, но это взрывает мою память.
Поэтому я ищу способ вычислить CrossEntropy с помощью разреженных тензоров , возможно, используя индексы и значения.

Подробнее здесь: https://stackoverflow.com/questions/793 ... se-tensors
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»