Spec-Zone.ru › TensorFlow 2.9

tf.test.compute_gradient

Просмотреть исходный код на GitHub

Вычисляет теоретический и численный якобиан f.

tf.test.compute_gradient(
    f, x, delta=None
)

При y = f(x), вычисляет теоретический и численный якобиан dy/dx.

Аргументы
f функция.
x аргументы функции в виде списка или кортежа значений, преобразуемых в тензор.
delta (необязательно) возмущение, используемое для вычисления численного якобиана.
Возвращаемое значение
Пара списков, где первый — список 2-мерных массивов NumPy, представляющих теоретические якобианы для каждого аргумента, а второй — список численных. Каждый 2-мерный массив имеет "y_size" строк и "x_size" столбцов, где "x_size" — количество элементов в соответствующем аргументе, а "y_size" — количество элементов в f(x).
Исключения
ValueError Если результат пуст, но градиент не равен нулю.
ValueError Если x не является списком, а является другим типом.

Пример:

@tf.function
def test_func(x):
  return x*x


class MyTest(tf.test.TestCase):

  def test_gradient_of_test_func(self):
    theoretical, numerical = tf.test.compute_gradient(test_func, [1.0])
    # ((array([[2.]], dtype=float32),),
    #  (array([[2.000004]], dtype=float32),))
    self.assertAllClose(theoretical, numerical)

© 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/versions/r2.9/api_docs/python/tf/test/compute_gradient

Spec-Zone.ru

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