TriangularSolve

публичный финальный класс TriangularSolve

Решает системы линейных уравнений с верхними или нижними треугольными матрицами путем обратной подстановки.

`матрица` — это тензор формы `[..., M, M]`, два самых внутренних измерения которого образуют квадратные матрицы. Если «lower» имеет значение «True», то строго верхняя треугольная часть каждой самой внутренней матрицы считается равной нулю и к ней нет доступа. Если «lower» имеет значение False, то строго нижняя треугольная часть каждой самой внутренней матрицы считается равной нулю и к ней нет доступа. `rhs` — тензор формы `[..., M, N]`.

На выходе получается тензор формы `[..., M, N]`. Если `adjoint` имеет значение `True`, то самые внутренние матрицы в `output` удовлетворяют матричным уравнениям `matrix[..., :, :] * output[..., :, :] = rhs[..., :, :]`. Если `adjoint` имеет значение `False`, то строго тогда самые внутренние матрицы в `output` удовлетворяют матричным уравнениям `adjoint(matrix[..., i, k]) * output[..., k, j] = rhs[ ..., я, j]`.

Обратите внимание, что пакетные формы для входных данных должны только транслироваться.

Пример:

a = tf.constant([[3,  0,  0,  0],
                  [2,  1,  0,  0],
                  [1,  0,  1,  0],
                  [1,  1,  1,  1]], dtype=tf.float32)
 
 b = tf.constant([[4],
                  [2],
                  [4],
                  [2]], dtype=tf.float32)
 
 x = tf.linalg.triangular_solve(a, b, lower=True)
 x
 # <tf.Tensor: shape=(4, 1), dtype=float32, numpy=
 # array([[ 1.3333334 ],
 #        [-0.66666675],
 #        [ 2.6666665 ],
 #        [-1.3333331 ]], dtype=float32)>
 
 # in python3 one can use `a@x`
 tf.matmul(a, x)
 # <tf.Tensor: shape=(4, 1), dtype=float32, numpy=
 # array([[4.       ],
 #        [2.       ],
 #        [4.       ],
 #        [1.9999999]], dtype=float32)>
 

Вложенные классы

сорт TriangularSolve.Параметры Дополнительные атрибуты для TriangularSolve

Константы

Нить OP_NAME Название этой операции, известное основному движку TensorFlow.

Публичные методы

статический TriangularSolve.Options
присоединенный (логический сопряженный)
Выход <Т>
какВывод ()
Возвращает символический дескриптор тензора.
статический <T расширяет TType > TriangularSolve <T>
create ( Область действия , матрица операнда <T>, правая часть операнда <T>, параметры ... )
Фабричный метод для создания класса, обертывающего новую операцию TriangularSolve.
статический TriangularSolve.Options
нижний (логический нижний)
Выход <Т>
выход ()
Форма — `[..., M, K]`.

Унаследованные методы

Константы

общедоступная статическая финальная строка OP_NAME

Название этой операции, известное основному движку TensorFlow.

Постоянное значение: «MatrixTriangularSolve».

Публичные методы

общедоступный статический сопряженный TriangularSolve.Options (логический сопряженный)

Параметры
примыкающий Логическое значение, указывающее, следует ли решать с помощью «матрицы» или ее (блочного) сопряженного значения.

публичный вывод <T> asOutput ()

Возвращает символический дескриптор тензора.

Входные данные для операций TensorFlow являются выходными данными другой операции TensorFlow. Этот метод используется для получения символического дескриптора, который представляет собой вычисление входных данных.

public static TriangularSolve <T> create (область области действия , матрица операнда <T>, правая часть операнда <T>, параметры... параметры)

Фабричный метод для создания класса, обертывающего новую операцию TriangularSolve.

Параметры
объем текущий объем
матрица Форма — `[..., M, M]`.
правый риск Форма — `[..., M, K]`.
параметры содержит значения необязательных атрибутов
Возврат
  • новый экземпляр TriangularSolve

общедоступный статический TriangularSolve.Options ниже (логическое значение ниже)

Параметры
ниже Логическое значение, указывающее, являются ли самые внутренние матрицы в «матрице» нижними или верхними треугольными.

публичный вывод <T> вывод ()

Форма — `[..., M, K]`.