tf.scatter_update
Применяет разреженные обновления к ссылке на переменную.
tf.scatter_update(
ref, indices, updates, use_locking=True, name=None
)
Эта операция вычисляет
# Scalar indices ref[indices, ...] = updates[...] # Vector indices (for each i) ref[indices[i], ...] = updates[i, ...] # High rank indices (for each i, ..., j) ref[indices[i, ..., j], ...] = updates[i, ..., j, ...]
Эта операция выводит ref после выполнения обновления. Это упрощает цепочку операций, которым нужно использовать значение после сброса.
Если значения в ref нужно обновить более одного раза, потому что в indices есть дубликаты, порядок обновлений для каждого значения не определен.
Требует updates.shape = indices.shape + ref.shape[1:].
| Аргументы | |
|---|---|
ref | Переменная. |
indices | Целочисленная тензор. Должен быть одного из следующих типов: int32, int64. Тензор индексов в первом измерении ref. |
updates | Тензор. Должен иметь тот же тип, что и ref. Тензор обновленных значений, которые нужно сохранить в ref. |
use_locking | Необязательный булев. По умолчанию True. Если True, присвоение будет защищено блокировкой; в противном случае поведение не определено, но может наблюдаться меньше конкуренции. |
name | Имя операции (необязательно). |
| Возвращаемое значение | |
|---|---|
То же, что и ref. Возвращается для удобства операций, которые хотят использовать обновлённые значения после обновления. |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/scatter_update