Inspiration

Initially, we had the idea that we could do some sort of machine learning. However, most of on the team did not have very much experience in machine learning. We thought it would be interesting to have a tool that would help us college students gain a better understanding of machine learning, and thus ez ML was born.

Check out our somewhat functional website.

What it does

The idea was to have a google App Engine that would spawn containers for each Machine Learning task that it received from the website.

Currently, we have a front-end and a back-end. The front end is a website with forms taken from the parameters of a few ML algorithms in scikit-learn. The backend has a few parts 1 part deals with the internet. Another is supposed to do the heavy lifting.

How we built it

For our backend, we heavily invested our infrastructure into Google Cloud Platform. From a Python Flask web application that runs in an App Engine flex environment to a custom CDN created by using Google Cloud Storage, we tried integrating the Google Cloud Platform as much as we could. In addition, we used the twilio for an indemonstrable but easily understood function: SMS alerts. Since model training takes time, we decided to alert users when their jobs finished with Twilio's SMS push API and an email push API.

We used common web technologies (possibly slightly dated) such as Bootstrap, jQuery, and HTML5 Boilerplate to create the frontend. In addition to the front end, we made a website domain through Domain.com, so we have a pretty url.

Challenges we ran into

Heavily integrated into the Google Cloud Platform, it is a little too deeply invested in the GCP. Since we couldn't get the App Engine to spawn and use Kubernetes or any other sort of container, our project's core functionality is absent. A remedy would have been to put the Flask project on a Compute Engine, which has access to its own environment, so we would have been able to run command-line interfaces.

Accomplishments that we're proud of

Other than our final push, we were pretty proud to have GCP working real smoothly. Also, the UI we made looks better than we thought it would.

What we learned

This is the first hackathon, where I tried to not sleep. Unfortunately, in my final sprint, I sort of lost to the dark depths of slumber. Also, this has been the first team where the outside was enjoyable so people were outside and not coding quite frequently... parties and hackathons don't quite mix (cough, cough...)

What's next for ez ML

I think I finally figured GCP and spawning processes out, so I will be finishing functionality. However, what I actually want to do is to make a UI for ML that's easy for anyone to experiment with. Think of it as a Scratch for ML, or a pre-model Tensor-Board.

Share this project:

Updates