Predictive modeling is not new, but startup Yottamine Analytics is counting on the convenience and economics of cloud computing to make it a lot more popular. Its cloud-based predictive modeling solution combines the benefits of EC2 spin-up automation and large-scale program parallelism to provide predictive power by the hour for pennies a minute.
Yottamine specializes in software for predictive analytics, specifically what is often referred to as machine learning. The software examines a large number of examples and develops a model that can then look at new data and make conclusions about it.
Take a spam filter, for example. If you were building a spam filter with this kind of software, you would essentially submit to the software, in a specially encoded form, examples of email messages, ones that are spam and ones that are not spam.
The spam filter example is provided by Tim Negris, the vice president of sales and marketing for Yottamine. Negris has been in the data arena for some time; he was formally an executive at Oracle and IBM as well as a number of other startups.
“What the software does is actually quite brilliant,” he says. “It figures out a mathematical formula that given a new example where it doesn’t know whether it’s spam or not, it can predict whether it is or it isn’t.”
This kind of computation is extraordinarily compute-intensive, says Negris. There’s this gigantic matrix of binary values that requires very complex multi-dimensional mathematics. It burns through a lot of cycles.
This kind of machine learning has been around for a while, but it hasn’t made good economic sense because of the very large computational requirement. “Everyone says the same thing,” says Negris, “‘This is a very promising type of technology, but the computer you would need to have in your datacenter to do it is sufficiently large to where you’d have a difficult time doing it.’ That’s where HPC in the cloud comes into play.”
Yottamine has teamed up with Amazon Web Services to provide machine learning on-demand. “Normally this kind of process requires a lot of trial and error guesswork on the computation side and a lot of hand-work on the deployment side, including setting up the cluster instances,” says Negris. “Configuring this by-hand is not impossible, but takes some time. We automate a lot of those processes so the data scientist can say ‘here’s my data, spin me up a cluster and let’s get a model built.'”
“Using Amazon definitely advances the potential for this kind of machine learning. There’s an interesting affinity between the cost economics of cloud computing and the way in which you use a computer for this kind of thing. The designer spends a couple days figuring out what they need and getting the data ready and then the model is built and you’re off and running until you need to revise the model or build a new model,” is how Negris puts it.
The Yottamine team has been working on finalizing pricing details and lining up customers in preparation for their official launch, which is scheduled for next week. Depending on the algorithm, pricing will be in the range of $10-$50 per node hour. Expect standard linear machine learning algorithms to have a lower price point than more complex Gaussian variants, which can process enormous amounts of information very quickly.
Negris explains their solutions enable very fast runs, meaning a job that would normally take six days with typical open source research software might take only six hours with Yottamine’s software.
“The time compression is considerable,” he says. “You can do a huge model in the space of five hours. For approximately $250, you have a model that two years ago would have required you to own a two-million dollar supercomputer.”
Yottamine founder David Huang has been working in machine learning for many years. He started out as a research post doc making algorithms scalable. He finds machine learning very interesting. “It’s not like some problems in biology where data needs are lower and everything can fit into memory but computation needs are very high and take a long time. Machine learning can be both compute and data-intensive if you use a complex model, which is what gives you higher accuracy,” he says.
Huang recalls his own frustrations coming up with big ideas and being told by his supervisor that they were impractical because there wasn’t enough compute power. So three years ago, he started his own company. He sees a huge opportunity for data scientists to be able to predict a wide range of variables for problems that require a huge amount of computing power.
“To solve these problems, we need to be able to use a lot of computing power, and that is complicated. To transform a machine learning algorithm from a single-threaded design into a parallelized computing environment is very difficult,” Huang explains.
To help them overcome the constraints that he once faced, he has worked to bring highly parallel, cloud-based machine learning software to data scientists.
“Our clients are working data scientists who on a daily basis need to do models for a given application; it could be insurance, it could be stock market or finance, it could be digital advertising. The one thing in common is they want to do a model fast and they want to do a highly-accurate model. Such a model requires a lot of computing power, and that’s where the majority of our use cases are in,” he says.
There are many different kinds of machine learning algorithms, and some are more easy to parallelize than others, but most often the best and most desirable are the hardest to parallelize, notes Huang. He points to support vector machines (SVM), which are very robust and have good performance in terms of accuracy, but require a lot of computing power and are not easy to parallelize. “What we’re doing is taking one of the best algorithms out there and parallelizing it so it’s scalable and provides robust performance for data scientists,” he says.
The cloud poses its own challenges, though. There are cost and time considerations that go with moving data into and out of the cloud. The startup’s founder points out that data into Amazon is free; the cloud provider only charges for data out. On top of that, Yottamine doesn’t charge extra for their clients’ Amazon usage. The majority of users will use the Internet to upload their data to Amazon’s S3 storage system.
The models dictate the size of the data. Some are very compact, so getting them out of the cloud is not that expensive or time-consuming. But if someone had an enormous data set, they could use Amazon’s disk delivery system (aka sneakernet). However, the Yottamine reps do not anticipate many issues. “The data charges are small compared to the computational charges from an infrastructure cost standpoint,” observes Negris.
Regarding potential data concerns around security and privacy, the rep is quick to respond: “In our case, the data that’s actually being operated on – the data that’s being submitted to the SVM algorithm – is simply a binary matrix; it’s not a data set in any conventional sense. We stuff it into Hadoop, but it’s a binary matrix,” he says.
“Not only is it denatured, it goes beyond that. There’s a fundamental data transformation on the way to the cloud where what you’re handing up is a matrix of ones and zeros that has zero human-recognizable information or even machine-recognizable information, because the metadata is not necessary. Column heading information – race, zip code or age, for example – is not necessary to obtain the model. Somebody trying to get at the data would see a one in the first column, but wouldn’t know what that column was – there wouldn’t be a way to reverse engineer it.”
When it comes to Amazon EC2 instance types, Yottamine selects the virtual machine that best matches the problem size and the algorithm selected. The default for a linear algorithm that requires high CPU performance is the High-CPU Extra Large Instance. For nonlinear problems, which are more complex and require more memory even when the size of the problem is not very big, the company often employs Amazon’s High Memory Instance, specifically the High-Memory Quadruple Extra Large Instance.
Memory is key; in-memory computing achieves the biggest efficiencies. For the fastest possible configurations, Yottamine utilizes the EC2 High-I/O Instance which is backed by SSD for even more speed, but since this is still a newer instance type Amazon generally limits their use to two per user. The High-I/O Instance also includes 10 Gigabit Ethernet, so it’s a good fit for algorithms that rely on parallel programming models like MPI, where that high-speed interconnect counts most.
But speed isn’t always the ultimate priority for customers. Negris explains that it often depends on the vertical and the frequency at which the model is refreshed. The models used in credit card fraud detection do not refresh that often – perhaps on a quarterly basis. It’s a very rigid and well-established domain, and the information is well-defined. But the data coming from a click-stream could not be more opposite, so the Web advertising sector has high-turnover for model design. Thus they tend to be more speed-sensitive and less cost-sensitive.
As for likely competition, Negris divides potential challenges into two camps. He anticipates the most difficult market to crack will be current Oracle and SAS customers. These traditional software vendors offer an SVM algorithm as part of their portfolio. Yottamine, however, claims to offer a wider selection of predictive modeling software with six different SVM algorithms alone, which gives them the edge in some situations.
The other market penetration challenge comes from research algorithms that were initially built as part of an academic project, thesis or dissertation and were put into the open source stream, but Negris asserts that these aren’t very polished or industry-hardened since they were usually built for a single-purpose. They also require a certain amount of user expertise and experience.
Yottamine is hoping that its unique cloud-based approach and focus on performance, accuracy and easy of use will give its software the advantage over these conventional commercial and open source algorithms.