Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Tính tích tensor trong Python

numpy.tensordot() với tham số axes tùy chỉnh cho phép chỉ định chính xác các trục co. Dùng tuple ([axes_a], [axes_b]).

Ví dụ: axes=([1,0], [0,1])

import numpy as np

arr1 = np.arange(60.).reshape(3, 4, 5)  # (3,4,5)
arr2 = np.arange(24.).reshape(4, 3, 2)  # (4,3,2)

print("Mảng 1:", arr1.shape)
print("Mảng 2:", arr2.shape)

# Co trục 1,0 của arr1 với trục 0,1 của arr2
result = np.tensordot(arr1, arr2, axes=([1, 0], [0, 1]))
print("Tích tensor:", result.shape)
print("Kết quả:", result)

Kết quả

Mảng 1: (3, 4, 5)
Mảng 2: (4, 3, 2)
Tích tensor: (5, 2)
Kết quả: [[4400. 4730.] [4532. 4874.] [4664. 5018.] [4796. 5162.] [4928. 5306.]]

Co trục 1 (size 4) và 0 (size 3) của arr1 với trục 0 (size 4) và 1 (size 3) của arr2. Trục còn lại: 2 của arr1 (5) và 2 của arr2 (2) -> (5,2).