Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Градієнти в PyTorch | Секція
Practice
Projects
Quizzes & Challenges
Вікторини
Challenges
/
PyTorch: Основи для ML-Інженера

bookГрадієнти в PyTorch

Note
Визначення

Підсумовуючи, градієнти — це часткові похідні функції за її вхідними параметрами.

Градієнти є основою для задач оптимізації, таких як навчання нейронних мереж, де вони допомагають коригувати ваги та зсуви для мінімізації помилки. У PyTorch вони обчислюються автоматично за допомогою модуля autograd, який відстежує операції над тензорами та ефективно обчислює похідні.

Увімкнення відстеження градієнтів

Щоб увімкнути відстеження градієнтів для тензора, використовується аргумент requires_grad=True під час створення тензора. Це повідомляє PyTorch відстежувати всі операції над тензором для обчислення градієнтів.

1234
import torch # Create a tensor with gradient tracking enabled tensor = torch.tensor(2.0, requires_grad=True) print(tensor)
copy

Побудова обчислювального графа

PyTorch створює динамічний обчислювальний граф під час виконання операцій над тензорами з requires_grad=True. Цей граф зберігає зв'язки між тензорами та операціями, забезпечуючи автоматичне диференціювання.

Почнемо з визначення досить простої поліноміальної функції:

y = 5x3 + 2x2 + 4x + 8

Мета — обчислити похідну за x при x = 2.

123456
import torch # Define the tensor x = torch.tensor(2.0, requires_grad=True) # Define the function y = 5 * x ** 3 + 2 * x ** 2 + 4 * x + 8 print(f"Function output: {y}")
copy

Візуалізація цієї обчислювальної графіки, створеної за допомогою бібліотеки PyTorchViz, може виглядати дещо складною, але вона ефективно передає основну ідею:

Обчислення градієнтів

Для обчислення градієнта необхідно викликати метод backward() для вихідного тензора. Це обчислює похідну функції відносно вхідного тензора.

Обчислений градієнт можна отримати через атрибут .grad.

12345678
import torch x = torch.tensor(2.0, requires_grad=True) y = 5 * x ** 3 + 2 * x ** 2 + 4 * x + 8 # Perform backpropagation y.backward() # Print the gradient of x grad = x.grad print(f"Gradient of x: {grad}")
copy

Обчислений градієнт — це похідна y за x, обчислена при x = 2.

question mark

Як отримати обчислений градієнт тензора після зворотного поширення у PyTorch?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 1. Розділ 11

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

bookГрадієнти в PyTorch

Свайпніть щоб показати меню

Note
Визначення

Підсумовуючи, градієнти — це часткові похідні функції за її вхідними параметрами.

Градієнти є основою для задач оптимізації, таких як навчання нейронних мереж, де вони допомагають коригувати ваги та зсуви для мінімізації помилки. У PyTorch вони обчислюються автоматично за допомогою модуля autograd, який відстежує операції над тензорами та ефективно обчислює похідні.

Увімкнення відстеження градієнтів

Щоб увімкнути відстеження градієнтів для тензора, використовується аргумент requires_grad=True під час створення тензора. Це повідомляє PyTorch відстежувати всі операції над тензором для обчислення градієнтів.

1234
import torch # Create a tensor with gradient tracking enabled tensor = torch.tensor(2.0, requires_grad=True) print(tensor)
copy

Побудова обчислювального графа

PyTorch створює динамічний обчислювальний граф під час виконання операцій над тензорами з requires_grad=True. Цей граф зберігає зв'язки між тензорами та операціями, забезпечуючи автоматичне диференціювання.

Почнемо з визначення досить простої поліноміальної функції:

y = 5x3 + 2x2 + 4x + 8

Мета — обчислити похідну за x при x = 2.

123456
import torch # Define the tensor x = torch.tensor(2.0, requires_grad=True) # Define the function y = 5 * x ** 3 + 2 * x ** 2 + 4 * x + 8 print(f"Function output: {y}")
copy

Візуалізація цієї обчислювальної графіки, створеної за допомогою бібліотеки PyTorchViz, може виглядати дещо складною, але вона ефективно передає основну ідею:

Обчислення градієнтів

Для обчислення градієнта необхідно викликати метод backward() для вихідного тензора. Це обчислює похідну функції відносно вхідного тензора.

Обчислений градієнт можна отримати через атрибут .grad.

12345678
import torch x = torch.tensor(2.0, requires_grad=True) y = 5 * x ** 3 + 2 * x ** 2 + 4 * x + 8 # Perform backpropagation y.backward() # Print the gradient of x grad = x.grad print(f"Gradient of x: {grad}")
copy

Обчислений градієнт — це похідна y за x, обчислена при x = 2.

question mark

Як отримати обчислений градієнт тензора після зворотного поширення у PyTorch?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 1. Розділ 11
some-alt