Pytorch - isposinf

Pytorch - isposinf
Verificaremos se os elementos em um tensor são infinitos positivos ou não usando o método ISPOSINF () neste tutorial de Pytorch.

Pytorch é uma estrutura de código aberto disponível com uma linguagem de programação Python. Tensor é uma matriz multidimensional usada para armazenar os dados. Para usar um tensor, temos que importar o módulo da tocha. Para criar um tensor, o método usado é tensor ().

Sintaxe:

tocha.Tensor (dados)

Onde os dados são uma matriz multidimensional.

Tocha.isposinf ()

Isposinf () em pytorch retorna true para os elementos se o elemento for um infinito positivo. Caso contrário, ele retorna falso. É preciso um parâmetro.

Sintaxe:

tocha.isposinf (tensor_object)

Parâmetro:

tensor_object é um tensor.

Retornar:

Ele retornará um tensor booleano em relação ao tensor real.

Representação:

Infinito positivo - Float ('Inf')
Infinito negativo - Float (' - Inf')
Não é um número - Float ('nan')

Exemplo 1:

Neste exemplo, criaremos um tensor com uma dimensão que tenha 5 elementos e verifique se esses 5 elementos são infinitos positivos ou não.

#import módulo tocha
importação de tocha
#Crie um tensor
Data1 = Torch.Tensor ([12,34,56,1, Float ('Inf']]))
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprima ("Verifique infinito positivo")
Imprimir (tocha.ISPOSINF (Data1))

Saída:

Tensor real:
Tensor ([12., 34., 56., 1., inf])
Verifique se há infinito positivo
tensor ([falso, falso, falso, falso, verdadeiro])

Trabalhando:

  1. Doze (12) não é infinito, então é finito (falso)
  2. Trinta e quatro (34) não é infinito, por isso é finito (falso)
  3. Cinqüenta e seis (56) não são infinitos, por isso é finito (falso)
  4. Um (1) não é infinito, então é finito (falso)
  5. O inf é o infinito positivo (verdadeiro)

Exemplo 2:

Neste exemplo, criaremos um tensor com uma dimensão que tenha 5 elementos e verifique se esses 5 elementos são infinitos positivos ou não.

#import módulo tocha
importação de tocha
#Crie um tensor
Data1 = Torch.Tensor ([Float ('-Inf'), 34,56, Float ('Nan'), Float ('Inf')]))
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprima ("Verifique infinito positivo")
Imprimir (tocha.ISPOSINF (Data1))

Saída:

Tensor real:
Tensor ([-Inf, 34., 56., nan, inf])
Verifique se há infinito positivo
tensor ([falso, falso, falso, falso, verdadeiro])

Trabalhando:

  1. O -inf é infinito negativo, por isso não é infinito positivo (falso).
  2. Trinta e quatro (34) não é infinito nem nan, então é finito (falso).
  3. Cinqüenta e seis (56) não são infinitos nem nan, então é finito (falso).
  4. A nan não é um número, por isso não é finito e não infinito (falso).
  5. O inf é o infinito positivo (verdadeiro).

Exemplo 3:

Neste exemplo, criaremos um tensor com duas dimensões que possuem 5 elementos em cada linha e verificaremos se esses 5 elementos são infinitos positivos ou não.

#import módulo tocha
importação de tocha
#Crie um tensor 2D
Data1 = Torch.tensor ([[float ('-inf'), 34,56, float ('nan'), float ('inf')], [float ('-inf'), 100, -4, float ('nan' ), Float ('Inf')]])
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprima ("Verifique infinito positivo")
Imprimir (tocha.ISPOSINF (Data1))

Saída:

Tensor real:
Tensor ([[-Inf, 34., 56., nan, inf],
[-inf, 100., -4., nan, inf]])
Verifique se há infinito positivo
tensor ([[falso, falso, falso, falso, verdadeiro],
[Falso, falso, falso, falso, verdadeiro]))

Trabalhando:

  1. O -inf é infinito negativo, por isso não é infinito positivo (falso). O -inf é infinito negativo, por isso não é infinito positivo (falso).
  2. Trinta e quatro (34) não é infinito nem nan, então é finito (falso). Cem (100) não é infinito nem nan, então é finito (falso).
  3. Cinqüenta e seis (56) não são infinitos nem nan, então é finito (falso). Four negativo (-4) não é infinito nem nan, então é finito (falso).
  4. A nan não é um número, por isso não é infinita (falsa). A nan não é um número, por isso não é infinita (falsa).
  5. O inf é o infinito positivo (verdadeiro). O inf é o infinito positivo (verdadeiro).

