tf.compat.v1.assign_sub
Обновить ref, вычитая value из него.
tf.compat.v1.assign_sub(
ref, value, use_locking=None, name=None
)
Переход к TF2
tf.compat.v1.assign_sub в основном совместим с выполнением в режиме eager и tf.function.
Чтобы перейти к стилю родного TF2, можно использовать метод 'assign_sub' класса tf.Variable:
Как сопоставить аргументы
| Имя аргумента TF1 | Имя аргумента TF2 | Примечание |
|---|---|---|
ref | self | В методе assign_sub() |
value | value | В методе assign_sub() |
use_locking | use_locking | В методе assign_sub() |
name | name | В методе assign_sub() |
| - |
read_value | Установите в True для воспроизведения поведения (True — значение по умолчанию) |
Пример использования до и после
До:
with tf.Graph().as_default():
with tf.compat.v1.Session() as sess:
a = tf.compat.v1.Variable(1, dtype=tf.int64)
sess.run(a.initializer)
update_op = tf.compat.v1.assign_sub(a, 1)
res_a = sess.run(update_op)
res_a
0После:
b = tf.Variable(1, dtype=tf.int64) res_b = b.assign_sub(1) res_b.numpy() 0
Описание
Данная операция выводит ref после завершения обновления. Это упрощает цепочку операций, которым требуется использовать обновленное значение. В отличие от tf.math.subtract, данная операция не осуществляет векторизацию. ref и value должны иметь одинаковую форму.
| Аргументы | |
|---|---|
ref | Изменяемая Tensor. Должен быть одного из следующих типов: float32, float64, int64, int32, uint8, uint16, int16, int8, complex64, complex128, qint8, quint8, qint32, half. Должен быть из узла Variable. |
value | Tensor. Должен иметь такую же форму и тип данных, что и ref. Значение, которое будет вычитаться из переменной. |
use_locking | Необязательное bool. По умолчанию False. Если True, вычитание будет защищено блокировкой; в противном случае поведение не определено, но может проявлять меньшую конкуренцию. |
name | Имя операции (необязательно). |
| Возвращаемое значение | |
|---|---|
То же, что и ref. Возвращается для удобства операций, которые хотят использовать новое значение после обновления переменной. |
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/compat/v1/assign_sub