Spec-Zone.ru › TensorFlow 2.4

tf.compat.v1.batch_scatter_update

Обобщение tf.compat.v1.scatter_update на ось, отличную от 0. (устарело)

tf.compat.v1.batch_scatter_update(
    ref, indices, updates, use_locking=True, name=None
)
Предупреждение: ЭТА ФУНКЦИЯ УСТАРЕЛА. Она будет удалена после 29 ноября 2018 года. Инструкции по обновлению: используйте метод batch_scatter_update переменной вместо неё.

Аналогично batch_gather. Предполагается, что ref, indices и updates имеют серию ведущих измерений, которые одинаковы для всех них, а обновления выполняются на последнем измерении индексов. Другими словами, измерения должны быть следующими:

num_prefix_dims = indices.ndims - 1 batch_dim = num_prefix_dims + 1 updates.shape = indices.shape + var.shape[batch_dim:]

где

updates.shape[:num_prefix_dims] == indices.shape[:num_prefix_dims] == var.shape[:num_prefix_dims]

И выполняемая операция может быть выражена как:

var[i_1, ..., i_n, indices[i_1, ..., i_n, j]] = updates[i_1, ..., i_n, j]

Когда indices — это тензор размерности 1, эта операция эквивалентна tf.compat.v1.scatter_update.

Чтобы избежать этой операции, есть 2 альтернативы:

1) Изменение формы переменной путём объединения первых ndims измерений. Однако это невозможно, потому что tf.reshape возвращает Tensor, на котором нельзя использовать tf.compat.v1.scatter_update. 2) Перебор первых ndims измерений переменной и применение tf.compat.v1.scatter_update к подтензорам, полученным путём среза первого измерения. Это допустимый вариант для ndims = 1, но менее эффективен, чем это реализация.

См. также tf.compat.v1.scatter_update и tf.compat.v1.scatter_nd_update.

Аргументы
ref Переменная, на которую нужно произвести разброс.
indices Тензор, содержащий индексы, как описано выше.
updates Тензор обновлений, которые нужно применить к ref.
use_locking Булево значение, указывающее, нужно ли заблокировать операцию записи.
name Строка с необязательным именем области.
Возвращаемое значение
Ссылка на variable после её изменения.
Исключения
ValueError Если начальные ndims ref, indices, и updates не совпадают.

© 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/r2.3/api_docs/python/tf/compat/v1/batch_scatter_update

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API