日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

python numpy中multiply與*及matul 的區(qū)別說明

瀏覽:21日期:2022-06-18 11:19:45
1、對(duì)于矩陣(matrix)而言

multiply是對(duì)應(yīng)元素相乘,而 * 、np.matmul() 函數(shù) 與 np.dot()函數(shù) 相當(dāng)于矩陣乘法(矢量積),對(duì)應(yīng)的列數(shù)和行數(shù)必須滿足乘法規(guī)則;如果希望以數(shù)量積的方式進(jìn)行,則必須使用 np.multiply 函數(shù),如下所示:

a = np.mat([[1, 2, 3, 4, 5]])b = np.mat([[1,2,3,4,5]])c=np.multiply(a,b)print(c)

結(jié)果是

[[ 1 4 9 16 25]]a = np.mat([[1, 2, 3, 4, 5]])b = np.mat([ [1],[2],[3],[4],[5] ] )d=a*bprint(d) #a是shape(1,5),b是shape(5,1),結(jié)果是一個(gè)實(shí)數(shù)

結(jié)果是

[[55]]

2、對(duì)于數(shù)組(Array)而言

* 與 multiply均表示的是數(shù)量積(即對(duì)應(yīng)元素的乘積相加),np.matmul與np.dot表示的是矢量積(即矩陣乘法)。

代碼:

if __name__ == ’__main__’: w = np.array([[1,2],[3,4]]) x = np.array([[1,3],[2,4]]) w1 = np.array([[1,2],[3,4]]) x1 = np.array([[1,2]]) w_mat = np.mat([[1,2],[3,4]]) x_mat = np.mat([[1,3],[2,4]]) print('x1.shape:',np.shape(x1)) w_x_start = w*x w_x_dot = np.dot(w,x) x_w_dot = np.dot(x,w) w_x_matmul = np.matmul(w, x) x_w_matmul = np.matmul(x, w) w_x_multiply = np.multiply(w,x) x_w_multiply = np.multiply(x, w) #w1_x1_matmul = np.matmul(w1, x1) x1_w1_matmul = np.matmul(x1, w1) w_x_mat_matmul = np.matmul(w_mat,x_mat) x_w_mat_matmul = np.matmul(x_mat, w_mat) w_x_mat_start = w_mat*x_mat x_w_mat_start = x_mat*w_mat w_x_mat_dot = np.dot(w_mat,x_mat) x_w_mat_dot = np.dot(x_mat,w_mat) w_x_mat_multiply = np.multiply(w_mat,x_mat) x_w_mat_multiply = np.multiply(x_mat,w_mat) print('W.shape:', np.shape(w)) print('x.shape:', np.shape(x)) print('w_x_start.shape:', np.shape(w_x_start)) print('w_x_dot.shape:', np.shape(w_x_dot)) print('x_w_dot.shape:', np.shape(x_w_dot)) print('x1_w1_matmul.shape::', np.shape(x1_w1_matmul)) print('做Array數(shù)組運(yùn)算時(shí):', ’n’) print('w_x_start:', w_x_start) print('w_x_dot:', w_x_dot) print('x_w_dot:', x_w_dot) print('w_x_matmul:', w_x_matmul) print('x_w_matmul:', x_w_matmul) print('w_x_multiply:', w_x_multiply) print('x_w_multiply:', x_w_multiply) # print('w1_x1_matmul:', w1_x1_matmul) print('x1_w1_matmul:', x1_w1_matmul) print('做matrix矩陣運(yùn)算時(shí):', ’n’) print('w_x_mat_start:', w_x_mat_start) print('x_w_mat_start:', x_w_mat_start) print('x_w_mat_dot:', x_w_mat_dot) print('w_x_mat_dot:', w_x_mat_dot) print('w_x_mat_matmul:',w_x_mat_matmul) print('x_w_mat_matmul:', x_w_mat_matmul) print('w_x_mat_multiply',w_x_mat_multiply) print('x_w_mat_multiply', x_w_mat_multiply)

x1.shape: (1, 2)W.shape: (2, 2)x.shape: (2, 2)w_x_start.shape: (2, 2)w_x_dot.shape: (2, 2)x_w_dot.shape: (2, 2)x1_w1_matmul.shape:: (1, 2)做Array數(shù)組運(yùn)算時(shí): w_x_start: [[ 1 6] [ 6 16]]w_x_dot: [[ 5 11] [11 25]]x_w_dot: [[10 14] [14 20]]w_x_matmul: [[ 5 11] [11 25]]x_w_matmul: [[10 14] [14 20]]w_x_multiply: [[ 1 6] [ 6 16]]x_w_multiply: [[ 1 6] [ 6 16]]x1_w1_matmul: [[ 7 10]]做matrix矩陣運(yùn)算時(shí): w_x_mat_start: [[ 5 11] [11 25]]x_w_mat_start: [[10 14] [14 20]]x_w_mat_dot: [[10 14] [14 20]]w_x_mat_dot: [[ 5 11] [11 25]]w_x_mat_matmul: [[ 5 11] [11 25]]x_w_mat_matmul: [[10 14] [14 20]]w_x_mat_multiply [[ 1 6] [ 6 16]]x_w_mat_multiply [[ 1 6] [ 6 16]]

