python矩陣乘積運算(multiply/maumul/*/@)解析

在訓練數據時經常涉及到矩陣運算,有段時間沒有練習過了,手便生疏了,今天重新測了一把,python中各類矩陣運算舉例如下,可以清楚的看到tf.matmul(A,C)=np.dot(A,C)= A@C都屬於叉乘,而tf.multiply(A,C)= A*C=A∙C屬於點乘。

Python測試編碼如下:

import tensorflow as tf
import numpy as np

a = np.array([[1,2],[3,4]])
b = np.array([5,6])
c = np.array([[5,6],[7,8]])
print('a:'+'\n',a)
print('b:'+'\n',b)
print('c:'+'\n',c)
#叉乘
d1=a@c
d2=tf.matmul(a,c)
d3=np.dot(a,c)
#點乘
f1=a*c
f2=tf.multiply(a,c)

with tf.compat.v1.Session() as sess:
    print('d1:叉乘a@c' + '\n', d1)
    print('d2:叉乘matmul(a,c)' + '\n', sess.run(d2))
    print('d3:叉乘dot(a,c)' + '\n', d3)
    print('f1:點乘a*c' + '\n', f1)
    print('f2:點乘multiply(a,c)' + '\n', sess.run(f2))

測試結果如下:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章