MatrixSolveLs

MatrixSolveLs classe final públicas

Resolve um ou mais problemas de mínimos quadrados lineares.

`matriz` é um tensor de forma` [..., M, N] `cujas 2 dimensões mais internas formam matrizes reais ou complexas de tamanho` [M, N] `. `Rhs` é um tensor do mesmo tipo que` matriz` e forma `[..., M, K]`. A saída é uma forma tensorial `[..., N, K]` onde cada matriz de saída resolve cada uma das equações `matriz [...,:,:]` * `saída [...,:,:] `=` rhs [...,:,:] `no sentido de mínimos quadrados.

Usamos a seguinte notação para a matriz (complexa) e os lados direitos do lote:

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

Se `rápido` é` Verdadeiro`, então a solução é calculada resolvendo as equações normais usando a decomposição de Cholesky. Especificamente, se \\(m \ge n\\) então \\(X = (A^H A + \lambda I)^{-1} A^H B\\), o que resolve o problema dos mínimos quadrados \\(X = \mathrm{argmin}_{Z \in \Re^{n \times k} } ||A Z - B||_F^2 + \lambda ||Z||_F^2\\). Se \\(m \lt n\\) então `output` é calculado como \\(X = A^H (A A^H + \lambda I)^{-1} B\\), que (por \\(\lambda = 0\\)) é a solução de mínimo norma para o sistema linear sob-determinado, isto é \\(X = \mathrm{argmin}_{Z \in \mathbb{C}^{n \times k} } ||Z||_F^2 \\), sujeito a \\(A Z = B\\). Note-se que o caminho rápido só é numericamente estável quando \\(A\\) é posto numericamente cheio e tem um número condição \\(\mathrm{cond}(A) \lt \frac{1}{\sqrt{\epsilon_{mach} } }\\) ou \\(\lambda\\) é suficientemente grande.

Se `rápido` é` Falso`, um algoritmo baseado na decomposição ortogonal completa numericamente robusta é usado. Este calcula a solução de mínimos quadrados mínimos-norma, mesmo quando \\(A\\) é posto deficiente. Esse caminho é normalmente 6 a 7 vezes mais lento do que o caminho rápido. Se `fast` for` False` então `l2_regularizer` será ignorado.

Classes aninhadas

classe MatrixSolveLs.Options Atributos opcionais para MatrixSolveLs

Constantes

Corda OP_NAME O nome desta operação, conforme conhecido pelo motor principal TensorFlow

Métodos Públicos

Output <T>
asOutput ()
Retorna o identificador simbólico do tensor.
estática <T estende TType > MatrixSolveLs <T>
criar ( Scope escopo, Operando <T> matriz, operando <T> rhs, Operando < TFloat64 > l2Regularizer, Options ... Opções)
Método de fábrica para criar uma classe envolvendo uma nova operação MatrixSolveLs.
estáticos MatrixSolveLs.Options
rápida (fast Boolean)
Output <T>
saída ()
A forma é `[..., N, K]`.

Métodos herdados

Constantes

nome_op final String public static

O nome desta operação, conforme conhecido pelo motor principal TensorFlow

Valor constante: "MatrixSolveLs"

Métodos Públicos

pública Output <T> asOutput ()

Retorna o identificador simbólico do tensor.

As entradas para as operações do TensorFlow são saídas de outra operação do TensorFlow. Este método é usado para obter um identificador simbólico que representa o cálculo da entrada.

public static MatrixSolveLs <T> create ( Scope escopo, Operando <T> matriz, operando <T> rhs, Operando < TFloat64 > l2Regularizer, Options ... Opções)

Método de fábrica para criar uma classe envolvendo uma nova operação MatrixSolveLs.

Parâmetros
alcance escopo atual
matriz A forma é `[..., M, N]`.
rhs A forma é `[..., M, K]`.
l2Regularizer Tensor escalar.

opções carrega valores de atributos opcionais
Devoluções
  • uma nova instância de MatrixSolveLs

public static MatrixSolveLs.Options rápido (Boolean rápidos)

pública Output <T> de saída ()

A forma é `[..., N, K]`.