Lahendatud: matmul kiirkiri numpy

Viimane uuendus: 09/11/2023

Maatriksid on paljude arvutusülesannete põhiosa erinevates valdkondades, sealhulgas andmeteaduses, masinõppes ja graafikas. Pythonis pakub populaarne numbriteek NumPy mugavat viisi maatriksi korrutamiseks, kasutades funktsiooni matmul. Selles artiklis käsitleme NumPy matmuli stenogrammi, selle funktsionaalsust ja rakendamist teie Pythoni koodis.

Sissejuhatus maatriksitesse ja NumPysse

Maatriks on ridadesse ja veergudesse organiseeritud kahemõõtmeline arvude massiiv, mida saab kasutada mitmesuguste lineaarsete teisenduste, lineaarvõrrandisüsteemide ja geomeetriliste teisenduste esitamiseks. Pythonis pakub NumPy teek rikkalikku funktsioonide komplekti maatriksite tõhusaks loomiseks ja nendega töötamiseks.

NumPy on võimas avatud lähtekoodiga Pythoni teek, mis toetab suurte mitmemõõtmeliste massiivide ja maatriksitega töötamist. See pakub ka matemaatiliste funktsioonide kogumit nende massiividega toimingute tegemiseks, näiteks maatriksite korrutamiseks, mis on paljudes rakendustes põhitoiming.

Maatrikskorrutis ja matmul

Maatriksi korrutamine on kahendtehte, mis võtab maatriksite paari ja annab tulemuseks teise maatriksi. See on määratletud kui esimese maatriksi ridade ja teise maatriksi veergude vastavate elementide korrutise summa.

NumPy matmul - funktsiooni kasutatakse maatriksite korrutamiseks. See võtab kaks sisendmassiivi ja tagastab nende maatriksite korrutise. Kui sisendmassiivid ei ole maatriksid, käsitletakse neid maatriksitena, mille kaks viimast dimensiooni tähistavad ridu ja veerge.

import numpy as np

matrix1 = np.array([[1, 2], [3, 4]])
matrix2 = np.array([[5, 6], [7, 8]])

result = np.matmul(matrix1, matrix2)
print(result)

Selles näites võtab funktsioon sisendiks kaks 2 × 2 maatriksit ja tagastab nende korrutise. Saadud tulemuseks on samade mõõtmetega maatriks.

Samm-sammuline selgitus

Siin on ülaltoodud maatriksi korrutamiskoodi näite samm-sammult selgitus:

1. Importige numpy teek, kasutades lühendit "np".
2. Defineeri kaks maatriksit (antud juhul 2×2), kasutades numpy massiivi funktsiooni.
3. Tehke maatriksi korrutamine numpy funktsiooni matmul abil, pakkudes argumentidena maatriks1 ja maatriks2.
4. Printige saadud maatriks.

Selle näite väljund on järgmine:

[[19 22]
 [43 50]]

Matmuli omadused ja piirangud

Üldiselt ei rahulda maatrikskorrutamine teatud matemaatilisi omadusi, nagu kommutatiivsus, kuid täidab selliseid omadusi nagu assotsiatiivsus ja jaotus. Sisendmaatriksite mõõtmed mängivad maatriksi korrutamisel otsustavat rolli – esimese maatriksi veergude arv peab olema võrdne teise maatriksi ridade arvuga.

Kui sisendmaatriksid ei vasta neile mõõtmenõuetele, tekib ValueError . Samuti väärib märkimist, et kuigi matmul funktsioon suudab käsitleda mitmemõõtmelisi massiive, on maatriksikorrutis defineeritud ainult kahemõõtmeliste maatriksite jaoks.

Alternatiivsed funktsioonid maatrikskorrutamiseks

Lisaks funktsioonile matmul pakub NumPy maatriksi korrutamiseks muid stenogrammi meetodeid:

1. np.dot: See funktsioon võib teostada ka maatriksikorrutamist, kuid on üldisem, kuna suudab käsitleda ka sisekorrutisi, väliskorrutisi ja tensorkorrutisi.
2. @ operaator: Python 3.5 ja uuemates versioonides saab @-sümbolit kasutada maatriksi korrutamise infix-operaatorina.

result_alternative1 = np.dot(matrix1, matrix2)
result_alternative2 = matrix1 @ matrix2

Need alternatiivsed meetodid annavad sama tulemuse kui matmuli funktsioon.

Kokkuvõtteks võib öelda, et NumPy matmuli kiirkiri pakub tõhusat ja mitmekülgset viisi Pythonis maatriksikorrutamiseks. Selle võimsa funktsiooni ja selle kasutamise mõistmine võib teie koodi jõudlust erinevates rakendustes märkimisväärselt parandada.

Seonduvad postitused: