Метод assign_sub класса Variable
Метод assign_sub применяется к объекту класса Variable и вычитает переданное значение из текущего значения переменной, сохраняя результат в этой же переменной. Первым параметром метод принимает значение, которое нужно вычесть. Это значение может быть числом, тензором или другой переменной. Метод возвращает саму переменную, что позволяет строить цепочки вызовов.
Синтаксис
variable.assign_sub(delta, [use_locking], [name])
Пример
Давайте создадим переменную со значением 5 и вычтем из неё число 3:
import tensorflow as tf
v = tf.Variable(5)
res = v.assign_sub(3)
print(res)
print(v.numpy())
Результат выполнения кода:
<tf.Variable 'Variable:0' shape=() dtype=int32, numpy=2>
2
Пример
Давайте создадим переменную из тензора чисел и вычтем из неё другой тензор:
import tensorflow as tf
v = tf.Variable(tf.constant([1, 2, 3, 4, 5]))
res = v.assign_sub(tf.constant([1, 1, 1, 1, 1]))
print(res)
print(v.numpy())
Результат выполнения кода:
<tf.Variable 'Variable:0' shape=(5,) dtype=int32, numpy=array([0, 1, 2, 3, 4], dtype=int32)>
[0 1 2 3 4]
Пример
Давайте создадим двумерную переменную и вычтем из неё число:
import tensorflow as tf
v = tf.Variable(tf.constant([[1, 2, 3], [4, 5, 6]]))
res = v.assign_sub(1)
print(res)
print(v.numpy())
Результат выполнения кода:
<tf.Variable 'Variable:0' shape=(2, 3) dtype=int32, numpy=
array([[0, 1, 2],
[3, 4, 5]], dtype=int32)>
[[0 1 2]
[3 4 5]]
Смотрите также
-
метод
assign,
который присваивает переменной новое значение -
метод
assign_add,
который прибавляет значение к переменной -
класс
Variable,
который создает изменяемый тензор -
метод
numpy,
который возвращает значение переменной как массив NumPy