Spec-Zone.ru › TensorFlow

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

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

Spec-Zone.ru

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