This model looks to predict residential rental rates using XGBoost. It is trained on rates scraped from redfin and apartments.com and uses a combination of geospatial feature generation and standard ML techniques to make predictions.
Performance is discussed in depth below, but this model will generally get close to the market rate, but lacks accuracy due to more granular feature such as how "nice" the property is, what ammenities it has, and when how long it has been on the market. It also tends to overestimate true retn values as it is trained on market listings NOT market rents.
That said, this model, and its confidence interval predictions can provide real estate investors witha reasonable range for rent values, and a strong place to start doing comparative analysis.
- Filters properties by bedrooms (1-5), bathrooms (1-4), square feet (<10000), rent ($250-$6000)
- Removes duplicate listings and invalid data points
- Handles missing values
-
KNN Features:
- Calculates weighted rent benchmarks using 10 nearest neighbors
- Uses haversine distance for geographic proximity
- Stores neighbor URLs, distances, and rent values
-
Location Averages:
- State-level average rents
- CBSA (metropolitan area) averages
-
Property Features:
- Square footage
- Bedroom/bathroom counts (one-hot encoded)
- Latitude/longitude coordinates
- Minimum/maximum neighbor rents
- Log-transformed distances
- Base Model: XGBoost Regressor
- Quantile Models: 25th, 50th, 75th percentiles
- Pipeline Components:
- Standard scaling
- Feature preprocessing
- Model training
- Mean Absolute Percentage Error (MAPE): 12.9%
- Mean Absolute Error (MAE): $262.94
- Median Absolute Error: $167.00
- R-squared: 0.799
- 50% confidence interval holds ~48% of the time
- Performance varies signifficantly accross state and region types. It also degrades at higher rent values.
As Discussed in the introduction, this model provides a strong first step towards understanding a reasonable rent value in a region, but is far from perfect. It misses degrades signifficantly in several cases
This model only sees basic house charictaristics an dhas now ay to estimate how "nice" a house is. As such, Rent for Luxury houses with few legitimate comps will often be underestimated, and rent for abandoned, old houses which need signifficant updates may be signifficantly overestimated.
This model depends heavily on having accurate comps nearby. In Rural areas or areas with few rentals, these comps are often not available. This is accounted for in the model with features such as "NEIGHBOR_DISTANCE_MIN", but signifficanlty decreases the accuracy of the predictions.