Inspiration

The Bay Area has some of the highest rental prices in the U.S., making it difficult for renters to estimate fair prices. I wanted to build a tool that provides transparent, data-driven rent predictions.

What it does

BayAreaRentAI predicts monthly rent based on features like number of bedrooms, bathrooms, square footage, housing type, parking, pets, laundry, and neighborhood district. Unlike black-box platforms, it shows how each feature contributes to the predicted price, helping users make informed decisions.

How we built it

I used a Bay Area housing dataset and trained both linear regression and a neural network in PyTorch. Features were preprocessed with scaling and one-hot encoding for categorical variables. The neural network model was deployed locally using Flask, with a web interface for real-time predictions.

Dataset: https://www.kaggle.com/datasets/thedevastator/scraping-apartments-off-of-craigslist-in-san-fra

Challenges we ran into

  • limited data made larger neural networks inaccurate
  • encoding categorical variables for both linear regression and neural networks
  • creating the front end with Flask and HTML

Accomplishments that we're proud of

  • built a fully functional local web app for San Francisco rent predictions
  • achieved interpretable results by calculating feature contributions (gradients) for the neural network
  • able to compare linear regression vs neural network for accuracy

What we learned

  • preprocessing categorical data vs numerical data
  • how to integrate linear regression/neural network models into a local web app for practical use
  • how linear regression can outperform neural networks in some cases but also cannot in others

What's next for BayAreaRentAI

  • be able to make predictions while considering a string input for housing description
  • collect more data to improve accuracy and model robustness
  • expand into more regions
  • improve UI
  • deploy as a web app/mobile app

Built With

Share this project:

Updates

Submission history