我是张量编程的新手。我想用自己的乘法算法替换theano.tensor.dot(a,b)函数。我有两个二维矩阵a和b。 Theano计算其乘积如下:
import theano.tensor as T
a = T.dmatrix('a')
b = T.dmatrix('b')
prod = T.dot(a,b)
要了解并替换T.dot函数,我研究了T.dot的源代码并找到了以下实现:
a, b = as_tensor_variable(a), as_tensor_variable(b)
if a.ndim == 0 or b.ndim == 0:
return a * b
elif a.ndim > 2 or b.ndim > 2:
return tensordot(a, b, [[a.ndim - 1], [np.maximum(0, b.ndim - 2)]])
else:
return _dot(a, b)
我不明白什么是 _dot(a,b) 函数?在哪里可以找到它的来源?