Pytorch - Isinf

Pytorch - Isinf
Pytorch es un marco de código abierto para el lenguaje de programación de Python.

Un tensor es una matriz multidimensional que se utiliza para almacenar datos. Entonces, para usar un tensor tenemos que importar el módulo de antorcha.

Para crear un tensor, el método utilizado es tensor ().

Sintaxis:
antorcha.Tensor (datos)

Donde los datos son una matriz multidimensional.

antorcha.isinf ()

En Pytorch, isInf () devuelve verdadero para los elementos si el elemento es infinito (infinito positivo o infinito negativo). De lo contrario, devuelve falso.

Se necesita un parámetro.

Sintaxis:
antorcha.isinf (tensor_object)

Parámetro:
tensor_object es un tensor.

Devolver:
Devolverá un tensor booleano con respecto al tensor real.

Representación:

Infinito positivo - Float ('Inf')
Infinito negativo - Float (' - Inf')
No es un número - Float ('Nan')

Ejemplo 1:
En este ejemplo, crearemos un tensor con una dimensión que tenga cinco elementos y verificaremos si estos cinco son infinitos o no.

#módulo de antorcha de Import
antorcha de importación
#cree un tensor
datos1 = antorcha.tensor ([12,34,56,1, flotante ('inf')])
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprimir ("Verifique para infinito")
imprimir (antorcha.isinf (data1))

Producción:

Tensor real:
tensor ([12., 34., 56., 1., inf])
Verifique si hay infinito
tensor ([falso, falso, falso, falso, verdadero])

Laboral:

  1. 12 no es infinito, por lo que es finito (falso).
  2. 34 no es infinito, por lo que es finito (falso).
  3. 56 no es infinito, por lo que es finito (falso).
  4. 1 no es infinito, por lo que es finito (falso)).
  5. infinito es infinito, por lo que es infinito (verdadero).

Ejemplo 2:
En este ejemplo, crearemos un tensor con una dimensión que tenga cinco elementos y verificaremos si estos cinco son infinitos o no.

#módulo de antorcha de Import
antorcha de importación
#cree un tensor
datos1 = antorcha.tensor ([float ('-inf'), 34,56, float ('nan'), float ('inf')]))
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprimir ("Verifique para infinito")
imprimir (antorcha.isinf (data1))

Producción:

Tensor real:
tensor ([-inf, 34., 56., nan, inf])
Verifique si hay infinito
tensor ([verdadero, falso, falso, falso, verdadero])

Laboral:

  1. -INF es un infinito negativo, por lo que es infinito (verdadero).
  2. 34 no es ni infinito ni nan, por lo que es finito (falso).
  3. 56 no es ni infinito ni nan, por lo que es finito (falso).
  4. Nan no es un número, por lo que no es finito y no infinito (falso).
  5. infinito es infinito, por lo que es infinito (verdadero).

Ejemplo 3:
En este ejemplo, crearemos un tensor con dos dimensiones que tenga cinco elementos en cada fila y verificaremos si estos cinco son infinitos o no.

#módulo de antorcha de Import
antorcha de importación
#cree un tensor 2D
datos1 = antorcha.tensor ([[[float ('-inf'), 34,56, float ('nan'), float ('inf')], [float ('-inf'), 100, -4, float ('nan' ), float ('inf')]])
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprimir ("Verifique para infinito")
imprimir (antorcha.isinf (data1))

Producción:

Tensor real:
tensor ([[-inf, 34., 56., nan, inf],
[-inf, 100., -4., nan, inf]])
Verifique si hay infinito
tensor ([[verdadero, falso, falso, falso, verdadero],
[Verdadero, falso, falso, falso, verdadero]])

Laboral:

  1. -INF es negativo infinito, por lo que es infinito (verdadero) para ambos.
  2. 34 no es ni infinito ni nan, por lo que es finito (falso). 100 no es ni infinito ni nan, por lo que es finito (falso).
  3. 56 no es ni infinito ni nan, por lo que es finito (falso). -4 no es ni infinito ni nan, por lo que es finito (falso).
  4. nan no es un número, por lo que no es infinito (falso) para ambos.
  5. infinito es infinito, por lo que es infinito (verdadero) para ambos.

Trabajar con CPU

Si desea ejecutar una función isinf () en la CPU, entonces tenemos que crear un tensor con una función CPU (). Esto se ejecutará en una máquina CPU.

En este momento, cuando estamos creando un tensor, podemos usar la función CPU ().

Sintaxis:
antorcha.Tensor (datos).UPC()

Ejemplo 1:
En este ejemplo, crearemos un tensor con una dimensión que tenga cinco elementos en la CPU y verificaremos si estos cinco son infinitos o no.

#módulo de antorcha de Import
antorcha de importación
#cree un tensor
datos1 = antorcha.tensor ([12,34,56,1, flotante ('inf')]).UPC()
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprimir ("Verifique para infinito")
imprimir (antorcha.isinf (data1))

Producción:
Tensor real:
tensor ([12., 34., 56., 1., inf])
Verifique si hay infinito
tensor ([falso, falso, falso, falso, verdadero])

Laboral:

  1. 12 no es infinito, por lo que es finito (falso).
  2. 34 no es infinito, por lo que es finito (falso).
  3. 56 no es infinito, por lo que es finito (falso).
  4. 1 no es infinito, por lo que es finito (falso).
  5. infinito es infinito, por lo que es infinito (verdadero).

Ejemplo 2:
En este ejemplo, crearemos un tensor con una dimensión que tenga cinco elementos en la CPU y verificaremos si estos cinco son infinitos o no.

#módulo de antorcha de Import
Antorcha de importación
#cree un tensor
datos1 = antorcha.tensor ([float ('-inf'), 34,56, float ('nan'), float ('inf')])).UPC()
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprimir ("Verifique para infinito")
imprimir (antorcha.isinf (data1))

Producción:

Tensor real:
tensor ([-inf, 34., 56., nan, inf])
Verifique si hay infinito
tensor ([verdadero, falso, falso, falso, verdadero])

Laboral:

  1. -INF es un infinito negativo, por lo que es infinito (verdadero).
  2. 34 no es ni infinito ni nan, por lo que es finito (falso).
  3. 56 no es ni infinito ni nan, por lo que es finito (falso).
  4. Nan no es un número, por lo que no es finito y no infinito (falso).
  5. infinito es infinito, por lo que es infinito (verdadero).

Ejemplo 3:
En este ejemplo, crearemos un tensor con dos dimensiones que tenga cinco elementos en la CPU en cada fila y verificaremos si estos cinco son infinitos o no.

#módulo de antorcha de Import
antorcha de importación
#cree un tensor 2D
datos1 = antorcha.tensor ([[[float ('-inf'), 34,56, float ('nan'), float ('inf')], [float ('-inf'), 100, -4, float ('nan' ), float ('inf')]]).UPC()
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprimir ("Verifique para infinito")
imprimir (antorcha.isinf (data1))

Producción:

Tensor real:
tensor ([[-inf, 34., 56., nan, inf],
[-inf, 100., -4., nan, inf]])
Verifique si hay infinito
tensor ([[verdadero, falso, falso, falso, verdadero],
[Verdadero, falso, falso, falso, verdadero]])

Laboral:

  1. -INF es negativo infinito, por lo que es infinito (verdadero) para ambos.
  2. 34 no es ni infinito ni nan, por lo que es finito (falso). 100 no es ni infinito ni nan, por lo que es finito (falso).
  3. 56 no es ni infinito ni nan, por lo que es finito (falso). -4 no es ni infinito ni nan, por lo que es finito (falso).
  4. nan no es un número, por lo que no es infinito (falso) para ambos.
  5. INF es infinito, por lo que es infinito (verdadero) para ambos.

Conclusión

En esta lección de Pytorch, discutimos isinf (). Devuelve falso para los elementos si el elemento no es infinito. De lo contrario, devuelve verdadero. Los elementos que se encuentran bajo la categoría infinita son: -inf e INF.