Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Opérations Mathématiques avec des Tensors | Introduction à PyTorch
Essentiels de Pytorch
course content

Contenu du cours

Essentiels de Pytorch

Essentiels de Pytorch

1. Introduction à PyTorch
2. Concepts Plus Avancés
3. Réseaux Neuronaux dans PyTorch

book
Opérations Mathématiques avec des Tensors

Opérations Élémentaires

Les opérations élémentaires sont appliquées à chaque élément du tenseur individuellement. Ces opérations, telles que l'addition, la soustraction et la division, fonctionnent de manière similaire à NumPy :

123456789101112131415
import 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}")
copy

Opérations Matricielles

PyTorch prend également en charge la multiplication de matrices et le produit scalaire, qui sont effectués à l'aide de la fonction torch.matmul() :

123456
import 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}")
copy

Vous pouvez également utiliser l'opérateur @ pour la multiplication de matrices :

12345
import torch x = torch.tensor([[1, 2], [3, 4]]) y = torch.tensor([[5, 6], [7, 8]]) z = x @ y print(f"Matrix Multiplication with @: {z}")
copy

Opérations d'agrégation

Les opérations d'agrégation calculent des statistiques résumées à partir de tenseurs, telles que la somme, la moyenne, les valeurs maximale et minimale, qui peuvent être calculées à l'aide de leurs méthodes respectives.

12345678910
import 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()}")
copy

Les méthodes d'agrégation ont également deux paramètres optionnels :

  • dim : spécifie la dimension (similairement à axis en NumPy) le long de laquelle l'opération est appliquée. Par défaut, si dim n'est pas fourni, l'opération est appliquée à tous les éléments du tenseur ;
  • keepdim : un indicateur booléen (False par défaut). Si défini sur True, la dimension réduite est conservée comme une dimension de taille 1 dans le résultat, préservant le nombre original de dimensions.
12345678
import 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)}")
copy

Diffusion

La diffusion permet des opérations entre des tenseurs de formes différentes en étendant automatiquement les dimensions. Si vous avez besoin d'un rappel sur la diffusion, vous pouvez trouver plus de détails ici.

123456
import 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}")
copy

Fonctions Mathématiques Utiles

PyTorch fournit également diverses fonctions mathématiques telles que les exponentielles, les logarithmes et les fonctions trigonométriques.

1234567
tensor = 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()}")
copy
Laquelle des opérations suivantes effectue correctement la multiplication de matrices dans PyTorch ?

Laquelle des opérations suivantes effectue correctement la multiplication de matrices dans PyTorch ?

Sélectionnez quelques réponses correctes

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 7
We're sorry to hear that something went wrong. What happened?
some-alt