Функция cumprod
Функция cumprod вычисляет кумулятивное произведение
элементов тензора вдоль заданной оси. Первым параметром
функция принимает тензор. Вторым параметром передается
ось axis, вдоль которой выполняется вычисление.
Третьим параметром можно передать флаг exclusive,
который исключает текущий элемент из произведения.
Четвертым параметром можно передать флаг reverse,
который меняет направление вычисления на противоположное.
Синтаксис
tf.cumprod(x, axis=0, exclusive=False, reverse=False, name=None)
Пример
Давайте вычислим кумулятивное произведение одномерного тензора:
import tensorflow as tf
t = tf.constant([1, 2, 3, 4, 5])
res = tf.cumprod(t)
print(res)
Результат выполнения кода:
tf.Tensor([ 1 2 6 24 120], shape=(5,), dtype=int32)
Пример
Давайте вычислим кумулятивное произведение
вдоль оси 0 для двумерного тензора:
Результат выполнения кода:
tf.Tensor(
[[ 1 2 3]
[ 4 10 18]], shape=(2, 3), dtype=int32)
Пример
Давайте вычислим кумулятивное произведение
вдоль оси 1 для двумерного тензора:
import tensorflow as tf
t = tf.constant([[1, 2, 3], [4, 5, 6]])
res = tf.cumprod(t, axis=1)
print(res)
Результат выполнения кода:
tf.Tensor(
[[ 1 2 6]
[ 4 20 120]], shape=(2, 3), dtype=int32)
Пример
Давайте вычислим кумулятивное произведение
с флагом exclusive, равным True:
import tensorflow as tf
t = tf.constant([1, 2, 3, 4, 5])
res = tf.cumprod(t, exclusive=True)
print(res)
Результат выполнения кода:
tf.Tensor([ 1 1 2 6 24], shape=(5,), dtype=int32)
Пример
Давайте вычислим кумулятивное произведение
с флагом reverse, равным True:
import tensorflow as tf
t = tf.constant([1, 2, 3, 4, 5])
res = tf.cumprod(t, reverse=True)
print(res)
Результат выполнения кода:
tf.Tensor([120 120 60 20 5], shape=(5,), dtype=int32)
Смотрите также
-
функцию
cumsum,
которая вычисляет кумулятивную сумму элементов тензора -
функцию
reduce_prod,
которая вычисляет произведение элементов тензора -
функцию
multiply,
которая выполняет поэлементное умножение тензоров -
функцию
reduce_sum,
которая вычисляет сумму элементов тензора