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

Normas matriciais e condicionamento

Paulo Bordoni
November 09, 2018

Normas matriciais e condicionamento

...

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.