Pytorch - isfinite

Pytorch - isfinite
Pytorch est un cadre open source pour le langage de programmation Python.

Un tenseur est un tableau multidimensionnel utilisé pour stocker les données. Donc, pour utiliser un tenseur, nous devons importer le module de torche.

Pour créer un tenseur, la méthode utilisée est tenseur ().

Syntaxe:
torche.tenseur (données)

Où les données sont un tableau multidimensionnel.

torche.isfinite ()

Isfinite () dans Pytorch renvoie vrai si l'élément n'est pas l'infini (par exemple, ils ne devraient pas être NAN, l'infini positif et l'infini négatif). Sinon, il renvoie faux. Il faut un paramètre.

Syntaxe:
torche.isfinite (Tensor_Object)

Paramètre:
Tensor_Object est un tenseur.

Retour:
Il renverra un tenseur booléen par rapport au tenseur réel.

Représentation:

Positive Infinity - Float ('Inf')
Infinity négatif - float ('- inf')
Pas un nombre - float ('nan')

Exemple 1:
Dans cet exemple, nous créerons un tenseur avec une dimension qui a cinq éléments et vérifierons si ces cinq sont finis ou non.

Module de torche #mport
Importer une torche
#create un tenseur
data1 = torche.tenseur ([12,34,56,1, float ('inf')])
#afficher
Imprimer ("Tensor réel:")
Imprimer (DATA1)
Imprimer ("Vérifier le fini")
imprimer (torche.isfinite (data1))

Sortir:

Tensor réel:
tenseur ([12., 34., 56., 1., inf]))
Vérifier les fins
Tensor ([vrai, vrai, vrai, vrai, faux])

Fonctionnement:

  1. 12 n'est ni l'infini ni le nan, il est donc fini (vrai).
  2. 34 n'est ni l'infini ni le nan, il est donc fini (vrai).
  3. 56 n'est ni l'infini ni le nan, il est donc fini (vrai).
  4. 1 n'est ni l'infini ni le nan, il est donc fini (vrai).
  5. L'inf est l'infini donc ce n'est pas fini (faux).

Exemple 2:
Dans cet exemple, nous créerons un tenseur avec une dimension qui a cinq éléments et vérifierons si ces cinq sont finis ou non.

Module de torche #mport
Importer une torche
#create un tenseur
data1 = torche.Tensor ([float ('- inf'), 34,56, float ('nan'), float ('inf')])
#afficher
Imprimer ("Tensor réel:")
Imprimer (DATA1)
Imprimer ("Vérifier le fini")
imprimer (torche.isfinite (data1))

Sortir:

Tensor réel:
Tensor ([- Inf, 34., 56., nan, inf])
Vérifier les fins
Tensor ([faux, vrai, vrai, faux, faux])

Fonctionnement:

  1. -L'inf est une infinité négative, ce n'est donc pas fini (faux).
  2. 34 n'est ni l'infini ni le nan, il est donc fini (vrai).
  3. 56 n'est ni l'infini ni le nan, il est donc fini (vrai).
  4. Nan n'est pas un nombre, donc il n'est pas fini (faux).
  5. L'inf est l'infini, ce n'est donc pas fini (faux).

Exemple 3:
Dans cet exemple, nous créerons un tenseur avec deux dimensions qui a cinq éléments dans chaque ligne et vérifierons si ces cinq sont finis ou non.

Module de torche #mport
Importer une torche
#create un tenseur 2D
data1 = torche.Tensor ([[float ('- inf'), 34,56, float ('nan'), float ('inf')], [float ('- inf'), 100, -4, float ('nan' ), float ('inf')]])
#afficher
Imprimer ("Tensor réel:")
Imprimer (DATA1)
Imprimer ("Vérifier le fini")
imprimer (torche.isfinite (data1))

Sortir:

Tensor réel:
tenseur ([[- inf, 34., 56., nan, inf],
[-inf, 100., -4., nan, inf]])
Vérifier les fins
Tensor ([[faux, vrai, vrai, faux, faux],
[Faux, vrai, vrai, faux, faux]])

Fonctionnement:

  1. -L'inf est l'infini négatif, il n'est donc pas fini (faux) pour les deux.
  2. 34 n'est ni l'infini ni le nan, il est donc fini (vrai). 100 n'est ni l'infini ni le nan, il est donc fini (vrai).
  3. 56 n'est ni l'infini ni le nan, il est donc fini (vrai). -4 n'est ni l'infini ni le nan, il est donc fini (vrai).
  4. Nan n'est pas un nombre, il n'est donc pas fini (faux) pour les deux.
  5. L'inf est l'infini, il n'est donc pas fini (faux) pour les deux.

Travailler avec le processeur

Si vous souhaitez exécuter une fonction isfinite () sur le CPU, alors nous devons créer un tenseur avec une fonction CPU (). Cela fonctionnera sur une machine CPU.

Pour le moment, lorsque nous créons un tenseur, nous pouvons utiliser la fonction CPU ().

Syntaxe:
torche.tenseur (données).CPU()

Exemple 1:
Dans cet exemple, nous créerons un tenseur avec une dimension qui a cinq éléments sur le CPU et vérifierons si ces cinq sont finis ou non.

Module de torche #mport
Importer une torche
#create un tenseur
data1 = torche.tenseur ([12,34,56,1, float ('inf')]).CPU()
#afficher
Impression («Tensor réel:«)
Imprimer (DATA1)
Imprimer («Vérifier le fini»)
imprimer (torche.isfinite (data1))

Sortir:

Tensor réel:
tenseur ([12., 34., 56., 1., inf]))
Vérifier les fins
Tensor ([vrai, vrai, vrai, vrai, faux])

Fonctionnement:

  1. 12 n'est ni l'infini ni le nan, il est donc fini (vrai).
  2. 34 n'est ni l'infini ni le nan, il est donc fini (vrai).
  3. 56 n'est ni l'infini ni le nan, il est donc fini (vrai).
  4. 1 n'est ni l'infini ni le nan, il est donc fini (vrai).
  5. L'inf est l'infini, ce n'est donc pas fini (faux).

Exemple 2:
Dans cet exemple, nous créerons un tenseur avec une dimension qui a cinq éléments sur le CPU et vérifierons si ces cinq sont finis ou non.

Module de torche #mport
Importer une torche
#create un tenseur
data1 = torche.Tensor ([float ('- inf'), 34,56, float ('nan'), float ('inf')]).CPU()
#afficher
Impression («Tensor réel:«)
Imprimer (DATA1)
Imprimer («Vérifier le fini»)
imprimer (torche.isfinite (data1))

Sortir:

Tensor réel:
Tensor ([- Inf, 34., 56., nan, inf])
Vérifier les fins
Tensor ([faux, vrai, vrai, faux, faux])

Fonctionnement:

  1. -L'inf est une infinité négative, ce n'est donc pas fini (faux).
  2. 34 n'est ni l'infini ni le nan, il est donc fini (vrai).
  3. 56 n'est ni l'infini ni le nan, il est donc fini (vrai).
  4. Nan n'est pas un nombre, donc il n'est pas fini (faux).
  5. L'inf est l'infini, ce n'est donc pas fini (faux).

Exemple 3:
Dans cet exemple, nous créerons un tenseur avec deux dimensions qui a cinq éléments sur le CPU dans chaque ligne et vérifier si ces cinq sont finis ou non.

Module de torche #mport
Importer une torche
#create un tenseur 2D
data1 = torche.Tensor ([[float ('- inf'), 34,56, float ('nan'), float ('inf')], [float ('- inf'), 100, -4, float ('nan' ), float ('inf')]]).CPU()
#afficher
Impression («Tensor réel:«)
Imprimer (DATA1)
Imprimer («Vérifier le fini»)
imprimer (torche.isfinite (data1))

Sortir:

Tensor réel:
tenseur ([[- inf, 34., 56., nan, inf],
[-inf, 100., -4., nan, inf]])
Vérifier les fins
Tensor ([[faux, vrai, vrai, faux, faux],
[Faux, vrai, vrai, faux, faux]])

Fonctionnement:

  1. -L'inf est l'infini négatif, il n'est donc pas fini (faux) pour les deux.
  2. 34 n'est ni l'infini ni le nan, il est donc fini (vrai). 100 n'est ni l'infini ni le nan, il est donc fini (vrai).
  3. 56 n'est ni l'infini ni le nan, il est donc fini (vrai). -4 n'est ni l'infini ni le nan, il est donc fini (vrai).
  4. Nan n'est pas un nombre, il n'est donc pas fini (faux) pour les deux.
  5. L'inf est l'infini, il n'est donc pas fini (faux) pour les deux.

Conclusion

Dans cette leçon de pytorch, nous avons discuté d'Isfinite (). Il revient vrai pour les éléments si l'élément n'est pas l'infini ou le nan. Sinon, il renvoie faux. Les éléments qui relèvent de la catégorie infinie sont -inf et inf.