В чем разница между view и view_as в PyTorch?

#pytorch

#pytorch

Вопрос:

Я создаю нейронные сети в Pytorch, я вижу, что view и view_as используются взаимозаменяемо в различных реализациях, в чем разница между ними?

Ответ №1:

view и view_as очень похожи, с небольшим отличием. В view() в качестве параметра должна быть передана форма требуемого выходного тензора, тогда как в view_as() передается тензор, форму которого нужно имитировать.

tensor.view_as(other) эквивалентно tensor.view(other.size())

Комментарии:

1. чего я никогда не понимал, так это разницы между view и reshaping (как в numpy). Вы знаете, в чем разница?

2. Должен ли размер / форма tensor amp; other быть одинаковыми? Например: a = torch.arange(1,17) amp; b = torch.arange(101,110). Работает ли это?: a.view_as(b)

3. @AvidLearner количество элементов в каждом тензоре должно быть одинаковым для использования view_as() .