Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Normas matriciais e condicionamento

Avatar for Paulo Bordoni Paulo Bordoni
November 09, 2018

Normas matriciais e condicionamento

...

Avatar for Paulo Bordoni

Paulo Bordoni

November 09, 2018
Tweet

More Decks by Paulo Bordoni

Other Decks in Education

Transcript

  1. Para quê precisaremos de normas matriciais? Para medir a atuação

    de matrizes (como aplicações lineares) em vetores.
  2. Para , ∈ e ∈ ℝ: I. ≥ 0, II.

    = 0 se e somente se = 0, III. = , IV. + ≤ + . Lembrem-se: Uma norma num espaço vetorial é uma função ∙ ∶ → ℝ satisfazendo: É a forma de medir tamanho de vetores!
  3. Portanto é possível definir uma norma para matrizes em ℳ×

    . Basta garantir as quatro propriedades relacionadas pelo Galileu. Já conferimos que o conjunto ℳ× das matrizes × com a adição de matrizes e a multiplicação por fator de escala é um espaço vetorial.
  4. A norma de Frobenius é definida por: = ෍ ,=1

    2 = () Surfista, prove que é uma norma. Operacionalmente é como se fosse a norma euclidiana para um vetor de 2 componentes.
  5. Na realidade nosso foco estará na aplicação linear associada à

    uma matriz ∈ ℳ× . Pensar na aplicação linear : ℝ → ℝ associada à matriz envolverá três normas: uma em ℝ outra em ℝ e uma terceira em ℳ× .
  6. Vamos provar que: Se é uma norma em ℝ, é

    uma norma em ℝ, então a função × : ℳ× → ℝ definida por ⟼ × = sup ≠0 é uma norma em ℳ× . É uma norma matricial denominada norma matricial induzida (pelas normas em ℝ e ℝ).
  7. Sim, basta considerar o supremo sobre a bola unitária, isto

    é: × = sup =1 . Antes, vamos mostrar que não precisamos tomar o supremo sobre todos os vetores ≠ 0 de ℝ.
  8. Observe, Surfista, que para todo ∈ ℝ, e todo ∈

    ℝ temos ∙ = = () Considerando o caso particular em que = Τ 1 , para ∈ ℝ e ≠ 0, temos = 1 = Τ e, obviamente, = 1 para = Τ .
  9. Portanto × = sup ≠0 = sup =1 Para tornar

    a notação mais leve, deixaremos de indicar os índices , e × em , e × , subentendendo os espaços ℝ, ℝ e ℳ× .
  10. Fantástico, Surfista. Pela interpretação geométrica fornecida pela decomposição SVD segue

    daí que 2 = sup 2=1 2 = 1 , o maior valor singular de . 1 = 2
  11. É o que nossos alunos farão! Senhores, essa afirmação que

    = sup ≠0 = sup =1 é uma norma é tão importante que merece ser provada!
  12. A condição I da definição de norma é imediata: =

    sup =1 ≥ ≥ 0. A condição III também: = sup =1 = sup =1 = .
  13. A parte ⇐ da exigência II da definição de norma

    é trivial. Se = 0, claramente = 0. Mostre a parte ⇒, Cabelos de Fogo! Se = 0 então sup ≠0 = 0 e portanto = 0, ∀ ∈ ℝ. Logo = 0, ∀ ∈ ℝ e assim = 0.
  14. Só falta a condição IV, a desigualdade triangular. Antes de

    prová-la, vamos provar que ≤ , ∀ ∈ ℝ, uma desigualdade importante em si mesma.
  15. Ora, Cabelos de Fogo, sua afirmação decorre da definição de

    supremo: = sup ≠0 ≥ , ∀ ∈ ℝ, ≠ 0 Claro, pois daí temos ≤ , ∀ ∈ ℝ.
  16. Para vetores , ∈ ℝ temos + ≤ + ,

    portanto ∀ ∈ ℝ, segue daí que + = + ≤ + . Então, para na bola unitária, da desigualdade que acabamos de provar, temos + ≤ + ≤ +
  17. Notem que + ≤ + , ∀ ∈ ℝ com

    = 1. Portanto isto também vale para o supremo: + = sup =1 + ≤ + . Brilhante Cabelos de Fogo! Assim é válida a exigência IV, a desigualdade triangular: + ≤ + , ∀, ∈ ℳ× .
  18. É de importância crucial observar que em todos os argumentos

    desenvolvidos para normas matriciais não fixamos nenhuma das normas em ℝ ou ℝ. Portanto eles se aplicam para bolas nas normas ∙ 1 , ∙ ∞ além da ∙ 2 .
  19. E por quê precisamos dessas outras normas em ℳ× ?

    Você mesma concluiu que a 2 de uma matriz é o seu maior valor singular 1 . E o cálculo de valores singulares é difícil e trabalhoso. Assim, precisaremos contornar esse problema.
  20. Sim Surfista, basta aplicarmos aos vetores dos vértices , ,

    , tanto da 1 (1) como da ∞ (1). Mestra, essas duas bolas unitárias são quadrados. Obter o efeito de uma matriz sobre elas é imediato, não?
  21. Por inspeção visual, o vetor de tamanho máximo da imagem

    por A da ∞ (1) é ∗ . Temos ∞ = max{1.7, 2.2} = 2.2. Portanto ∞ = 2.2.
  22. Já, examinando a imagem por da 1 (1), vemos que

    o vetor de tamanho máximo é ∗ . Temos 1 = 0.6 + 1.8 = 2.4. Portanto 1 = 2.4.
  23. Entretanto, não precisamos gerar as imagens por das bolas ∞

    (1) e 1 (1) para calcular as ∞ e 1 . Basta calcularmos a matriz nos vértices , , , das bolas. Como, Mestre?
  24. Ora Loirinha, porque ∞ = max ∞ , ∈ ∞

    1 = = max ∞ , = , , , . E, com a taquigrafia óbvia: = , , , = 1 1 , −1 1 , −1 −1 , 1 −1 ⟹ = 11 12 21 22 1 2 = 1 2 = = 11 + 12 21 + 22 , −11 + 12 −21 + 22 , −11 − 12 −21 − 22 , 11 − 12 21 − 22 .
  25. Portanto ∞ = max ∞ , x = a, b,

    c, d = = max{ 11 + 12 , 21 + 22 } Claro, pois ൠ ()1 = 11 + 12 , −11 +12 , −11 −12 , 11 −12 ()2 = 21 + 22 , −21 +22 , −21 −22 , 21 −22 ⟹ ∞ = max ()1 , ()2 = = max{ 11 + 12 , 21 + 22 }
  26. Da mesma forma, porque 1 = max 1 , ∈

    1 1 = = max 1 , = , , , . E com a taquigrafia, também óbvia: = , , , = +1 0 , 0 +1 , −1 0 , 0 −1 , ⟹ = 11 12 21 22 1 2 = ()1 ()2 = 11 21 , 12 22 , −11 −21 , −12 −22 .
  27. Portanto 1 = max 1 , = , , ,

    = = max{ 11 + 21 , 12 + 22 } Claro, pois neste caso: ቊ = , ⟹ 1 = 1 + 2 = 11 + 21 = , ⟹ 1 = 1 + 2 = 12 + 22
  28. Repetindo, para = 11 12 21 22 : • 1

    = max{ 11 + 21 , 12 + 22 } • ∞ = max{ 11 + 12 , 21 + 22 } Por esses dois resultados: • 1 é referida como norma (...) das colunas de e • ∞ como norma (...) das linhas de . (...) = (do máximo da soma dos valores absolutos)
  29. Conferindo, para = 1.1 0.6 0.4 1.8 tenho: • 1

    = 2.4 (colunas de ), • ∞ = 2.2 (linhas de ).
  30. Lembre-se desta imagem, que mostramos em “Introdução à SciPy”. Mestra,

    volto a perguntar, por que importante sabermos calcular 1 e ∞ ?
  31. Como é uma transformação linear, teremos a ordem de inclusão

    preservada. Portanto se 1 , 2 e ∞ são as bolas unitárias nas 1 , 2 e ∞ então de 1 ⊂ 2 ⊂ ∞ teremos (1 ) ⊂ (2 ) ⊂ (∞ ).
  32. Especificamente, vamos calcular as normas ∙ , ∙ 2 ,

    ∙ 1 , ∙ ∞ de uma matriz e conferir a igualdade 2 = 1 .
  33. Passaremos a analisar a sensibilidade da multiplicação matricial. Isto porque

    ela está diretamente associada à resolução de sistemas lineares.
  34. No início do curso estudamos o número de condicionamento de

    um problema/função. Sim Mestre. Tanto o condicionamento absoluto , = () como o condicionamento relativo , = , ∙ Τ () .
  35. Nosso interesse imediato é calcular os números de condicionamento de

    funções ∶ ℝ → ℝ dadas por ↦ ∈ ℝ, ∈ ℝ. O 1º passo da generalização é imediato: substituímos os módulos por normas. Assim eles serão os números dados por: , = () e , = , ∙ Τ ()
  36. Para funções ∶ ℝ → ℝ a () é a

    matriz jacobiana, = Τ () O 2º passo envolve o entendimento do que é ().
  37. Claro e a é a multiplicação de matriz por vetor,

    de forma que cada é definido por = (1 , 2 , ⋯ , ) = 1 1 +2 2 + ⋯ + Lembrem-se colegas, sistemas lineares são descritos por funções lineares : ℝ → ℝ: = 1 2 ⋮ ∈ ℝ ⟼ = 1 2 ⋮ ∈ ℝ, onde = .
  38. Sendo prático, vamos imaginar um sistema 3 × 3 típico:

    ቐ 21 − 2 + 43 = 1 −1 + 52 + 33 = 3 61 − 22 + 3 = 0 Para esse sistema, temos: ቐ 1 (1 , 2 , 3 ) = 21 − 52 + 43 2 (1 , 2 , 3 ) = −1 + 52 + 3 3 (1 , 2 , 3 ) = 61 − 22 + 3
  39. Portanto para a : ℝ3 → ℝ3 do sistema linear

    do Surfista teremos Τ () = 2 −1 4 −1 5 3 6 −2 1 . Claro, Loirinha! A matriz jacobiana dela é constante, e igual à própria matriz do sistema!
  40. Portanto o número de condicionamento absoluto para sistemas lineares é

    = , = . Resumindo, se ∶ ℝ → ℝ é a multiplicação matricial, = , seu número de condicionamento absoluto é , = .
  41. Claro que não colega! A solução de um sistema linear

    = é dada por = −1. Assim, a função é : ↦ = −1. Brilhante Cabelos de Fogo. O número de condicionamento para o problema da resolução de sistemas lineares é, portanto , = −1 .
  42. Assim, o número de condicionamento absoluto ( = , )

    de um sistema linear só está definido quando é inversivel. E independe tanto do termo independente quanto da incógnita . Só depende da matriz .
  43. O número de condicionamento relativo é dado por , =

    , Τ ∙ () . Bem, só falta entender o termo Τ () . Mestre, se = () = −1 é claro que = .
  44. Sim Cabelos de Fogo e portanto Τ () = Τ

    ≤ . Assim o condicionamento relativo da resolução de sistemas lineares satisfaz , ≤ −1 ∙
  45. Quando é ortogonal a igualdade em , ≤ −1 ∙

    é atingida. Claro Mestra, pois nesse caso a : ↦ = −1 não altera o tamanho de , não importa a forma de medir tamanho.
  46. Conclusão: o número de condicionamento relativo de um sistema linear

    = é = , = −1 ∙ Portanto os números de condicionamento absoluto e relativo para sistemas lineares = dependem apenas da matriz (e da −1): • = , = −1 , • = , = ∙ −1 .
  47. Quando não é inversivel, é usual escrever = +∞ e

    = +∞ Quando é inversivel de ∙ −1 = decorre que 1 = = ∙ −1 ≤ −1 . Portanto ≥ 1, para toda matriz inversivel .
  48. Como antes, quando os números de condicionamento forem pequenos o

    problema de resolução de sistemas lineares é bem condicionado; caso contrário é mal condicionado.
  49. Fiz este programinha, que recebe uma matriz A e devolve

    os números de condicionamento oferecidos pela numpy.linalg.cond():
  50. Surfista, observe que: • 2 = - o maior valor

    singular de A , • −1 2 = Τ 1 - o menor valor singular de A . Assim = Τ Em outras palavras = Τ , é o inverso da excentricidade do hiper elipsoide que é a imagem por A da circunferência unitária.
  51. a b A excentricidade de uma elípse de semi-eixos (maior)

    e (menor) é o número definido por = 1 − (/)2. Ela dá uma medida do achatamento da elipse. Observem que: ቊ → → 0 í → ê → 0 → 1 →
  52. Os teoremas 12.1 e 12.2 do livro de Trefethen &

    Bau, exibidos a seguir, mostram a importância dos números de condicionamento de uma matriz A.