Deep Learning Academy · Lekcja

requires_grad i graf obliczeń

Śledzić operacje, aby móc je różniczkować

Lekcja 1 z 413 kroki

requires_grad i graf obliczeń to bezpłatna lekcja Deep Learning Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Deep Learning Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Deep Learning Academy zawiera 4 lekcji w sumie.

Rachunek różniczkowy załatwiony za Państwa

Trenowanie wymaga pochodnych, ale nie trzeba obliczać ich ręcznie. autograd w PyTorch analizuje wykonywane operacje matematyczne i oblicza za Państwa każdy gradient. 🤖

Tensory mogą śledzić obliczenia samodzielnie

Tensor uzyskuje gradienty dopiero na żądanie. Ustaw requires_grad na true, a PyTorch zacznie rejestrować każdą wykonaną na nim operację.

x = torch.tensor(2.0, requires_grad=True)

Co jest rejestrowane

Każdy krok matematyczny wykonany na śledzonym tensorze jest zapisywany jako węzeł. Razem węzły te tworzą graf obliczeń, który opisuje, jak powstał wynik.

Graf jest przepisem

Potraktuj graf jak przepis: dane wejściowe są na górze, operacje pośrodku, a końcowa funkcja straty na dole. Autograd odczytuje go od końca, aby znaleźć gradienty.

Budowany na bieżąco

PyTorch używa grafu dynamicznego: jest on tworzony podczas wykonywania kodu, a nie wcześniej. Zwykłe pętle i instrukcje if w Pythonie działają w nim bez problemu.

Wyniki pozostają powiązane

Każdy tensor utworzony na podstawie śledzonego tensora również jest śledzony. W tym przypadku y pamięta, że powstał z x, więc jego grad_fn wskazuje z powrotem na operację podnoszenia do kwadratu.

y = x ** 2
print(y.grad_fn)

Liście a węzły obliczone

Tensory utworzone bezpośrednio przez Państwa są węzłami liściowymi. Tensory powstałe w wyniku operacji są węzłami wewnętrznymi, które prowadzą z powrotem do tych liści.

grad_fn nazywa operację

Każdy obliczony tensor zawiera grad_fn, który informuje autograd, jaka operacja go utworzyła, na przykład PowBackward lub AddBackward. Liście nie mają grad_fn.

Bez śledzenia nie ma grafu

Jeśli tensor ma requires_grad ustawione na false, autograd go ignoruje i nie tworzy grafu. Oszczędza to pamięć, gdy nie potrzebują Państwo gradientów.

Dlaczego graf ma znaczenie

To graf umożliwia przejście wsteczne. Bez zarejestrowanej historii PyTorch nie wiedziałby, jak strata zależy od poszczególnych wag.

Piszą Państwo tylko przejście w przód

Najlepsze jest to, że kodują Państwo tylko obliczenia forward. Autograd po cichu składa graf, dzięki czemu gradienty są gotowe, gdy tylko ich Państwo zażądają.

Szybki test

Sprawdź swoją znajomość grafu.

Podsumowanie

Ustaw requires_grad, a PyTorch zapisze obliczenia w grafie obliczeń. To zapisana historia, którą autograd później odczytuje od końca, aby znaleźć każdy gradient. ✨

Bezpłatny start

Ucz się Python dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
30
Lekcje
120

Często zadawane pytania

Czy lekcja „requires_grad i graf obliczeń” jest bezpłatna?

Tak — pełny tekst „requires_grad i graf obliczeń” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Deep Learning Academy, przejdź na CoddyKit PRO. Kurs Deep Learning Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „requires_grad i graf obliczeń”?

Śledzić operacje, aby móc je różniczkować Ćwiczysz Deep Learning Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Deep Learning Academy?

Nie wymagamy żadnego doświadczenia. Deep Learning Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.

Ile czasu zajmuje lekcja „requires_grad i graf obliczeń”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Deep Learning Academy?

Tak. Każda lekcja Deep Learning Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. requires_grad i graf obliczeń
  2. Wywołać backward(), aby uzyskać gradienty
  3. Odczytywanie i zerowanie .grad
  4. torch.no_grad() podczas inferencji
← Powrót do Deep Learning Academy