Pytorch - ISposinf

Pytorch - ISposinf
Verificheremo se gli elementi in un tensore sono infiniti positivi o non utilizzano il metodo ISposInf () in questo tutorial Pytorch.

Pytorch è un framework open source disponibile con un linguaggio di programmazione Python. Il tensore è un array multidimensionale che viene utilizzato per archiviare i dati. Per usare un tensore, dobbiamo importare il modulo Torch. Per creare un tensore, il metodo utilizzato è tensore ().

Sintassi:

torcia.tensore (dati)

Dove i dati sono un array multidimensionale.

Torcia.isposinf ()

ISposinf () in Pytorch restituisce vero per gli elementi se l'elemento è positivo all'infinito. Altrimenti, restituisce falso. Ci vuole un parametro.

Sintassi:

torcia.ISPOSInf (Tensor_Object)

Parametro:

tensor_object è un tensore.

Ritorno:

Restituirà un tensore booleano rispetto al tensore effettivo.

Rappresentazione:

Infinito positivo - float ('inf')
Infinito negativo - float (' - inf')
Non un numero - float ('nan')

Esempio 1:

In questo esempio, creeremo un tensore con una dimensione che ha 5 elementi e verificheremo se questi 5 elementi sono infiniti positivi o no.

Modulo Torcia #IMport
Torcia di importazione
#Crea un tensore
data1 = torcia.tensore ([12,34,56,1, float ('inf')])
#Schermo
Stampa ("Tensore reale:")
Stampa (Data1)
Stampa ("Controlla Positive Infinite")
Stampa (torcia.ISPOSInf (data1))

Produzione:

Tensor reale:
tensore ([12., 34., 56., 1., INF])
Controlla l'infinito positivo
tensore ([falso, false, false, false, true])

Lavorando:

  1. Dodici (12) non sono infiniti, quindi è finito (falso)
  2. Trentaquattro (34) non sono infiniti, quindi è finito (falso)
  3. Cinquantasei (56) non è infinito, quindi è finito (falso)
  4. Uno (1) non è infinito, quindi è finito (falso)
  5. L'inf è positivo infinito (vero)

Esempio 2:

In questo esempio, creeremo un tensore con una dimensione che ha 5 elementi e verificheremo se questi 5 elementi sono infiniti positivi o no.

Modulo Torcia #IMport
Torcia di importazione
#Crea un tensore
data1 = torcia.tensore ([float ('-inf'), 34,56, float ('nan'), float ('inf')])
#Schermo
Stampa ("Tensore reale:")
Stampa (Data1)
Stampa ("Controlla Positive Infinite")
Stampa (torcia.ISPOSInf (data1))

Produzione:

Tensor reale:
tensore ([-inf, 34., 56., nan, inf])
Controlla l'infinito positivo
tensore ([falso, false, false, false, true])

Lavorando:

  1. L'inf è infinito negativo, quindi non è positivo infinito (falso).
  2. Trentaquattro (34) non sono né infinito né NAN, quindi è finito (falso).
  3. Cinquantasei (56) non è né infinito né NAN, quindi è finito (falso).
  4. Il NAN non è un numero, quindi non è finito e non infinito (falso).
  5. L'inf è positivo infinito (vero).

Esempio 3:

In questo esempio, creeremo un tensore con due dimensioni che ha 5 elementi in ogni riga e verificheremo se questi 5 elementi sono infiniti positivi o no.

Modulo Torcia #IMport
Torcia di importazione
#Crea un tensore 2D
data1 = torcia.tensore ([[float ('-inf'), 34,56, float ('nan'), float ('inf')], [float ('-inf'), 100, -4, float ('nan' ), float ('inf')]])
#Schermo
Stampa ("Tensore reale:")
Stampa (Data1)
Stampa ("Controlla Positive Infinite")
Stampa (torcia.ISPOSInf (data1))

Produzione:

Tensor reale:
tensore ([[-inf, 34., 56., nan, inf],
[-inf, 100., -4., nan, inf]))
Controlla l'infinito positivo
tensore ([[falso, falso, false, false, vero],
[Falso, falso, false, false, true]])

Lavorando:

  1. L'inf è infinito negativo, quindi non è positivo infinito (falso). L'inf è infinito negativo, quindi non è positivo infinito (falso).
  2. Trentaquattro (34) non sono né infinito né NAN, quindi è finito (falso). Cento (100) non è né infinito né nan, quindi è finito (falso).
  3. Cinquantasei (56) non è né infinito né NAN, quindi è finito (falso). Negativo quattro (-4) non è né infinito né nan, quindi è finito (falso).
  4. Il NAN non è un numero, quindi non è infinito (falso). Il NAN non è un numero, quindi non è infinito (falso).
  5. L'inf è positivo infinito (vero). L'inf è positivo infinito (vero).

