Pytorch - isneginf

Pytorch - isneginf
Vamos verificar se os elementos em um tensor são infinitos negativos ou não usando o método iSneginf () 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.isneginf ()

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

Sintaxe:

tocha.isneginf (tensor_object)

Parâmetro:

tensor_object é um tensor.

Retornar:

Ele retorna 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 negativos 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 negativo")
Imprimir (tocha.isneginf (data1))

Saída:

Tensor real:
Tensor ([12., 34., 56., 1., -inf])
Verifique se há infinito negativo
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 é infinito negativo (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 negativos 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 negativo")
Imprimir (tocha.isneginf (data1))
Saída:
Tensor real:
Tensor ([-Inf, 34., 56., nan, inf])
Verifique se há infinito negativo
tensor ([verdadeiro, falso, falso, falso, falso])

Trabalhando:

  1. O -inf é infinito negativo (verdadeiro)
  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, então não é infinito (falso)
  5. O inf é o infinito positivo, por isso não é negativo (falso)

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 negativos 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 negativo")
Imprimir (tocha.isneginf (data1))

Saída:

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

Trabalhando:

  1. O -inf é infinito negativo (verdadeiro), -inf é infinito negativo (verdadeiro).
  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 é infinito positivo (falso). O INF é infinito positivo (falso).

Trabalhe com a CPU

Se você deseja executar uma função isneginf () 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 negativos 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 negativo")
Imprimir (tocha.isneginf (data1))

Saída:

Tensor real:
Tensor ([12., 34., 56., 1., -inf])
Verifique se há infinito negativo
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 é infinito negativo (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 negativos 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 negativo")
Imprimir (tocha.isneginf (data1))

Saída:

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

Trabalhando:

  1. O -inf é infinito negativo (verdadeiro).
  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, então não é infinito (falso).
  5. O inf é o infinito positivo, por isso não é negativo (falso).

Exemplo 3:

Neste exemplo, criaremos um tensor com duas dimensões que possuem 5 elementos na CPU em cada linha e verifique se esses 5 elementos são infinitos negativos 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 negativo")
Imprimir (tocha.isneginf (data1))

Saída:

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

Trabalhando:

  1. O -inf é infinito negativo (verdadeiro). O -inf é infinito negativo (verdadeiro).
  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 é infinito positivo (falso). O INF é infinito positivo (falso).

Conclusão

Nesta lição de Pytorch, discutimos sobre o método isneginf (). Retorna falsa para os elementos se o elemento não for infinito negativo. Caso contrário, ele retorna verdadeiro.