There’s an Algorithm for That: Algorithmia Helps You Find It
These days, you don’t have to be an expert in natural-language processing or computer vision to make an app that can automatically summarize text or recognize faces. You just have to find the right algorithm.
Seattle startup Algorithmia is making both finding and using algorithms easier with a marketplace that unites algorithm creators and the software developers who need them. The company is opening its marketplace to the general public for a preview beginning Thursday with more than 800 algorithms that can parse huge data sets; find, analyze, and recommend content; run combinatorial auctions; and much more.
An algorithm is a series of operations that take some piece of input—a 1,500 word journal article, for example—and produce a specific output—a three-sentence summary of the article. Among the more famous examples is PageRank, the algorithm that underpins Google’s search engine. Google co-founders Larry Page and Sergey Brin built PageRank in 1996 to determine a Web page’s relevance based on the number of links that point to it. Two decades ago, that was a competitive differentiator on which to build a $386 billion technology behemoth. Today, it’s table stakes.
As businesses gather more data than ever before, they need help doing something useful with it. “Everybody needs more sophisticated algorithms as their data needs increase,” says Algorithmia co-founder and CEO Diego Oppenheimer.
The algorithms companies need are out there, but until now, they’ve been hidden in academic journals or in other formats that are hard for businesses to find and consume, Oppenheimer says. “It’s democratization of access to advanced data analysis or processing,” he says of his company’s mission.
Algorithmia brokers access to those capabilities, and charges for them as a metered service, like a utility. A software developer chooses an algorithm, accesses it via Algorithmia’s application programming interface (API), and sets it loose on his or her data, paying a small fee—usually fractions of a cent—for each use.
Finding and running an algorithm on Algorithmia can be a cheaper alternative to developing one internally, especially for startups with limited resources, or for lower-priority items that a mid-sized company’s software developers might never have time for, Oppenheimer says.
Lots of tech companies say they are breaking down the big data priesthood and giving their customers the ability to do what the Microsofts and Googles of the world can do. Of course, you still need a requisite level of talent.
Oppenheimer says the buyers in the marketplace are software developers, but even someone who has completed only a six-month bootcamp on Web technologies can deploy a complex text summarizer that was built by a computer science PhD. Web developers know how to call on a server or API to perform a task. “That’s the core of Web programming,” he says.
In Algorithmia’s case, the developer writes a few lines of code to call on its API for access hundreds of algorithms and their capabilities. The algorithms do the work on your data in the cloud. You don’t need to know how the algorithms work or how to set up the IT infrastructure to run them, Oppenheimer says, as long as you understand the pipeline you use to access them.
Algorithmia is a six-person company and can remain small because the heavy lifting of algorithm development—the products in its marketplace—is provided by its users, many of whom are academic researchers.
Co-founder Kenny Daniel was a graduate research assistant at University of Southern California working on solutions to Los Angeles’s woeful public transportation system when he glimpsed the opportunity for Algorithmia, from the algorithm creator’s perspective—the sell-side of the market. He was writing and publishing algorithms for better route-finding and auction systems to set demand-based pricing. While the academic papers he wrote about the algorithms were being published and cited, the algorithms themselves weren’t being used, Oppenheimer says.
Oppenheimer, meanwhile, viewed the problem from the other side. As a software developer working at Microsoft on data analysis tools for Excel, he needed an algorithm to assess the size of a dataset so the software could suggest a chart big enough to accommodate it. He found someone who had been working on just the thing inside of Microsoft Research—but he found it only because he went looking for it. There was no easy way to search through all of the Microsoft Research algorithms, he says. If connecting a supply of algorithms with demand for them was a challenge even within Microsoft—one of a few companies with a dedicated research arm inventing technologies to go into its products—Oppenheimer thought there would be an opportunity in solving this problem for the broader software world.
“Imagine how bad it is outside of that closed circle,” he says. “How does a startup or mid-sized company who wants to do something interesting find or work with an algorithm developed at University of Washington?”
University researchers, particularly in technology fields, want to see their work applied in the real world. “There’s an extreme amount of innovation in the academic community around image processing, text, language understanding,” Oppenheimer says. But getting that innovation out of universities can be a slow, expensive process—prohibitively so for smaller companies, he says.
With Algorithmia, researchers can easily reach a large audience of potential algorithm users, making a little extra money for their labs or themselves along the way, Oppenheimer says. This could raise some thorny issues in the complex world of university technology transfer. The University of Washington’s tech transfer office, CoMotion, has been helping Algorithmia sort out the details, Oppenheimer says.
Commercializing an algorithm on Algorithmia does not preclude other commercialization deals, he says. “We are a plus-one to other commercialization paths,” he says.
Algorithmia says it has seen some 5,000 developers from all corners of the globe use its marketplace during its private test period. Algorithms have been submitted by researchers at the National University of Singapore, Carnegie Mellon University, and UW, for example. But it’s not just academics. Algorithms have come in from Google engineers and private software developers in Romania.
Algorithmia allows algorithm creators to set the price of their algorithms. The company takes 30 percent of that, following the model of app marketplaces. It also charges algorithm users each time they call on one via the API, covering cloud computing costs. One second of computing time costs one credit. Each credit costs 1/100th of a cent.
A developer looking to incorporate facial recognition technology into a photo-sharing app, for example, could find an algorithm on the marketplace priced at, say, 10 credits per API call. It takes the operation one second to run on each image. So for each image processed through the app, the app developer would pay 11 credits, of which the algorithm developer would get seven and Algorithmia would get four.
The company raised a $2.4 million seed round in August 2014 from Madrona Venture Group, with participation from Rakuten Ventures, Deep Fork Capital, and angel investors including Charles Fitzgerald and Oren Etzioni.
Most of the computing work is done on Amazon Web Services, but Algorithmia has built its system to run in any cloud computing environment to save users the high cost of transferring data in and out of the cloud. Essentially, the algorithms and compute power to run them go to the data, rather than bringing the data to the algorithms, Oppenheimer says.
Algorithmia also allows people to request a specific algorithm be built. One company asked for an algorithm that could take numerals and write them out in Spanish words. A Spanish-speaking developer tackled the problem and claimed a bounty. These bounties, paid by the entity requesting the algorithm, typically pay in the hundreds of dollars. But many algorithm developers will do them for free as a way to build their reputations on the platform, Oppenheimer says. The company also encourages people to make their algorithms available for free under open source licenses.
“The creation of the bounty is essentially saying interest from the marketplace for this algorithm exists,” Oppenheimer says. The bounty itself is a financial incentive to build it. The algorithm’s creator can still market it to other companies on Algorithmia; the company that issued the bounty gets a license to use the algorithm outside the confines of Algorithmia’s API.
Algorithmia does not transfer intellectual property ownership of the algorithms on its marketplace. That stays with the algorithm’s creator. Instead, users get one of several licenses to use the algorithms.
What if someone posts an algorithm that cribs heavily from someone else’s work? The company is registered with the U.S. Copyright Office and follows its rules for infringement claims. Oppenheimer says software developers in general are respectful of copyright.
“We haven’t had a problem yet,” he says. “I’m sure it will happen. But we already have in place all the safeguards to respond to it.”