Lavorare con la CPU

Se si desidera eseguire una funzione ISposInf () sulla CPU, dobbiamo creare un tensore con una funzione CPU (). Questo funzionerà su una macchina CPU.

Quando creiamo un tensore, questa volta, possiamo usare la funzione CPU ().

Sintassi:

torcia.tensore (dati).processore()

Esempio 1:

In questo esempio, creeremo un tensore con una dimensione che ha 5 elementi sulla CPU e verificheremo se questi 5 elementi sono infiniti positivi o no.

Modulo Torcia #IMport
Torcia di importazione
#Crea un tensore
data1 = torcia.tensore ([12,34,56,1, float ('inf')]).processore()
#Schermo
Stampa ("Tensore reale:")
Stampa (Data1)
Stampa ("Controlla Positive Infinite")
Stampa (torcia.ISPOSInf (data1))

Produzione:

Tensor reale:
tensore ([12., 34., 56., 1., INF])
Controlla l'infinito positivo
tensore ([falso, false, false, false, true])

Lavorando:

  1. Dodici (12) non sono infiniti, quindi è finito (falso).
  2. Trentaquattro (34) non sono infiniti, quindi è finito (falso).
  3. Cinquantasei (56) non è infinito, quindi è finito (falso).
  4. Uno (1) non è infinito, quindi è finito (falso).
  5. L'inf è positivo infinito (vero).

Esempio 2:

In questo esempio, creeremo un tensore con una dimensione che ha 5 elementi sulla CPU e verificheremo se questi 5 elementi sono infiniti positivi o no.

Modulo Torcia #IMport
Torcia di importazione
#Crea un tensore
data1 = torcia.tensore ([float ('-inf'), 34,56, float ('nan'), float ('inf')]).processore()
#Schermo
Stampa ("Tensore reale:")
Stampa (Data1)
Stampa ("Controlla Positive Infinite")
Stampa (torcia.ISPOSInf (data1))

Produzione:

Tensor reale:
tensore ([-inf, 34., 56., nan, inf])
Controlla l'infinito positivo
tensore ([falso, false, false, false, true])

Lavorando:

  1. L'inf è infinito negativo, quindi non è positivo infinito (falso).
  2. Trentaquattro (34) non sono né infinito né NAN, quindi è finito (falso).
  3. Cinquantasei (56) non è né infinito né NAN, quindi è finito (falso).
  4. Il NAN non è un numero, quindi non è finito e non infinito (falso).
  5. L'inf è positivo infinito (vero).

Esempio 3:

In questo esempio, creeremo un tensore con due dimensioni che ha 5 elementi in ogni riga e verificheremo se questi 5 elementi sono infiniti positivi o no.

Modulo Torcia #IMport
Torcia di importazione
#Crea un tensore 2D
data1 = torcia.tensore ([[float ('-inf'), 34,56, float ('nan'), float ('inf')], [float ('-inf'), 100, -4, float ('nan' ), float ('inf')]]).processore()
#Schermo
Stampa ("Tensore reale:")
Stampa (Data1)
Stampa ("Controlla Positive Infinite")
Stampa (torcia.ISPOSInf (data1))

Produzione:

Tensor reale:
tensore ([[-inf, 34., 56., nan, inf],
[-inf, 100., -4., nan, inf]))
Controlla l'infinito positivo
tensore ([[falso, falso, false, false, vero],
[Falso, falso, false, false, true]])

Lavorando:

  1. L'inf è infinito negativo, quindi non è positivo infinito (falso). L'inf è infinito negativo, quindi non è positivo infinito (falso).
  2. Trentaquattro (34) non sono né infinito né NAN, quindi è finito (falso). Cento (100) non è né infinito né nan, quindi è finito (falso).
  3. Cinquantasei (56) non è né infinito né NAN, quindi è finito (falso). Negativo quattro (-4) non è né infinito né nan, quindi è finito (falso).
  4. Il NAN non è un numero, quindi non è infinito (falso). Il NAN non è un numero, quindi non è infinito (falso).
  5. L'inf è positivo infinito (vero). L'inf è positivo infinito (vero).

Conclusione

In questa lezione di Pytorch, abbiamo discusso della funzione ISposinf (). Restituisce falso per gli elementi se l'elemento non è positivo all'infinito. Altrimenti, restituisce vero.