Spec-Zone.ru › TensorFlow

tf.raw_ops.MatrixSolveLs

Решает одну или несколько задач линейной наименьших квадратов.

Псевдонимы

Псевдонимы для миграции

См. Руководство по миграции для получения дополнительных сведений.

tf.compat.v1.raw_ops.MatrixSolveLs

tf.raw_ops.MatrixSolveLs(
    matrix, rhs, l2_regularizer, fast=True, name=None
)

matrix — это тензор формы [..., M, N], внутренние 2 измерения которого образуют вещественные или комплексные матрицы размера [M, N]. Rhs — это тензор того же типа, что и matrix, и формы [..., M, K]. Результат — тензор формы [..., N, K], где каждая выходная матрица решает каждое из уравнений matrix[..., :, :] * output[..., :, :] = rhs[..., :, :] в смысле наименьших квадратов.

Мы используем следующую запись для (комплексных) матриц и правых частей в пакете:

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}\).

Если fast равно True, то решение вычисляется путем решения нормальных уравнений с помощью разложения Холецкого. В частности, если \(m \ge n\), то \(X = (A^H A + \lambda I)^{-1} A^H B\), что решает задачу наименьших квадратов \(X = \mathrm{argmin}_{Z \in \Re^{n \times k} } ||A Z - B||_F^2 + \lambda ||Z||_F^2\). Если \(m \lt n\), то output вычисляется как \(X = A^H (A A^H + \lambda I)^{-1} B\), что (при \(\lambda = 0\)) является решением с минимальной нормой для недоопределенной линейной системы, т.е. \(X = \mathrm{argmin}_{Z \in \mathbb{C}^{n \times k} } ||Z||_F^2 \), при условии \(A Z = B\). Обратите внимание, что быстрый путь является численно устойчивым только тогда, когда \(A\) численно имеет полный ранг и имеет число обусловленности \(\mathrm{cond}(A) \lt \frac{1}{\sqrt{\epsilon_{mach} } }\) или \(\lambda\) достаточно велико.

Если fast равно False, используется алгоритм, основанный на численно устойчивом полном ортогональном разложении. Это вычисляет решение наименьших квадратов с минимальной нормой, даже если \(A\) имеет недостающий ранг. Этот путь обычно в 6-7 раз медленнее, чем быстрый путь. Если fast равно False, то l2_regularizer игнорируется.

Аргументы
matrix A Tensor. Должен быть одним из следующих типов: float64, float32, half, complex64, complex128. Форма — [..., M, N].
rhs A Tensor. Должен иметь тот же тип, что и matrix. Форма — [..., M, K].
l2_regularizer A Tensor типа float64. Скалярный тензор.
fast Необязательный bool. По умолчанию True.
name Имя операции (необязательно).
Возвращает
A Tensor. Имеет тот же тип, что и matrix.

Совместимость с numpy

Эквивалентно np.linalg.lstsq

© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/raw_ops/MatrixSolveLs

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API