Python – tensorflow.clip_by_global_norm()

<p><a href=”https://www.geeksforgeeks.org/introduction-to-tensorflow/”>TensorFlow</a> es una biblioteca de Python de código abierto diseñada por Google para desarrollar modelos de aprendizaje automático y redes neuronales de aprendizaje profundo. .

clip_by_global_norm() se usa para recortar valores de múltiples tensores por la proporción de la suma de sus normas. 

Sintaxis:   tensorflow.clip_by_global_norm( t_list, clip_norm, use_norm, nombre)

Parámetros:

  • t_list: Es una tupla o lista de Tensores mixtos, IndexedSlices.
  • clip_norm: Es un tensor escalar 0-D. Define la relación de recorte y debe ser mayor que 0.
  • use_norm (opcional): Es un tensor escalar 0-D. Define la norma a utilizar. Si no se pasa ninguno , se utiliza global_norm() para calcular la norma.
  • name(opcional): Define el nombre de la operación.

Devoluciones:

  • list_clipped: Es una lista de tensores recortados del mismo tipo que t_list.
  • norma_global: Es un tensor 0-D que representa la norma_global.

Ejemplo 1:

Python3

# Importing the library
import tensorflow as tf
  
# Initializing the input tensor
t_list = [tf.constant([1, 2, 3, 4], dtype = tf.float64), tf.constant([5, 6, 7, 8], dtype = tf.float64)]
clip_norm = .8
use_norm = tf.constant(1.0, dtype = tf.float64)
  
# Printing the input tensor
print('t_lis: ', t_list)
print('clip_norm: ', clip_norm)
print('use_norm: ', use_norm)
  
# Calculating tangent
res = tf.clip_by_global_norm(t_list, clip_norm, use_norm)
  
# Printing the result
print('Result: ', res)

Producción:

t_lis:  [<tf.Tensor: shape=(4, ), dtype=float64, numpy=array([1., 2., 3., 4.])>, <tf.Tensor: shape=(4, ), dtype=float64, numpy=array([5., 6., 7., 8.])>]
clip_norm:  0.8
use_norm:  tf.Tensor(1.0, shape=(), dtype=float64)
Result:  ([<tf.Tensor: shape=(4, ), dtype=float64, numpy=array([0.8, 1.6, 2.4, 3.2])>, <tf.Tensor: shape=(4, ), dtype=float64, numpy=array([4., 4.8, 5.6, 6.4])>], <tf.Tensor: shape=(), dtype=float64, numpy=1.0>)




Ejemplo 2: en este ejemplo, no se pasa ninguno a use_norm, por lo que se usará global_norm() para encontrar la norma.

Python3

# Importing the library
import tensorflow as tf
  
# Initializing the input tensor
t_list = [tf.constant([1, 2, 3, 4], dtype = tf.float64), tf.constant([5, 6, 7, 8], dtype = tf.float64)]
clip_norm = .8
  
# Printing the input tensor
print('t_lis: ', t_list)
print('clip_norm: ', clip_norm)
  
# Calculating tangent
res = tf.clip_by_global_norm(t_list, clip_norm)
  
# Printing the result
print('Result: ', res)

Producción:

t_lis:  [<tf.Tensor: shape=(4, ), dtype=float64, numpy=array([1., 2., 3., 4.])>, <tf.Tensor: shape=(4, ), dtype=float64, numpy=array([5., 6., 7., 8.])>]
clip_norm:  0.8
Result:  ([<tf.Tensor: shape=(4, ), dtype=float64, numpy=array([0.0560112, 0.11202241, 0.16803361, 0.22404481])>, <tf.Tensor: shape=(4, ), dtype=float64, numpy=array([0.28005602, 0.33606722, 0.39207842, 0.44808963])>], <tf.Tensor: shape=(), dtype=float64, numpy=14.2828568570857>)


Publicación traducida automáticamente

Artículo escrito por aman neekhara y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *