Algorithmia – The World’s Biggest Algorithm Marketplace
For the average layperson, the word “algorithm” may not be too meaningful, but for computer programmers it’s the very essence of their job. An algorithm is best described as a series of steps a computer follows when a human gives the computer a particular command. Typically, an algorithm will take some inputs and use them to generate some outputs. For example, you might build an algorithm that takes an input of 10 different positive numbers and then returns the largest as an output which contains a single number. More complex examples might be an algorithm which accepts an image as an input, then returns the number of faces that can be detected in the image. An even more complex algorithm might then go look up the faces on Facebook and tell you the names of the people depicted. As you might have guessed, algorithms are reusable because there’s no sense in building the same thing twice. This notion of building reusable algorithms is the very foundation of the startup we’re going to talk about today – Algorithmia.
Algorithmia’s Founder Can Sell
Update 05/14/19: Algorithmia has raised $25 million in Series B funding to double down on investing in product development and building out its team, with a plan to double its headcount over the next year. This brings the company’s total funding to $37.9 million to date.
In order to learn more about this company’s value proposition, we had the chance to watch the founder and CEO, Diego Oppenheimer, give a very compelling talk during the Re.Work Applied AI Summit in Houston which we attended last week. During the summit, we saw a number of company founders present their firms, and even a casual observer would have quickly noticed that they weren’t all created equal. When you see someone as dynamic and engaging as Mr. Oppenheimer present, you begin to start believing in a product before you even understand what it is. As it turns out, the product is as compelling as the man who presented it.
Hailing from the first country in the world to make marijuana legal, Mr. Oppenheimer started his company on the premise that in five years’ time, we won’t be talking about “machine learning,” we’ll simply just refer to it as software. That’s because machine learning is just software, and developing good software is extremely difficult for any number of reasons, the main one having to do with complexity. There isn’t enough time in the day to give you even the most basic list of problems that can take place when developing software, something that Software Quality Assurance (SQA) professionals know all too well. Most of these problems come into play in something that the techies refer to as DevOps. According to Amazon:
DevOps is the combination of cultural philosophies, practices, and tools that increases an organization’s ability to deliver applications and services at high velocity – Amazon
For example, something like “change management” falls under DevOps. So do things like stress testing, load testing, security testing, and any other type of testing that ensures the software can run under any condition. The practitioners of DevOps don’t come cheap, and if you’re developing a genius AI algorithm, the only thing you ought to be worried about is making that algorithm better. DevOps is best left to the experts, at least that’s the idea behind Algorithmia’s value proposition. We’ll try and give you a primitive example of what this might look like.
Nicholas Cage Teaches Us DevOps
Let’s say you wanted to develop an algorithm that could detect bad acting in any stream of video. The plan would be to write an AI algorithm that could parse through any movie in your digital library to identify characters that exhibited traits of “bad acting” by training said algorithms using every movie ever made starring Keanu Reeves, Nicholas Cage, or Kevin Costner. Once the algorithm is sufficiently trained, you might then want to make it available to anyone else out there who also never wants to suffer through something as painful to watch as this man’s “performances:”
Essentially, the algo will take as an input, a link to a video stream and as an output, the extent to which bad acting is observed on a scale of 1 to 100. When you release the algo to the masses, you have no idea how many people will use it or at what frequency. How can you even begin to determine how many servers you need to run the app on if you have no idea how many people will use it – or if it will even be used? Even if you had all the servers in the world, can the algorithm actually scale? The answer to these questions can be found in Algorithmia’s platform.
Microservices for the Masses
Upload your algorithm to the Algorithmia platform and they’ll turn it into a “microservice” that’s optimized for speed. Consumers of your algorithm can then use an Application Programming Interface (API) to make calls to as many instances of the microservice as needed, allowing it to quickly scale to demand. “TensorFlow may be open source but scaling it is not,” says Mr. Oppenheimer, and many performance measurements only become apparent at scale. Do you really want to fuss with all that or let someone else deal with it? It’s also a function of time, because getting software to your users faster means you’re one step ahead of the 3,000 plus other AI startups out there, many of whom are trying to do the exact same thing you are:
What’s more important when we look towards the future is “AI transparency” which is something that compliance will soon start to mandate, especially for “sensitive” industries like finance. You need to know what was run, by whom, on what version, at what time. In order to do that you need a strictly controlled platform. Again, let someone else deal with that.
Build vs. Buy
If you’re thinking about developing your own machine learning algorithms on Algorithmia’s platform or otherwise, make sure you’re not duplicating someone else’s efforts. Before making that difficult “build vs. buy” decision, search through the 7,000 different algorithms on the Algorithmia platform first to see if someone has already done the work for you. Why spend time creating an algorithm, testing it, worrying about whether or not it will scale, when that’s already been done for you? Just search the platform to discover thousands of machine learning algorithms that have already been created:
Again, you’ll only have to pay for each second you’re using the algorithms which is all based on a credit system. If you’re the creator of said algorithms, you can charge a royalty to any users which helps you gain credits. For enterprise users who may not want to share what they create, Algorithmia offers options to support that as well. The platform is also language agnostic, being able to run models, functions, and algorithms in any of the most popular languages.
If you ever get a chance to interact with Mr. Oppenheimer, you’ll see why some founders get funding and some don’t. Venture capital isn’t “broken,” it’s just that some founders out there don’t do a very good job of making investors believe they can execute. You need to immediately demonstrate competence when selling your company’s value proposition, and there’s no doubt this guy will see a liquidation event much sooner than some of the other founders we saw present at the Re.Work conference who tended to punt the tough questions with the old “we’re working on that” response. If you’re a burgeoning startup that’s worried about moving at the speed the industry is moving at, why not bring this guy on as your CTO? In essence, that’s what you’re doing when you outsource every aspect of your AI algorithms to Algorithmia and let them worry about making sure all that DevOps stuff gets sorted out.