Deep learning trainning environment for smoke detection model
There are two options to train the smoke detection neural network. The first one is to run the jupyter notebook on a Kubernetes cluster (for us it is temporarily going to be Nautilus). The second option is to run it locally assuming that there is a GPU availabe on the local node (the docker image might fail but Tensorflow will not).
cd training/
Create a persistent volume claim on Nautilus under the Sage namespace (not needed now since it exists):
kubectl create -f training.pvc.yaml
Create a deployment on kubernetes:
kubectl create -f training.deployment.yaml
Attach to a pod and run bash:
kubectl exec -it POD-NAME bash
Run jupyter notebook on pod:
jupyter notebook -—ip=0.0.0.0 -—port=9000
Port forward from pod to local node:
kubectl port-forward POD-NAME 9000:9000
Access the notebook through your desktops browser on http://localhost:9000
If there is no kubernetes cluster available for the user, there is a docker file that can be used to run on a local node (assuming that there is a GPU available).
Build docker image:
docker build -t iperezx/training-smokedetect:0.1.0 .
Run docker image:
docker run -it -p 9000:9000 iperezx/training-smokedetect:0.1.0
Attach to container and run jupyter notebook:
docker attach iperezx/training-smokedetect:0.1.0
jupyter notebook --ip 0.0.0.0 --port 9000 --no-browser --allow-root
Access the notebook through your desktops browser on http://localhost:9000