Ole fa'atele ole matrix ose galuega fa'avae ile algebra laina.
E masani ona matou faʻaaogaina i le tele o talosaga e pei o le faʻaogaina o ata, aʻoaʻoga masini, ma le tele o isi mea. NumPy o se pusa iloga Python mo suʻesuʻega faʻasaienisi.
Ae ui i lea, i lenei pou, o le a tatou vaʻavaʻai i auala eseese mo le faʻateleina o matrix i le Python e aunoa ma le faʻaaogaina o NumPy.
O le a matou faʻaaogaina faʻamau faʻaputu, o le fa'afanua () fa'apipi'iina, ma le lisi o le malamalama.
E le gata i lea, o le a tatou vaʻavaʻai i faʻamanuiaga ma faʻaletonu o taʻiala taʻitasi, faʻapea foʻi ma le taimi e faʻaoga ai. Afai e te fou i le algebra laina ma e te manaʻo e aʻoaʻo atili e uiga i le faʻateleina o matrix; faitau pea.
O fea tatou te fa'aogaina ai le fa'ateleina o le matrix?
E fa'aogaina le fa'ateleina o matrix i komepiuta ata e suia ata 2D ma 3D. Mo se fa'ata'ita'iga, e mafai ona e fesuia'i, fua, ma fa'aliliu mea i luga o le lau. Matrixes e faʻaaogaina i le faʻatulagaina o ata e fai ma sui o ata o ni faʻasologa o pika. E le gata i lea, e mafai ona faʻaaogaina matrixes e faʻatino ai gaioiga e pei o le faʻamamaina o ata.
Matou te faʻaaogaina foi matrixes i totonu masini suʻesuʻe. E mafai ona latou fesoasoani ia i matou e fai ma sui o faʻamaumauga ma faʻataʻitaʻiga faʻataʻitaʻiga. E mafai ona tatou fa'atinoina le tele o fa'agaioiga, e pei ole fa'akomepiuta dot products ma matrix-vector products.
E mautinoa lava, o lenei fa'agaioiga e sili ona lelei i galuega fa'asaienisi. E mafai ona tatou fa'aogaina i le fisiki ma inisinia e fa'amatala ai le aofa'i fa'aletino. O le mea lea, e mafai ona tatou galulue faʻatasi ma vectors ma tensors.
Aisea Tatou te Le Filifili ai e Fa'aaoga NumPy?
A o NumPy o se Python faletusi, e le o taimi uma e sili ona lelei mo le faʻateleina o matrix. Atonu tatou te le filifili e fa'aoga NumPy mo mafua'aga e pei o le tele ma le fa'alagolago, a'oa'oga, ma faiga fa'aagaaga.
O le faʻaaogaina o galuega faʻapipiʻi a le Python poʻo le atinaʻeina o tulafono masani atonu e sili atu ona lelei i nisi taimi. E taua tele le maitauina, peitaʻi, o NumPy o se faletusi malosi. E le gata i lea, e mafai foi ona e faʻaaogaina mo le faʻateleina o matrix.
Ia, se'i o tatou va'ai pe fa'afefea ona tatou ausia le fa'ateleina o le matrix e aunoa ma le NumPy.
Nested loops method
O le fa'aogaina o fa'aoga fa'aoga fa'aoga fa'aoga fa'apipi'i e fa'atino ai le fa'ateleina o le matrix i le Python. E fa'aauau le galuega i luga o elemene matrix ta'itasi. Ma, e faʻateleina i latou e faʻaaoga ai se faasologa o faʻamaufaʻailoga. O le galuega e toe faʻafoʻi mai ai le iʻuga, lea e teuina i se matrix fou.
O lenei faiga e faigofie ona malamalama. Ae ui i lea, atonu e le lelei tele e pei o isi auala, aemaise lava mo matrices tetele. Ae, ose filifiliga matagofie mo oe pe afai e te fou ile algebra linear.
def matrix_multiplication(A, B):
# Determine the matrices' dimensions.
rows_A = len(A)
cols_A = len(A[0])
rows_B = len(B)
cols_B = len(B[0])
# Seti le matrix i'uga i zeroes.
result = [[0 for row in range(cols_B)] for col in
range(rows_A)]
# Iterate through rows of A
for s in range(rows_A):
# Iterate through columns of B
for j in range(cols_B):
# Iterate through rows of B
for k in range(cols_A):
result[s][j] += A[s][k] * B[k][j]
return result
Se'i tatou maua se fa'ata'ita'iga pe fa'apefea ona fai lenei mea. E mafai ona e faʻaopoopoina laina nei o code i lalo e suʻe ai lenei faʻataʻitaʻiga.
# Sample matrices
A = [[1, 4, 3], [4, 9, 6]]
B = [[7, 8], [9, 10], [11, 12]]
# Perform matrix multiplication
result = matrix_multiplication(A, B)
# Print the result
print(result)
# Output: [[76, 84], [175, 194]]
faamanuiaga:
- Faigofie ona malamalama.
- Lelei mo tagata fou poʻo i latou o loʻo sailia se malamalamaga loloto i le faʻateleina o matrix.
tulaga le lelei:
- E le aoga e pei o isi metotia, aemaise lava mo matrices tetele.
- E le faigofie ona faitau e pei o isi auala.
fa'afanua() auala galue
O le faʻafanua () faʻaogaina auala e maua ai se isi auala mo le faʻateleina o matrix i le Python. I lenei faiga, matou te faʻaogaina le faʻafanua () faʻaogaina. O le mea lea, matou te faʻaogaina se meafaigaluega faʻatulagaina polokalame e faʻaogaina ai se galuega tuʻuina atu i elemene taʻitasi (lisi, tuple, ma isi). E le gata i lea, O le faʻafanua () galuega e talia ni faʻamaufaʻailoga se lua, o se galuega ma se faʻaogaina. Ma, e toe faʻafoʻi mai se faʻamatalaga e faʻaogaina le galuega i elemene taʻitasi taʻitasi.
I lenei faiga, matou te uia tagata taʻitasi o le matrix ma faia le faʻateleina e faʻaaoga ai le faʻafanua faʻapipiʻi () galuega.
O le zip() galuega e faʻaaogaina e faʻaogaina i elemene taʻitasi o matrices i le tutusa.
Ma le mea mulimuli, o le sum() galuega e faʻaaogaina e faʻaopoopo ai iʻuga.
def matrix_multiplication(A, B):
# To get the dimensions of the matrices
rows_A = len(A)
cols_A = len(A[0])
rows_B = len(B)
cols_B = len(B[0])
# We use map() function for multiplication.
result = [[sum(a * b for a, b in zip(row_a, col_b)) for
col_b in zip(*B)] for row_a in A]
return result
I le taimi nei, toe, e mafai ona tatou faʻataʻitaʻiina a tatou code ma se faʻataʻitaʻiga.
# Example matrices
A = [[3, 2, 3], [4, 5, 6]]
B = [[7, 8], [9, 10], [11, 12]]
# Use map() function to perform matrix multiplication
result = list(map(lambda x: list(map(lambda y: sum(i*j
for i,j in zip(x,y)), zip(*B))), A))
# Print the result
print(result)
# Output: [[72, 80], [139, 154]]
tulaga lelei
- E sili atu le aoga nai lo le fa'aputuina fa'alatalafu fa'alatalata
- E fa'aogaina polokalame fa'atino e fa'afaigofie ai le code.
tulaga le lelei
- O nisi tagata e le masani i polokalame fa'atino atonu latou te iloa e le mafai ona faitau.
- E itiiti le malamalama nai lo le nested loops technique.
Lisi auala malamalama
Lisi malamalama e mafai ai ona e faia se lisi fou i se laina e tasi o code. O le mea lea, e ala i le faʻaogaina o se faʻamatalaga i sui taʻitasi o se lisi o loʻo iai.
I lenei faiga, o le fa'ateleina o lo'o fa'atinoina e ala i le fa'aauau pea ona fa'ata'ita'i i sui o le matrix ta'itasi. O lo'o matou fa'aogaina le fa'avasegaina o le lisi malamalama.
# Sample matrices
A = [[1, 12, 3], [14, 5, 6]]
B = [[7, 8], [9, 10], [12, 12]]
# Matrix multiplication using list comprehension
result = [[sum(A[i][k] * B[k][j] for k in range(len(A[0])))
for j in range(len(B[0]))] for i in range(len(A))]
# Print the result
print(result)
[[151, 164], [215, 234]]
faamanuiaga
- Fa'atusatusa i le fa'afanua() auala galue, pupuu ma sili atu ona mafai ona faitau.
tulaga le lelei
- Atonu e itiiti le aoga nai lo le faʻaaogaina o le faʻafanua () galuega, aemaise lava mo matrices tetele.
- E sili atu le faigata nai lo le fa'alatalata fa'alatalafu.
iʻuga
I lenei pou, na matou vaʻavaʻai i isi auala e faʻaaoga ai NumPy pe a faʻateleina matrices i le Python. Na matou faia le faʻateleina o matrix i faʻamau faʻapipiʻi, o le faʻafanua () faʻapipiʻiina, ma le lisi o le malamalama.
O le fuafuaga sili e fa'alagolago i mana'oga fa'apitoa o lau galuega.
O ta'iala ta'itasi e iai ona lelei ma leaga. Ina ia mautinoa o loʻo faʻaogaina lelei le galuega, o se manatu lelei le faʻaopoopoina o ni suʻega faʻataʻitaʻiga i fua matrix eseese ma tau.
E tatau foi ona e aofia ai nisi o suʻega faʻatinoga e faʻatusatusa ai le lelei o nei metotia.
Tuua se tali