Trabalhe com a CPU

Se você deseja executar uma função isposinf () na CPU, temos que criar um tensor com uma função CPU (). Isso será executado em uma máquina de CPU.

Quando criamos um tensor, desta vez, podemos usar a função CPU ().

Sintaxe:

tocha.Tensor (dados).CPU()

Exemplo 1:

Neste exemplo, criaremos um tensor com uma dimensão que tenha 5 elementos na CPU e verifique se esses 5 elementos são infinitos positivos ou não.

#import módulo tocha
importação de tocha
#Crie um tensor
Data1 = Torch.Tensor ([12,34,56,1, Float ('Inf']])).CPU()
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprima ("Verifique infinito positivo")
Imprimir (tocha.ISPOSINF (Data1))

Saída:

Tensor real:
Tensor ([12., 34., 56., 1., inf])
Verifique se há infinito positivo
tensor ([falso, falso, falso, falso, verdadeiro])

Trabalhando:

  1. Doze (12) não é infinito, então é finito (falso).
  2. Trinta e quatro (34) não é infinito, por isso é finito (falso).
  3. Cinqüenta e seis (56) não são infinitos, por isso é finito (falso).
  4. Um (1) não é infinito, então é finito (falso).
  5. O inf é o infinito positivo (verdadeiro).

Exemplo 2:

Neste exemplo, criaremos um tensor com uma dimensão que tenha 5 elementos na CPU e verifique se esses 5 elementos são infinitos positivos ou não.

#import módulo tocha
importação de tocha
#Crie um tensor
Data1 = Torch.Tensor ([Float ('-Inf'), 34,56, Float ('Nan'), Float ('Inf')])).CPU()
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprima ("Verifique infinito positivo")
Imprimir (tocha.ISPOSINF (Data1))

Saída:

Tensor real:
Tensor ([-Inf, 34., 56., nan, inf])
Verifique se há infinito positivo
tensor ([falso, falso, falso, falso, verdadeiro])

Trabalhando:

  1. O -inf é infinito negativo, por isso não é infinito positivo (falso).
  2. Trinta e quatro (34) não é infinito nem nan, então é finito (falso).
  3. Cinqüenta e seis (56) não são infinitos nem nan, então é finito (falso).
  4. A nan não é um número, por isso não é finito e não infinito (falso).
  5. O inf é o infinito positivo (verdadeiro).

Exemplo 3:

Neste exemplo, criaremos um tensor com duas dimensões que possuem 5 elementos em cada linha e verifique se esses 5 elementos são infinitos positivos ou não.

#import módulo tocha
importação de tocha
#Crie um tensor 2D
Data1 = Torch.tensor ([[float ('-inf'), 34,56, float ('nan'), float ('inf')], [float ('-inf'), 100, -4, float ('nan' ), Float ('Inf')]]).CPU()
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprima ("Verifique infinito positivo")
Imprimir (tocha.ISPOSINF (Data1))

Saída:

Tensor real:
Tensor ([[-Inf, 34., 56., nan, inf],
[-inf, 100., -4., nan, inf]])
Verifique se há infinito positivo
tensor ([[falso, falso, falso, falso, verdadeiro],
[Falso, falso, falso, falso, verdadeiro]))

Trabalhando:

  1. O -inf é infinito negativo, por isso não é infinito positivo (falso). O -inf é infinito negativo, por isso não é infinito positivo (falso).
  2. Trinta e quatro (34) não é infinito nem nan, então é finito (falso). Cem (100) não é infinito nem nan, então é finito (falso).
  3. Cinqüenta e seis (56) não são infinitos nem nan, então é finito (falso). Four negativo (-4) não é infinito nem nan, então é finito (falso).
  4. A nan não é um número, por isso não é infinita (falsa). A nan não é um número, por isso não é infinita (falsa).
  5. O inf é o infinito positivo (verdadeiro). O inf é o infinito positivo (verdadeiro).

Conclusão

Nesta lição de Pytorch, discutimos sobre a função isposinf (). Retorna falsa para os elementos se o elemento não for positivo infinito. Caso contrário, ele retorna verdadeiro.