Pytorch - Cummin

Pytorch - Cummin
Pytorch é uma estrutura de código aberto para a linguagem de programação Python.

Um tensor é uma matriz multidimensional que é usada para armazenar dados. Então, 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.Cummin ()

O mínimo cumulativo de elementos em um tensor bidimensional entre linhas ou colunas é retornado pela tocha.Cummin (). Ele também retorna os índices de valores mínimos retornados.

Sintaxe:

tocha.Cummin (tensor_object, dim)

Parâmetros:

  1. É preciso tensor_object como o primeiro parâmetro. Tem que ser bidimensional.
  2. Dim = 0 Especifica a computação em coluna e Dim = 1 Especifica a computação em linha.

Exemplo 1:

Neste exemplo, criaremos um tensor que tenha quatro linhas e quatro colunas e retorne o mínimo cumulativo de cada elemento em toda a linha.

#import módulo tocha
importação de tocha
#Crere Tensor
Data1 = Torch.tensor ([[2,3,4,5], [1,3,5,3], [2,3,2,1], [2,3,4,2]]))
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprimir ("Mínimo cumulativo em toda a linha:")
#Return Cumulative Minimum
Imprimir (tocha.Cummin (Data1,1))

Saída:

Tensor real:
tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2])
Mínimo cumulativo através da linha:
tocha.return_types.Cummin (
valores = tensor ([[2, 2, 2, 2],
[1, 1, 1, 1],
[2, 2, 2, 1],
[2, 2, 2, 2]]),
índices = tensor ([[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 2, 3],
[0, 0, 0, 3]]))

Trabalhando:
Row-1: 2, mínimo (2,3), mínimo (2,3,4), mínimo (2,3,4,5) = [2, 2, 2, 2]

Portanto, [2,2,2,2] posições de índice no tensor real são - [0,0,0,0]

Linha 2: 1, mínima (1,3), mínima (1,3,5), mínima (1,3,5,3) = [1,1,1,1]

Portanto, [1,1,1,1] posições de índice no tensor real são - [0,0,0,0]

Linha 3: 2, mínimo (2,3), mínimo (2,3,2), mínimo (2,3,2,1) = [2,2,2,1]

Portanto, [2,2,2,1] posições de índice no tensor real são - [0,0,2,3]

Linha 4: 2, mínimo (2,3), mínimo (2,3,4), mínimo (2,3,4,2) = [2,2,2,2]

Portanto, [2,2,2,2] posições de índice no tensor real são - [0,0,0,3]

Exemplo 2:

Neste exemplo, criaremos um tensor que possui quatro linhas e quatro colunas e retornaremos o mínimo cumulativo de cada elemento em toda a coluna.

#import módulo tocha
importação de tocha
#Crere Tensor
Data1 = Torch.tensor ([[2,3,4,5], [1,3,5,3], [2,3,2,1], [2,3,4,2]]))
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprima ("Mínimo cumulativo em toda a coluna:")
#Return Cumulative Minimum
Imprimir (tocha.Cummin (Data1,0))

Saída:

Tensor real:
tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2])
Mínimo cumulativo em toda a coluna:
tocha.return_types.Cummin (
valores = tensor ([[2, 3, 4, 5],
[1, 3, 4, 3],
[1, 3, 2, 1],
[1, 3, 2, 1]]),
índices = tensor ([[0, 0, 0, 0],
[1, 1, 0, 1],
[1, 2, 2, 2],
[1, 3, 2, 2]]))

Trabalhando:

Coluna-1: 2, mínimo (2,1), mínimo (2,1,2), mínimo (2,1,2,2) = [2, 1,1,1]

Então, [2, 1,1,1] posições de índice no tensor real são - [0,1,1,1]

Coluna-2: 3, mínimo (3,3), mínimo (3,3,3), mínimo (3,3,3,3) = [3,3,3,3]

Portanto, [3,3,3,3] posições de índice no tensor real são - [0,1,2,3]

Coluna 3: 4, mínima (4,5), mínima (4,5,2), mínima (4,5,2,4) = [4,4,2,2]

Portanto, [4,4,2,2] posições de índice no tensor real são - [0,0,2,2]

Coluna-4: 5, mínima (5,3), mínima (5,3,1), mínima (5,3,1,2) = [5,3,1,1]

Portanto, [5,3,1,1] posições de índice no tensor real são - [0,1,2,2]

Trabalhe com a CPU

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

Neste momento, quando estamos criando um tensor, podemos usar a função CPU ().

Sintaxe:

tocha.Tensor (dados).CPU()

Exemplo 1:

Neste exemplo, criaremos um tensor que tenha quatro linhas e quatro colunas na CPU e retorne o mínimo cumulativo de cada elemento em toda a linha.

#import módulo tocha
importação de tocha
#Crere Tensor
Data1 = Torch.tensor ([[2,3,4,5], [1,3,5,3], [2,3,2,1], [2,3,4,2]])).CPU()
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprimir ("Mínimo cumulativo em toda a linha:")
#Return Cumulative Minimum
Imprimir (tocha.Cummin (Data1,1))

Saída:

Tensor real:
tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2])
Mínimo cumulativo através da linha:
tocha.return_types.Cummin (
valores = tensor ([[2, 2, 2, 2],
[1, 1, 1, 1],
[2, 2, 2, 1],
[2, 2, 2, 2]]),
índices = tensor ([[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 2, 3],
[0, 0, 0, 3]]))

Trabalhando:

Row-1: 2, mínimo (2,3), mínimo (2,3,4), mínimo (2,3,4,5) = [2, 2, 2, 2]

Portanto, [2,2,2,2] posições de índice no tensor real são - [0,0,0,0]

Linha 2: 1, mínima (1,3), mínima (1,3,5), mínima (1,3,5,3) = [1,1,1,1]

Portanto, [1,1,1,1] posições de índice no tensor real são - [0,0,0,0]

Linha 3: 2, mínimo (2,3), mínimo (2,3,2), mínimo (2,3,2,1) = [2,2,2,1]

Portanto, [2,2,2,1] posições de índice no tensor real são - [0,0,2,3]

Linha 4: 2, mínimo (2,3), mínimo (2,3,4), mínimo (2,3,4,2) = [2,2,2,2]

Portanto, [2,2,2,2] posições de índice no tensor real são - [0,0,0,3]

Exemplo 2:

Neste exemplo, criaremos um tensor que tenha quatro linhas e quatro colunas na CPU e retorne o mínimo cumulativo de cada elemento em toda a coluna.

#import módulo tocha
importação de tocha
#Crere Tensor
Data1 = Torch.tensor ([[2,3,4,5], [1,3,5,3], [2,3,2,1], [2,3,4,2]])).CPU()
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprima ("Mínimo cumulativo em toda a coluna:")
#Return Cumulative Minimum
Imprimir (tocha.Cummin (Data1,0))

Saída:

Tensor real:
tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2])
Mínimo cumulativo em toda a coluna:
tocha.return_types.Cummin (
valores = tensor ([[2, 3, 4, 5],
[1, 3, 4, 3],
[1, 3, 2, 1],
[1, 3, 2, 1]]),
índices = tensor ([[0, 0, 0, 0],
[1, 1, 0, 1],
[1, 2, 2, 2],
[1, 3, 2, 2]]))

Trabalhando:

Coluna-1: 2, mínimo (2,1), mínimo (2,1,2), mínimo (2,1,2,2) = [2, 1,1,1]

Então, [2, 1,1,1] posições de índice no tensor real são - [0,1,1,1]

Coluna-2: 3, mínimo (3,3), mínimo (3,3,3), mínimo (3,3,3,3) = [3,3,3,3]

Portanto, [3,3,3,3] posições de índice no tensor real são - [0,1,2,3]

Coluna 3: 4, mínima (4,5), mínima (4,5,2), mínima (4,5,2,4) = [4,4,2,2]

Portanto, [4,4,2,2] posições de índice no tensor real são - [0,0,2,2]

Coluna-4: 5, mínima (5,3), mínima (5,3,1), mínima (5,3,1,2) = [5,3,1,1]

Portanto, [5,3,1,1] posições de índice no tensor real são - [0,1,2,2]

Conclusão

Neste tutorial de Pytorch, vimos como realizar uma operação mínima cumulativa em um tensor usando a tocha.função cummin (). Ele retorna o mínimo cumulativo de elementos em um tensor bidimensional e também indexa as posições de valores mínimos entre linhas ou entre colunas. Também implementamos essa função na CPU usando a função CPU ().