GateCrashing Machine Learning without being Data Scientist or Math/Python Programming Nerd
Machine Learning has been the rage in the last few years. But every time I try to venture into Machine Learning, I get overwhelmed with the usage of complex terms like Machine Learning Models, Math equations like Statistics and Regression Models and Data Science etc. All this creates a mental barrier to explore the World of Machine Learning assuming that Machine Learning is only for nerds who have expert knowledge of Python and have a good grasp of advanced math concepts. But over the years, Machine Learning has become accessible and there are a lot of out-of-box services that are now readily available that can readily help to address certain use-cases.
Machine Learning Use-Cases
Some of the common use-cases where Machine Learning is widely used :
Recommendation Engine : Typically seen in eCommerce where product recommendations are done using Machine Learning.
Text Extraction Services: Extract text from a pdf, images etc
Sentiment Analysis: Given a string of text, services can predict whether the content is positive, neutral or negative.
Fraud Detection: Mostly in the financial world where transactions that seem out of the ordinary are flagged off for review through Machine Learning.
Voice and Translation services: Devices like Google Now, Alexa can use natural language algorithms to convert voice into text and take meaningful actions.
Machine Learning Services Stacks
Machine Learning can be widely distinguished by three wide different category of services. We can use an analogy to understand this better. Let us take the end goal of needing butter to use in a sandwich and try to think of different ways you can get butter and map it to the different Machine Learning services widely offered.
1. Machine Learning Framework and Infrastructure.
Analogy: Buy a cow and farm, rear the cow, get milk from the cow and make butter.
This is the most fundamental layer where Frameworks and Infrastructure are built. Machine Learning Frameworks like Tensor Flow and Pytorch are used and infrastructure is built and provisioned from the ground up. There is complete flexibility to control every single aspect of building Machine Learning for various use-cases. There is so much work involved here to build and manage Machine Learning at this layer.
2. Machine Learning Services
Analogy: Get the milk from the store and make butter.
Machine Learning Services are at a higher abstracted level where tools are readily available to build Machine Learning Models without the need of managing complex infrastructure, frameworks and tools. Though the flexibility is limited, it helps to make Machine Learning accessible. SageMaker from AWS is one such suite of tools and products that help to get started easily. Every major cloud provider has an equivalent Machine Learning offering which is at different stages of maturity.
3. AI Services
Analogy: Get the butter from the store directly
AI services are out-of-box readily available services that can be directly integrated into the application. This is the easiest and most accessible aspect of Machine Learning which most of us may end up using in real-life scenarios for common general-purpose use-cases. There are SDK and API readily available that can be used to deliver great experiences to customers without spending too much time exploring or building machine learning services from scratch. Again there is little to no flexibility, but this can help to get started into the world of Machine Learning if the problem statement and use-cases match.
Popular out-of-the-box AI services
Some of the popular AI services are Google Vision API that helps to detect objects in images and return the result with great accuracy. We may have already seen it in action with many of Google products like Google Photos, Google Lens etc.
In the AWS stack too, there are AI services available like Textract that helps to extract text from documents and images. Other services include Comprehend that can help with sentiment analysis, Lex for integrating rich conversational interfaces like Alexa, while Polly is a text to speech service and Rekognition helps you identify potentially unsafe or inappropriate content across both image and video assets.
All of these AI services are easier to integrate into existing web applications or mobile apps via SDK’s. Machine Learning is an amazing technology that is in search of relevant use-cases for problem-solving. Business Decision Makers and Product Managers need to understand these readily available AI services and see if they can be fit and help to address any business problem or help to drive efficiency. And once any of these services are integrated into the app, one can make broad claims that their products and solutions are AI-driven. While this statement may feel like an exaggeration, the reality is, it does not matter who trains and build these complex Machine Learning Models. As long as the application we build help to solve business problems leveraging these AI services, we can deem it as powered by AI.
Where to go from here?
If you are a Developer and want to learn more about Machine Learning, the Developer path would be a good way to get started in the AWS World.
I had a chance to watch this series on AWS Power Hour - Machine Learning and got to understand the various AI and ML services available in AWS. Content is spread across 6 episodes and is accessible for Developers. This can help to get started with the world of Machine Learning and then go down the rabbit hole of Machine Learning if this sounds exciting.
Once the power of Machine Learning using the AI services are leveraged and understood really well, the next step may be to look at building Machine Learning Models for a specific business problem domain and refine the models to better target products to customers or help to build and drive efficiency.