PyTorch - Terminologie
W tym rozdziale omówimy niektóre z najczęściej używanych terminów w PyTorch.
PyTorch NumPy
Tensor PyTorch jest identyczny z tablicą NumPy. Tensor jest tablicą n-wymiarową iw odniesieniu do PyTorch zapewnia wiele funkcji do działania na tych tensorach.
Tensory PyTorch zwykle wykorzystują GPU do przyspieszenia swoich obliczeń numerycznych. Te tensory, które są tworzone w PyTorch, mogą być używane do dopasowania sieci dwuwarstwowej do losowych danych. Użytkownik może ręcznie realizować przejścia do przodu i do tyłu przez sieć.
Zmienne i Autograd
Podczas korzystania z autograd przekazanie do przodu twojej sieci zdefiniuje plik computational graph - węzły na wykresie będą tensorami, a krawędzie będą funkcjami, które generują tensory wyjściowe z tensorów wejściowych.
PyTorch Tensory można tworzyć jako obiekty zmienne, w których zmienna reprezentuje węzeł na wykresie obliczeniowym.
Dynamiczne wykresy
Wykresy statyczne są fajne, ponieważ użytkownik może z góry zoptymalizować wykres. Jeśli programiści wielokrotnie używają tego samego wykresu, wówczas ta potencjalnie kosztowna wstępna optymalizacja może zostać utrzymana, ponieważ ten sam wykres jest ciągle powtarzany.
Główna różnica między nimi polega na tym, że wykresy obliczeniowe Tensor Flow są statyczne, a PyTorch wykorzystuje dynamiczne wykresy obliczeniowe.
Pakiet Optim
Pakiet optymalizujący w PyTorch abstrahuje od idei algorytmu optymalizacji, który jest implementowany na wiele sposobów i dostarcza ilustracji powszechnie używanych algorytmów optymalizacji. Można to wywołać w instrukcji import.
Wieloprocesowość
Wieloprocesorowość obsługuje te same operacje, więc wszystkie tensory działają na wielu procesorach. Kolejka będzie miała swoje dane przeniesione do pamięci współdzielonej i wyśle tylko dojście do innego procesu.