Regressão Linear Múltipla
Academia da Engenharia de Avaliações
4 de agosto de 2025
\[\mathbf y = \pmb{X \beta} + \pmb \epsilon \qquad(4)\]
\[ \mathbf y = \begin{Bmatrix} y_1 \\ y_2 \\ \vdots \\ y_n \end{Bmatrix} \]
\[ \mathbf X = \begin{Bmatrix} 1 & x_{11} & x_{21} & \cdots & x_{k1}\\ 1 & x_{12} & x_{22} & \cdots & x_{k2}\\ \vdots & \vdots & \vdots & \ddots & \vdots\\ 1 & x_{1n} & x_{2n} & \cdots & x_{kn}\\ \end{Bmatrix} \]
\[ \pmb{\beta} = \begin{Bmatrix} \beta_0 \\ \beta_1 \\ \vdots \\ \beta_k \end{Bmatrix}\quad \pmb{\epsilon} = \begin{Bmatrix} \epsilon_1 \\ \epsilon_2 \\ \vdots \\ \epsilon_n \end{Bmatrix} \]
Os resíduos são a previsão do termo de erro e são a diferença entre os valores observados e ajustados:
Os valores previstos podem ser escritos assim:
Substituindo a Equação 6 na Equação 5:
\[ \mathbf H = \begin{Bmatrix} h_{11} & h_{21} & \cdots & h_{n1}\\ h_{12} & h_{22} & \cdots & h_{n2}\\ \vdots & \vdots & \ddots & \vdots\\ h_{1n} & h_{2n} & \cdots & h_{nn}\\ \end{Bmatrix} \]
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0.18 | 0.18 | 0.17 | 0.15 | 0.12 | 0.11 | 0.09 | 0.09 | 0.06 | 0.05 | 0.04 | 0.03 | 0.02 | 0.00 | -0.01 | -0.03 | -0.04 | -0.05 | -0.06 | -0.07 | -0.03 |
0.18 | 0.17 | 0.16 | 0.15 | 0.12 | 0.11 | 0.09 | 0.09 | 0.06 | 0.05 | 0.04 | 0.03 | 0.02 | 0.00 | -0.01 | -0.02 | -0.03 | -0.04 | -0.06 | -0.07 | -0.03 |
0.17 | 0.16 | 0.15 | 0.14 | 0.11 | 0.10 | 0.09 | 0.08 | 0.06 | 0.05 | 0.04 | 0.03 | 0.02 | 0.01 | -0.01 | -0.02 | -0.02 | -0.04 | -0.05 | -0.06 | -0.02 |
0.15 | 0.15 | 0.14 | 0.13 | 0.11 | 0.10 | 0.08 | 0.08 | 0.06 | 0.05 | 0.04 | 0.03 | 0.03 | 0.01 | 0.00 | -0.01 | -0.02 | -0.03 | -0.04 | -0.05 | -0.01 |
0.12 | 0.12 | 0.11 | 0.11 | 0.09 | 0.08 | 0.07 | 0.07 | 0.06 | 0.05 | 0.04 | 0.04 | 0.03 | 0.02 | 0.01 | 0.01 | 0.00 | -0.01 | -0.01 | -0.02 | 0.01 |
0.11 | 0.11 | 0.10 | 0.10 | 0.08 | 0.08 | 0.07 | 0.07 | 0.05 | 0.05 | 0.04 | 0.04 | 0.03 | 0.03 | 0.02 | 0.01 | 0.01 | 0.00 | 0.00 | -0.01 | 0.01 |
0.09 | 0.09 | 0.09 | 0.08 | 0.07 | 0.07 | 0.06 | 0.06 | 0.05 | 0.05 | 0.04 | 0.04 | 0.04 | 0.03 | 0.03 | 0.02 | 0.02 | 0.02 | 0.01 | 0.01 | 0.02 |
0.09 | 0.09 | 0.08 | 0.08 | 0.07 | 0.07 | 0.06 | 0.06 | 0.05 | 0.05 | 0.04 | 0.04 | 0.04 | 0.03 | 0.03 | 0.03 | 0.02 | 0.02 | 0.02 | 0.01 | 0.03 |
0.06 | 0.06 | 0.06 | 0.06 | 0.06 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.04 | 0.04 | 0.04 | 0.04 | 0.04 | 0.04 | 0.04 | 0.03 | 0.04 |
0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 |
0.04 | 0.04 | 0.04 | 0.04 | 0.04 | 0.04 | 0.04 | 0.04 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.06 | 0.06 | 0.06 | 0.05 |
0.03 | 0.03 | 0.03 | 0.03 | 0.04 | 0.04 | 0.04 | 0.04 | 0.05 | 0.05 | 0.05 | 0.05 | 0.05 | 0.06 | 0.06 | 0.06 | 0.06 | 0.06 | 0.06 | 0.07 | 0.06 |
0.02 | 0.02 | 0.02 | 0.03 | 0.03 | 0.03 | 0.04 | 0.04 | 0.04 | 0.05 | 0.05 | 0.05 | 0.05 | 0.06 | 0.06 | 0.06 | 0.06 | 0.07 | 0.07 | 0.07 | 0.06 |
0.00 | 0.00 | 0.01 | 0.01 | 0.02 | 0.03 | 0.03 | 0.03 | 0.04 | 0.05 | 0.05 | 0.06 | 0.06 | 0.06 | 0.07 | 0.07 | 0.08 | 0.08 | 0.09 | 0.09 | 0.07 |
-0.01 | -0.01 | -0.01 | 0.00 | 0.01 | 0.02 | 0.03 | 0.03 | 0.04 | 0.05 | 0.05 | 0.06 | 0.06 | 0.07 | 0.08 | 0.08 | 0.09 | 0.09 | 0.10 | 0.10 | 0.08 |
-0.03 | -0.02 | -0.02 | -0.01 | 0.01 | 0.01 | 0.02 | 0.03 | 0.04 | 0.05 | 0.05 | 0.06 | 0.06 | 0.07 | 0.08 | 0.09 | 0.09 | 0.10 | 0.11 | 0.11 | 0.09 |
-0.04 | -0.03 | -0.02 | -0.02 | 0.00 | 0.01 | 0.02 | 0.02 | 0.04 | 0.05 | 0.05 | 0.06 | 0.06 | 0.08 | 0.09 | 0.09 | 0.10 | 0.11 | 0.11 | 0.12 | 0.09 |
-0.05 | -0.04 | -0.04 | -0.03 | -0.01 | 0.00 | 0.02 | 0.02 | 0.04 | 0.05 | 0.06 | 0.06 | 0.07 | 0.08 | 0.09 | 0.10 | 0.11 | 0.11 | 0.12 | 0.13 | 0.10 |
-0.06 | -0.06 | -0.05 | -0.04 | -0.01 | 0.00 | 0.01 | 0.02 | 0.04 | 0.05 | 0.06 | 0.06 | 0.07 | 0.09 | 0.10 | 0.11 | 0.11 | 0.12 | 0.14 | 0.15 | 0.11 |
-0.07 | -0.07 | -0.06 | -0.05 | -0.02 | -0.01 | 0.01 | 0.01 | 0.03 | 0.05 | 0.06 | 0.07 | 0.07 | 0.09 | 0.10 | 0.11 | 0.12 | 0.13 | 0.15 | 0.16 | 0.12 |
-0.03 | -0.03 | -0.02 | -0.01 | 0.01 | 0.01 | 0.02 | 0.03 | 0.04 | 0.05 | 0.05 | 0.06 | 0.06 | 0.07 | 0.08 | 0.09 | 0.09 | 0.10 | 0.11 | 0.12 | 0.09 |
Area | Preco | PU |
---|---|---|
75 | 200.000 | 2.666,67 |
85 | 220.000 | 2.588,24 |
100 | 260.000 | 2.600,00 |
125 | 312.500 | 2.500,00 |
150 | 375.000 | 2.500,00 |
175 | 420.000 | 2.400,00 |
190 | 440.000 | 2.315,79 |
210 | 475.000 | 2.261,90 |
225 | 550.000 | 2.444,44 |
Call:
lm(formula = PU ~ Area, data = dados)
Residuals:
Min 1Q Median 3Q Max
-82.08 -24.88 -18.48 28.32 132.38
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2790.9074 69.3490 40.244 1.52e-09 ***
Area -2.1282 0.4411 -4.824 0.00191 **
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 68.91 on 7 degrees of freedom
Multiple R-squared: 0.7688, Adjusted R-squared: 0.7358
F-statistic: 23.27 on 1 and 7 DF, p-value: 0.001912
Call:
lm(formula = PU ~ Area, data = dados, subset = -9)
Residuals:
Min 1Q Median 3Q Max
-39.73 -20.18 -3.08 15.52 52.09
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2863.423 35.303 81.1 2.4e-10 ***
Area -2.770 0.241 -11.5 2.6e-05 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 32.1 on 6 degrees of freedom
Multiple R-squared: 0.957, Adjusted R-squared: 0.949
F-statistic: 132 on 1 and 6 DF, p-value: 0.000026
A distância de Cook \(D_i\) pode ser vista como uma medida da distância entre os coeficientes calculados com e sem a i-ésima observação (Cordeiro e Lima Neto 2004, 24).
As observações serão consideradas influentes quando \(D_i \geq F_{p,\,n-p}(0,50)\) (Cordeiro e Lima Neto 2004, 24).
1 2 3 4 5 6 7 8 9
0.09775 0.02621 0.01662 0.01159 0.01189 0.00682 0.14372 0.35250 1.54696
Figura 3: Análise de Resíduos do Exemplo 1.
Somente se pode combater o viés amostral através de uma amostragem mais cuidadosa.
O viés do patrocinador pode ser contornado através da solicitação de avaliações por partes não comprometidas com o interesse da transação.
O viés da variável omitida, no entanto, é mais complicado:
With four parameters I can fit an elephant, and with five I can make him wiggle his trunk (Von Neumann)
Figura 4: Tradeoff entre viés e variância.
Partindo do modelo nulo, à medida que variáveis vão sendo acrescentadas, há uma gradual diminuição do viés.
Existe, porém, um limite para a inserção de novas variáveis.
Muitas vezes, com poucos dados, um modelo com menos variáveis será mais preciso, em termos de predição, do que um modelo mais sofisticado.
É recomendável a utilização de \(n/20\) a \(n/10\) variáveis explicativas no modelo de regressão, para evitar sobreajustamento (Harrell 2015, 72).
Figura 5: Ilustração do sobreajustamento de um modelo.
É comum na engenharia de avaliações a consideração de diversas variáveis, mesmo com poucos dados
Muitas vezes isso leva a modelos com alto grau de ajuste (alto \(R^2\))
Um modelo sobreajustado irá prever valores para novos dados que não necessariamente irão refletir os preços de mercado.
Como, então, aferir se o modelo de regressão prevê bem valores fora da amostra?
Se adotamos as versões não-viesadas das variâncias, obtemos a Equação 14:
Mesmo assim, \(R^2_{ajust}\) ainda não é um estimador não-viesado de \(\rho^2\) (Karch 2020, 2)
\(R^2_{ajust}\) penaliza a inserção de novas variáveis no modelo.
Alguns pesquisadores se baseiam erroneamente apenas no valor de \(R^2\) para escolher o melhor modelo. Entretanto, tão importante quanto termos um \(R^2\) próximo de um, é que a estimativa de \(\sigma^2\) seja também pequena, pois os intervalos de confiança para os parâmetros de interesse são proporcionais a \(\sigma\) (Cordeiro e Lima Neto 2004, 12).
Na engenharia de avaliações, infelizmente, é frequente que trabalhemos com conjuntos de dados pequenos, o que dificulta muito, senão impossibilita, o particionamento dos dados entre partições de treinamento e validação;
Uma alternativa, nestes casos de pequenos conjuntos de dados, é a utilização da técnica de reamostragem jackknife!
O Método jackknife, de Quenouille-Tukey, é um método de reamostragem não-paramétrico.
O método jackknife consiste em reamostrar uma amostra \(n\) vezes, deixando de fora um dos seus dado de cada vez.
Reamostragem Jackknife
Area | 75 | 85 | 100 | 125 | 150 | 175 | 190 | 210 | 218 | 230 |
Preco | 200.000 | 220.000 | 260.000 | 312.500 | 375.000 | 420.000 | 440.000 | 475.000 | 505.000 | 540.000 |
PU | 2.667 | 2.588 | 2.600 | 2.500 | 2.500 | 2.400 | 2.316 | 2.262 | 2.322 | 2.348 |
As observações cujos valores absolutos dos resíduos padronizados são maiores do que 2 podem ser consideradas mal-ajustadas (pontos aberrantes) (Cordeiro e Lima Neto 2004, 21).
Call:
lm(formula = PU ~ Area, data = dados)
Residuals:
Min 1Q Median 3Q Max
-61.61 -25.94 5.29 25.77 71.02
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2814.000 42.713 65.88 3.1e-12 ***
Area -2.336 0.259 -9.02 1.8e-05 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 44.4 on 8 degrees of freedom
Multiple R-squared: 0.91, Adjusted R-squared: 0.899
F-statistic: 81.3 on 1 and 8 DF, p-value: 0.0000183
1 2 3 4 5 6 7 8 9 10
0.7608 -0.7176 0.4941 -0.5327 0.8629 -0.1258 -1.3213 -1.5506 0.4062 1.8937
Não há dados com resíduo-padrão com magnitude igual ou maior a 2,0 em módulo!
Porém, e se o problema for que os pontos aberrantes são também influenciantes?
1 2 3 4 5 6 7 8 9 10
0.1372 0.0953 0.0316 0.0216 0.0419 0.0010 0.1420 0.3006 0.0246 0.7230
E se aplicarmos a reamostragem jackknife e elaborarmos 10 modelos de regressão, retirando-se um ponto de cada vez, calculando o resíduo-padrão?
Resíduos jackknife:
Call:
lm(formula = PU ~ Area, data = dados)
Residuals:
Min 1Q Median 3Q Max
-61.61 -25.94 5.29 25.77 71.02
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2814.000 42.713 65.88 3.1e-12 ***
Area -2.336 0.259 -9.02 1.8e-05 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 44.4 on 8 degrees of freedom
Multiple R-squared: 0.91, Adjusted R-squared: 0.899
F-statistic: 81.3 on 1 and 8 DF, p-value: 0.0000183
Call:
lm(formula = PU ~ Area, data = dados, subset = -10)
Residuals:
Min 1Q Median 3Q Max
-38.01 -35.06 9.54 17.50 44.86
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2843.200 36.060 78.8 1.4e-11 ***
Area -2.587 0.231 -11.2 1.0e-05 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 35.3 on 7 degrees of freedom
Multiple R-squared: 0.947, Adjusted R-squared: 0.94
F-statistic: 125 on 1 and 7 DF, p-value: 0.0000101
Os resíduos jackknife podem ser calculados conforme a equação abaixo (Cordeiro e Lima Neto 2004, 22):
Na prática:
Os resíduos jackknife ou resíduos externamente studentizados devem possuir distribuição t de Student com \(n-p-1\) graus de liberdade (Cordeiro e Lima Neto 2004, 22)!
Ver planilha excel do material de apoio!
Analogamente ao que ocorre com os resíduos studentizados e com a distância de Cook, é possível aplicar o procedimento jackknife ao cálculo de \(R^2\).
Ao \(R^2\) calculado com o método da reamostragem jackknife é dado o nome \(R^2_{pred}\):
Na prática, não é preciso ajustar \(n\) modelos para calcular cada resíduo, pois é possível utilizar a matriz chapéu para retirar a contribuição da observação:
Figura 8: Modelo sem significância.
Termo | Est. | Erro | t | p valor |
---|---|---|---|---|
(Intercept) | 25,81 | 33,91 | 0,76 | 0,46 |
Area | -0,11 | 0,43 | -0,26 | 0,80 |
Note: | ||||
Erro-padrão dos resíduos: 11,39 em 10 graus de liberdade. | ||||
a MADn: 12,02 | ||||
b R2: 0,0068 | ||||
c R2ajust: -0,093 | ||||
d R2pred: -0,59 | ||||
e MAPE: 115,98% |
Figura 9: Modelo sobreajustado.
Termo | Est. | Erro | t | p valor |
---|---|---|---|---|
(Intercept) | 17,00 | 2,14 | 7,95 | 0,00 |
poly(Area, 3)1 | -2,97 | 7,41 | -0,40 | 0,70 |
poly(Area, 3)2 | 19,41 | 7,41 | 2,62 | 0,03 |
poly(Area, 3)3 | 21,94 | 7,41 | 2,96 | 0,02 |
Note: | ||||
Erro-padrão dos resíduos: 7,41 em 8 graus de liberdade. | ||||
a MADn: 6,92 | ||||
b R2: 0,66 | ||||
c R2ajust: 0,54 | ||||
d R2pred: -0,22 | ||||
e MAPE: 48,04% |
1 2 3 4 5 6 7 8
-0.000326 -1.031962 0.684641 0.014561 1.610842 0.251385 -1.193145 -2.054892
9 10
0.094544 1.339744
Termo | Est. | Erro | t | p valor |
---|---|---|---|---|
(Intercept) | 2.814,00 | 42,71 | 65,88 | 0 |
Area | -2,34 | 0,26 | -9,02 | 0 |
Note: | ||||
Erro-padrão dos resíduos: 44,43 em 8 graus de liberdade. | ||||
a MADn: 43,29 | ||||
b R2: 0,91 | ||||
c R2ajust: 0,90 | ||||
d R2pred: 0,85 | ||||
e MAPE: 1,42% |
Termo | Est. | Erro | t | p valor |
---|---|---|---|---|
(Intercept) | 4.081 | 176,2 | 23,16 | 0 |
log(Area) | -328 | 35,3 | -9,28 | 0 |
Note: | ||||
Erro-padrão dos resíduos: 43,27 em 8 graus de liberdade. | ||||
a MADn: 48,18 | ||||
b R2: 0,92 | ||||
c R2ajust: 0,90 | ||||
d R2pred: 0,87 | ||||
e MAPE: 1,26% |
id | PU | Area | R2 | adj_R2 | pred_R2 | LL | AIC | AICc | BIC | |
---|---|---|---|---|---|---|---|---|---|---|
2 | 2 | identity | log | 0,915 | 0,904 | 0,872 | -50,75 | 107,5 | 111,5 | 108,4 |
5 | 5 | identity | sqrt | 0,918 | 0,907 | 0,870 | -50,59 | 107,2 | 111,2 | 108,1 |
12 | 12 | sqrt | log | 0,912 | 0,900 | 0,867 | -4,98 | 16,0 | 20,0 | 16,9 |
15 | 15 | sqrt | sqrt | 0,915 | 0,904 | 0,867 | -4,78 | 15,6 | 19,6 | 16,5 |
10 | 10 | log | sqrt | 0,912 | 0,901 | 0,863 | 27,16 | -48,3 | -44,3 | -47,4 |
7 | 7 | log | log | 0,908 | 0,896 | 0,862 | 26,91 | -47,8 | -43,8 | -46,9 |
CUIDADO: quando a variável dependente é transformada, \(R^2\) (assim como \(R^2_{ajust}\) e \(R^2_{pred}\)) valem para a escala transformada!
O que importa, no entanto, é como o modelo funciona na escala original (preços)!
id | PU | Area | R2 | adj_R2 | pred_R2 | nl_R2 | LL | AIC | AICc | adj_AIC | adj_AICc | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | 5 | identity | sqrt | 0,918 | 0,907 | 0,870 | 0,918 | -50,59 | 107,2 | 111,2 | 107 | 111 |
3 | 15 | sqrt | sqrt | 0,915 | 0,904 | 0,867 | 0,918 | -4,78 | 15,6 | 19,6 | 107 | 111 |
2 | 10 | log | sqrt | 0,912 | 0,901 | 0,863 | 0,918 | 27,16 | -48,3 | -44,3 | 108 | 112 |
VALORÍSTICA