MatrixSolveLs

lớp cuối cùng công khai MatrixSolveLs

Giải quyết một hoặc nhiều bài toán bình phương tối thiểu tuyến tính.

`ma trận` là một tenxơ có hình dạng `[..., M, N]` có 2 chiều trong cùng tạo thành các ma trận thực hoặc phức tạp có kích thước `[M, N]`. `Rhs` là một tensor cùng loại với `ma trận` và có hình dạng `[..., M, K]`. Đầu ra là một dạng tensor `[..., N, K]` trong đó mỗi ma trận đầu ra giải từng phương trình `ma trận[..., :, :]` * `output[..., :, :] ` = `rhs[..., :, :]` theo nghĩa bình phương nhỏ nhất.

Chúng tôi sử dụng ký hiệu sau cho ma trận (phức tạp) và vế phải trong lô:

`matrix`=\\(A \in \mathbb{C}^{m \times n}\\), `rhs`=\\(B \in \mathbb{C}^{m \times k}\\), `output`=\\(X \in \mathbb{C}^{n \times k}\\), `l2_regularizer`=\\(\lambda \in \mathbb{R}\\).

Nếu `fast` là `True`, thì nghiệm được tính bằng cách giải các phương trình thông thường bằng cách sử dụng phân tách Cholesky. Cụ thể, nếu \\(m \ge n\\) thì \\(X = (A^H A + \lambda I)^{-1} A^H B\\), giải quyết vấn đề bình phương nhỏ nhất \\(X = \mathrm{argmin}_{Z \in \Re^{n \times k} } ||A Z - B||_F^2 + \lambda ||Z||_F^2\\). Nếu \\(m \lt n\\) thì `output` được tính là \\(X = A^H (A A^H + \lambda I)^{-1} B\\), mà (đối với \\(\lambda = 0\\)) là giải pháp định mức tối thiểu cho hệ thống tuyến tính chưa được xác định, tức là \\(X = \mathrm{argmin}_{Z \in \mathbb{C}^{n \times k} } ||Z||_F^2 \\), tuân theo \\(A Z = B\\). Lưu ý rằng đường dẫn nhanh chỉ ổn định về mặt số khi \\(A\\) có thứ hạng đầy đủ về mặt số và có số điều kiện \\(\mathrm{cond}(A) \lt \frac{1}{\sqrt{\epsilon_{mach} } }\\) hoặc \\(\lambda\\) đủ lớn.

Nếu `fast` là `False`, một thuật toán dựa trên phân tách trực giao hoàn chỉnh mạnh mẽ về mặt số lượng sẽ được sử dụng. Điều này tính toán giải pháp bình phương tối thiểu theo tiêu chuẩn tối thiểu, ngay cả khi \\(A\\) bị thiếu thứ hạng. Đường dẫn này thường chậm hơn 6-7 lần so với đường dẫn nhanh. Nếu `fast` là `False` thì `l2_regularizer` bị bỏ qua.

Các lớp lồng nhau

lớp học MatrixSolveLs.Options Thuộc tính tùy chọn cho MatrixSolveLs

Hằng số

Sợi dây OP_NAME Tên của op này, được biết đến bởi công cụ lõi TensorFlow

Phương pháp công cộng

Đầu ra <T>
asOutput ()
Trả về tay cầm tượng trưng của tensor.
tĩnh <T mở rộng TType > MatrixSolveLs <T>
tạo ( Phạm vi phạm vi, Ma trận toán hạng <T>, Toán hạng <T> rhs, Toán hạng < TFloat64 > l2Regularizer, Tùy chọn... tùy chọn)
Phương thức xuất xưởng để tạo một lớp bao bọc một thao tác MatrixSolveLs mới.
MatrixSolveLs.Options tĩnh
nhanh (Boolean nhanh)
Đầu ra <T>
đầu ra ()
Hình dạng là `[..., N, K]`.

Phương pháp kế thừa

Hằng số

Chuỗi cuối cùng tĩnh công khai OP_NAME

Tên của op này, được biết đến bởi công cụ lõi TensorFlow

Giá trị không đổi: "MatrixSolveLs"

Phương pháp công cộng

Đầu ra công khai <T> asOutput ()

Trả về tay cầm tượng trưng của tensor.

Đầu vào của các hoạt động TensorFlow là đầu ra của một hoạt động TensorFlow khác. Phương pháp này được sử dụng để thu được một thẻ điều khiển mang tính biểu tượng đại diện cho việc tính toán đầu vào.

public static MatrixSolveLs <T> tạo ( Phạm vi phạm vi, Ma trận toán hạng <T>, Toán hạng <T> rhs, Toán hạng < TFloat64 > l2Regularizer, Tùy chọn... tùy chọn)

Phương thức xuất xưởng để tạo một lớp bao bọc một thao tác MatrixSolveLs mới.

Thông số
phạm vi phạm vi hiện tại
ma trận Hình dạng là `[..., M, N]`.
Hình dạng là `[..., M, K]`.
l2Bộ điều chỉnh Tenor vô hướng.

tùy chọn mang các giá trị thuộc tính tùy chọn
Trả lại
  • một phiên bản mới của MatrixSolveLs

công khai tĩnh MatrixSolveLs.Options nhanh (Boolean nhanh)

Đầu ra công khai đầu ra <T> ()

Hình dạng là `[..., N, K]`.