All the Data analysis and model training are in ML folder.
All the Frontend and Flask application are in WebApp folder.
- The **prediction** for the **test data** are in the **/ML/submission.csv**.
The Exploratory Data Analysis & Data Prepration are done in EDA_DataPrep.ipynb file.
The model architecture and training are in train.ipynb file.
It is a regression task. The features are in countinous and categorial.
- Converting a categorical to numerical data.
- Removing the outliers.
- The new features are added. i) No. of bathroom, balconies, cup_board per floor ii) Ratio of bathroom, balconies, cup_board with respect to property size
- Then the data is normalized to certain range using RobustScaling methods.
- The deep neural network model is trained using K-Fold.
i) The "Mean Absolute Error" is used as loss function.
ii) The training MAE loss for the model is about 2700 and RMSE is about 3764
iii) In each fold the model is trained for 100 epochs with the learning rate of 1e-3. - The same data is used to train other 4 models BaggingRegressor, ExtraTreesRegressor, RandomForestRegressor, GradientBoostingRegressor at the end they are with the training RMSE loss of 3770, 3923, 3773, 3731.
- All these models are ensembled for prediction.
The API was developed in python FLASK.
>> pip install -r requirements.py <br>
>> cd WebApp <br>
>> python main.py<br>
Check the www.localhost:5000 for the frontend.