Ames House Prices Predictions
Introduction
Purchasing a home is a significant life decision. Since a mortgage lasts for decades and often represents the most considerable debt in a person’s lifetime, this decision carries immense financial implications. Given how consequential a home purchase is for an individual’s economic well-being, it is essential to be as well-informed as possible about the real estate market. Though the adage about real estate reduces everything to location, predicting housing prices accurately involves many factors beyond that. Features such as square footage, bedroom count, and home condition significantly influence the price. To take these features into account, we developed a model using a Kaggle dataset from Ames, Iowa, to assist realtors and prospective homeowners in accurately pricing a house based on its features.
What is the Ames Data Set?
The Ames Housing Dataset consists of housing sale records from 2006 to 2010. Specifically, it contains various features and attributes of residential homes in Ames, Iowa, USA. This dataset is widely used in the machine learning community, particularly for tasks such as regression modeling, feature engineering, and predictive analytics related to housing prices. Consequently, it serves as a valuable resource for developing and testing machine learning algorithms and techniques in the real estate domain.
The dataset comprises 2580 rows and 82 columns. Its features include numerical and categorical variables, including lot size, number of rooms, location, construction, and more. The target variable in this dataset is the "Sale price," which represents the sale price of the houses.
More information on this dataset can be found at
https://www.kaggle.com/datasets/prevek18/ames-housing.
Data Preprocessing
Data preprocessing is a crucial step in the data analysis and machine learning pipeline. It involves preparing raw data for analysis by cleaning, transforming, and organizing it into a suitable format for further modeling or analysis. The primary goal is to improve the quality of the data, making it more usable and reliable.
For this project, as part of the preprocessing process, the missing values for all categorical features and ordinal ratings with non-numerical ratings are replaced with "none." However, there is an exception for the home's electrical feature, which is replaced with the "mode." This approach ensures that the data is handled consistently while preserving its integrity for future analysis.
On the other hand, most numerical features are replaced with the "mean." This approach helps maintain the overall distribution of the data while addressing missing values. Consequently, it ensures the dataset remains balanced and ready for further analysis.
Exploratory Data Analysis
The graph indicates that most houses have sold for around $180,000, suggesting fair market affordability. However, some notable outliers exist, with prices reaching $700,000 or more. Therefore, it’s essential to be aware of the general market trends and distinguish them from exceptions to the general rule for the area. This distinction is, in fact, valuable information for real estate agents, sellers, and investors, as it provides a clearer understanding of market behavior and pricing anomalies.
This graph shows features with a high positive correlation with Sale Price, which indicates strong predictors. Specifically, it highlights variables such as OverallQual (the Overall Quality of the house), GrLivArea (the Above-ground Living Area), GarageArea, GarageCars, and TotalBsmtSF. These features are significant because they have a meaningful impact on the sale price, making them valuable for predictive modeling and analysis.
A house's Overall Quality is typically strongly correlated with its Sale Price. In fact, this relationship highlights how the quality of a home's materials and finishes directly impacts its market value. Specifically, high quality (e.g., excellent materials and craftsmanship) generally leads to higher Sale Prices. As a result, homes with superior quality tend to command a premium, emphasizing the importance of overall quality in determining property value.
No Statistically Significant Difference
The graph shows that the average sale prices across years look very similar, indicating Visual Consistency. Moreover, the lack of noticeable differences in the trends suggests that there’s no strong evidence to support the idea that sale prices differ significantly across the years, at least from a statistical perspective. As, in general, sale prices have remained relatively stable over time, any variations observed may not be substantial enough to indicate a clear trend.
The neighborhood is the categorical feature with the highest predictability in our dataset. This finding highlights the significant impact of location on housing prices within the Ames dataset. As a result, location emerges as a key determinant in predicting housing prices in this context.
Using Data for Modeling
After completing the exploratory data analysis and feature imputation, the next steps were to build and run machine learning models. To begin with, models were selected based on which were most likely to have the highest accuracy. Specifically, two categories of models were chosen, resulting in a total of seven models. The first category consists of linear regression models, such as Multiple Linear Regression, Lasso, Ridge, and Elastic Net. The second category includes tree-based models, such as Random Forest, XGBoost, and Gradient Boost. By selecting a mix of both types, we aimed to leverage their strengths for improved predictive performance.
Linear Regression models:
Simple linear regression
When used individually in a simple linear regression, the top ten features and their performance are promising, as each feature has strengths. Specifically, these features demonstrate varying levels of predictive power, highlighting their contributions to the model's accuracy. Each feature plays a unique role, and when combined, they have the potential to improve overall model performance. Consequently, their effectiveness provides a solid foundation for further analysis and feature engineering.
Multiple Linear Regression
Multiple linear regression (MLR) reveals the relationships between features and target values. To reach the midpoint, we integrated the model into our pipeline. Specifically, MLR involves creating a combined pipeline with the preprocessor and our linear regression model. We applied cross-validation to assess the model's performance on unseen data.
In this process, the data is split into groups, called folds of equal size, allowing different models to be trained on each fold which improves accuracy and performance. Initially, we used five folds but later increased it to ten to showcase a wider data distribution. Interestingly, there was no significant difference between the fold comparison, suggesting that the model's performance remained relatively stable.
The Mean Cross-Validation Score of the MLR model was 0.82. Notably, it did not require any tuning as adjustments tended to lower the R-squared value. Although not detailed, the MLR also revealed that overall quality was the feature with the highest predictability. This insight highlights this feature's importance in predicting the house's price.
When we combined the top ten features in a multiple regression model, we observed a decent improvement. Specifically, the MLR model explains approximately 82.12% of the variance in the Sale Price during cross-validation, indicating its effectiveness. As a result, it performs well in predicting house prices based on the top ten combined features. Furthermore, this improvement demonstrates the power of integrating multiple relevant features, enhancing the model's accuracy and reliability.
Lasso, Ridge, and Elastic Net Models
Feature scaling is an essential preprocessing step when working with penalized regression models, as it helps standardize the range of independent variables or features within the data. The graph above demonstrates that Lasso explains 90.95% of the variability in house prices, Ridge explains 91.31%, and ElasticNet explains 87.41%. Notably, Ridge performs slightly better than Lasso, indicating it may be more effective in capturing the variability in house prices. Therefore, although all three models show strong performance, Ridge offers a marginal advantage over Lasso.
Tree Based Models
After applying preprocessing techniques for Tree-Based Models, such as ordinal encoding, one-hot encoding, and various imputation methods, we ensured that our dataset was thoroughly prepared for the sophisticated requirements of tree-based modeling. These steps helped optimize the data for improved model performance. The graphs below, therefore, compare MSE, MAE, and R² scores for different models, providing a clear view of how each model performs across various evaluation metrics. This comparison offers valuable insights into the relative effectiveness of each approach.
A large MSE indicates that some predictions deviate significantly from actual values. Large deviations in house price predictions, particularly for high-value properties, are likely inaccurate enough to be considered reliable. On the other hand, MAE provides an average deviation in price prediction, which is more interpretable and, thus, more valuable for house price predictions.
Furthermore, the R² Score indicates how well the model explains the variability in house prices. Generally, an R² closer to 1 is desirable, as it signifies more accurate predictions. The graph above clearly shows that LGBMRegressor is the best-performing model overall, with the lowest error and the highest explanatory power. As a result, this model stands out as the most reliable for house price predictions.
Models’ Performance Comparison
CatBoost's high performance suggests it handles the housing price data characteristics, particularly the categorical features, exceptionally well. In contrast, ElasticNet's poor performance might indicate inappropriate regularization or an incompatibility with the dataset, which could hinder its ability to capture meaningful patterns. We also found that MLR, Ridge, and Lasso maintain comparable performance, highlighting the utility of regularization in linear models for this dataset. Therefore, while some models perform better than others, the consistent results from MLR, Ridge, and Lasso suggest that regularization improves model accuracy in this context.
Feature Importance
Random Decision Forests
A random forest model is used to find the importance of features or the degree of dependency on variables. Specifically, it combines multiple decision trees and hierarchical structures that use nodes to test attributes. The higher the feature importance, the greater the impact on the model’s predictions. While random forests provide valuable insights into feature importance, they are also subject to the overfitting mentioned earlier. As trees grow in size, so does the possibility of overfitting. Those using this form of modeling must be mindful of the need to monitor and manage overfitting to maintain model accuracy.
Gradient Boosting
CatBoost (short for Categorical Boosting) is a machine-learning algorithm that uses gradient boosting on decision trees. Notably, it has gained popularity for its efficient handling of categorical data, which sets it apart from many other algorithms. This capability is especially valuable for the Ames Housing dataset, which contains numerous categorical features like neighborhood, house style, and sale condition. CatBoost’s ability to manage and process these categorical variables makes it particularly well-suited for this dataset, ensuring more accurate predictions.
Summary of Results
Each model has its strengths and weaknesses, so assessing which ones are best suited to the project's goals is necessary. In this project, the CatBoost model had the highest R square score and emerged as the most accurate of our models. It showed that the two most essential features by a significant margin are ‘OverallQual’ (Overall Quality) and ‘GrLivArea’ (Ground Living Area). This suggests that the size of the living area and the overall quality of the home are the strongest predictors of price.
Many of the top features relate to the size (e.g., ‘TotalBsmtSF’, ‘1stFlrSF’) or quality (e.g., ‘ExterQual’, ‘KitchenQual). Several basement-related features (‘BsmtFinSF1’, ‘TotalBsmtSF,’ ‘BsmtQual’) appear in the top 10, indicating the importance of basement characteristics in determining home value. External Factors that include features like ‘ExterQual’ (Exterior Quality) and ‘LotArea’ also play significant roles, showing that both the quality of the house’s exterior and the size of the lot contribute to the price.
There is some merit to what realtors say about location. Neighborhood ranks among the most important features, highlighting the significant impact of location on home prices. By leveraging these insights, real estate market stakeholders can make more informed decisions about property valuation, home improvements, and investment strategies.
Future work
Analyzing Ames Housing Prices with Unsupervised Learning
Moving beyond regression and tree-based models, future work could explore unsupervised learning techniques, such as Principal Component Analysis (PCA), to group houses and provide a different perspective on the data.
Enhancing Ames Housing Price Predictions with Multiple Models
Combining multiple machine learning models can increase predictive power, while model tuning can optimize hyperparameters to reduce prediction errors and improve accuracy.
Improving Predictions with Additional Features and Variables
Introducing new features, such as socio-economic factors or location details, could significantly enhance house price predictions by providing a more comprehensive dataset.
Feature Engineering for Better Housing Price Predictions
Creating new features that capture critical factors like size, location, and neighborhood quality will improve the model's ability to predict housing prices accurately.
Building an Interactive Interface for Real-Time Housing Price Predictions
Developing an interface using R Shiny would allow users to access predicted sale prices of homes in Ames, utilizing real-time housing data and machine learning predictions.