A simple demonstration of an ML Ops pipeline involving three stages:
- Data Ingestion
- Model Training
- Model Analysis
To add your own pipeline, model, datasets, etc., take a look at pipelines/README.md
Download and unzip the karthika95-pedestrian-detection kaggle dataset to ~/Downloads/karthika95-pedestrian-detection/.
Data ingestion can be run with the following. It will validate the dataset and store it to data/.
python data_ingestion.py --input_dir ~/Downloads/karthika95-pedestrian-detection/ --pipeline_name obj_det --interpreter_name karthika95-pedestrian-detection
python3 data_ingestion.py --input_dir ~/datasets/klemenko-kitti-dataset/ --pipeline_name obj_det --interpreter_name KITTI_lemenko_interpTo view logs
watch -n 1 "wget -qO- http://bani-c-0069l.ban.apac.bosch.com:8081/open/logs/stdout_main_git.log | tail"The file mlops.service is to be copied to /etc/systemd/system/. The service can then be started and status can be checked on using the following commands.
sudo cp mlops.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl start mlops.service
sudo systemctl status mlops.serviceTo view the logs of a specific subprocess, use the tmux script
./logs.sh
# OR
tmux source-file mlops.tmuxDownload Airsim Dataset
python data_ingestion.py \
--input_dir ~/Downloads/2022-05-22-11-10-49 \
--pipeline_name depth_det \
--interpreter_name depth_interp_airsimStart the REST API server
FLASK_APP=rest_server.py FLASK_ENV=development flask runStart the web UI
cd mlops-react-dashboard
yarn install
yarn startInstall this specific version of browsepy
python -m pip install git+https://github.com/AdityaNG/browsepy.git@galary_supportRun streamlit web UI
streamlit run web_ui.pyStatic Code Analysis
python -m pylint *.py
python -m pycodestyle *.pyRun the unit tests
python -m pytest --import-mode=append tests/
Facebook's detectron2 model that has the following models:
Faster RCNN object detection model
Mask RCNN, Pointrend image segmentation models
Pointrend model code,
Create seperate Python3 environment to run.
Mask RCNN can be cloned officially from https://github.com/matterport/Mask_RCNN
Then clone My implementation code https://github.com/NikhilAdyapak/ImageSegmentation/tree/main/MRCNN
Create seperate Python 3.7 environment to run.
My implementation using yolov3
Download yolov3.weights from https://pjreddie.com/media/files/yolov3.weights
