observing behaviour of learning algorithms on regression task with feature scaling
This is a research project on regression.
Goal of this project is to observe how traditional machine learning algorithms adapt real world data.
The example which was followed for studies is california housing dataset
https://scikit-learn.org/stable/modules/generated/sklearn.datasets.fetch_california_housing.html
Total 10 machine learning models were trained on california housing dataset and benchmarked.
Performance metrics used for benchmark are mean squared error, training time and inference time
For installing requirements, do
$cd california_housing_benchmarks
$pip install requirements.txt
For training your own machine learning models on California Housing, do
$python train.py
The train.py script trains following models and generates benchmarks
models | mses | training times |
---|---|---|
LinearRegression | 0.3543 | 0.0136 |
Ridge | 0.3543 | 0.006 |
Lasso | 0.3629 | 0.0229 |
SVR | 0.2338 | 11.6984 |
KernelRidge | 0.3585 | 41.7658 |
GaussianProcessRegressor | 828.3268 | 84.7025 |
DecisionTreeRegressor | 0.3621 | 0.2184 |
RandomForestRegressor | 0.1729 | 25.9781 |
AdaBoostRegressor | 0.1684 | 34.1281 |
GradientBoostingRegressor | 0.1963 | 7.9679 |
You can run the API directly into your browser to predict housing housing price.
Go find sample example features to predict on homepage.
To run the web app, do
$pip install requirements.txt
$python app.py
Open http://localhost:5000/ on your local machine.
API in action