Welcome to the Chicken Disease Classifier project! This is an end-to-end deep learning project using MLOps DVC pipeline, showcasing deployments on AWS platforms. The project aims to classify images of chickens based on various diseases they might have, thereby enabling early detection and effective disease management.
The Chicken Disease Classifier project covers the following key components:
- Data Ingestion: Loading and preparing the dataset for training and validation.
- Data Validation: Ensuring the integrity and quality of the dataset.
- Model Training: Training a deep learning model using the prepared dataset.
- Model Evaluation: Evaluating the trained model's performance and accuracy.
- Web Application: Creating a Flask-based web application for image classification.
- Deployment: Deploying the trained model on Azure and AWS platforms.
- Throughout the project, we'll emphasize modular coding, configuration management, and the use of MLOps tools like DVC for efficient pipeline execution and version control.
Before you begin, ensure you have the following installed:
- Python (version 3.6 or higher)
- TensorFlow (version 2.x)
- Keras (version 2.x)
- Flask (version 2.x)
- DVC (Data Version Control)
- Docker (for AWS deployment)
- AWS Account (for AWS deployment)
- Update config.yaml
- Update secrets.yaml [Optional]
- Update params.yaml
- Update the entity
- Update the Configuration Manager in src/config
- Update the Components
- Update the pipeline
- Update the main.py
- Update the dvc.yaml
Clone the repository
https://github.com/CS-Aditya-Rawat/Chicken-Disease-Classifier
conda create -n cnncls python=3.8 -y
conda activate cnncls
pip install -r requirements.txt
# Finally run the following command
python app.py
Now,
open up you local host and port
1. dvc init
2. dvc repro
3. dvc dag
1. EC2 access : It is virtual machine
2. ECR: Elastic Container registry to save your docker image in aws
1. Build docker image of the source code
2. Push your docker image to ECR
3. Launch Your EC2
4. Pull Your image from ECR in EC2
5. Lauch your docker image in EC2
1. AmazonEC2ContainerRegistryFullAccess
2. AmazonEC2FullAccess
- Save the URI: 566373416292.dkr.ecr.us-east-1.amazonaws.com/chicken
#optinal
sudo apt-get update -y
sudo apt-get upgrade
#required
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker ubuntu
newgrp docker
setting>actions>runner>new self hosted runner> choose os> then run command one by one
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_REGION = us-east-1
AWS_ECR_LOGIN_URI = demo>> 566373416292.dkr.ecr.ap-south-1.amazonaws.com
ECR_REPOSITORY_NAME = simple-app