Spec-Zone.ru › TensorFlow 2.3

tf.compat.v1.foldr

foldr по списку тензоров, распакованных из elems по размерности 0.

tf.compat.v1.foldr(
    fn, elems, initializer=None, parallel_iterations=10, back_prop=True,
    swap_memory=False, name=None
)

Этот оператор foldr многократно применяет вызываемую функцию fn к последовательности элементов от последнего к первому. Элементы состоят из тензоров, распакованных из elems. Вызываемая функция fn принимает два тензора в качестве аргументов. Первый аргумент — это накопленное значение, вычисленное от предыдущего вызова fn, а второй — значение в текущей позиции elems. Если initializer равно None, elems должно содержать как минимум один элемент, и его первый элемент используется в качестве инициализатора.

Предположим, что elems распаковывается в values, список тензоров. Форма результирующего тензора — fn(initializer, values[0]).shape.

Этот метод также поддерживает многоарность elems и вывод fn. Если elems представляет собой (возможно, вложенный) список или кортеж тензоров, то каждый из этих тензоров должен иметь совпадающую первую (распакованную) размерность. Подпись fn может соответствовать структуре elems. То есть, если elems равно (t1, [t2, t3, [t4, t5]]), то соответствующей подписью для fn является: fn = lambda (t1, [t2, t3, [t4, t5]]):.

Аргументы
fn Вызываемая функция для выполнения.
elems Тензор или (возможно, вложенная) последовательность тензоров, каждый из которых будет распакован по первой размерности. Вложенная последовательность результирующих срезов будет первым аргументом для fn.
initializer (необязательно) Тензор или (возможно, вложенная) последовательность тензоров в качестве начального значения для аккумулятора.
parallel_iterations (необязательно) Количество итераций, разрешенных для параллельного выполнения.
back_prop (необязательно) True включает поддержку обратного распространения.
swap_memory (необязательно) True включает обмен памятью между GPU и CPU.
name (необязательно) Префикс имени для возвращаемых тензоров.
Возвращаемые значения
Тензор или (возможно, вложенная) последовательность тензоров, полученные в результате последовательного применения fn к списку тензоров, распакованных из elems, от последнего к первому.
Исключения
TypeError если fn не является вызываемой функцией.

Пример:

elems = [1, 2, 3, 4, 5, 6]
sum = foldr(lambda a, x: a + x, elems)
# sum == 21

© 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/foldr

Spec-Zone.ru

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