Spec-Zone.ru › TensorFlow

tf.get_static_value

Возвращает постоянное значение заданного тензора, если его можно вычислить с высокой эффективностью.

Альтернативные имена

Псевдонимы совместимости для миграции

Подробнее см. в руководстве по миграции.

tf.compat.v1.get_static_value

tf.get_static_value(
    tensor, partial=False
)

Используется в блокнотах

Используется в руководствах
  • Байесовское моделирование с совместным распределением

Эта функция пытается частично вычислить заданный тензор и, если это удается, возвращает его значение в виде массива numpy ndarray.

Пример использования:

a = tf.constant(10)
tf.get_static_value(a)
10
b = tf.constant(20)
tf.get_static_value(tf.add(a, b))
30
# `tf.Variable` is not supported.
c = tf.Variable(30)
print(tf.get_static_value(c))
None

Параметр partial наиболее актуален при вызове get_static_value внутри tf.function. Если установить значение True, функция вернет результаты, а для значений, которые невозможно вычислить, вернет None. Например:

class Foo:
  def __init__(self):
    self.a = tf.Variable(1)
    self.b = tf.constant(2)

  @tf.function
  def bar(self, partial):
    packed = tf.raw_ops.Pack(values=[self.a, self.b])
    static_val = tf.get_static_value(packed, partial=partial)
    tf.print(static_val)

f = Foo()
f.bar(partial=True)  # `array([None, array(2, dtype=int32)], dtype=object)`
f.bar(partial=False)  # `None`

Совместимость (V1): если constant_value(tensor) возвращает результат, отличный от None, для tensor больше нельзя будет передать другое значение. Это позволяет результату этой функции влиять на создаваемый граф и обеспечивает оптимизацию статических форм.

Аргументы
tensor Тензор, который необходимо вычислить.
partial Если значение равно True, возвращаемый массив numpy может содержать частично вычисленные значения. Значения, которые невозможно вычислить, будут равны None.
Возвращает
Массив numpy ndarray, содержащий постоянное значение заданного tensor, или None, если вычислить его невозможно.
Вызывает исключение
TypeError если тензор не является объектом tensor.Tensor.

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

Spec-Zone.ru

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