numpy.linalg.inv() hỗ trợ tính nghịch đảo hàng loạt (batch) cho stack ma trận vuông. Đầu vào shape (N, M, M), đầu ra shape tương tự. Mỗi ma trận con được nghịch đảo độc lập.
Các bước thực hiện
Nhập thư viện, tạo stack 2 ma trận 2x2:
import numpy as np
from numpy.linalg import inv
arr = np.array([[[1., 2.], [3., 4.]],
[[1, 3], [3, 5]]])
print("Mảng của chúng ta...\n", arr)
print("\nSố chiều...\n", arr.ndim)
print("\nKiểu dữ liệu...\n", arr.dtype)
print("\nHình dạng...\n", arr.shape)
# Tính nghịch đảo batch
print("\nKết quả...\n", np.linalg.inv(arr))
Ví dụ hoàn chỉnh
import numpy as np
from numpy.linalg import inv
arr = np.array([[[1., 2.], [3., 4.]],
[[1, 3], [3, 5]]])
print("Mảng của chúng ta...\n", arr)
print("\nSố chiều...\n", arr.ndim)
print("\nKiểu dữ liệu...\n", arr.dtype)
print("\nHình dạng...\n", arr.shape)
print("\nKết quả...\n", np.linalg.inv(arr))
Kết quả đầu ra
Mảng của chúng ta...
[[[1. 2.]
[3. 4.]]
[[1. 3.]
[3. 5.]]]
Số chiều...
3
Kiểu dữ liệu...
float64
Hình dạng...
(2, 2, 2)
Kết quả...
[[[-2. 1. ]
[ 1.5 -0.5 ]]
[[-1.25 0.75]
[ 0.75 -0.25]]]