Escolar Documentos
Profissional Documentos
Cultura Documentos
CENTRO DE ECONOMIA
DEPARTAMENTO DE ECONOMIA
Trabalho Empírico II
Organização Industrial II
Fortaleza | Ceará
2023
Ana Elissa Aceiro, Giovanna Lameu, Luís Haroldo e João Victor Pinheiro.
II Trabalho empírico de OI2 (ago 2023)
*Entrega no dia 23 de novembro, por e-mail (srgdesouz@gmail.com)
Considere os dados sobre imóveis disponíveis no Sigaa UFC em formato csv intitulado
“base_cidades_aluguel_interacoes.csv”
O código inicial para fazer os splits em treino/teste para a cross-validation do estudo foi
feito de acordo com o visto em aula (já alterando o aluguel para o seu valor em logaritmo):
Já para construir o modelo do MQO, conseguimos obter ele com o seguinte código que
retorna o seguinte summary apenas com os resultados obtidos para análise descritiva:
Com um R² que nos mostra que 55% da variância no log de aluguel é respondida pelas
features selecionadas, temos um resultado interessante junto com a significância estatística
a menos de 1% em todas as variáveis (menos a variável quartos.banheiro). Logo em um
modelo de natureza explicativa/descritiva, este é um modelo que pode ser interessante,
entretanto, esses foram os resultados obtidos apenas no treino e além disso a interpretação
vista agora não foi de natureza preditiva, que é o almejado pelo estudo. Ao tentar utilizar
esse modelo para previsão, obtemos os seguintes resultados utilizando o Erro Quadrático
Médio (MSE) e Erro Percentual Médio Absoluto (MAPE), que são medidas comumente
utilizadas para avaliação de modelos de previsão:
Logo, com esses resultados, com a transformação do valor de aluguel em log transformou o
resultado do MSE como um número de difícil comparação caso tenhamos modelos mais
precisos, o MAPE se torna mais “visível” na hora de avaliar e escolher qual o melhor. Dessa
forma, temos um erro médio absoluto de 2,56% (ou uma precisão de 97,44%). Como na
versão logarítmica perdemos um pouco a mensuração real da falta de precisão que temos
(pois não temos uma ótima interpretabilidade ao analisar variação em 0,0042 em um log de
aluguel), retirar o log para o resto do estudo pode vir a calhar, mas vale ressaltar a alteração
dos resultados, que ao deixarmos de utilizar logaritmo retornou as seguintes métricas:
Ou seja, estamos errando 5,30% no valor absoluto do aluguel e esse erro quadrático é como
se errássemos 268,62 para cada 1000 reais de aluguel (lembrando que é ao quadrado esse
valor). Como as métricas apresentam resultados consideráveis, ao observar o ótimo
desempenho no treino e um resultado “bom” no teste, existe a possibilidade de não
estarmos sofrendo fortemente de underfitting ou overfitting.
Isso pode ser explicado pois nesse ponto não estamos tão próximos do valor que minimiza o
erro como o desejado, o gráfico abaixo mostra o desempenho que teríamos ao ajustar o
hiperparâmetro da penalidade de acordo com quanto aumentamos esse valor.
c) (2,5 pontos ) Estime modelo de previsão usando Lasso. Comente resultados.
Como não foram encontrados resultados que diminuíssem o erro obtido no modelo do
MQO, até o ponto que foi mostrado no trabalho ele se mantém como o modelo mais
preciso. Entretanto, vale ressaltar que no código visto em sala, o split treino teste feito no
MQO e o feito nos modelos Ridge e Lasso são diferentes. Enquanto o primeiro é focado na
divisão 80-20 de forma aleatória, nos outros modelos utilizamos a k-fold cross-validation.
Enquanto na normal aleatorizamos a posição dos dados e apenas separamos em 80% para
Treinamento (obtenção da escolha dos parâmetros dos estimadores) e 20% para o Teste, no
k-fold temos uma aleatorização dos dados junto com separações em secções que evitam o
data leakage e aumentam ainda mais a aleatorização da amostragem para treinamento,
obtendo um processo semelhante à seguinte imagem:
Logo, observa-se que os resultados da k-fold é uma média de múltiplas separações
aleatórias dos dados que em cada “step” da imagem existe uma aleatorização feita igual a
vista no modelo MQO, logo, se a ordenação dos dados na CV normal do 80-20 no MQO foi
uma sortuda e na k-fold evitamos que isso ocorra, tentar reaplicar outra 80-20 CV no MQO
ou uma k-fold nele também torna nossos resultados mais próximos da realidade ou mais
justificáveis. Após alterar a seed de aleatoriedade de ordenação dos dados, obtivemos o
seguinte resultado:
Ou seja, ele continua sendo o melhor mesmo após isso, como não foi possível obter uma
estruturação no código que permitisse a k-fold CV no mqo por limitação em conhecimento
em R pela equipe, infelizmente esses resultados terão que ser os aceitos.
e) (1,5 ponto) Tente melhorar previsão por meio de outras formas funcionais para
variáveis explicativas (dica: use potências de ordem mais elevada, logs, modelo elastic-net
etc.)
Com o provável problema de underfitting, foi tentado utilizar equilíbrios de valores da
penalidade de Lasso e Ridge entre os valores de 0 e 1 com incremento de 0,1 para cada
tentativa, sendo o melhor resultado obtido o da seguinte formulação:
Com isso observamos uma redução em relação a ambos os modelos iniciais de Lasso e Ridge
vistos anteriormente, mas não um resultado melhor do que o MQO.
Mas como tivemos as estimativas de quartos, banheiros e vagas, tentaremos colocar elas ao
quadrado e ao cubo para poder aumentar a variância mas ao adicionar mais variáveis
utilizando esse novo modelo conseguimos:
Um resultado pior que o anterior e ao tentar utilizar no MQO os mesmos dados já que ele
era o melhor modelo, o resultado obtido foi: