Reverse Engineering MLaaS - randalburns/atidic-fall18 GitHub Wiki

I thought that I made up the term MLaaS as I wrote this title. Of course, it has been widely used in the Intertubes. Anyhow, the goal of this project is to try and determine what exactly machine-learning Web services are providing as a way to try and understand their value proposition.

Things that we might be interested in include:

  • Software (and version) that the service is running
  • Models that the service uses (particularly for CNN/RNN tasks)
  • Hardware that the service uses
  • Relative cost/performance tradeoffs compared to provisioning your own instances
  • Computational/data corners that the service might cut (sampling, prediction, interpolation)

This list is certainly not comprehensive. In many cases, some of these tasks will be trivial, e.g. in the documentation. Feel free to dig into the problem and create your own definition of reverse engineering. I expect these projects to be technically ambitious, be hackers. I also expect these projects to be high risk. Take chances, fail, but fail with evidence that you tried hard and failed.

Some target architectures might include:

OK, I ran out of linking gas in the middle. There's a bunch of products and I'm not sure what's real and what's noise. Check out this list, which is over a year old.

Your choice of platform will be dictated by your interest. I expect that the startups will more likely be doing interesting/questionable things with existing technologies and that the big players will be making a clear margin by hosting their existing services as a technology. I think that looking at the quality of the service is as interesting.

Rules of the Game

  • Small teams. I prefer 2 and will allow 3. It should be intense co-development.
  • New partners.
  • Send me (by email) at the end of the day a statement of your working thesis and platform(s).
    • Two sentences would suffice, but I want you to be specific.
    • This can change, it's not a commitment, just an opportunity for me to provide feedback.

Deliverables and Time-Frame

TBD. But, let's plan on doing flash (10-minute) presentations from each team on Thurs. Oct 11. I will be gone on Tuesday Oct. 9, so that should be a day for teams to meet. I will provide a list of questions as guidance for presentations.