Spec-Zone.ru › TensorFlow 2.4

tf.clip_by_value

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

Ограничивает значения тензора до заданного минимума и максимума.

Просмотр псевдонимов

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

См. Руководство по миграции для получения более подробной информации.

tf.compat.v1.clip_by_value

tf.clip_by_value(
    t, clip_value_min, clip_value_max, name=None
)

Для данного тензора t, эта операция возвращает тензор того же типа и формы, что и t, с его значениями, ограниченными clip_value_min и clip_value_max. Любые значения меньше clip_value_min устанавливаются в clip_value_min. Любые значения больше clip_value_max устанавливаются в clip_value_max.

Примечание: clip_value_min должно быть меньше или равно clip_value_max для правильных результатов.

Например:

Базовое использование передает скаляр в качестве минимального и максимального значения.

t = tf.constant([[-10., -1., 0.], [0., 2., 10.]])
t2 = tf.clip_by_value(t, clip_value_min=-1, clip_value_max=1)
t2.numpy()
array([[-1., -1.,  0.],
       [ 0.,  1.,  1.]], dtype=float32)

Минимум и максимум могут иметь тот же размер, что и t, или быть согласуемыми с этим размером.

t = tf.constant([[-1, 0., 10.], [-1, 0, 10]])
clip_min = [[2],[1]]
t3 = tf.clip_by_value(t, clip_value_min=clip_min, clip_value_max=100)
t3.numpy()
array([[ 2.,  2., 10.],
       [ 1.,  1., 10.]], dtype=float32)

Расширение, преднамеренно, не выполняется, если вы хотите увеличить размерность t

t = tf.constant([[-1, 0., 10.], [-1, 0, 10]])
clip_min = [[[2, 1]]] # Has a third axis
t4 = tf.clip_by_value(t, clip_value_min=clip_min, clip_value_max=100)
Traceback (most recent call last):

InvalidArgumentError: Incompatible shapes: [2,3] vs. [1,1,2]

Возникает ошибка TypeError, если вы пытаетесь ограничить int значением float (tf.cast вход в float сначала).

t = tf.constant([[1, 2], [3, 4]], dtype=tf.int32)
t5 = tf.clip_by_value(t, clip_value_min=-3.1, clip_value_max=3.1)
Traceback (most recent call last):

TypeError: Cannot convert ...
Аргументы
t A Tensor или IndexedSlices.
clip_value_min Минимальное значение ограничения. Скаляр Tensor или значение, которое можно согласовать с формой t.
clip_value_max Максимальное значение ограничения. Скаляр Tensor или значение, которое можно согласовать с формой t.
name Имя операции (необязательно).
Возвращаемое значение
Ограниченный Tensor или IndexedSlices.
Возможные исключения
tf.errors.InvalidArgumentError: Если ограничение тензоров вызовет расширение массива, которое сделает возвращаемый тензор больше, чем входной.
TypeError Если тип данных входа int32 и тип данных clip_value_min или clip_value_max float32

© 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.4/api_docs/python/tf/clip_by_value

Spec-Zone.ru

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