Escolar Documentos
Profissional Documentos
Cultura Documentos
Recomendação de Preços para Residências
Recomendação de Preços para Residências
Recomendação de Preços para Residências
1 of 19 07/11/2022 15:45
Recomendação de Preços para Residências https://www.3dimensoes.com.br/post/sistemas-de-recomenda%C3...
Michel
Descrição da Competição
2 of 19 07/11/2022 15:45
Recomendação de Preços para Residências https://www.3dimensoes.com.br/post/sistemas-de-recomenda%C3...
Quando um comprador descreve a casa dos seus sonhos, ele provavelmente não começará com a altura
do teto do garagem ou o tipo de telhado. O conjunto de dados desta competição prova que existem muitos
outros fatores que influenciam as negociações de preço.
Com 79 variáveis independentes descrevendo (quase) todos os aspectos de casas residenciais em Ames,
Iowa, esta competição desafia você a prever o preço final de cada casa.
Se você tem alguma experiência com R ou Python e noções básicas de aprendizado de máquina, esta é
uma competição perfeita para estudantes de ciência de dados que concluíram um curso on-line de
aprendizado de máquina e desejam expandir seu conjunto de habilidades.
A competição está em https://www.kaggle.com/c/house-prices-advanced-regression-techniques.
Pré-requisisos
Este artigo não é um tutorial de Machine Learning nem do Python.
Como pré-requisitos você deve saber o que é uma Análise Exploratória de Dados, programação em
Python, ScikitLearn e ter os conceitos centrais de algoritmos de Machine Leaning.
Dados do problema
3 of 19 07/11/2022 15:45
Recomendação de Preços para Residências https://www.3dimensoes.com.br/post/sistemas-de-recomenda%C3...
4 of 19 07/11/2022 15:45
Recomendação de Preços para Residências https://www.3dimensoes.com.br/post/sistemas-de-recomenda%C3...
5 of 19 07/11/2022 15:45
Recomendação de Preços para Residências https://www.3dimensoes.com.br/post/sistemas-de-recomenda%C3...
O Fluxo do processo
Coleta de Dados
6 of 19 07/11/2022 15:45
Recomendação de Preços para Residências https://www.3dimensoes.com.br/post/sistemas-de-recomenda%C3...
A documentação informa a existência de outliers. Vamos explorar esses valores atípicos no train set.
Podemos ver na parte inferior direita dois outliers com GrLivArea extremamente grande e de um baixo
preço.
7 of 19 07/11/2022 15:45
Recomendação de Preços para Residências https://www.3dimensoes.com.br/post/sistemas-de-recomenda%C3...
8 of 19 07/11/2022 15:45
Recomendação de Preços para Residências https://www.3dimensoes.com.br/post/sistemas-de-recomenda%C3...
A variável target é bem distorcida. Precisamos transformar essa variável e torná-la mais normalmente
distribuída. Para isso usamos a função np.log1p
9 of 19 07/11/2022 15:45
Recomendação de Preços para Residências https://www.3dimensoes.com.br/post/sistemas-de-recomenda%C3...
A inclinação (skew) parece agora corrigida pois os dados estão mais normalmente distribuídos.
10 of 19 07/11/2022 15:45
Recomendação de Preços para Residências https://www.3dimensoes.com.br/post/sistemas-de-recomenda%C3...
Correlações
À primeira vista, há dois quadrados coloridos vermelhos que chamam a atenção. O primeiro deles refere-
se às variáveis 'TotalBsmtSF' e '1stFlrSF', e o segundo refere-se às variáveis 'GarageX'. Ambos os casos
mostram significativa correlação entre essas variáveis. Na verdade, esta correlação é tão forte que pode
11 of 19 07/11/2022 15:45
Recomendação de Preços para Residências https://www.3dimensoes.com.br/post/sistemas-de-recomenda%C3...
mostram significativa correlação entre essas variáveis. Na verdade, esta correlação é tão forte que pode
indicar uma situação de multicolinearidade. Se pensarmos sobre essas variáveis, podemos concluir que
elas dão quase a mesma informação.
Features Engineering
Atributos desnecessários
Temos muitos atributos.Vamos usar modelos de regressão linear regularizados para classificá-los por
importância.
Usamos a regularização tanto L1(Lasso). Também definiremos uma função que retorna o erro de validação
cruzada rmse, para que possamos avaliar nossos modelos.
L1(Lasso)
O parâmetro de ajuste principal para o modelo Lasso é alfa - um parâmetro de regularização que mede a
flexibilidade do nosso modelo. Quanto maior a regularização, menos propenso nosso modelo será para
overfiting, entretanto ele perde a flexibilidade e pode não capturar todos os sinais presentes nos dados.
12 of 19 07/11/2022 15:45
Recomendação de Preços para Residências https://www.3dimensoes.com.br/post/sistemas-de-recomenda%C3...
O valor do erro parece razoável, e vemos que os coeficientes mais importantes são:
Missing Values
Concatenamos (juntamos) os sets de treinamento e teste, e verificamos se existem missing values.
13 of 19 07/11/2022 15:45
Recomendação de Preços para Residências https://www.3dimensoes.com.br/post/sistemas-de-recomenda%C3...
14 of 19 07/11/2022 15:45
Recomendação de Preços para Residências https://www.3dimensoes.com.br/post/sistemas-de-recomenda%C3...
Label Encoding para algumas variáveis categóricas que podem conter informações em sua ordenação
15 of 19 07/11/2022 15:45
Recomendação de Preços para Residências https://www.3dimensoes.com.br/post/sistemas-de-recomenda%C3...
16 of 19 07/11/2022 15:45
Recomendação de Preços para Residências https://www.3dimensoes.com.br/post/sistemas-de-recomenda%C3...
17 of 19 07/11/2022 15:45
Recomendação de Preços para Residências https://www.3dimensoes.com.br/post/sistemas-de-recomenda%C3...
18 of 19 07/11/2022 15:45
Recomendação de Preços para Residências https://www.3dimensoes.com.br/post/sistemas-de-recomenda%C3...
Ainda como um último passo, fiz algumas simulações no Excel procurando combinar os três modelos de
forma ponderada e ir reduzindo o desvio padrão da combinação. O modelo final obteve um rmse de
0,11519 que ficou em 193º num total de 5.273 competidores.
19 of 19 07/11/2022 15:45