Spec-Zone.ru › TensorFlow 2.3

tf.compat.v1.foldl

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

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

Этот оператор foldl многократно применяет вызываемый объект fn к последовательности элементов от первого до последнего. Элементы состоят из тензоров, распакованных из elems по размерности 0. Вызываемый объект 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]]):.

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

Пример:

elems = tf.constant([1, 2, 3, 4, 5, 6])
sum = foldl(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/foldl

Spec-Zone.ru

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