У меня есть набор из n векторов, хранящихся в матрице 3 x n z
. Я нахожу внешний продукт с помощью np.einsum
. Когда я приурочил его, используя:
%timeit v=np.einsum('i...,j...->ij...',z,z)
Я получил результат:
The slowest run took 7.23 times longer than the fastest. This could mean that an
intermediate result is being cached
100000 loops, best of 3: 2.9 µs per loop
Что здесь происходит и его можно избежать? Лучшие 3 - 2.9us, но самый медленный, возможно, более типичный.