Work Lunch: Now selected for you by the Customer Genome

Chris Hawkins
5 min readApr 12, 2016

--

This is a story from Customer Genome research and development. The Accenture Customer Genome is now a powerful personalization platform we are rolling out in conjunction with our pilot clients, but this was not always the case. This tale comes from an early experiment undertaken during the development of the platform, and is mostly stolen from Chau’s blog over on LinkedIn.

At Accenture Labs the Digital Experiences research group meets weekly over lunch to discuss our progress and areas of collaboration between our separate streams. As with many workplace lunches, however, we are constantly plagued with the problem of what to order to make everyone happy.

From vegetarians to peanut allergies, there’s a diverse range of needs and tastes to cater for — while making sure we don’t lapse into the same old sandwiches week after week. There had to be a better way — so we turned to one of our own research projects, the Customer Genome, for a solution.

The Customer Genome crunches data from a number of different sources, but heavily uses past purchasing behavior as an indicator of future preferences. Rather than looking at each product individually, the Customer Genome decomposes each choice into components and over time it sees trends (such as “this customer always buys low fat products” or “this customer has a tendency towards tomatoes”).

This allows us to create a truly individualized profile of each of our customers — in this case our employees — and recommend products to them accordingly. Unlike other approaches, it emphasizes the individual rather than operating on segments or by finding similar customers.

Traditionally, the Customer Genome requires some kind of data at the outset. Since we didn’t have this seed data from our coworkers, we started with a survey, where we tried to get a starting point for people’s palate by having our coworkers answer a couple questions about what’s in their fridge and what they’ve bought recently. Due to an unhealthy love of puns, Yum-Me was born.

After collecting the seed data we ran an initial recommendation for each team member and tested it out. Due to the limited data from the survey, recommendations for week 1 were quite homogenous, but as the genome developed from the feedback we received (either “yes, I like my recommendation” or “no, I would prefer something else:”) it began to show the individual preferences of each of our colleagues.

Structuring our Input Data

We ran this experiment for 9 weeks, with a number of different local restaurants. As we did not have structured data for each of the restaurants menus, we instead used the Genome’s capability to ingest natural language data. Based on word frequencies and some other tricks, the Customer Genome extracts meaning from plain English text (we call this “Product DNA”) which is then combined with transaction data to build the Customer Genomes we needed. Each week, we picked a restaurant, then either typed up 10 random entrée descriptions from the restaurant’s menu or sourced these from the restaurants’ website.

There is no consistent digital repository for menus. This made it difficult to automate the process of getting menu data, however we did find that Google has already extracted menus for some restaurants in their search results, which was handy when available.

Learnings

We learnt a lot about the challenges our Customer Genome clients might face in the real world from this experiment, and used it as a simple example to start thinking about how we could improve the system:

  1. There is no standard menu format. Each type of restaurant (Quick Service, Fast Casual, family dining, fine dining…) formatted menus differently. Chau found this explanation of the thinking behind each menu type interesting from a paper on menu design:
    Menu engineer and consultant Gregg Rapp classified diners into four categories: entree, recipe, barbecue and dessert. According to Rapp, “entree diners only want basic information about what the dish is and how much it is, with no detailed descriptions needed. Recipe diners ask questions about ingredients and want to know as much as possible. 10 Barbecue diners like to share food and chat with servers with nametags. Dessert diners are people who order trendy things.”
  2. Not every word is equal. We needed to rethink how the Customer Genome weighted each word to make recommendations. If a word appeared multiple times, it bubbled to the top of your recommendation, sometimes without merit. Although it was unfeasible to have the dataset micromanaged with the time we had available, we found there were macro level rules we could put in place that took advantage of some domain specific knowledge to improve our Genome generation and recommendations.
  3. Allergies are not preferences: we have coworkers with serious allergies so in many cases we completely avoided restaurants with (for example) peanuts. Not enough restaurants clearly state that their food is safe for those with peanut allergies. This got us thinking about how the Customer Genome could interpret “no peanuts” or lack of peanut in a menu list of ingredients too. However, if you don’t like garlic dishes but don’t mind if there is garlic garnish, we needed to not limit your options by removing a dish completely.
  4. It’s all relative. An adjective like “spicy” at a burger place could mean something completely different at a Thai restaurant. This was challenging to include in our analytics because it meant we had to change our dictionary for each cuisine. Fortunately this was something we had in mind when originally designing the Genome, which included provisions to treat products slightly differently when they came from different categories while still preserving common meanings between them.
  5. We also had to make sure people weren’t getting the same recommendations to the same restaurant. Although new data was fed into the customer genome with each lunch, we had to tweak the algorithm to be sure recommendations were varied.

The feedback was generally positive. We found that people liked an educated guess by a program. Most of the time people accepted their recommendation or if they didn’t, they said, “I’ll try that next time, but today I feel like something more saucy.” The task of deciding on a dish is taxing enough that when a program is close, most think it’s worthwhile to just go with it. If a restaurant offered this kind of service, we would hear them out. After all, many of us ask the waiter for a recommendation; now, what if the waiter was also your best friend?

Imagine that while I go get lunch.

Recently we reimagined the restaurant experience based on Intel’s IoT Sensor Platform and the Customer Genome. Check out a video of our Connected Restaurant demo here.

--

--

Chris Hawkins

Engineering Manager at Meta . Australian in NYC, by way of Melbourne and San Francisco. Fan of brunch. Views are my own. He/him.