Найти в Дзене
Вечный джун

PyTorch с нуля. Что есть в предложенном коде?

PyTorch это довольно обширная библиотека разработанная по большей части командой из Facebook. И тут они явно постарались на славу. Начав изучать PyTorch я первым делом полез в интернет чтобы найти какие-нибудь гайды или уроки потому что официальная документация показалась мне довольно непонятной для новичка. Наткнулся на довольно замечательный сайт neurohive, на котором была подробная инструкция как понять этот torch. Перейдём к коду для "общего понимания ситуации" Для начала создадим тензор где все элементы будут 0 (очень грубо говоря тензор это список из списков ну или матрица). import torch
x = torch.Tensor(2, 3) Должно вывести в х нечто подобное. 0 0 0
0 0 0
[torch.FloatTensor of size 2x3] Помимо этого можно создавать тензоры содержащие случайные числа и единицы. Можно умножать тензоры на число и складывать их между собой. x = torch.rand(2, 3) x = torch.ones(2,3) y = torch.ones(2,3) * 2 x + y И тут как можно догадаться мы получим 3 3 3
3 3 3
[torch.FloatTensor of size 2x3] Ну и

PyTorch это довольно обширная библиотека разработанная по большей части командой из Facebook. И тут они явно постарались на славу.

Начав изучать PyTorch я первым делом полез в интернет чтобы найти какие-нибудь гайды или уроки потому что официальная документация показалась мне довольно непонятной для новичка.

Наткнулся на довольно замечательный сайт neurohive, на котором была подробная инструкция как понять этот torch.

-2

Перейдём к коду для "общего понимания ситуации"

Для начала создадим тензор где все элементы будут 0 (очень грубо говоря тензор это список из списков ну или матрица).

import torch
x = torch.Tensor(2, 3)

Должно вывести в х нечто подобное.

0 0 0
0 0 0
[torch.FloatTensor of size 2x3]

Помимо этого можно создавать тензоры содержащие случайные числа и единицы. Можно умножать тензоры на число и складывать их между собой.

x = torch.rand(2, 3)
x = torch.ones(2,3)
y = torch.ones(2,3) * 2
x + y

И тут как можно догадаться мы получим

3 3 3
3 3 3
[torch.FloatTensor of size 2x3]
-3

Ну и под конец оказывается, что тут есть ещё и работа с функцией slice в numpy. В качестве примера прибавим к второму столбику y 1.

y[:,1] = y[:,1] + 1
2 3 2
2 3 2
[torch.FloatTensor of size 2x3]

Да, всё настолько просто.

В следующей статье перейдём в примером с вычислением градиента из кода на гибхабе.