Den här bloggen kommer att illustrera metoderna för att komma åt och ändra värdena för tensorer i PyTorch.
Hur får man tillgång till och ändrar Tensors värden/innehåll i PyTorch?
För att få och ändra värdena för tensorer i PyTorch kan två metoder användas:
Metod 1: Få tillgång till och ändra Tensors värden med hjälp av indexering
Indexering är ett sätt att välja ett specifikt element eller en rad element från en viss tensor baserat på deras position. Användare måste använda hakparenteser ' [ ] ” för att komma åt elementen längs varje dimension av tensorn. I fallet med en 2D-tensor kan elementen nås på rad 'i' och kolumn 'j' genom att använda 'tensor[i,j]'. För att göra det, följ de medföljande stegen:
Steg 1: Importera PyTorch Library
Importera först ' fackla ” bibliotek:
importera fackla
Steg 2: Skapa en tensor
Använd sedan ' torch.tensor() ”-funktion för att skapa en önskad tensor och skriva ut dess element. Till exempel skapar vi en 2D-tensor ' tiotals 1 ” med måtten 2×3:
tiotals 1 = fackla. tensor ( [ [ 2 , 9 , 5 ] , [ 7 , 1 , 4 ] ] )
skriva ut ( tiotals 1 )
Detta har skapat 2D-tensorn som visas nedan:
Steg 3: Få tillgång till Tensors värden med hjälp av indexering
Gå nu till de önskade värdena för tensorn genom deras index. Till exempel har vi specificerat indexet '[1][2]' för ' tiotals 1 ' för att komma åt dess värde och lagra det i en variabel med namnet ' temp_element ”. Detta kommer att komma åt värdet som finns i den andra raden och tredje kolumnen:
temp_element = tiotals 1 [ 1 ] [ 2 ]skriva ut ( temp_element )
Här: ' [1] ' betyder den andra raden och ' [2] ' betyder den tredje kolumnen eftersom indexering startar från ' 0 ”.
Det kan observeras att det önskade värdet har nåtts från tensorn, dvs. '4':
Steg 4: Ändra Tensors värden med hjälp av indexering
För att ändra det specifika värdet för tensorn, ange indexet och allokera det nya värdet. Här ersätter vi värdet av ' [0][1] ' index med ' femton ”:
tiotals 1 [ 0 ] [ 1 ] = femtonskriva ut ( tiotals 1 )
Nedanstående utdata visar att det angivna värdet för tensorn har modifierats framgångsrikt:
Metod 2: Få tillgång till och ändra Tensors värden med Slicing
Slicing är ett sätt att välja en delmängd av en tensor med en eller flera dimensioner. Användare kan använda kolonoperatorn ':' för att ange start- och slutindex för segmentet och stegstorleken. Kolla in stegen nedan för att förstå det bättre:
Steg 1: Importera PyTorch Library
Importera först ' fackla ” bibliotek:
importera facklaSteg 2: Skapa en tensor
Skapa sedan en önskad tensor med hjälp av ' torch.tensor() ”-funktion och skriv ut dess element. Till exempel skapar vi en 2D-tensor ' tiotals 2 ” med måtten 2×3:
tiotals 2 = fackla. tensor ( [ [ 5 , 1 , 9 ] , [ 3 , 7 , 2 ] ] )skriva ut ( tiotals 2 )
Detta har skapat en 2D-tensor:
Steg 3: Få tillgång till Tensors värden med Slicing
Nu kommer du åt de önskade värdena för tensorn med hjälp av skivning. Till exempel har vi specificerat indexen '[1]' för 'tens1' för att komma åt dess värden och lagra dem i en variabel som heter ' nya_värden ”. Detta kommer att komma åt alla värden som finns i den andra raden:
nya_värden = tiotals 2 [ 1 ]skriva ut ( 'Andra radens värden: ' , nya_värden )
I utgången nedan har alla värden som finns i den andra raden av tensorn nåtts framgångsrikt:
Låt oss ta ett annat exempel där vi kommer att komma åt värdet på den tredje kolumnen i tensorn. För att göra det, ange ' [:, 2] ” index:
nya_värden2 = tiotals 2 [ : , 2 ]skriva ut ( 'Tredje kolumnvärden: ' , nya_värden2 )
Detta har framgångsrikt öppnat och visat värdena för den tredje kolumnen i tensorn:
Steg 4: Ändra Tensors värden med Slicing
För att ändra de specifika värdena för tensorn, specificera indexen och allokera det nya värdet. Här ändrar vi alla värden för den andra raden i tensorn. För detta har vi specificerat ' [1] ” index och allokera nya värden:
tiotals 2 [ 1 ] = fackla. Tensor ( [ 30 , 60 , 90 ] )skriva ut ( 'Modifierad Tensor: ' , tiotals 2 )
Enligt utgången nedan har alla värden för den andra radens värden på tensorn modifierats framgångsrikt:
Vi har förklarat de effektiva metoderna för att komma åt och ändra tensorvärden i PyTorch.
Notera : Du kan komma åt vår Google Colab Notebook här länk .
Slutsats
För att få och ändra tensorens värden eller innehåll i PyTorch, importera först 'torch'-biblioteket. Skapa sedan önskad tensor. Använd sedan indexering eller skivningsmetoder för att komma åt och ändra tensorens önskade värden. För detta, specificera index för respektive index och visa de åtkomliga och modifierade värdena för tensorn. Den här bloggen har illustrerat metoderna för att komma åt och ändra värdena för tensorer i PyTorch.