● Final Year Undergrad @ IITR ● Software Engineer Intern @ rorodata ● Systems Engineer @ Team Robocon IITR ● Love my kindle and hacking through things About Me nabarun.in github.com/palnabarun
Bottlenecks and Challenges ● What tools to use? ● How to capture data? ● Where to store? ● Where should my ML code run? ● How should I visualize the output?
● Takes 2-3 weeks for building an application ● Of that, only 2 days may be spent on actual machine learning ● Majority of the time is spent in software engineering rather than ML Typical Timeline
Camera Agent ● Program running on end device ● Connects to pre-configured server ● Captures and uploads pictures/videos ● Remotely configurable by the server
Cloud Architecture ● Server to get data from the agents and store them ● Admin Dashboard to control the capture frequency, type of data captured, see logs and uploads from registered devices ● Storage provider can be changed ● Provides a client library for fetching data
Firefly ● Framework to deploy Python functions as REST web service ● Very easy and flexible to use ● Used to deploy ML models and pre-processing functions ● Easily deployable using WSGI servers like gunicorn ● Open Source !
Dashboard ● Variety of visualization options ● Data provided by the client library or a firefly function running Machine Learning Code ● Run anywhere ● Plotting and charting using Dash by plot.ly or any other visualization tool
Ending Notes ● End to end application development in 3-4 days ● Majority of time spent on ML ● Robust infrastructure ● Versatile data storage options ● Scalability