W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
函數(shù):tf.matmul
matmul(
a,
b,
transpose_a=False,
transpose_b=False,
adjoint_a=False,
adjoint_b=False,
a_is_sparse=False,
b_is_sparse=False,
name=None
)
定義在:tensorflow/python/ops/math_ops.py.
參考指南:數(shù)學(xué)函數(shù)>矩陣數(shù)學(xué)函數(shù)
將矩陣 a 乘以矩陣 b,生成a * b
輸入必須在任何轉(zhuǎn)換之后是 rank> = 2 的張量,其中內(nèi)部 2 維度指定有效的矩陣乘法參數(shù),并且任何其他外部維度匹配.
兩個矩陣必須是相同類型.支持的類型有:float16,float32,float64,int32,complex64,complex128.
通過將相應(yīng)的標(biāo)志之一設(shè)置為 True,矩陣可以被轉(zhuǎn)置或 adjointed(共軛和轉(zhuǎn)置).默認(rèn)情況下,這些都是 False.
如果一個或兩個矩陣包含很多的零,則可以通過將相應(yīng)的 a_is_sparse 或 b_is_sparse 標(biāo)志設(shè)置為 True 來使用更有效的乘法算法,默認(rèn)為 false.這個優(yōu)化僅適用于具有數(shù)據(jù)類型為bfloat16 或 float32 的純矩陣(rank 為2的張量).
例如:
# 2-D tensor `a`
a = tf.constant([1, 2, 3, 4, 5, 6], shape=[2, 3]) => [[1. 2. 3.]
[4. 5. 6.]]
# 2-D tensor `b`
b = tf.constant([7, 8, 9, 10, 11, 12], shape=[3, 2]) => [[7. 8.]
[9. 10.]
[11. 12.]]
c = tf.matmul(a, b) => [[58 64]
[139 154]]
# 3-D tensor `a`
a = tf.constant(np.arange(1, 13, dtype=np.int32),
shape=[2, 2, 3]) => [[[ 1. 2. 3.]
[ 4. 5. 6.]],
[[ 7. 8. 9.]
[10. 11. 12.]]]
# 3-D tensor `b`
b = tf.constant(np.arange(13, 25, dtype=np.int32),
shape=[2, 3, 2]) => [[[13. 14.]
[15. 16.]
[17. 18.]],
[[19. 20.]
[21. 22.]
[23. 24.]]]
c = tf.matmul(a, b) => [[[ 94 100]
[229 244]],
[[508 532]
[697 730]]]
# Since python >= 3.5 the @ operator is supported (see PEP 465).
# In TensorFlow, it simply calls the `tf.matmul()` function, so the
# following lines are equivalent:
d = a @ b @ [[10.], [11.]]
d = tf.matmul(tf.matmul(a, b), [[10.], [11.]])
參數(shù):
返回:
該函數(shù)返回與 a 和 b 具有相同類型的張量,其中每個最內(nèi)矩陣是 a 和 b 中對應(yīng)矩陣的乘積,例如,如果所有轉(zhuǎn)置或伴隨的屬性為 False:
output[..., i, j] = sum_k (a[..., i, k] * b[..., k, j]), for all indices i, j
Note:這是矩陣乘積,而不是元素的乘積.
可能引發(fā)的異常:
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: