{:check ["true"]}
import numpy as np
x = np.array([1,2,3,4])
y = np.array([2,3,4,5])
print("x * y =", x*y)
print("x @ y =", x@y)
print("sum(x*y)=", np.sum(x*y))
x = np.random.randint(10, size=(3, 4))
x
y = np.random.randint(10, size=(4, 2))
y
x @ y
Let:
$ x : (m_1, m_2, n_1, n_2) $
$ y : (n_1, n_2, k_1, k_2, k_3) $
Then:
It's defined as:
$$(x\cdot y)(i_1, i_2, j_1, j_2, j_3) = x[i_1, i_2, :, :] \cdot y[:,:,j_1, j_2, j_3]$$x = np.random.randint(10, size=(3, 2, 1))
x
y = np.random.randint(10, size=(2, 1, 2))
y
np.tensordot(x, y).shape