Метод Numpy.tensordot() используется для вычисления скалярного произведения тензоров по указанным осям.
Содержание
Синтаксис
|
1 |
numpy.tensordot(tensor1, tensor2, axes) |
Параметры
Функция tensordot() принимает три основных аргумента:
- tensor1: это объект, похожий на массив.
- tensor2: это также объект, похожий на массив. Мы вычислим tensordot тензора1 и тензора2.
- axes: это может быть как скаляр, так и объект, подобный массиву. Указывает на оси, по которым нам нужно найти tensordot.
Возвращаемое значение
Функция tensordot() возвращает произведение тензорных точек данных тензоров.
Пример 1: как использовать метод numpy.tensordot()
|
1 2 3 4 5 6 7 8 9 10 11 12 |
# Programming example of tensordot when axes is array-like object import numpy as np # Declaring arrays arr1 = np.arange(8).reshape(4, 2) arr2 = np.arange(4, 12).reshape(2, 4) print("Tensor1 is: ", arr1) print("\nTensor2 is: ", arr2) # Now we will calculate tensor dot ans = np.tensordot(arr1, arr2, axes=([1, 0], [0, 1])) print("Tensordot of these tensors is:\n", ans) |
Выход
|
1 2 3 4 5 6 7 8 9 |
Tensor1 is: [[0 1] [2 3] [4 5] [6 7]] Tensor2 is: [[ 4 5 6 7] [ 8 9 10 11]] Tensordot of these tensors is: 238 |
Пример 2
|
1 2 3 4 5 6 7 8 9 |
import numpy as np arr1 = np.arange(8).reshape(4, 2) arr2 = np.arange(4, 12).reshape(2, 4) print("Tensor1 is: ", arr1) print("\nTensor2 is: ", arr2) ans = np.tensordot(arr1, arr2, axes=1) print("Tensordot of these tensors is:\n", ans) |
Выход
|
1 2 3 4 5 6 7 8 9 10 11 12 |
Tensor1 is: [[0 1] [2 3] [4 5] [6 7]] Tensor2 is: [[ 4 5 6 7] [ 8 9 10 11]] Tensordot of these tensors is: [[ 8 9 10 11] [ 32 37 42 47] [ 56 65 74 83] [ 80 93 106 119]] |
