Ocado is building a computer vision system that could replace barcode scanning in its warehouses.
The machine learning project is in its initial development stages but Daniel Nelson, head of data at Ocado's technology division, said there could be numerous benefits both within its warehouse and delivery processes, as well as for customers.
"At the minute, a picker is standing at a station and they go and pick a product, and then in order to verify that they have given the customer the right product they have to scan it," he said. "That has a barcode, I need to get it in that position to scan it."
"It could be about making picking quicker, it cold be about making it more accurate," he said. "It could be about optimising it and using robots in certain places."
Image recognition could also allow customers to add products to shopping lists by taking a photo.
"For you as a shopper, there might be an application for how you can add a product [to an order]," he explained.
"The barcode is a very good way of uniquely identifying something, but that is only one thing. If I want to, say, add an apple to my order, I could then take a photo of the apple and we could recognise that it was a granny smith."
He added: "The image piece will be really powerful to us. We have a lot of work going on in robotics in that sort of area which could benefit."
Key to this project is Google's open source TensorFlow machine learning library. Unlike Google's cloud APIs, which are built using publicly available data - for example, vision recognition of a dog is created by scanning the internet for 'dog' images - TensorFlow allows a company to use internal data to train machine learning algorithms.
This is important for Ocado because, although it sells branded products, it also has its own range of goods, meaning the data is not available anywhere else.
"We are in the process of capturing the various images of products in-flight through the warehouse," Nelson said. "That is the training set that we need to be able to go forward and start building the models on top of it."
It is a similar approach to the AI customer email system the company announced earlier this week. Ocado is using Google's NLP [natural language processing] API and TensorFlow library to read and automatically categorise thousands of customer emails dealt with by contact centre staff each day.
The tools provide separate functions. Google's NLP API recognises email text, before running the information through TensorFlow to determine the importance of an email and which department should deal with it.
Ocado data scientists created the system by feeding vast numbers of customer correspondence into TensorFlow - information that it could not get anywhere else.
"What we did was take a 3 million email data set, spanning back about three or four years and essentially ran those all through the model to train it in how our customers communicate with us," Nelson said.
The success of the project has convinced the company to use artificial intelligence more widely across its organisation.
"This is really early days but the work with natural language has given us the confidence and the knowledge of how to operate with TensorFlow," said Nelson.
"Cloud ML coming along as well gives us the ability to deal with much more complicated computational problems. Images are definitely more complicated than text and therefore we need that kind of computational power."
In future, Nelson said that Ocado could use machine learning for fraud detection and to predict demand for its products and services.
"We are very interested in what influences the way that people buy products from us," he said. "At the moment we have linear regression models that allow us to do that, but obviously they are constrained by the variables that we put into them.
"What we want is a system that can basically learn when a new variable becomes important."
This could help as the company sells its Smart Platform - a service to provide other retailers, such as Morrisons, with access to its proprietary technology - to customers internationally.