What is Machine Learning as a Service?
With all of this news coming out about Cambridge Analytica (and how they have leveraged/weaponized data science for political purposes on a massive scale) I thought now was a good time to talk about how I see machine learning branching out into the mainstream behind the scenes.
I fully expect the list of MLaaS providers to grow. As of now there are over 150k results for “MLaaS providers” (without quotes). Amazon already has a whole section on machine learning on AWS with API-driven ML services. I fully expect there to be niche offerings for MLaaS eventually, which augment existing models with supplementary information. There is also a great comparison of existing providers which covers current feature sets.
MLaaS Call Monitoring for Quality Control
This could be a realtime monitoring service for callcenters to analyze an agent’s call looking for various features that could affect multiple models such as upselling, topic avoidance, or when preemptively transfering to a supervisor would yield a better outcome.
- Are Verizon users more frustrated than T-Mobile users?
- While the variable importance most likely won’t mean much in a predictive model, there may be fringe cases such as the caller’s likelihood of being upsold on a phone, or what script would most likely convert pay-as-you-go plans.
State or Region
This can affect a predictive model for obvious reasons. Not many people willing to buy a boat in Nebraska, the summer isn’t the best time to sell a heater to someone in Phoenix, etc.
- Detect subject matter in realtime
- Detect sentiment in realtime
- Bag of words and n-gram approaches to model susceptibility to suggestion and rebuttles that have shown to yield the best conversions for particular caller responses.
Audio Sampling on Key Questions / Answers / Topics
This is where I expect niche markets to really insert themselves
- Useful for knowing when to shift the conversation
- Scale strongly agree / disagree type questions with short answers based on inflections
MLaaS for Rental Providers
This is another area where smaller companies will possibly be taking advantage of machine learning as a service.
Physical Rentals Dispersion and Allocation
Local bike share companies could plan for what stations to restock on a given day by analyzing
- Day of the week
- Station location
Even looking at this simple visualization for the day of the week and station, you can easily determine the weekend affects the frequency of rides for some stations more than others.
Where I would expect another niche provider to come into play is through the use of social media abstractions. Not only could they look for…
- Social media frequency of mentions
- Social media sentiment
…but one could also look at indirect factors such as if the popularity for the city has increased due to an event such as the Super Bowl. Minneapolis received quite the bump on mentions during that time. The niche MLaaS provider could also compare any shifts for when the city was referenced from GPS coordinates outside of the rental company’s offerings.
Social media posts with negative sentiment could have the GPS flagged and the rental company could do a spot check at the location to make sure the docking station is in working order.
This is not something many small companies can do internally, but the information is valuable and the methodology could be abstracted away into a MLaaS tool making it worth the investment to a MLaaS provider.
This is what interests me the most. The possibility for growing tools that allow for generating those MLaaS abstractions necessary for the service to be used for multiple purposes.
Perhaps the best thing about NodeJS is how the community has embraced microservices. Doing one thing really well has made for some great scaffolding for projects without having to reinvent the wheel. This approach could be very useful to the future of MLaaS tooling. I suspect in NodeJS becomes adopted as an API endpoint there will be some heavy lifting done by R and Python in the background through websocket communication for any realtime telemetry.
Leveraging the simplicity of microservices, feature building can become easier when writing MLaaS tools. Imagine calling out to separate services to return feature data for machine learning without doing everything yourself and reinventing the wheel.
Posting that n-gram phrasetable or bag of words frequency table to a microservice which performs analyses on books (or other publications) and returns a table for the probability of the author’s age and the probability of the reader’s age to be used as features for your new MLaaS tool. That would be incredible…also not out of the realm of possibility.
I am thinking my next few posts should cover programming feature building for machine learning microservices. I have a feature building / machine learning post in the queue already.