Habitat Hive is a project that's aimed to solve rental finding problems. Habitat Hive uses a Habitability Index which ranks properties based on the living well-being around the property.
Finding housing properties for rent these days is getting harder and harder. Think about livable housing, it's almost impossible to find.
Habitat Hive solves these problems using Machine Learning algorithms by giving habitability scores to every property listed. This makes the buyers make an easy and perfect decision.
The project utilizes a dataset obtained from Kaggle, comprising various features such as Property ID, Property type, property area, Number of windows, Number of doors, Furnishing, Frequency of Power cuts, Power backup, Water supply, traffic density score, crime rate, dust and noise, air quality index, neighbourhood review, and habitability score.
Dataset: https://www.kaggle.com/datasets/ifteshanajnin/get-a-room-ml-hackathon-by-hackerearth
As the habitability score prediction requires numerical values, all the discrete values were converted into numerical values (e.g., Furnished, Semi Furnished, and Unfurnished to 1, 0.5, and 0, respectively). The Nan values of the dataset is replaced by the mean of their respective column. To simplify the dataset, a new dataset was created only comprising common values such as property area, frequency of power cuts, power backup, water supply, traffic density score, crime rate, dust and noise, air quality index, and neighbourhood review for a particular area. This preprocessed dataset will be used for further prediction and model training.
The project utilized two machine learning models, namely the DecisionTreeRegressor and AdaBoostRegressor. The DecisionTreeRegressor was chosen as the weak learner, and it was fitted inside the AdaBoostRegressor. AdaBoostRegressor is a meta-estimator that adjusts the weights of instances based on the error of the current prediction. This approach is less prone to overfitting as the input parameters are not jointly optimized, and it improves the accuracy of weak classifiers.
There's no use in having a 100% perfect model that solves the problem in a split second if a normal end user can use it. So we created an Eye Candy Web App to present the model to the user. There's also a page on which you can calculate your own Habitability Index.
We used a wide range of technologies and we'd like to divide them into 3 parts
Frontend:
- Svelte - The fun frontend framework of choice
- Flowbite - Eye candy component library
- TailwindCSS - CSS from future
Backend:
- Flask - Come on is there anything Python can't do?
Machine Learning:
OneAPI is a powerful tool for machine learning projects that can help developers achieve better performance and code portability. With its optimized libraries, performance tools, and unified programming model, OneAPI can speed up training and improve inference performance, while simplifying development by enabling developers to write code that can run on different hardware platforms.
Its key benefits include:
- Accelerating training on hardware accelerators, such as GPUs or FPGAs
- Improving inference performance on various hardware platforms, which can reduce latency and improve throughput
- Increasing code portability by enabling developers to write code that can run on different hardware architectures
- Optimizing performance with performance tools that can help developers improve the performance of their code
- Simplifying development with a unified programming model can help reduce the need for platform-specific code.
Using oneAPI in our project provided us with around a 2% uplift in accuracy. This may seem like a tiny improvement but on larger datasets, this will impact accuracy on a larger scale. Note: These benchmarks are taken on machines with identical specs
Our Benchmarks:
Convinced with the performance of oneAPI? To integrate it with your project: click here!
English:
habitatHiveDemoEnglish.mp4
Tamil: