Calculer le produit interne des vecteurs pour les tableaux D à l'aide de NumPy en Python
Le produit interne est l'une des opérations les plus importantes dans les opérations mathématiques de l'algèbre linéaire, qui prend deux vecteurs en entrée et donne la valeur scalaire en sortie. Il est également connu sous le nom de produit Dot ou produit scalaire. Le produit scalaire des deux vecteurs est donné comme suit.
a . b = ||a|| ||b|| cos(Ø)
Où,
||un|| et ||b|| sont les grandeurs des vecteurs a et b respectivement
Ø est l'angle entre les vecteurs a et b
un . b est le produit scalaire de a et b
Calcul du produit intérieur
Si nous voulons calculer le produit scalaire ou le produit scalaire des tableaux, il est donné comme la somme des produits des éléments respectifs des tableaux. Prenons les deux tableaux a et b comme suit.
a = [a1, a2, a3]
b = [b1, b2, b3]
Voici l'expression mathématique des tableaux pour calculer le produit interne.
a . b = a1 * b1 + a2 * b2 + a3 * b3
Calculer le produit interne à l'aide de Numpy
Nous pouvons calculer le produit scalaire des tableaux en utilisant dot() dans la bibliothèque Numpy.
Syntaxe
Voici la syntaxe pour calculer le produit interne de deux éléments du tableau à l’aide de la fonction dot().
np.dot(arr1, arr2)
Où,
Numpy est le nom de la bibliothèque
np est le nom d'alias de la bibliothèque
dot est la fonction permettant de trouver le produit interne
arr1 et arr2 sont les tableaux d'entrée
Exemple
Dans cet exemple, lorsque nous donnons deux tableaux 1D comme arguments d'entrée à la fonction dot(), alors le produit scalaire ou le produit interne sera renvoyé en sortie.
import numpy as np
a = np.array([12,30,45])
b = np.array([23,89,50])
inner_product = np.dot(a,b)
print("The Inner product of the two 1-d arrays:", inner_product)
Sortir
The Inner product of the two 1-d arrays: 5196
Exemple
Voici un exemple d'utilisation de la fonction dot() pour calculer le produit interne des tableaux 1D.
import numpy as np
a = np.array([34,23,98,79,90,34,23,67])
b = np.array([22,1,95,14,91,5,24,12])
inner_product = np.dot(a,b)
print("The Inner product of the two 2-d arrays:",inner_product)
Sortir
The Inner product of the two 2-d arrays: 20903
Exemple
La fonction dot() n'accepte que les tableaux carrés comme arguments. Si nous essayons de transmettre des valeurs autres que des tableaux carrés, cela générera une erreur.
import numpy as np
a = np.array([[34,23,98,79],[90,34,23,67]])
b = np.array([[22,1,95,14],[91,5,24,12]])
inner_product = np.dot(a,b)
print("The Inner product of the two 2-d arrays:",inner_product)
Erreur
Traceback (most recent call last):
File "/home/cg/root/64d07b786d983/main.py", line 4, in <module>
inner_product = np.dot(a,b)
File "<__array_function__ internals>", line 200, in dot
ValueError: shapes (2,4) and (2,4) not aligned: 4 (dim 1) != 2 (dim 0)
Exemple
Dans l'exemple suivant, nous essayons de calculer le produit interne des tableaux 2D, à l'aide de la fonction dot().
import numpy as np
a = np.array([[34,23],[90,34]])
b = np.array([[22,1],[91,5]])
inner_product = np.dot(a,b)
print("The Inner product of the two 2-d arrays:", inner_product)
Sortir
The Inner product of the two 2-d arrays: [[2841 149][5074 260]]
Exemple
Essayons maintenant de calculer le produit interne des vecteurs en passant un tableau 3D comme arguments à la fonction dot().
import numpy as np
a = np.array([[[34,23],[90,34]],[[43,23],[10,34]]])
b = np.array([[[22,1],[91,5]],[[22,1],[91,5]]])
inner_product = np.dot(a,b)
print("The Inner product of the two 3-d arrays:", inner_product)
Sortir
The Inner product of the two 3-d arrays: [[[[2841 149]
[2841 149]]
[[5074 260]
[5074 260]]]
[[[3039 158]
[3039 158]]
[[3314 180]
[3314 180]]]]