Înmulțirea matricei este o operație care produce o singură matrice prin luarea a două matrice ca intrare și înmulțirea rândurilor primei matrice în coloana celei de-a doua matrice. Rețineți că trebuie să ne asigurăm că numărul de rânduri din prima matrice trebuie să fie egal cu numărul de coloane din a doua matrice.
În Python, procesul de multiplicare a matricei folosind NumPy este cunoscut ca vectorizare . Obiectivul principal al vectorizării este eliminarea sau reducerea pentru bucle pe care le folosim în mod explicit. Reducerea buclelor „for” din programe oferă o calcul mai rapidă. Pachetul încorporat NumPy este folosit pentru manipulare și procesare matrice.
rakhi sawant
Acestea sunt trei metode prin care putem efectua multiplicarea matricei numpy.
- Mai întâi este utilizarea funcției multiplicare(), care efectuează înmulțirea matricei în funcție de elemente.
- În al doilea rând este utilizarea funcției matmul(), care realizează produsul matriceal a două matrice.
- Ultimul este utilizarea funcției dot(), care realizează produsul punctual a două matrice.
Exemplul 1: Înmulțirea matricei în funcție de elemente
import numpy as np array1=np.array([[1,2,3],[4,5,6],[7,8,9]],ndmin=3) array2=np.array([[9,8,7],[6,5,4],[3,2,1]],ndmin=3) result=np.multiply(array1,array2) result
În codul de mai sus
- Am importat numpy cu numele de alias np.
- Am creat un array1 și un array2 folosind funcția numpy.array() cu dimensiunea 3.
- Am creat un rezultat variabil și am atribuit valoarea returnată a funcției np.multiply().
- Am trecut atât matricea array1 cât și matricea2 în np.multiply().
- În cele din urmă, am încercat să tipărim valoarea rezultatului.
În rezultat, a fost prezentată o matrice tridimensională ale cărei elemente sunt rezultatul înmulțirii elementelor atât a elementelor matrice1, cât și a matricei2.
Ieșire:
array([[[ 9, 16, 21], [24, 25, 24], [21, 16, 9]]])
Exemplul 2: Produs Matrix
import numpy as np array1=np.array([[1,2,3],[4,5,6],[7,8,9]],ndmin=3) array2=np.array([[9,8,7],[6,5,4],[3,2,1]],ndmin=3) result=np.matmul(array1,array2) result
Ieșire:
array([[[ 30, 24, 18], [ 84, 69, 54], [138, 114, 90]]])
În codul de mai sus
metoda equals în java
- Am importat numpy cu numele de alias np.
- Am creat array1 și array2 folosind funcția numpy.array() cu dimensiunea 3.
- Am creat un rezultat variabil și am atribuit valoarea returnată a funcției np.matmul().
- Am trecut atât tabloul array1 cât și array2 în np.matmul().
- În cele din urmă, am încercat să tipărim valoarea rezultatului.
În rezultat, a fost prezentată o matrice tridimensională ale cărei elemente sunt produsul ambelor elemente ale matricei1 și ale matricei2.
iterați harta în java
Exemplul 3: produs punctual
Acestea sunt următoarele specificații pentru numpy.dot:
- Când ambele a și b sunt matrice 1-D (unidimensionale) -> Produsul interior al doi vectori (fără conjugare complexă)
- Când ambele a și b sunt tablouri 2-D (două dimensiuni) -> Înmulțire matrice
- Când a sau b este 0-D (cunoscut și ca scalar) -> Înmulțiți folosind numpy.multiply(a, b) sau a * b.
- Când a este o matrice N-D și b este o matrice 1-D -> Suma produs pe ultima axă a lui a și b.
- Când a este o matrice N-D și b este o matrice M-D, cu condiția ca M>=2 -> Suma produs pe ultima axă a lui a și penultima axă a lui b:
De asemenea, punct(a, b)[i,j,k,m] = suma(a[i,j,:] * b[k,:,m])
import numpy as np array1=np.array([[1,2,3],[4,5,6],[7,8,9]],ndmin=3) array2=np.array([[9,8,7],[6,5,4],[3,2,1]],ndmin=3) result=np.dot(array1,array2) result
În codul de mai sus
- Am importat numpy cu numele de alias np.
- Am creat array1 și array2 folosind funcția numpy.array() cu dimensiunea 3.
- Am creat un rezultat variabil și am atribuit valoarea returnată a funcției np.dot().
- Am trecut atât tabloul array1 cât și array2 în np.dot().
- În cele din urmă, am încercat să tipărim valoarea rezultatului.
În rezultat, a fost arătată o matrice tridimensională ale cărei elemente sunt produsul punctual al elementelor matrice1 și matrice2.
Ieșire:
array([[[[ 30, 24, 18]], [[ 84, 69, 54]], [[138, 114, 90]]]])