End to END Machine Learning Workflow using github actions(CI/CD), Github Self-Hosted(app runner) and AWS-ECR(for the docker image) and EC2 to deploy my machine learnig Flask Application/Rest endpoint into the Ec2 instance
1) In Data Ingestion phase the data is first read as csv.
2) Then the data is split into training and testing and saved as csv file.
1) In this phase a ColumnTransformer Pipeline is created.
2) For Numeric Variables first SimpleImputer is applied with strategy median ,
then Standard Scaling is performed on numeric data.
for Categorical Variables SimpleImputer is applied with most frequent strategy,
3) then ordinal encoding performed , after this data is scaled with Standard Scaler.
4) This preprocessor is saved as pickle file.
1) In this phase base model is tested . The best model found was catboost regressor.
2) After this hyperparameter tuning is performed on catboost and knn model.
3) This model is saved as pickle file.
1) This pipeline converts given data into dataframe and has various functions to load
pickle files and predict the final results in python.
2) Flask app is created with User Interface to predict the gemstone prices inside a Web Application.