溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

numpy 和 tensorflow 中的各種乘法(點(diǎn)乘和矩陣乘)

發(fā)布時(shí)間:2020-07-13 19:11:21 來源:網(wǎng)絡(luò) 閱讀:1034 作者:Python熱愛者 欄目:編程語言

點(diǎn)乘和矩陣乘的區(qū)別:

1)點(diǎn)乘(即“ * ”) ---- 各個(gè)矩陣對應(yīng)元素做乘法

若 w 為 m*1 的矩陣,x 為 m*n 的矩陣,那么通過點(diǎn)乘結(jié)果就會得到一個(gè) m*n 的矩陣。

numpy 和 tensorflow 中的各種乘法(點(diǎn)乘和矩陣乘)

若 w 為 m*n 的矩陣,x 為 m*n 的矩陣,那么通過點(diǎn)乘結(jié)果就會得到一個(gè) m*n 的矩陣。

numpy 和 tensorflow 中的各種乘法(點(diǎn)乘和矩陣乘)

w的列數(shù)只能為 1與x的列數(shù)相等(即n),w的行數(shù)與x的行數(shù)相等 才能進(jìn)行乘法運(yùn)算。

2)矩陣乘 ---- 按照矩陣乘法規(guī)則做運(yùn)算

若 w 為 m*p 的矩陣,x 為 p*n 的矩陣,那么通過矩陣相乘結(jié)果就會得到一個(gè) m*n 的矩陣。

只有 w 的列數(shù) == x的行數(shù) 時(shí),才能進(jìn)行乘法運(yùn)算

numpy 和 tensorflow 中的各種乘法(點(diǎn)乘和矩陣乘)

1. numpy

1)點(diǎn)乘
'''
遇到問題沒人解答?小編創(chuàng)建了一個(gè)Python學(xué)習(xí)交流QQ群:857662006 
尋找有志同道合的小伙伴,互幫互助,群里還有不錯(cuò)的視頻學(xué)習(xí)教程和PDF電子書!
'''
1 import numpy as np
2 
3 w = np.array([[0.4], [1.2]])
4 x = np.array([range(1,6), range(5,10)])
5 
6 print w
7 print x
8 print w*x

運(yùn)行結(jié)果如下圖:

numpy 和 tensorflow 中的各種乘法(點(diǎn)乘和矩陣乘)

2)矩陣乘
'''
遇到問題沒人解答?小編創(chuàng)建了一個(gè)Python學(xué)習(xí)交流QQ群:857662006 
尋找有志同道合的小伙伴,互幫互助,群里還有不錯(cuò)的視頻學(xué)習(xí)教程和PDF電子書!
'''
1 import numpy as np
2 
3 w = np.array([[0.4, 1.2]])
4 x = np.array([range(1,6), range(5,10)])
5 
6 print w
7 print x
8 print np.dot(w,x)

運(yùn)行結(jié)果如下:

numpy 和 tensorflow 中的各種乘法(點(diǎn)乘和矩陣乘)

2. tensorflow

1)點(diǎn)乘
 1 import tensorflow as tf
 2 
 3 w = tf.Variable([[0.4], [1.2]], dtype=tf.float32) # w.shape: [2, 1]
 4 x = tf.Variable([range(1,6), range(5,10)], dtype=tf.float32) # x.shape: [2, 5]
 5 y = w * x     # 等同于 y = tf.multiply(w, x)   y.shape: [2, 5]
 6 
 7 sess = tf.Session()
 8 init = tf.global_variables_initializer()
 9 sess.run(init)
10 
11 print sess.run(w)
12 print sess.run(x)
13 print sess.run(y)

運(yùn)行結(jié)果如下:

numpy 和 tensorflow 中的各種乘法(點(diǎn)乘和矩陣乘)

2)矩陣乘
'''
遇到問題沒人解答?小編創(chuàng)建了一個(gè)Python學(xué)習(xí)交流QQ群:857662006 
尋找有志同道合的小伙伴,互幫互助,群里還有不錯(cuò)的視頻學(xué)習(xí)教程和PDF電子書!
'''
 1 # coding:utf-8
 2 import tensorflow as tf
 3 
 4 w = tf.Variable([[0.4, 1.2]], dtype=tf.float32) # w.shape: [1, 2]
 5 x = tf.Variable([range(1,6), range(5,10)], dtype=tf.float32) # x.shape: [2, 5]
 6 y = tf.matmul(w, x) # y.shape: [1, 5]
 7 
 8 sess = tf.Session()
 9 init = tf.global_variables_initializer()
10 sess.run(init)
11 
12 print sess.run(w)
13 print sess.run(x)
14 print sess.run(y)

運(yùn)行結(jié)果如下:

numpy 和 tensorflow 中的各種乘法(點(diǎn)乘和矩陣乘)

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI