Skip to content

Local Chapter project

Building a House Price Recommendation System Using Machine Learning

NLPMachine LearningWeb scraping
Start date
August 1, 2023
Finish date
September 30, 2023
Project status
completed
Building a House Price Recommendation System Using Machine Learning

Challenge background

Houses play an integral role in our day-to-day lives, serving as the hub for activities such as eating, sleeping, unwinding, and nurturing our families. This pivotal element in our lifestyle, however, comes with a considerable price tag. Over the past seven years, the cost of housing in the EU has surged by approximately 50%, significantly outpacing the average wage growth of 11%.

Moreover, the housing sector is a key component of our economic structure. It constitutes a substantial portion of household wealth, often used as collateral for loans and contributes considerably to the construction industry.

In light of the rapid adoption of remote working arrangements following the Covid-19 pandemic, the real estate market is expected to experience prolonged volatility.

The problem

Identifying the appropriate pricing for a residence poses a significant challenge. Determining the amount one should pay for a new home or the price to request when selling an existing one can be daunting.

The vast amount of pricing information available online only adds to this complexity, making it difficult for an individual to maintain a comprehensive understanding. The application of machine learning to distill the existing information into a specific price could greatly benefit both potential buyers and sellers.

Goal of the project

The project goals are divided into 3 areas: data gathering, modeling, and deployment.

In the data gathering section, we will scrape real estate websites for structured data (price, location, number of rooms, type of dwelling, etc.) and unstructured data (house descriptions, location descriptions, etc.).

The modeling section will be devoted to leveraging these inputs to forecast a price. It is a non-trivial neural network application that will deal with structured and unstructured inputs.

Finally, in the deployment, we should allow users to input the data for a dwelling and receive a suggested price.

Project timeline

  1. 1

    Week 1

    • DATA GATHERING: choose a real estate website and scrape it
    • MODELLING: get familiar with the neural network model we will be using. Reading the article describing it and finding a dataset to start playing
    • DEPLOYMENT: get familiar with Docker, GCP, FastAPI, and a frontend solution
  2. 2

    Week 2

    • DATA GATHERING: improve on the scraping
    • MODELLING: prepare inputs for the neural network, first results
    • DEPLOYMENT: deploy mock frontend
  3. 3

    Week 3

    • DATA GATHERING: finalize scraping
    • MODELLING: tune the model
    • DEPLOYMENT: deploy the current version of the model
  4. 4

    Week 4

    • MODELLING: finalize the model
    • DEPLOYMENT: deploy the last version of the model

What you'll learn

  1. Scraping a commercial website.
  2. Modeling a non-trivial neural network.
  3. Building a deployment frontend.

Get involved

What to expect from a Local Chapter project

First project

  • Welcomes beginners and experienced practitioners.
  • Focuses on education and collaborative delivery.
  • Produces open-source project work.

Benefits

  • Address a significant real-world problem with your skills.
  • Build your project portfolio.
  • Demonstrate your work to organizations and project partners.

Requirements

  • Working English communication.
  • A learning mindset.
  • Commitment to collaborative project work.