Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Muodot ja Ulottuvuudet Pytorchissa | Pytorchin Esittely
Pytorchin Perusteet

bookMuodot ja Ulottuvuudet Pytorchissa

Samoin kuin NumPy-taulukoissa, tensorin muoto määrittää sen ulottuvuudet. Voit tarkastella tensorin muotoa käyttämällä .shape-attribuuttia:

123
import torch tensor = torch.tensor([[1, 2, 3], [4, 5, 6]]) print(f"Tensor shape: {tensor.shape}")
copy

Tensorien muodon muuttaminen view-metodilla

.view()-metodi luo uuden näkymän tensorista määritetyllä muodolla muuttamatta alkuperäistä tensoria. Alkiomäärän on pysyttävä samana.

1234567
import torch tensor = torch.arange(12) # Reshape a tensor to 4x3 reshaped_tensor = tensor.view(4, 3) print(f"Reshaped tensor: {reshaped_tensor}") # Original tensor remains unchanged print(f"Original tensor: {tensor}")
copy

Tenseurien muotoilu reshape-metodilla

.reshape()-metodi on samankaltainen kuin .view(), mutta se pystyy käsittelemään tilanteita, joissa tensori ei ole yhtenäisesti tallennettu muistiin. Se ei myöskään muuta alkuperäistä tensoria.

12345
import torch tensor = torch.arange(12) # Reshape a tensor to 6x2 reshaped_tensor = tensor.reshape(6, 2) print(f"Reshaped tensor: {reshaped_tensor}")
copy

Negatiivisten dimensioiden käyttö

Voit käyttää -1 muodon määrittelyssä, jolloin PyTorch päättelee yhden ulottuvuuden koon kokonaisalkioiden määrän perusteella.

12345
import torch tensor = torch.arange(12) # Automatically infer the second dimension inferred_tensor = tensor.view(2, -1) print("Inferred Tensor:", inferred_tensor)
copy

Tensorin näkymien ymmärtäminen

Tensorin näkymä jakaa saman datan alkuperäisen tensorin kanssa. Muutokset näkymään vaikuttavat alkuperäiseen tensoriin ja päinvastoin.

1234567
import torch tensor = torch.arange(12) view_tensor = tensor.view(2, 6) view_tensor[0, 0] = 999 # Changes in the view are reflected in the original tensor print("View Tensor:", view_tensor) print("Original Tensor:", tensor)
copy

Ulottuvuuksien muuttaminen

Seuraavat kaksi menetelmää mahdollistavat ulottuvuuksien lisäämisen tai poistamisen:

  • unsqueeze(dim) lisää uuden ulottuvuuden määritettyyn kohtaan;
  • squeeze(dim) poistaa ulottuvuudet, joiden koko on 1.
12345678
import torch tensor = torch.arange(12) # Add a new dimension unsqueezed_tensor = tensor.unsqueeze(0) # Add a batch dimension print(f"Unsqueezed tensor: {unsqueezed_tensor.shape}") # Remove a dimension of size 1 squeezed_tensor = unsqueezed_tensor.squeeze(0) print(f"Squeezed Tensor: {squeezed_tensor.shape}")
copy
question mark

Mikä on tensorin muoto tämän koodin suorittamisen jälkeen?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 1. Luku 9

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Awesome!

Completion rate improved to 5

bookMuodot ja Ulottuvuudet Pytorchissa

Pyyhkäise näyttääksesi valikon

Samoin kuin NumPy-taulukoissa, tensorin muoto määrittää sen ulottuvuudet. Voit tarkastella tensorin muotoa käyttämällä .shape-attribuuttia:

123
import torch tensor = torch.tensor([[1, 2, 3], [4, 5, 6]]) print(f"Tensor shape: {tensor.shape}")
copy

Tensorien muodon muuttaminen view-metodilla

.view()-metodi luo uuden näkymän tensorista määritetyllä muodolla muuttamatta alkuperäistä tensoria. Alkiomäärän on pysyttävä samana.

1234567
import torch tensor = torch.arange(12) # Reshape a tensor to 4x3 reshaped_tensor = tensor.view(4, 3) print(f"Reshaped tensor: {reshaped_tensor}") # Original tensor remains unchanged print(f"Original tensor: {tensor}")
copy

Tenseurien muotoilu reshape-metodilla

.reshape()-metodi on samankaltainen kuin .view(), mutta se pystyy käsittelemään tilanteita, joissa tensori ei ole yhtenäisesti tallennettu muistiin. Se ei myöskään muuta alkuperäistä tensoria.

12345
import torch tensor = torch.arange(12) # Reshape a tensor to 6x2 reshaped_tensor = tensor.reshape(6, 2) print(f"Reshaped tensor: {reshaped_tensor}")
copy

Negatiivisten dimensioiden käyttö

Voit käyttää -1 muodon määrittelyssä, jolloin PyTorch päättelee yhden ulottuvuuden koon kokonaisalkioiden määrän perusteella.

12345
import torch tensor = torch.arange(12) # Automatically infer the second dimension inferred_tensor = tensor.view(2, -1) print("Inferred Tensor:", inferred_tensor)
copy

Tensorin näkymien ymmärtäminen

Tensorin näkymä jakaa saman datan alkuperäisen tensorin kanssa. Muutokset näkymään vaikuttavat alkuperäiseen tensoriin ja päinvastoin.

1234567
import torch tensor = torch.arange(12) view_tensor = tensor.view(2, 6) view_tensor[0, 0] = 999 # Changes in the view are reflected in the original tensor print("View Tensor:", view_tensor) print("Original Tensor:", tensor)
copy

Ulottuvuuksien muuttaminen

Seuraavat kaksi menetelmää mahdollistavat ulottuvuuksien lisäämisen tai poistamisen:

  • unsqueeze(dim) lisää uuden ulottuvuuden määritettyyn kohtaan;
  • squeeze(dim) poistaa ulottuvuudet, joiden koko on 1.
12345678
import torch tensor = torch.arange(12) # Add a new dimension unsqueezed_tensor = tensor.unsqueeze(0) # Add a batch dimension print(f"Unsqueezed tensor: {unsqueezed_tensor.shape}") # Remove a dimension of size 1 squeezed_tensor = unsqueezed_tensor.squeeze(0) print(f"Squeezed Tensor: {squeezed_tensor.shape}")
copy
question mark

Mikä on tensorin muoto tämän koodin suorittamisen jälkeen?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 1. Luku 9
some-alt