Comment créer un tenseur en Python
Pour définir un tableau multidimensionnel (tenseur) de taille n en python, nous pouvons utiliser la méthode array de NumPy.
numpy.array([M1,M2,...,Mn])
Alternativement, la méthode du tenseur de Pytorch.
torch.tensor([M1,M2,...,Mn])
Les arguments M1,M2,...,Mn sont arrays e taille n-1.
Les deux méthodes créent un tenseur de n dimensions.
Qu'est-ce qu'un tenseur? Un tenseur est un tableau multidimensionnel. Par exemple, un tenseur à trois dimensions est une matrice cubique composée de 27 éléments disposés dans un espace vectoriel à trois dimensions.
Exemple
Exercice 1 (numpy array)
Importer la bibliothèque numpy en python
import numpy as np
Créer un tenseur 3x3x3 avec la fonction array()
L'argument est une liste de trois matrices carrées 3x3
Y=np.array([[[1,2,3],[4,5,6],[7,8,9]],[[10,11,12],[13,14,15],[16,17,18]],[[19,20,21],[22,23,24],[25,26,27]]])
La sortie est une matrice cubique composée de trois matrices carrées 3x3.
Au total, le tenseur a 27 éléments disposés dans un espace tridimensionnel (x, y, z).
>>>Y
array([[[ 1, 2, 3],
[ 4, 5, 6],
[ 7, 8, 9]],
[[10, 11, 12],
[13, 14, 15],
[16, 17, 18]],
[[19, 20, 21],
[22, 23, 24],
[25, 26, 27]]])
Pour lire l'élément de coordonnées (2,1,0)
>>> Y[0,1,2]
6
Exercice 2 (torch tensor)
Importer le module torche en python
import torch as th
Créer un tenseur en trois dimensions par la fonction tensor()
L'argument est une liste de trois matrices carrées 3x3 (tableau à deux dimensions)
Y=th.tensor([[[1,2,3],[4,5,6],[7,8,9]],[[10,11,12],[13,14,15],[16,17,18]],[[19,20,21],[22,23,24],[25,26,27]]])
La fonction tensor() crée un tableau en trois dimensions (tensor).
Il est composé de 27 éléments dans un espace vectoriel tridimensionnel.
>>> Y
tensor([[[ 1, 2, 3],
[ 4, 5, 6],
[ 7, 8, 9]],
[[10, 11, 12],
[13, 14, 15],
[16, 17, 18]],
[[19, 20, 21],
[22, 23, 24],
[25, 26, 27]]])
Pour lire l'élément de coordonnées (2,1,0)
>>> Y[2,1,0]
tensor(22)