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. |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/linalg/sqrtm