python中轉(zhuǎn)置的優(yōu)先級(jí)高于乘法運(yùn)算 例如:

a = np.mat([[2, 3, 4]])b = np.mat([[1,2,3]] )d=a*b.Tprint(d)

結(jié)果是

[[20]]

其中a為1行3列,b也為1行3列,按理來(lái)說直接計(jì)算a*b是不能運(yùn)算,但是計(jì)算d=a*b.T是可以的,結(jié)果是20,說明運(yùn)算順序是先轉(zhuǎn)置再計(jì)算a與b轉(zhuǎn)置的積,*作為矩陣乘法,值得注意的在執(zhí)行*運(yùn)算的時(shí)候必須符合行列原則。

numpy中tile()函數(shù)的用法

b = tile(a,(m,n)):即是把a(bǔ)數(shù)組里面的元素復(fù)制n次放進(jìn)一個(gè)數(shù)組c中,然后再把數(shù)組c復(fù)制m次放進(jìn)一個(gè)數(shù)組b中,通俗地講就是將a在行方向上復(fù)制m次,在列方向上復(fù)制n次。

python中的 sum 和 np.sum 是不一樣的,如果只寫sum的話,表示的是數(shù)組中對(duì)應(yīng)的維度相加,如果寫 np.sum 的話,表示一個(gè)數(shù)組中的維數(shù)和列數(shù)上的數(shù)都加在一起。

如下圖所示:

python numpy中multiply與*及matul 的區(qū)別說明

補(bǔ)充:總結(jié):numpy中三個(gè)乘法運(yùn)算multiply,dot和* 的區(qū)別

引言:

本人在做機(jī)器學(xué)習(xí)的練習(xí)1的時(shí)候,時(shí)常拋出錯(cuò)誤:

python numpy中multiply與*及matul 的區(qū)別說明

Not aligned是什么意思呢?

意思是兩個(gè)矩陣相乘無(wú)意義。

線性代數(shù)中mxn 和 nxp的矩陣才能相乘,其結(jié)果是mxp的矩陣。

出錯(cuò)源代碼:

def gradientDescent(X,y,theta,alpha,iteration): colunms = int(theta.ravel().shape[1]) thetai = np.matrix(np.zeros(theta.shape)) cost = np.zeros(iteration) for i in range(iteration):error = X*theta.T-yfor j in range(colunms): a = np.sum(error*X[:,j])/len(X) ########## error! thetai[0,j] = thetai[0,j] - alpha*a theta = thetai cost[i] = computeCost(X, y, theta) return theta,cost

這里error是一個(gè)nx1的矩陣,theta.T也是一個(gè)nx1的矩陣。

而矩陣之間*運(yùn)算符表示矩陣乘法。我們這里想實(shí)現(xiàn)矩陣的對(duì)應(yīng)元素相乘,因此應(yīng)該用np.multiply()實(shí)現(xiàn)。

總結(jié):

(讀者可使用簡(jiǎn)單的舉例自行驗(yàn)證)

1.*用法:

矩陣與矩陣:矩陣乘法(matrix)

數(shù)組與數(shù)組:對(duì)應(yīng)位置相乘(array)

2.np.dot()用法:

矩陣相乘的結(jié)果

3.np.multiply()用法:

