在訓練數據時經常涉及到矩陣運算,有段時間沒有練習過了,手便生疏了,今天重新測了一把,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))
測試結果如下: