Spec-Zone.ru › TensorFlow

tf.test.compute_gradient

Вычисляет теоретическое и численное Якобиан 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/api_docs/python/tf/test/compute_gradient

Spec-Zone.ru

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