Оптимизировать функцию факела, которая заменяет нулевые элементы первым встреченным ненулевым элементом. ⇐ Python
Оптимизировать функцию факела, которая заменяет нулевые элементы первым встреченным ненулевым элементом.
Я хочу переписать эту функцию, чтобы улучшить производительность. Я хотел бы использовать только основные функции torch и избегать использования циклов for. Следующая функция заменяет нулевые элементы первыми ненулевыми элементами по порядку:
Неоптимизированный код:
last_val=0 для i в диапазоне (t.shape[0]-1, -1, -1): если (t > 0): последнее_значение = т[я] еще: t = последнее_значение Ввод:
t = torch.tensor([0, 0, 5, 0, 0, 7, 0, 8, 9]) Ожидаемый результат:
t = torch.tensor([5, 5, 5, 7, 7, 7, 8, 8, 9])
Я хочу переписать эту функцию, чтобы улучшить производительность. Я хотел бы использовать только основные функции torch и избегать использования циклов for. Следующая функция заменяет нулевые элементы первыми ненулевыми элементами по порядку:
Неоптимизированный код:
last_val=0 для i в диапазоне (t.shape[0]-1, -1, -1): если (t > 0): последнее_значение = т[я] еще: t = последнее_значение Ввод:
t = torch.tensor([0, 0, 5, 0, 0, 7, 0, 8, 9]) Ожидаемый результат:
t = torch.tensor([5, 5, 5, 7, 7, 7, 8, 8, 9])
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Разреженность факела с использованием версии CUDA среды вместо версии факела
Anonymous » » в форуме Python - 0 Ответы
- 36 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Java `
.replace` не заменяет разрывы строк, а ` .replaceAll` заменяет. Почему? [закрыто]
Anonymous » » в форуме JAVA - 0 Ответы
- 61 Просмотры
-
Последнее сообщение Anonymous
-