欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品

主頁 > 知識庫 > python numpy中multiply與*及matul 的區(qū)別說明

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

熱門標簽:400電話辦理哪種 河北防封卡電銷卡 地圖標注線上如何操作 手機網頁嵌入地圖標注位置 應電話機器人打電話違法嗎 開封語音外呼系統代理商 開封自動外呼系統怎么收費 天津電話機器人公司 電銷機器人的風險

1、對于矩陣(matrix)而言

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

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

結果是

[[ 1 4 9 16 25]]
a = np.mat([[1, 2, 3, 4, 5]])
b = np.mat([ [1],[2],[3],[4],[5] ] )
d=a*b
print(d) #a是shape(1,5),b是shape(5,1),結果是一個實數

結果是

[[55]]

2、對于數組(Array)而言

* 與 multiply均表示的是數量積(即對應元素的乘積相加),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數組運算時:", '\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矩陣運算時:", '\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數組運算時:
 
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矩陣運算時:
 
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中轉置的優(yōu)先級高于乘法運算 例如:

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

結果是

[[20]]

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

numpy中tile()函數的用法

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

python中的 sum 和 np.sum 是不一樣的,如果只寫sum的話,表示的是數組中對應的維度相加,如果寫 np.sum 的話,表示一個數組中的維數和列數上的數都加在一起。

如下圖所示:

補充:總結:numpy中三個乘法運算multiply,dot和* 的區(qū)別

引言:

本人在做機器學習的練習1的時候,時常拋出錯誤:

Not aligned是什么意思呢?

意思是兩個矩陣相乘無意義。

線性代數中mxn 和 nxp的矩陣才能相乘,其結果是mxp的矩陣。

出錯源代碼:

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-y
        for 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是一個nx1的矩陣,theta.T也是一個nx1的矩陣。

而矩陣之間*運算符表示矩陣乘法。我們這里想實現矩陣的對應元素相乘,因此應該用np.multiply()實現。

總結:

(讀者可使用簡單的舉例自行驗證)

1.*用法:

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

數組與數組:對應位置相乘(array)

2.np.dot()用法:

矩陣相乘的結果

3.np.multiply()用法:

數組、矩陣都得到對應位置相乘。

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • Python NumPy灰度圖像的壓縮原理講解
  • Python多進程共享numpy 數組的方法
  • python中sqllite插入numpy數組到數據庫的實現方法
  • python圖像處理基本操作總結(PIL庫、Matplotlib及Numpy)
  • 淺談Python numpy創(chuàng)建空數組的問題
  • Python NumPy中diag函數的使用說明
  • Python機器學習三大件之一numpy
  • python利用numpy存取文件案例教程

標簽:駐馬店 常州 山東 六盤水 蘭州 江蘇 成都 宿遷

