РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗pytfSpTpMv 26 of 89 menu
◀ ▶

Несколько переменных в TensorFlow

Чтобы не открывать ленту заново для каждой переменной, вторым аргументом метода gradient передают список источников. Ответ приходит списком тензоров в том же порядке.

Создадим две переменные, сложим их квадраты и выведем обе производные:

import tensorflow as tf x = tf.Variable(2.0) w = tf.Variable(3.0) with tf.GradientTape() as tape: y = x * x + w * w grads = tape.gradient(y, [x, w]) print(grads[0]) # выведет tf.Tensor(4.0, shape=(), dtype=float32) print(grads[1]) # выведет tf.Tensor(6.0, shape=(), dtype=float32)

Тот же приём работает в линейной формуле с тремя участниками - вес, смещение и вход:

import tensorflow as tf x = tf.Variable(2.0) w = tf.Variable(3.0) b = tf.Variable(1.0) with tf.GradientTape() as tape: y = w * x + b grads = tape.gradient(y, [w, b, x]) print(grads[0]) # выведет tf.Tensor(2.0, shape=(), dtype=float32) print(grads[1]) # выведет tf.Tensor(1.0, shape=(), dtype=float32) print(grads[2]) # выведет tf.Tensor(3.0, shape=(), dtype=float32)

Заведите переменные с числами 5.0 и 2.0, постройте на ленте сумму их квадратов и выведите обе частные производные одним запросом.

Создайте переменные-коэффициенты 4.0 и 1.0, переменную-аргумент 3.0 и на ленте посчитайте линейную комбинацию коэффициентов с аргументом плюс свободный член 0.5 из константы. Выведите производные по всем трём переменным.

Задайте две переменные-ряда 1.0, 2.0 и 3.0, 4.0, сложите их поэлементно на ленте и получите градиенты по обоим рядам списком.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить