Paano I-access at Baguhin ang Mga Halaga ng Tensor sa PyTorch?

Paano I Access At Baguhin Ang Mga Halaga Ng Tensor Sa Pytorch



PyTorch ay isang deep-learning framework na nagbibigay-daan sa mga user na gumawa/magbigay ng kahulugan at magmanipula ng mga tensor. Ang mga tensor ay mga multidimensional na array na maaaring mag-imbak ng data/mga halaga ng magkakaibang uri at hugis. Gayunpaman, kung minsan, gustong i-access at baguhin ng mga user ang partikular na content o value ng gustong tensor. Sa ganitong sitwasyon, maaari silang gumamit ng iba't ibang paraan upang maisagawa ang operasyong ito.

Ang blog na ito ay maglalarawan ng mga paraan upang ma-access at baguhin ang mga halaga ng mga tensor sa PyTorch.

Paano I-access at Baguhin ang Mga Halaga/Nilalaman ng Tensor sa PyTorch?

Upang makuha at baguhin ang mga halaga ng mga tensor sa PyTorch, dalawang pamamaraan ang maaaring gamitin:







Paraan 1: I-access at Baguhin ang Mga Halaga ng Tensor Gamit ang Pag-index

Ang pag-index ay isang paraan ng pagpili ng isang partikular na elemento o isang hanay ng mga elemento mula sa isang partikular na tensor batay sa kanilang posisyon. Ang mga gumagamit ay kailangang gumamit ng mga square bracket ' [ ] ” para ma-access ang mga elemento sa bawat dimensyon ng tensor. Sa kaso ng isang 2D tensor, ang mga elemento ay maaaring ma-access sa row 'i' at column 'j' sa pamamagitan ng paggamit ng 'tensor[i,j]'. Upang gawin ito, sundin ang mga ibinigay na hakbang:



Hakbang 1: Mag-import ng PyTorch Library

Una, i-import ang ' tanglaw ” library:



angkat tanglaw

Hakbang 2: Gumawa ng Tensor

Pagkatapos, gamitin ang ' torch.tensor() ” function upang lumikha ng nais na tensor at i-print ang mga elemento nito. Halimbawa, gumagawa kami ng 2D tensor ' sampuan1 ” na may mga sukat na 2×3:





sampuan1 = tanglaw. tensor ( [ [ 2 , 9 , 5 ] , [ 7 , 1 , 4 ] ] )

print ( sampuan1 )

Lumikha ito ng 2D tensor tulad ng nakikita sa ibaba:



Hakbang 3: I-access ang Mga Halaga ng Tensor Gamit ang Pag-index

Ngayon, i-access ang nais na mga halaga ng tensor sa pamamagitan ng kanilang index. Halimbawa, tinukoy namin ang index na '[1][2]' ng ' sampuan1 ” upang ma-access ang halaga nito at iimbak ito sa isang variable na pinangalanang “ temp_element ”. Maa-access nito ang value na nasa pangalawang row at ikatlong column:

temp_element = sampuan1 [ 1 ] [ 2 ]

print ( temp_element )

Dito: “ [1] ” ay nangangahulugang ang pangalawang hanay at “ [2] Ang ibig sabihin ng ” ay ang ikatlong column dahil ang pag-index ay nagsisimula sa “ 0 ”.

Maaaring maobserbahan na ang nais na halaga ay na-access mula sa tensor ibig sabihin, '4':

Hakbang 4: Baguhin ang Mga Halaga ng Tensor Gamit ang Pag-index

Upang baguhin ang partikular na halaga ng tensor, tukuyin ang index at ilaan ang bagong halaga. Dito, pinapalitan namin ang halaga ng ' [0][1] 'index na may ' labinlima ”:

sampuan1 [ 0 ] [ 1 ] = labinlima

print ( sampuan1 )

Ang output sa ibaba ay nagpapakita na ang tinukoy na halaga ng tensor ay matagumpay na nabago:

Paraan 2: I-access at Baguhin ang Mga Halaga ng Tensor Gamit ang Slicing

Ang paghiwa ay isang paraan ng pagpili ng subset ng isang tensor na may isa o higit pang mga dimensyon. Maaaring gamitin ng mga user ang colon operator na “:” upang tukuyin ang mga indeks ng simula at pagtatapos ng slice at ang laki ng hakbang. Tingnan ang mga hakbang na ibinigay sa ibaba upang mas maunawaan ito:

Hakbang 1: Mag-import ng PyTorch Library

Una, i-import ang ' tanglaw ” library:

angkat tanglaw

Hakbang 2: Gumawa ng Tensor

Susunod, lumikha ng nais na tensor gamit ang ' torch.tensor() ” function at i-print ang mga elemento nito. Halimbawa, gumagawa kami ng 2D tensor ' sampuan2 ” na may mga sukat na 2×3:

sampuan2 = tanglaw. tensor ( [ [ 5 , 1 , 9 ] , [ 3 , 7 , 2 ] ] )

print ( sampuan2 )

Lumikha ito ng 2D tensor:

Hakbang 3: I-access ang Mga Halaga ng Tensor Gamit ang Slicing

Ngayon, i-access ang nais na mga halaga ng tensor gamit ang slicing. Halimbawa, tinukoy namin ang mga indeks na '[1]' ng 'tens1' upang ma-access ang mga halaga nito at maiimbak ang mga ito sa isang variable na pinangalanang ' new_values ”. Maa-access nito ang lahat ng mga value na nasa pangalawang row:

new_values = sampuan2 [ 1 ]

print ( 'Mga halaga ng pangalawang hilera: ' , new_values )

Sa ibabang output, matagumpay na na-access ang lahat ng value na nasa pangalawang row ng tensor:

Kumuha tayo ng isa pang halimbawa kung saan maa-access natin ang halaga ng ikatlong column ng tensor. Upang gawin ito, tukuyin ang ' [:, 2] ” mga indeks:

new_values2 = sampuan2 [ : , 2 ]

print ( 'Mga halaga ng ikatlong column: ' , new_values2 )

Matagumpay nitong na-access at naipakita ang mga halaga ng ikatlong column ng tensor:

Hakbang 4: Baguhin ang Mga Halaga ng Tensor Gamit ang Slicing

Upang baguhin ang mga partikular na halaga ng tensor, tukuyin ang mga indeks at ilaan ang bagong halaga. Dito, binabago namin ang lahat ng mga halaga ng pangalawang hilera sa tensor. Para dito, tinukoy namin ang ' [1] ” index at maglaan ng mga bagong halaga:

sampuan2 [ 1 ] = tanglaw. Tensor ( [ 30 , 60 , 90 ] )

print ( 'Binagong Tensor: ' , sampuan2 )

Ayon sa output sa ibaba, ang lahat ng mga halaga ng mga halaga ng pangalawang hilera ng tensor ay matagumpay na nabago:

Ipinaliwanag namin ang mga mahusay na pamamaraan upang ma-access at baguhin ang mga halaga ng tensor sa PyTorch.

Tandaan : Maa-access mo ang aming Google Colab Notebook dito link .

Konklusyon

Para makuha at mabago ang mga value o content ng tensor sa PyTorch, una, i-import ang library ng 'torch'. Pagkatapos, lumikha ng nais na tensor. Susunod, gamitin ang mga paraan ng pag-index o paghiwa para ma-access at mabago ang mga gustong value ng tensor. Para dito, tukuyin ang index ng mga indeks ayon sa pagkakabanggit at ipakita ang na-access at binagong mga halaga ng tensor. Ang blog na ito ay naglalarawan ng mga pamamaraan upang ma-access at baguhin ang mga halaga ng mga tensor sa PyTorch.