03 Jan Amazon SageMaker – First Thoughts
Inasight – pioneers in machine learning!
One of our primary reasons for attending AWS Reinvent this year was that we’d been recognised as ‘pioneers in ML‘ and invited to the first full days training event on Amazon’s new suite of AI goodies along with selected other partners from across the globe. As mentioned in my last blog, SageMaker and the other AI announcements including Comprehend, Transcribe, Translate and Rekognition Video were some of the main headline grabbing announcements of the week, so the opportunity to get hands on with these at their release and meet the teams responsible was pretty cool.
The fact that this was released GA and not in public preview highlights the backing and belief that AWS themselves have in this product. In support of this, there’s also a very clear mantra and purpose behind SageMaker.
“A managed service that provides the quickest and easiest way for your data scientists and developers to get ML models from idea to production.”
Democratisation of ML
In my last post, I talked about the democratisation of data and my take on SageMaker is that it’s applying that democratisation theme to Machine Learning. If we consider the key barriers to ML for many organisations being:
- the installation, setup and configuration of environments
- access to cost-effective processing power
- and of course the lack of data science skills
…we see SageMaker making strides to address all three points, attempting to simplify the entire ML development lifecycle from environment setup through to discovery, model training and deployment.
I’ve personally spent a lot of time setting up environments to run Jupyter, installing and configuring the specific versions of libraries needed. Most of all, given that most of our engagements utilise Cloud, ensuring the various layers of security are all addressed is critical. Indeed it’s all of this that resulted in us investing and building our very own Rapid Analytics and Machine learning Platform (RAMP). So being able to spin up a Jupyter Notebook instance in minutes, pre-configured with 10 custom algorithms (including XGBoost, K-Means and PCA), means it’s a tick in the SageMaker box here.
Being a PaaS offering, SageMaker operates on a pay-as-you-use model offering very cost effective pricing, especially when you consider features such as automated CPU/GPU switching for intensive algorithms. An example pricing estimate on the AWS website comes in at ~$7 for a weeks ML development and deployment! I’m not sure how achievable this is in reality but it’s certainly cost effective, and another box ticked.
As we hear time and time again, data scientists are like unicorns (rare, not equine!). Whilst SageMaker isn’t going to solve the skills shortage, it’s clear that by massively simplifying the setup and configuration of an ML platform, and making ML more accessible, it helps empower analysts and developers alike, relieving the burden a little on your precious data scientists. So it’s a tick here too.
SageMaker – a one-stop shop for your organisations’ Machine Learning needs?
For the discovery and experimentation phases of a project, being able to spin up a SageMaker notebook instance in a couple of clicks and having a Jupyter Notebook environment ready to rock ‘n’ roll is really powerful and aligns perfectly to the way we operate at Inasight. In a new customer engagement where we’re keen to quickly and cost effectively prove both the value in customer’s data and the services we offer, then SageMaker is another welcome addition to our toolbox.
There’s two other SageMaker features I was really impressed by and I’m looking forward to seeing how these gear up on customer engagement.
When it comes to training a model, I find there’s a constant battle balancing data volume and time, trying to achieve a balance that lets me iterate efficiently whilst generating a model that’s fit for purpose. The ability to utilise SageMaker’s scale out architecture to meet demanding ML training needs is another bonus.
Automated API Inferences
Once a model has been trained, the other neat feature is the ease with which an inferences can be made. SageMaker will create the API wrapper for your trained model, creating an endpoint that can be easily consumed and integrated with your line of business apps. The ability to deploy multiple models into production and therefore test a new version of a model whilst consumers of the previous version carry on unaware is again pretty cool.
It’s not perfect of course. For example, versioning of models is something AWS recognise as an area there’ll be looking on in the future. But I certainly recommend you take a look and have a play yourself as without doubt there’s lots to be excited about and I’ve only scratched the surface in this post.
Wishing you all a Happy New Year from the Inasight team.