How we are enabling OSP for the Machine Learning revolution
In an age where data is knowledge and knowledge is power, knowing how to manipulate and make use of that data in the most effective way possible is crucial to progressing your business. To this end, Ocado Technology decided to create the Ocado Smart Platform (OSP) Machine Learning Services (MLS) team, with the goal of evangelising and enabling machine learning techniques within the platform and providing ‘machine intelligence for all’.
Other than the fact that OSP MLS is quite a mouthful, we had many challenges ahead of us. Most notably perhaps, making sure our processes lead to the increased scalability and efficiency of OSP, and that we could communicate our mission to fully align with the rest of the business.
The purpose of this blog is, firstly, to detail the journey so far from my point of view as a Product Owner, and secondly to attempt to demystify machine learning and dismiss its reputation as a black box technology.
Deciding on an organisational model.
My first piece of advice when building an ML team would be to draw from the learnings of others before designing your own. My approach with the MLS team was to capitalise on the lessons learnt by the Ocado Technology data science teams, who have tried various organisational models and ways of working over time.
Our long-term plan is that data scientists and ML specialists will be enrolled and embedded within areas of OSP. This will enable them to become experts in their OSP domain, which in turn will allow them to identify and exploit ML opportunities as they arise.
For the short to medium term, we’ve adopted a flexible and multi-tier model and focus on the following areas:
The core responsibilities of a data analyst are to identify and track trends. Using visualisations and tailored reports they can assist the product teams in interpreting and decision making. They should be the domain knowledge specialists and act as a bridge between MLS and the rest of the business.
Data and machine learning engineers
Something I have learned from elsewhere in the business is that you need ML engineers to create the platform, tools and processes to enable ML. Hence, our view is that the MLS team is a 50/50 split consisting of ML specialists and ML engineers.
Data scientists and machine learning specialists
Of course we need these guys and gals! They are responsible for training the mathematical models that will allow them to better identify patterns and derive accurate predictions. Like my role as a product owner, a data scientist must have strong business acumen, coupled with the ability to effectively communicate findings in a way that can influence how an organisation approaches a business challenge.
I am a strong advocate that we need to be able to identify opportunities to reduce, or, better yet, solve problems before our retail partners shift from launch into growth and maturity phases. Therefore, over the next six months we will be working to employ individuals in all three of these disciplines within OSP.
A few ML Specialists cannot be responsible for every element of machine learning within OSP. To scale and deliver, we’ve created this three tier model:
Tier 1: Baseline OSP Feature - Delivering the OSP roadmap and ensuring we can launch our OSP clients with the features they need to operate effectively.
Tier 2: Heuristic Features - All OSP teams build smart products. Smart may be: starting with heuristic techniques, repurposing what we have already implemented in Ocado or a ML solution. For the MLS team, it would also involve training OSP teams on how to build smart products with ML and continuing to develop a simple self services ML platform that OSP teams can use.
Tier 3: ML Features - MLS acts as a mentor and consultant within OSP, while also continuing to work on complex OSP machine learning problems.
ML projects can be lengthy and resource costly, but experimentation is critical to success. It therefore makes sense to apply the same need to experiment, to building ML in OSP. So far I have trialled the concept of an assignment where an OSP team member worked within the MLS team on a specific ML project. This experiment was very successful, and once the project was over, the OSP team member returned to their original team with a greater knowledge of implementing ML models, which they could then share with others. I am also considering placing an MLS team member within an OSP development team to deliver a specific ML project..
As mentioned at the start of this post, the Ocado Technology Data Science team has tried various organisational models and ways of working over time. One thing we have established is that the right model is very much dependent on the knowledge of ML within the organisation and the maturity of your business.
We are still early on in the process, but are looking forward to seeing how the MLS department evolves over time. Hopefully our experience will be of use to those of you trying to start your own machine learning departments.