Matemaattiset Operaatiot Tensoreilla
Pyyhkäise näyttääksesi valikon
Alkiokohtaiset operaatiot
Alkiokohtaiset operaatiot kohdistuvat jokaiseen tensorin alkioon yksittäin. Nämä operaatiot, kuten yhteenlasku, vähennyslasku ja jakolasku, toimivat samalla tavalla kuin NumPy-kirjastossa:
123456789101112131415import torch a = torch.tensor([1, 2, 3]) b = torch.tensor([4, 5, 6]) # Element-wise addition addition_result = a + b print(f"Addition: {addition_result}") # Element-wise subtraction subtraction_result = a - b print(f"Subtraction: {subtraction_result}") # Element-wise multiplication multiplication_result = a * b print(f"Multiplication: {multiplication_result}") # Element-wise division division_result = a / b print(f"Division: {division_result}")
Matriisioperaatiot
PyTorch tukee myös matriisikertolaskua ja pistetuloa, jotka suoritetaan torch.matmul()-funktiolla:
123456import torch x = torch.tensor([[1, 2], [3, 4]]) y = torch.tensor([[5, 6], [7, 8]]) # Matrix multiplication z = torch.matmul(x, y) print(f"Matrix multiplication: {z}")
Voit myös käyttää @-operaattoria matriisikertolaskuun:
12345import torch x = torch.tensor([[1, 2], [3, 4]]) y = torch.tensor([[5, 6], [7, 8]]) z = x @ y print(f"Matrix Multiplication with @: {z}")
Aggregointitoiminnot
Aggregointitoiminnot laskevat yhteenvetotilastoja tensoreista, kuten summan, keskiarvon, suurimman ja pienimmän arvon, jotka voidaan laskea niiden omilla metodeilla.
12345678910import torch tensor = torch.tensor([[1, 2, 3], [4, 5, 6]]).float() # Sum of all elements print(f"Sum: {tensor.sum()}") # Mean of all elements print(f"Mean: {tensor.mean()}") # Maximum value print(f"Max: {tensor.max()}") # Minimum value print(f"Min: {tensor.min()}")
Käytimme float()-metodia muuntaaksemme tensorin tietotyypin liukuluvuksi, koska mean()-metodi vaatii liukulukutyyppisen tensorin. Ilman tätä muunnosta tensorilla säilyy oletusarvoinen kokonaislukutyyppi, joka ei ole yhteensopiva mean()-metodin kanssa.
Aggregointimenetelmillä on myös kaksi valinnaista parametria:
dim: määrittää ulottuvuuden (vastaava kuinaxisNumPyssa), jonka mukaan operaatio suoritetaan. Oletuksena, josdim-parametria ei anneta, operaatio suoritetaan kaikille tensorin alkioille;keepdim: totuusarvomuuttuja (Falseoletuksena). Jos asetettu arvoonTrue, pienennetty ulottuvuus säilytetään koon1ulottuvuutena tuloksessa, säilyttäen alkuperäisen ulottuvuuksien määrän.
12345678import torch tensor = torch.tensor([[1, 2, 3], [4, 5, 6]]) # Aggregation operations along specific dimensions print(f"Sum along rows (dim=1): {tensor.sum(dim=1)}") print(f"Sum along columns (dim=0): {tensor.sum(dim=0)}") # Aggregation with keepdim=True print(f"Sum along rows with keepdim (dim=1): {tensor.sum(dim=1, keepdim=True)}") print(f"Sum along columns with keepdim (dim=0): {tensor.sum(dim=0, keepdim=True)}")
Broadcastaus
Broadcastaus mahdollistaa operaatioiden suorittamisen erimuotoisten tensorien välillä automaattisesti laajentamalla ulottuvuuksia. Jos tarvitset kertausta broadcastauksesta, löydät lisätietoja täältä.
123456import torch a = torch.tensor([[1, 2, 3]]) # Shape (1, 3) b = torch.tensor([[4], [5]]) # Shape (2, 1) # Broadcasting addition c = a + b print(f"Broadcasted addition: {c}")
Hyödylliset matemaattiset funktiot
PyTorch tarjoaa myös useita matemaattisia funktioita, kuten eksponentiaalit, logaritmit ja trigonometriset funktiot.
1234567tensor = torch.tensor([1.0, 2.0, 3.0]) # Exponentiation print(f"Exponent: {tensor.exp()}") # Logarithm print(f"Logarithm: {tensor.log()}") # Sine print(f"Sine: {tensor.sin()}")
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Matemaattiset Operaatiot Tensoreilla
Alkiokohtaiset operaatiot
Alkiokohtaiset operaatiot kohdistuvat jokaiseen tensorin alkioon yksittäin. Nämä operaatiot, kuten yhteenlasku, vähennyslasku ja jakolasku, toimivat samalla tavalla kuin NumPy-kirjastossa:
123456789101112131415import torch a = torch.tensor([1, 2, 3]) b = torch.tensor([4, 5, 6]) # Element-wise addition addition_result = a + b print(f"Addition: {addition_result}") # Element-wise subtraction subtraction_result = a - b print(f"Subtraction: {subtraction_result}") # Element-wise multiplication multiplication_result = a * b print(f"Multiplication: {multiplication_result}") # Element-wise division division_result = a / b print(f"Division: {division_result}")
Matriisioperaatiot
PyTorch tukee myös matriisikertolaskua ja pistetuloa, jotka suoritetaan torch.matmul()-funktiolla:
123456import torch x = torch.tensor([[1, 2], [3, 4]]) y = torch.tensor([[5, 6], [7, 8]]) # Matrix multiplication z = torch.matmul(x, y) print(f"Matrix multiplication: {z}")
Voit myös käyttää @-operaattoria matriisikertolaskuun:
12345import torch x = torch.tensor([[1, 2], [3, 4]]) y = torch.tensor([[5, 6], [7, 8]]) z = x @ y print(f"Matrix Multiplication with @: {z}")
Aggregointitoiminnot
Aggregointitoiminnot laskevat yhteenvetotilastoja tensoreista, kuten summan, keskiarvon, suurimman ja pienimmän arvon, jotka voidaan laskea niiden omilla metodeilla.
12345678910import torch tensor = torch.tensor([[1, 2, 3], [4, 5, 6]]).float() # Sum of all elements print(f"Sum: {tensor.sum()}") # Mean of all elements print(f"Mean: {tensor.mean()}") # Maximum value print(f"Max: {tensor.max()}") # Minimum value print(f"Min: {tensor.min()}")
Käytimme float()-metodia muuntaaksemme tensorin tietotyypin liukuluvuksi, koska mean()-metodi vaatii liukulukutyyppisen tensorin. Ilman tätä muunnosta tensorilla säilyy oletusarvoinen kokonaislukutyyppi, joka ei ole yhteensopiva mean()-metodin kanssa.
Aggregointimenetelmillä on myös kaksi valinnaista parametria:
dim: määrittää ulottuvuuden (vastaava kuinaxisNumPyssa), jonka mukaan operaatio suoritetaan. Oletuksena, josdim-parametria ei anneta, operaatio suoritetaan kaikille tensorin alkioille;keepdim: totuusarvomuuttuja (Falseoletuksena). Jos asetettu arvoonTrue, pienennetty ulottuvuus säilytetään koon1ulottuvuutena tuloksessa, säilyttäen alkuperäisen ulottuvuuksien määrän.
12345678import torch tensor = torch.tensor([[1, 2, 3], [4, 5, 6]]) # Aggregation operations along specific dimensions print(f"Sum along rows (dim=1): {tensor.sum(dim=1)}") print(f"Sum along columns (dim=0): {tensor.sum(dim=0)}") # Aggregation with keepdim=True print(f"Sum along rows with keepdim (dim=1): {tensor.sum(dim=1, keepdim=True)}") print(f"Sum along columns with keepdim (dim=0): {tensor.sum(dim=0, keepdim=True)}")
Broadcastaus
Broadcastaus mahdollistaa operaatioiden suorittamisen erimuotoisten tensorien välillä automaattisesti laajentamalla ulottuvuuksia. Jos tarvitset kertausta broadcastauksesta, löydät lisätietoja täältä.
123456import torch a = torch.tensor([[1, 2, 3]]) # Shape (1, 3) b = torch.tensor([[4], [5]]) # Shape (2, 1) # Broadcasting addition c = a + b print(f"Broadcasted addition: {c}")
Hyödylliset matemaattiset funktiot
PyTorch tarjoaa myös useita matemaattisia funktioita, kuten eksponentiaalit, logaritmit ja trigonometriset funktiot.
1234567tensor = torch.tensor([1.0, 2.0, 3.0]) # Exponentiation print(f"Exponent: {tensor.exp()}") # Logarithm print(f"Logarithm: {tensor.log()}") # Sine print(f"Sine: {tensor.sin()}")
Kiitos palautteestasi!