svds
Alguns valores e vetores singulares de uma matriz, tipicamente grande e esparsa.
Categoria: Mathematics > Linear Algebra
Sintaxe
s = svds(A)
Retorna os 6 maiores valores singulares.
s = svds(A, k)
Retorna os k maiores valores singulares.
s = svds(A, k, sigma)
Retorna k valores escolhidos por sigma: 'largest', 'smallest' ou os mais próximos de um número.
[U, S, V] = svds(___)
Retorna também os vetores singulares correspondentes.
Descrição
Para matrizes grandes, uma svd completa é um desperdício quando só importa a parte dominante do espectro. svds calcula apenas o subconjunto pedido, que é o que aproximações de baixo posto e métodos de componentes principais precisam.
Se k é pelo menos min(size(A)), não há economia, e svd é a chamada melhor.
Argumentos de entrada
A- Matriz numérica, densa ou esparsa.
k- Número de valores singulares desejados. Padrão 6.
sigma'largest'(padrão),'smallest'ou um alvo escalar.
Argumentos de saída
s- Vetor coluna dos valores singulares pedidos.
U, S, V- Vetores singulares (
m-por-k,n-por-k) e a matriz diagonalk-por-kde valores.
Exemplo
Maiores e menores
A = diag(1:10);
svds(A, 3)
svds(A, 2, 'smallest')
Saída
ans = 3×1
10
9
8
ans = 2×1
2
1