Como acessar e modificar os valores do Tensor no PyTorch?

Como Acessar E Modificar Os Valores Do Tensor No Pytorch



PyTorch é uma estrutura de aprendizado profundo que permite aos usuários criar/definir e manipular tensores. Tensores são matrizes multidimensionais que podem armazenar dados/valores de diversos tipos e formas. Porém, às vezes, os usuários desejam acessar e modificar o conteúdo ou valores específicos do tensor desejado. Nesta situação, eles podem utilizar diferentes métodos para realizar esta operação.

Este blog irá ilustrar os métodos para acessar e modificar os valores dos tensores no PyTorch.

Como acessar e modificar os valores/conteúdo do Tensor no PyTorch?

Para obter e modificar os valores dos tensores no PyTorch, dois métodos podem ser usados:







Método 1: acessar e modificar os valores do tensor usando indexação

A indexação é uma forma de selecionar um elemento específico ou um intervalo de elementos de um tensor específico com base em sua posição. Os usuários precisam usar colchetes “ [ ] ”Para acessar os elementos ao longo de cada dimensão do tensor. No caso de um tensor 2D, os elementos podem ser acessados ​​na linha “i” e na coluna “j” usando “tensor[i,j]”. Para fazer isso, siga as etapas fornecidas:



Etapa 1: importar biblioteca PyTorch

Primeiro, importe o “ tocha ' biblioteca:



importar tocha

Etapa 2: crie um tensor

Em seguida, use o “ tocha.tensor() ”Função para criar um tensor desejado e imprimir seus elementos. Por exemplo, estamos criando um tensor 2D “ dezenas1 ”com dimensões 2×3:





dezenas1 = tocha. tensor ( [ [ 2 , 9 , 5 ] , [ 7 , 1 , 4 ] ] )

imprimir ( dezenas1 )

Isso criou o tensor 2D conforme visto abaixo:



Etapa 3: acessar os valores do tensor usando indexação

Agora acesse os valores desejados do tensor pelo seu índice. Por exemplo, especificamos o índice “[1][2]” do “ dezenas1 ”Para acessar seu valor e armazená-lo em uma variável chamada“ elemento_temp ”. Isso acessará o valor presente na segunda linha e terceira coluna:

elemento_temp = dezenas1 [ 1 ] [ 2 ]

imprimir ( elemento_temp )

Aqui: ' [1] ”significa a segunda linha e“ [2] ”Significa a terceira coluna porque a indexação começa em“ 0 ”.

Pode-se observar que o valor desejado foi acessado a partir do tensor, ou seja, “4”:

Etapa 4: modificar os valores do tensor usando indexação

Para modificar o valor específico do tensor, especifique o índice e aloque o novo valor. Aqui, estamos substituindo o valor de “ [0][1] ”índice com“ quinze ”:

dezenas1 [ 0 ] [ 1 ] = quinze

imprimir ( dezenas1 )

A saída abaixo mostra que o valor especificado do tensor foi modificado com sucesso:

Método 2: acessar e modificar os valores do tensor usando fatiamento

Fatiar é uma forma de selecionar um subconjunto de um tensor com uma ou mais dimensões. Os usuários podem usar o operador de dois pontos “:” para especificar os índices inicial e final da fatia e o tamanho do passo. Confira as etapas fornecidas abaixo para entendê-lo melhor:

Etapa 1: importar biblioteca PyTorch

Primeiro, importe o “ tocha ' biblioteca:

importar tocha

Etapa 2: crie um tensor

A seguir, crie um tensor desejado usando o “ tocha.tensor() ”Funciona e imprime seus elementos. Por exemplo, estamos criando um tensor 2D “ dezenas2 ”com dimensões 2×3:

dezenas2 = tocha. tensor ( [ [ 5 , 1 , 9 ] , [ 3 , 7 , 2 ] ] )

imprimir ( dezenas2 )

Isso criou um tensor 2D:

Etapa 3: acessar os valores do tensor usando fatiamento

Agora, acesse os valores desejados do tensor usando fatiamento. Por exemplo, especificamos os índices “[1]” de “tens1” para acessar seus valores e armazená-los em uma variável chamada “ novos_valores ”. Isso acessará todos os valores presentes na segunda linha:

novos_valores = dezenas2 [ 1 ]

imprimir ( 'Valores da segunda linha:' , novos_valores )

Na saída abaixo, todos os valores presentes na segunda linha do tensor foram acessados ​​com sucesso:

Tomemos outro exemplo em que acessaremos o valor da terceira coluna do tensor. Para fazer isso, especifique o “ [:, 2] ”índices:

novos_valores2 = dezenas2 [ : , 2 ]

imprimir ( 'Valores da terceira coluna:' , novos_valores2 )

Isto acessou e exibiu com sucesso os valores da terceira coluna do tensor:

Etapa 4: modificar os valores do tensor usando fatiamento

Para modificar os valores específicos do tensor, especifique os índices e aloque o novo valor. Aqui, estamos alterando todos os valores da segunda linha do tensor. Para isso, especificamos o “ [1] ”índices e alocar novos valores:

dezenas2 [ 1 ] = tocha. Tensor ( [ 30 , 60 , 90 ] )

imprimir ( 'Tensor modificado:' , dezenas2 )

De acordo com a saída abaixo, todos os valores dos valores da segunda linha do tensor foram modificados com sucesso:

Explicamos os métodos eficientes para acessar e modificar valores de tensor no PyTorch.

Observação : Você pode acessar nosso Google Colab Notebook neste link .

Conclusão

Para obter e modificar os valores ou conteúdo do tensor no PyTorch, primeiro importe a biblioteca “tocha”. Em seguida, crie o tensor desejado. A seguir, use os métodos de indexação ou fatiamento para acessar e modificar os valores desejados do tensor. Para isso, especifique o índice dos índices respectivamente e exiba os valores acessados ​​e modificados do tensor. Este blog ilustrou os métodos para acessar e modificar os valores dos tensores no PyTorch.