巨人網絡通訊聲明:本文標題《python numpy中multiply與*及matul 的區(qū)別說明》,本文關鍵詞  python,numpy,中,multiply,與,;如發(fā)現本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《python numpy中multiply與*及matul 的區(qū)別說明》相關的同類信息!
  • 本頁收集關于python numpy中multiply與*及matul 的區(qū)別說明的相關信息資訊供網民參考!
  • 推薦文章
    欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品
  • <rt id="w000q"><acronym id="w000q"></acronym></rt>
  • <abbr id="w000q"></abbr>
    <rt id="w000q"></rt>
    日韩视频不卡中文| 亚洲韩国一区二区三区| 免费av网站大全久久| 美女流白浆视频| 一区二区成人免费视频| 国产亚洲精久久久久久| 精品一二三四在线| 少妇毛片一区二区三区| 欧美一区二区三区四区高清| 亚洲午夜av在线| 在线中文字日产幕| 欧美日韩亚洲国产综合| 亚洲精品国产精品乱码不99 | 日本黄色录像片| 7777精品伊人久久久大香线蕉最新版| 一区二区三区91| 能看毛片的网站| 怡红院一区二区| 欧美日韩dvd在线观看| 亚洲国产综合在线| 中国极品少妇xxxx| 日韩视频一区二区| 久久精品99久久久| 99久久99久久精品免费| 国产欧美日韩精品一区| 丁香六月综合激情| 色狠狠一区二区三区香蕉| 亚洲色图视频网| 日本女人黄色片| 欧美久久一二三四区| 日韩一区欧美二区| 久久av无码精品人妻系列试探| ww亚洲ww在线观看国产| 国产精品综合一区二区三区| 午夜国产福利一区二区| 亚洲三级在线免费观看| 亚洲免费观看在线| 欧美电视剧在线看免费| 国产精品一区二区久激情瑜伽| 久久久久亚洲av片无码| 亚洲精品中文字幕在线观看| 老司机午夜免费福利| 精品久久国产老人久久综合| 国产成人亚洲精品青草天美| 色94色欧美sute亚洲线路一ni| 亚洲午夜久久久久久久久久久 | av中文字幕不卡| 欧美三级日本三级少妇99| 日日夜夜一区二区| 免费一级黄色录像| 国产精品亲子伦对白| 被黑人猛躁10次高潮视频| 日韩欧美一卡二卡| 国产91在线观看丝袜| 欧美日韩一区成人| 久久9热精品视频| 一本一本久久a久久精品综合麻豆| 亚洲午夜在线视频| 国产精品久久久久久久av| 最新国产成人在线观看| 国产精品久久久久久久无码| 国产亚洲女人久久久久毛片| 妖精视频在线观看| 久久午夜电影网| 91丨porny丨中文| 精品国产精品一区二区夜夜嗨| 丰满亚洲少妇av| 欧美精品一卡两卡| 国产精品一二三四区| 欧美日韩第一区日日骚| 国产一区二区三区蝌蚪| 欧美人狂配大交3d怪物一区| 国产一区二区在线观看免费| 欧美日韩精品三区| 国产黄人亚洲片| 欧美一区二区三区免费观看视频| 国产99久久久精品| 日韩欧美一区二区视频| 99re视频精品| 久久久蜜桃精品| 91精品国产高清91久久久久久 | 蜜桃av.com| 日韩精品免费视频人成| 97成人资源站| 开心九九激情九九欧美日韩精美视频电影| 色综合天天综合网国产成人综合天| 日本不卡在线视频| 欧美性色综合网| 国产精品一二一区| 精品久久久久久无| 第一页在线视频| 日本一二三四高清不卡| av直播在线观看| 亚洲最新视频在线播放| www.av免费| 极品美女销魂一区二区三区免费| 欧美群妇大交群的观看方式| 成人午夜私人影院| 久久婷婷成人综合色| 伊人网综合视频| 一区二区三区中文在线观看| 91传媒免费观看| 精品一区二区综合| 日韩一区二区三| 国产女主播在线播放| 亚洲男人的天堂av| 国产三级国产精品国产国在线观看| 九九视频精品免费| 日韩免费视频一区| 97精品人妻一区二区三区蜜桃| 亚洲乱码国产乱码精品精98午夜 | 一区二区成人免费视频| 国产毛片精品一区| 精品国产不卡一区二区三区| 国产又粗又长又爽| 亚洲国产精品嫩草影院| 在线看国产日韩| 99精品国产99久久久久久白柏| 中文幕一区二区三区久久蜜桃| 一级特黄曰皮片视频| 久久精品国产亚洲a| 日韩欧美在线一区二区三区| 亚洲av无码一区二区三区网址| 亚洲 欧美综合在线网络| 蜜桃av乱码一区二区三区| 日韩va亚洲va欧美va久久| 欧美喷潮久久久xxxxx| 麻豆tv在线观看| 亚洲一级片在线观看| 欧美日韩一区小说| 中文字幕永久免费| 亚洲午夜电影在线观看| 欧美老人xxxx18| 国产伦精品一区三区精东| 婷婷丁香久久五月婷婷| 91精品蜜臀在线一区尤物| 天堂www中文在线资源| 视频一区二区不卡| 日韩欧美精品在线| 欧洲美一区二区三区亚洲 | 日本人妖一区二区| 日韩三级视频中文字幕| 日本aaa视频| 精品亚洲aⅴ乱码一区二区三区| www久久精品| 成人免费视频入口| 高清成人免费视频| 亚洲欧美视频一区| 欧美日韩一级片网站| 中文在线字幕观看| 琪琪一区二区三区| 久久久高清一区二区三区| 日本中文在线视频| 青青草精品在线| 亚洲1区2区3区视频| 欧美不卡在线视频| 五月天婷婷丁香网| www.成人在线| 亚洲成人免费视| 精品国产亚洲在线| 99成人在线观看| www.成人在线| 日韩在线观看一区二区| 精品1区2区在线观看| 国产精品久久久精品四季影院| 午夜性福利视频| 蜜臀av性久久久久蜜臀aⅴ流畅| 久久精品视频免费观看| 蜜臀久久精品久久久用户群体| 被黑人猛躁10次高潮视频| 奇米一区二区三区| 日本一二三不卡| 欧美日韩大陆一区二区| 亚洲黄色免费视频| 不卡的电影网站| 日韩电影在线观看一区| 亚洲国产精品黑人久久久| 欧美在线视频日韩| 国产特级黄色录像| 不卡的电影网站| 奇米888四色在线精品| 国产精品国产三级国产aⅴ无密码| 欧美吞精做爰啪啪高潮| 亚洲AV无码国产成人久久| 成人av网站在线观看| 午夜精品福利视频网站| 国产日韩av一区二区| 欧美日韩国产乱码电影| 在线观看日本黄色| 日本成人在线免费| 国产伦理精品不卡| 亚洲第一综合色| 国产丝袜在线精品| 欧美精品丝袜中出| 国产一区二区精彩视频| 亚洲国产欧美视频| 免费人成视频在线播放| 国产在线不卡一卡二卡三卡四卡| 亚洲午夜久久久久久久久电影院| 日本一区二区三区四区|