September 1, 2019

551 words 3 mins read

huseinzol05/Gather-Deployment

huseinzol05/Gather-Deployment

Gathers scalable tensorflow and infrastructure deployment

repo name huseinzol05/Gather-Deployment
repo link https://github.com/huseinzol05/Gather-Deployment
homepage
language Python
size (curr.) 38864 kB
stars (curr.) 299
created 2018-10-23
license MIT License

Gather-Deployment

Gathers scalable tensorflow and infrastructure deployment, reusable purpose in the future.

Table of contents

Tensorflow deployment

  1. Object Detection. Flask SocketIO + WebRTC
  • Stream from webcam using WebRTC -> Flask SocketIO to detect objects -> WebRTC -> Website.
  1. Object Detection. Flask SocketIO + opencv
  • Stream from OpenCV -> Flask SocketIO to detect objects -> OpenCV.
  1. Speech streaming. Flask SocketIO
  • Stream speech from microphone -> Flask SocketIO to do realtime speech recognition.
  1. Text classification. Flask + Gunicorn
  • Serve Tensorflow text model using Flask multiworker + Gunicorn.
  1. Image classification. TF Serving
  • Serve image classification model using TF Serving.
  1. Image Classification using Inception. Flask SocketIO
  • Stream image using SocketIO -> Flask SocketIO to classify.
  1. Object Detection. Flask + opencv
  • Webcam -> Opencv -> Flask -> web dashboard.
  1. Face-detection using MTCNN. Flask SocketIO + opencv
  • Stream from OpenCV -> Flask SocketIO to detect faces -> OpenCV.
  1. Face-detection using MTCNN. opencv
  • Webcam -> Opencv.
  1. Image classification using Inception. Flask + Docker
  • Serve Tensorflow image model using Flask multiworker + Gunicorn on Docker container.
  1. Image classification using Inception. Flask + EC2 Docker Swarm + Nginx load balancer
  • Serve inception on multiple AWS EC2, scale using Docker Swarm, balancing using Nginx.
  1. Text classification. Hadoop streaming MapReduce
  • Batch processing to classify texts using Tensorflow text model on Hadoop MapReduce.
  1. Text classification. Kafka
  • Stream text to Kafka producer and classify using Kafka consumer.
  1. Text classification. Distributed TF using Flask + Gunicorn + Eventlet
  • Serve text model on multiple machines using Distributed TF + Flask + Gunicorn + Eventlet. Means that, Distributed TF will split a single neural network model to multiple machines to do feed-forward.
  1. Text classification. Tornado + Gunicorn
  • Serve Tensorflow text model using Tornado + Gunicorn.
  1. Text classification. Flask + Celery + Hadoop
  • Submit large texts using Flask, signal queue celery job to process using Hadoop, delay Hadoop MapReduce.
  1. Text classification. Luigi scheduler + Hadoop
  • Submit large texts on Luigi scheduler, run Hadoop inside Luigi, event based Hadoop MapReduce.
  1. Text classification. Luigi scheduler + Distributed Celery
  • Submit large texts on Luigi scheduler, run Hadoop inside Luigi, delay processing.
  1. Text classification. Airflow scheduler + elasticsearch + Flask
  • Scheduling based processing using Airflow, store inside elasticsearch, serve it using Flask.
  1. Text classification. Apache Kafka + Apache Storm
  • Stream from twitter -> Kafka Producer -> Apache Storm, to do distributed minibatch realtime processing.
  1. Text classification. Dask
  • Batch processing to classify texts using Tensorflow text model on Dask.
  1. Text classification. Pyspark
  • Batch processing to classify texts using Tensorflow text model on Pyspark.
  1. Text classification. Pyspark streaming + Kafka
  • Stream texts to Kafka Producer -> Pyspark Streaming, to do minibatch realtime processing.
  1. Text classification. PyFlink
  • Batch processing to classify texts using Tensorflow text model on Flink batch processing.
  1. Text classification. Streamz + Dask + Kafka
  • Stream texts to Kafka Producer -> Streamz -> Dask, to do minibatch realtime processing.

Printscreen

All folders contain print screens, logs and instructions on how to start.

Notes

  1. Deploy them on a server, change local in code snippets to your own IP.
  2. WebRTC chrome only can tested on HTTPS server.
  3. When come to real deployment, always prepare for up-scaling architectures. Learn about DevOps.
  4. Please aware with your cloud cost!
comments powered by Disqus