NumPy矩陣乘法的實(shí)現(xiàn)
NumPy矩陣乘法
矩陣乘法是將兩個(gè)矩陣作為輸入值,并將 A 矩陣的行與 B 矩陣的列對(duì)應(yīng)位置相乘再相加,從而生成一個(gè)新矩陣,如下圖所示:
注意:必須確保第一個(gè)矩陣中的行數(shù)等于第二個(gè)矩陣中的列數(shù),否則不能進(jìn)行矩陣乘法運(yùn)算。
圖1:矩陣乘法
矩陣乘法運(yùn)算被稱為向量化操作,向量化的主要目的是減少使用的 for 循環(huán)次數(shù)或者根本不使用。這樣做的目的是為了加速程序的計(jì)算。
下面介紹 NumPy 提供的三種矩陣乘法,從而進(jìn)一步加深對(duì)矩陣乘法的理解。
逐元素矩陣乘法
multiple() 函數(shù)用于兩個(gè)矩陣的逐元素乘法,示例如下:
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
輸出結(jié)果:
array([[[ 9, 16, 21],
[24, 25, 24],
[21, 16, 9]]])
矩陣乘積運(yùn)算
matmul() 用于計(jì)算兩個(gè)數(shù)組的矩陣乘積。示例如下:
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) print(result)
輸出結(jié)果:
數(shù)組([[[
[30,24,18],
[84,69,54 ],[138,114,90]]])
矩陣點(diǎn)積
dot() 函數(shù)用于計(jì)算兩個(gè)矩陣的點(diǎn)積。如下所示:
示例如下:
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) print(result)
輸出結(jié)果:
array([[[[ 30, 24, 18]],
[[ 84, 69, 54]],
[[138, 114, 90]]]])
到此這篇關(guān)于NumPy矩陣乘法的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)NumPy矩陣乘法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
在Python函數(shù)中輸入任意數(shù)量參數(shù)的實(shí)例
今天小編就為大家分享一篇在Python函數(shù)中輸入任意數(shù)量參數(shù)的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-07-07Windows系統(tǒng)下安裝tensorflow的配置步驟
這篇文章主要介紹了Windows系統(tǒng)下安裝tensorflow,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07Numpy中np.vstack()?和?np.hstack()?的實(shí)現(xiàn)
本文主要介紹了Numpy中np.vstack()和np.hstack()的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-04-04詳談套接字中SO_REUSEPORT和SO_REUSEADDR的區(qū)別
下面小編就為大家分享一篇詳談套接字中SO_REUSEPORT和SO_REUSEADDR的區(qū)別,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-04-04