Brief results of the collaboration:
The company is one of the world’s leading food and beverage producers. Operating in 190+ countries, the goods portfolio features 2,000+ brands. Ice cream is among the most popular customer’s products with eight major labels and hundreds of flavors sold in branded freezers.
The customer wanted to develop an image-recognition prototype addressing two major business needs:
The goal was to aid merchandisers in checking the state of freezers, while notifying responsible parties in case the quantity of ice cream is insufficient. Focusing on optimizing its routine retail operations, the company turned to Altoros for assistance.
The team at Altoros had to address the following challenges:
The system was developed using Altoros’s IoT prototyping platform, which was easily customized for the company’s needs. Its reusable components (NodeRED-based flow designer, time-series data store, and a monitoring module) allowed for quickly delivering necessary functionality. In accordance with the 12-factor approach, the prototype was designed as a microservices architecture—to introduce updates to each service independently, to utilize different languages (Java, Python, JS, etc.), and more.
To guarantee high precision of image recognition, engineers at Altoros tried out 10+ artificial intelligence models and 20+ machine learning algorithms. To better recognize which brand is depicted, our developers designed a custom algorithm that split the photo of a freezer into a number of segments—each containing an image of a single ice cream. To further classify the products into brands, data scientists at Altoros utilized the Inception v3 model. The combined approach allowed for achieving 95% of precision.
The model training—based on TensorFlow—involved a data set of 1,500 images created by Altoros specifically for the purpose.
To provision high performance of training, our engineers employed Intel’s Streaming SIMD Extensions 2 over Amazon’s c4.large instances. These extensions helped to perform operations over arrays of values—instead of single values—thus, boosting performance by 5x.
By enabling classification of ice cream images in parallel, experts at Altoros optimized the time needed to identify an exact ice cream item: from 7 minutes to 40 seconds. Our team also evaluated how incorporating TensorFlow processing units (TPU) can further accelerate performance.
To demonstrate and test the prototype operations, engineers at Altoros designed a simulator that imitated the solution’s workflow in production.
Collaborating with Altoros, the customer implemented a successful proof-of-concept (PoC), verifying how machine learning can help to automate retail supply chain. The pilot version of the prototype was delivered in 40 hours, recognizing ice creams within a freezer with the precision rate of 95%.
Relying on the PoC, the customer is building a system that will gather information across California local stores in real time. The flexibility of the AI model enables to easily retrain it to recognize new assortment—such as new ice cream items or any other goods. It is expected to save merchandizers hours per day on checking ice cream availability.
Altoros’s IoT prototyping platform
TensorFlow, Jenkins CI, Docker, Node.js
AWS S3, InfluxDB, PostgreSQL, Redis