Platter: HelloFresh’s Embeddings Platform

Cooper Oelrichs
HelloTech
Published in
4 min readJan 14, 2024

--

An Introduction to Platter, HelloFresh’s embeddings platform, and how Platter improves our recommendation engines.

Abstract

At HelloFresh we have many machine learning systems that need to understand our products (i.e. meal kits or ready to eat meals) and our customers’ taste preferences. These systems rely on features of our products and customers. To speed up model prototyping, model deployment, and improve model performance we developed Platter, a platform that provides learnt product and customer embeddings.

Introduction

HelloFresh delivers over 1 billion meals a year to customers in 18 countries. HelloFresh constantly develops new products, puts them on the menu, and ships them to customers. This process involves many machine learning systems which need to understand our products and customers and how they interact. These models must support different brands with different types of products, many languages, local recipes and ingredients, and a wide variety of customer preferences.

Countries where HelloFresh Operates and HelloFresh Distribution Centres

To support the development and production of these models HelloFresh has developed Platter, which provides same-space product and customer embeddings, allowing models to be naive to market specific data and features. These Embeddings are created using the best product and customer feature data available in each country and brand.

Examples of Local HelloFresh Meals from Australia and Sweden

How Platter Works

Same-space Customer & Product Embeddings

Platter generates customer and product embeddings in the product embeddings space. This means that the customer embeddings describe the customers preferences for our products. This allows users to directly compare products to products, customers to customers, and customers and products.

Product embeddings

Product embeddings are learnt from a graph containing product and product metadata nodes. Products are linked by the metadata nodes. Embeddings can be generated for individual products or metadata.

Customer embeddings

Customer embeddings are generated using the product embeddings and data on how customers interact with our products. As customers order products or interact with them on the website the customer embeddings are updated.

Evaluation Suite

Platter is designed to support multiple use cases, so we’ve developed a suite of evaluation tasks which are used to evaluate model changes and monitor performance over time. The suite includes general tasks that test how well embeddings perform overall and use case specific tasks that are designed with Platter’s users.

An example supervised evaluation task

ETL

Platter’s ETL is designed to make the product graphs and embeddings generation processes independent from the data sources Platter relies on. The ETL must standardize data across HelloFresh’s different brands, product types (such as meal kits or ready-to-eat meals), and languages.

An Example of What Platter Enables — Recommendations at HelloFresh

Personalisation is Platter’s main use case. HelloFresh uses machine learning to either consider customer preferences and feedback or directly personalize different parts of the customer experience, from emails and push notifications, to the website and ordering experience, to how our products are developed and improved. Platter is used by several of these models, allowing them to understand HelloFresh’s customers and products independently of the market, brand, and language they’re being deployed to. For more info on one of our recommendation engine see this: Intro to HelloFresh’s menu page recommendation engine.

The Future of Platter

Platter’s Product and Customer Embeddings are our first step on building a complete Embeddings platform. This year we’re planning to research and test alternative approaches for creating embeddings, improving HelloFresh’s recommendations, and new ways embeddings can be used.

Enabling Other Use Cases

We plan to enable Machine Learning use cases beyond the Product and Customer Taste Preferences space. We’ll do this by developing embeddings for other entities. Some spaces we want to explore include embeddings for customer’s interaction with the website beyond product ordering, Customer embeddings that understand more than their product preferences, and embeddings for use as inputs for Gen AI models and use cases HelloFresh is exploring.

Embeddings Improvements

We’re going to continue researching and testing new approaches for learning embeddings. Research so far has focused on monopartite (products) and bipartite (products and customers) graphs. This work will continue and there are many other techniques for representation learning we want to explore.

--

--