tf.linalg.sqrtm
Вычисляет матричный квадратный корень одной или нескольких квадратных матриц:
tf.linalg.sqrtm(
input, name=None
)
matmul(sqrtm(A), sqrtm(A)) = A
Вводная матрица должна быть обратимой. Если входная матрица вещественная, она не должна иметь вещественных отрицательных собственных значений (пары комплексно-сопряжённых собственных значений разрешены).
Матричный квадратный корень вычисляется путём сначала приведения матрицы к квазитреугольной форме с использованием вещественного шур-разложения. Затем вычисляется квадратный корень квазитреугольной матрицы напрямую. Подробности алгоритма можно найти в: Nicholas J. Higham, "Computing real square roots of a real matrix", Linear Algebra Appl., 1987.
Входной тензор имеет форму [..., M, M], где внутренние 2 измерения образуют квадратные матрицы. Выходной тензор имеет такую же форму, как входной, содержащий матричный квадратный корень для всех входных подматриц [..., :, :].
| Аргументы | |
|---|---|
input | A Tensor. Должен быть одним из следующих типов: float64, float32, half, complex64, complex128. Форма [..., M, M]. |
name | Имя операции (необязательно). |
| Возвращает | |
|---|---|
A Tensor. Имеет тот же тип, что и input. |
© 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/versions/r2.9/api_docs/python/tf/linalg/sqrtm