Regressão Linear Multivariada Prof. Dr. Leandro Balby Marinho Inteligência Artificial Prof. Leandro Balby Marinho / 37 UFCG DSC
Roteiro. Introdução 2. Modelo de Regressão Multivariada 3. Equações Normais 4. Regressão Polinomial 5. Regularização Prof. Leandro Balby Marinho 2 / 37 UFCG DSC
Dados Multivariados Qual o colesterol de um indivíduo de 37 anos pesando 70 Kg? Colesterol 50 200 250 300 350 400 450 500 30 20 20 30 40 50 60 70 80 90 40 50 60 Idade Peso Ideia: Ajuste uma linha aos dados e use essa linha para predição. Prof. Leandro Balby Marinho 2 / 37 UFCG DSC
Dados Multivariados Qual o colesterol de um indivíduo de 37 anos pesando 70 Kg? Colesterol 50 200 250 300 350 400 450 500 30 20 20 30 40 50 60 70 80 90 40 50 60 Idade Peso Ideia: Ajuste um hyperplano aos dados e use-o para predição. Prof. Leandro Balby Marinho 3 / 37 UFCG DSC
Notação Peso (X ) Idade (X 2 ) Colesterol (Y) 84 46 354 73 20 90 65 52 405 70 30 263 76 57 45.. Dados de treino. X := (X, X 2,..., X m )... Variáveis explicativas. ( ) x (i)... Vetor de entrada da forma x (i), x (i) 2,..., x m (i). x (i) j... valor da j-ésima variável no i-ésimo exemplo. (x (i), y (i) )... i-ésimo exemplo de treino (linha da tabela). Prof. Leandro Balby Marinho 4 / 37 UFCG DSC
Roteiro. Introdução 2. Modelo de Regressão Multivariada 3. Equações Normais 4. Regressão Polinomial 5. Regularização Prof. Leandro Balby Marinho 5 / 37 UFCG DSC
Regressão Multivariada e Vetor Resposta Na regressão simples uma variável: h(x) := Θ 0 + Θ x Prof. Leandro Balby Marinho 5 / 37 UFCG DSC
Regressão Multivariada e Vetor Resposta Na regressão simples uma variável: h(x) := Θ 0 + Θ x Na regressão multivariada muitas variáveis: h(x) := Θ 0 + Θ x + Θ 2 x 2 +... + Θ m x m Prof. Leandro Balby Marinho 5 / 37 UFCG DSC
Regressão Multivariada e Vetor Resposta Na regressão simples uma variável: h(x) := Θ 0 + Θ x Na regressão multivariada muitas variáveis: h(x) := Θ 0 + Θ x + Θ 2 x 2 +... + Θ m x m Por conveniência, usamos a constante x 0 = de forma que h(x) := Θ 0 x 0 + Θ x + Θ 2 x 2 +... + Θ m x m Prof. Leandro Balby Marinho 5 / 37 UFCG DSC
Representação Vetorial Podemos representar variáveis e parâmetros como vetores: x 0 Θ 0 x Θ x 2 R m+, Θ = Θ 2 R m+ x =. x m. Θ m E a hipótese como um produto escalar da forma: h(x) = Θ T x Prof. Leandro Balby Marinho 6 / 37 UFCG DSC
Matriz de Design x (0) x () x (2)... x (m) x (0) X = 2 x () 2 x (2) 2... x (m) 2....., Y = x n (0) x n () x n (2)... x n (m) y () y (2). y (n) Prof. Leandro Balby Marinho 7 / 37 UFCG DSC
Gradiente Descendente A função de erro: err(h; D train ) := 2n n (h(x (i) ) y (i) ) 2 Prof. Leandro Balby Marinho 8 / 37 UFCG DSC
Gradiente Descendente A função de erro: err(h; D train ) := 2n n (h(x (i) ) y (i) ) 2 Derivadas parciais: Θ 0 err(h; D train ) := n Θ err(h; D train ) := n Θ 2 err(h; D train ) := n n n n ( h(x (i) ) y (i)) x (i) 0 ( h(x (i) ) y (i)) x (i) ( h(x (i) ) y (i)) x (i) 2. Prof. Leandro Balby Marinho 8 / 37 UFCG DSC
Gradiente Descendente para Regressão Multivariada GradientDescent(α, precision) initialize Θ 2 e new = err(h; D train ) 3 repeat 4 e old = e new 5 for i = 0 to m 6 tmp i = Θ i α Θ i err(h; D train ) 7 for i = 0 to m 8 Θ i = tmp i 9 e new = err(h; D train ) 0 until e new e old precision Prof. Leandro Balby Marinho 9 / 37 UFCG DSC
Roteiro. Introdução 2. Modelo de Regressão Multivariada 3. Equações Normais 4. Regressão Polinomial 5. Regularização Prof. Leandro Balby Marinho 0 / 37 UFCG DSC
Equações Normais Para achar as equações normais, precisamos igualar todas as derivadas parciais a 0 e resolver para Θ 0, Θ, Θ 2,...: Θ 0 err(h; D train ) = 0 Θ err(h; D train ) = 0 Θ 2 err(h; D train ) = 0. Prof. Leandro Balby Marinho 0 / 37 UFCG DSC
Equações Normais As equação normais são dadas por cap. 07.: X T XΘ = X T Y A equação acima pode ser representada por um sistema de equações lineares da forma: X} {{ T X} }{{} Θ A x Vários métodos de resolução: = X T Y } {{ } b Eliminação Gaussiana Fatoração de Cholesky Fatoração QR Um prova é dada em [Poole, 2009] Prof. Leandro Balby Marinho / 37 UFCG DSC
Exemplo Estime o valor para x = 3 e x 2 = 4 para os dados abaixo. x x 2 y 2 3 2 3 2 4 7 5 5 Prof. Leandro Balby Marinho 2 / 37 UFCG DSC
y y Exemplo cont. Usando regressão simles: h(x ) = 2.95 + 0.x h(x 2 ) = 6.94.34x 2 0 2 3 4 5 dados modelo 0 2 3 4 5 dados modelo 0 2 3 4 5 x 0 2 3 4 5 x h(3) = 3.25 h(4) =.57 Prof. Leandro Balby Marinho 3 / 37 UFCG DSC
Exemplo cont. Modelo regressão múltipla: h(x) = Θ 0 x 0 + Θ x + Θ 2 x 2 2 X = 2 3 4, Y = 5 5 3 2 7 4 2 X T X = 2 46 37, X T Y = 37 39 3 40 24 Prof. Leandro Balby Marinho 4 / 37 UFCG DSC
Exemplo cont. Estimando os parâmetros por Eliminação Gaussiana: 4 2 3 3 2.75 3.25 2 46 37 40 0 0 4 37 39 24 0 4 8.75.75 4 2 3 0 0.4 0. 0 0 7.5 2.5 Θ 5.583 0.779.699 Prof. Leandro Balby Marinho 5 / 37 UFCG DSC
Exemplo cont. h(x = 3, x 2 = 4) = 5.583 + 0.779x.699x 2 =.24 y 2 3 4 5 6 7 2 3 4 5 2 3 4 5 x2 x Prof. Leandro Balby Marinho 6 / 37 UFCG DSC
Gradiente Descendente vs. Equações Normais Gradiente Descendente Precisa escolher α. Pode precisar de muitas iterações. Relativamente eficiente para m grande. Equações Normais Não precisa escolher α. Não precisa iterar. Métodos de resolução de sistemas de equações lineare podem ser caros (e.g. fatoração de Cholesky O(m 3 )). Lento para m muito grande. Prof. Leandro Balby Marinho 7 / 37 UFCG DSC
Roteiro. Introdução 2. Modelo de Regressão Multivariada 3. Equações Normais 4. Regressão Polinomial 5. Regularização Prof. Leandro Balby Marinho 8 / 37 UFCG DSC
Relação Polinomial Em muitos casos o grafo de dispersão sugere uma relação não linear entre X e Y. y 2.6 2.8 3.0 3.2 3.4 3.6 3.8 5 20 25 30 35 40 45 x Prof. Leandro Balby Marinho 8 / 37 UFCG DSC
Relação Polinomial Em muitos casos o grafo de dispersão sugere uma relação não linear entre X e Y. y 2.6 2.8 3.0 3.2 3.4 3.6 3.8 5 20 25 30 35 40 45 x Prof. Leandro Balby Marinho 8 / 37 UFCG DSC
Regressão Polinomial A equação do modelo de k-ésimo grau é h(x) = Θ 0 + Θ x + Θ 2 x 2 +... + Θ k x k Erro no treino: err(h; D train ) := 2n n (Θ 0 + Θ x + Θ 2 x 2 +... + Θ k x k y) 2 Prof. Leandro Balby Marinho 9 / 37 UFCG DSC
Interpretação Probabiĺıstica A interpretação probabiĺıstistica do modelo é basicamente a mesma regressão linear: Y = Θ 0 + Θ x + Θ 2 x 2 +... + Θ k x k + ɛ E(Y X ) = h(x) E(ɛ X ) = E(ɛ) = 0 V (ɛ X ) = σ 2 Prof. Leandro Balby Marinho 20 / 37 UFCG DSC
Derivadas Parciais Derivadas parciais: Θ 0 err := n Θ err := n Θ 2 err := n. Θ k err := n (h(x) y) (x,y) D train (h(x) y) x (x,y) D train (h(x) y) x 2 (x,y) D train (x,y) D train (h(x) y) x k Prof. Leandro Balby Marinho 2 / 37 UFCG DSC
Equações Normais Igualando as derivadas parciais a zero, temos o seguinte sistema de equações lineares: Θ 0 s 0 + Θ s +... + Θ m s m = t 0 Θ 0 s + Θ s 2 +... + Θ m s m+ = t Θ 0 s 2 + Θ s 3 +... + Θ m s m+2 = t 2. Θ 0 s m + Θ s m+ +... + Θ m s 2m = t m onde s k = n xi k, t k = i= n y i xi k i= Prof. Leandro Balby Marinho 22 / 37 UFCG DSC
Estimativa de σ 2 A estimativa de σ 2 é dada por ˆσ 2 := n (k + ) (x,y) D train (h(x) y) 2 onde n (k + ) é o número de graus de liberdade associados à estimativa. Ou seja, como Θ 0, Θ,..., Θ k devem ser estimados primeiro, há uma perda de k + graus de liberdade. Prof. Leandro Balby Marinho 23 / 37 UFCG DSC
Coeficiente de Determinação Ajustado Nem sempre o aumento de complexidade é acompanhado de melhoria real do modelo. O coeficiente de determinação ajustado ( R 2 ) aumenta apenas se o novo termo melhora o modelo mais do que seria esperado de uma melhora ao acaso. R 2 n SQE = n (k + ) SQT = (n )R2 k n k Prof. Leandro Balby Marinho 24 / 37 UFCG DSC
Exemplo 2 Considere um modelo de regressão cúbico com R2 2 = 0, 66, um modelo de regressão quadrático com R3 2 = 0, 70 e uma amostra com n = 0. Então, ˆR 2 2 = 9(0, 66) 2 0 3 = 0, 563 ˆR 2 3 = 9(0, 70) 3 0 4 = 0, 550 Note que nesse caso o aumento de complexidade não compensa, já que não há aumento do R 2. Prof. Leandro Balby Marinho 25 / 37 UFCG DSC
Roteiro. Introdução 2. Modelo de Regressão Multivariada 3. Equações Normais 4. Regressão Polinomial 5. Regularização Prof. Leandro Balby Marinho 26 / 37 UFCG DSC
Overfitting Considere os dados abaixo gerados pela função sen(2πx) com ruído aleatório adicionado. t 0 0 x Normalmente, não sabemos o formato da função geradora, e então tentamos achar uma aproximação coerente. Prof. Leandro Balby Marinho 26 / 37 UFCG DSC
Escolha do Modelo Para M = grau do polinômio: M = 0 M = t t 0 0 0 x 0 x M = 3 M = 9 t t 0 0 0 x 0 x Prof. Leandro Balby Marinho 27 / 37 UFCG DSC
Overfitting Se tivermos muitos atributos (variáveis explicativas), a hipótese aprendida pode se ajustar muito bem aos dados de treino, mas falhar na generalização para novas observações. Prof. Leandro Balby Marinho 28 / 37 UFCG DSC
Erro no Treino vs. Erro no Teste Training Test ERMS 0.5 0 0 3 M 6 9 Prof. Leandro Balby Marinho 29 / 37 UFCG DSC
Tamanho dos Parâmetros Na regressão linear, overfitting é caracterizado por grandes valores dos parâmetros: M = 0 M = M = 3 M = 9 Θ 0 0.9 0.82 0.3 0.35 Θ.27 7.99 232.37 Θ 2 25.43 532.83 Θ 3 7.37 48568.3 Θ 4 23639.30 Θ 5 640042.26 Θ 6 06800.52 Θ 7 042400.8 Θ 8 557682.99 Θ 9 2520.43 Prof. Leandro Balby Marinho 30 / 37 UFCG DSC
Regularização Ideia: Encolher os valores dos parâmetros. Gera hipóteses mais simples. Menos suscetível a overfitting. Prof. Leandro Balby Marinho 3 / 37 UFCG DSC
Função de Erro A função de erro com regularização é dada por: [ n err(h; D train ) := m (h(x (i) ) y (i) ) 2 + λ 2n i= λ controla a importância relativa do termo de regularização. i= Por convenção, Θ 0 é omitido do termo de regularização. Θ 2 i ] Prof. Leandro Balby Marinho 32 / 37 UFCG DSC
Magnitude dos Parâmetros ln λ = ln λ = 8 ln λ = 0 Θ 0 0.35 0.35 0.3 Θ 232.37 4.74 0.05 Θ 2 532.83 0.77 0.06 Θ 3 48568.3 3.97 0.05 Θ 4 23639.30 3.89 0.03 Θ 5 640042.26 55.28 0.02 Θ 6 06800.52 4.32 0.0 Θ 7 042400.8 45.95 0.00 Θ 8 557682.99 9.53 0.00 Θ 9 2520.43 72.68 0.0 Prof. Leandro Balby Marinho 33 / 37 UFCG DSC
Impacto da Regularização t ln λ = 8 0 0 x Prof. Leandro Balby Marinho 34 / 37 UFCG DSC
Impacto da Regularização no Teste Training Test ERMS 0.5 0 35 30 ln λ 25 20 Prof. Leandro Balby Marinho 35 / 37 UFCG DSC
Exercício Derive um algoritmo baseado em gradiente descendente para regressão linear multivariada regularizada. Por conveniência, considere a função de erro como: err(h; D train ) := 2n [ n (h(x (i) ) y (i) ) 2 + λ 2 i= m i= Θ 2 i ] Prof. Leandro Balby Marinho 36 / 37 UFCG DSC
Referências Jay L. Devore. Probabilidade e Estatística para Engenharia e Ciências. Cengage Learning, 2006. Christopher M. Bishop. Pattern Recognition and Machine Learning. Springer, 2007. David Poole. Álgebra Linear. Cengage Learning, 2009. Lars Schmidt-Thieme. Notas de aula em aprendizagem de máquina. Disponível em: http://www.ismll. uni-hildesheim.de/lehre/ml-w/index_en.html Andrew Ng. Notas de aula em aprendizagem de máquina. Disponível em: http://www.coursera.org/course/ml Prof. Leandro Balby Marinho 37 / 37 UFCG DSC