數(shù)組、矩陣都得到對(duì)應(yīng)位置相乘。

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
欧美亚洲激情| 国产黄色一区| 国产调教一区二区三区| 亚洲成人一区在线观看| 精品久久网站| 精品亚洲美女网站| 精精国产xxxx视频在线野外| 日韩欧美少妇| 久久国产成人| 国产精品亚洲欧美日韩一区在线 | 久久都是精品| 中文在线日韩| 国产精品视频一区二区三区| 国产精品网站在线看| 精品久久91| 久久亚洲风情| 蜜桃视频一区二区三区在线观看| 91亚洲成人| 亚洲欧美日韩一区在线观看| 午夜欧美视频| 午夜宅男久久久| 亚洲性视频在线| 日韩黄色在线观看| 久久精品资源| 日韩午夜电影| 国产亚洲欧美日韩精品一区二区三区| 视频一区二区欧美| 91亚洲无吗| 精品三级在线观看视频| 美女网站一区| 亚欧洲精品视频在线观看| 国产亚洲人成a在线v网站 | 91成人在线精品视频| 久久女人天堂| 亚洲一级淫片| 韩国精品主播一区二区在线观看 | 成人va天堂| 亚洲精品一二三区区别| 亚洲精品第一| 欧美sss在线视频| 欧美激情亚洲| 在线观看亚洲精品福利片| 你懂的国产精品永久在线| 久久亚洲影院| 丁香六月综合| 国产欧美视频在线| 一区二区三区国产在线| 欧美a级片一区| 四虎影视精品| 午夜精品成人av| 国产精品一区二区免费福利视频| 久久xxxx精品视频| zzzwww在线看片免费| 久久精品超碰| 日韩不卡一区二区三区| 石原莉奈一区二区三区在线观看| 丝袜av一区| 欧洲一区二区三区精品| 四虎国产精品免费观看| 国产一区二区三区久久久久久久久| 日韩综合一区二区三区| 免费精品视频在线| 亚洲午夜国产成人| 亚洲精品高潮| 日韩高清二区| 国产精品免费99久久久| 亚洲色图国产| 91成人超碰| 免费成人在线观看| 青青草精品视频| 国产精品日韩精品在线播放 | 国产精品精品| 久久中文视频| 天堂av在线一区| 日本亚洲欧美天堂免费| 国产免费av一区二区三区| 精品一区二区三区四区五区| 91一区二区三区四区| 午夜国产欧美理论在线播放| 欧美在线综合| 日韩高清成人在线| 国产在线视频欧美一区| a天堂资源在线| 午夜一区在线| 国产精品丝袜在线播放| 欧美成人a交片免费看| 黄页网站一区| 精品网站999| 99国产精品久久久久久久 | 亚洲天堂资源| 国产亚洲网站| 国产精一区二区| 成人av二区| 日韩高清在线不卡| 97人人精品| 一区二区三区国产盗摄| 精品国内亚洲2022精品成人| 人人香蕉久久| 欧美国产日韩电影| 男人的天堂亚洲一区| 成人三级高清视频在线看| 欧美性感美女一区二区| 欧美日韩一区二区三区在线电影| 韩国精品主播一区二区在线观看| 亚洲三级国产| 丝袜美腿高跟呻吟高潮一区| av成人国产| 亚洲成人精品| 婷婷综合五月| 欧美日韩xxxx| 成人美女视频| 亚欧洲精品视频在线观看| 久久久777| 国产成人久久精品麻豆二区| 久久激情五月激情| 亚洲精品在线二区| 亚洲精一区二区三区| 亚洲国产成人精品女人| 欧美日韩中文一区二区| 国内精品亚洲| 在线看片福利| 黄色在线网站噜噜噜| 青青在线精品| 日韩欧美高清一区二区三区| 91精品亚洲| 激情综合自拍| 99视频在线精品国自产拍免费观看| 99国产精品免费视频观看| 成人国产精品一区二区网站| 精品国产一区二区三区av片| 88久久精品| 国产日韩亚洲| 久草精品视频| 精品国产黄a∨片高清在线| 精品伊人久久| 久久中文字幕二区| 巨乳诱惑日韩免费av| 亚洲日韩视频| 久久99伊人| 日本午夜精品| 国产 日韩 欧美 综合 一区| 日韩欧美一区二区三区在线视频| 日韩精品2区| 亚洲一区二区三区高清不卡| 日韩高清二区| 亚洲深夜视频| 四虎国产精品免费久久| 精品视频亚洲| 欧美午夜不卡影院在线观看完整版免费| 久久国产精品99国产| 欧美日韩99| 91精品一区二区三区综合| 亚洲精品乱码久久久久久蜜桃麻豆| 水蜜桃久久夜色精品一区的特点| 日韩高清二区| 成人羞羞视频在线看网址| 免费国产亚洲视频| 久久亚洲国产精品尤物| av亚洲免费| 久久影院一区二区三区| 黑森林国产精品av| 蜜桃tv一区二区三区| 国产日韩欧美一区在线| 99精品视频精品精品视频| 日本一区免费网站| 久久亚洲国产| 久久精品国产网站| 久久不射中文字幕| 国产一区二区三区四区| 一区二区三区网站| 99久久亚洲精品蜜臀| 国产欧美69| 天堂俺去俺来也www久久婷婷| 久久久水蜜桃av免费网站| 国产精品1区| 日韩高清一区二区| 久久av一区| 99视频在线精品国自产拍免费观看| 国际精品欧美精品| 国产精品午夜av| 欧美日韩1区| 亚洲不卡视频| 亚洲日韩中文字幕一区| 午夜久久一区| 久久人人99| 91综合网人人| 福利在线免费视频| 日韩美女一区二区三区在线观看| 精品72久久久久中文字幕| 免费视频一区二区三区在线观看| 日本午夜免费一区二区| 天堂va欧美ⅴa亚洲va一国产| 丝袜a∨在线一区二区三区不卡| 国产一区亚洲| 久久蜜桃av| 99国产精品久久久久久久| 日韩一级不卡| 日韩三级一区| 美女国产一区二区三区| 久久av综合|