TensorFlow for Recommendation Engines and Customer Feedback Analysis

by Sophia TurolJune 28, 2017
Learn how TensorFlow and Google Cloud Machine Learning help to find and recommend products, as well as analyze customer feedback in e-commerce.

Finding the right product

According to Ram Ramanathan of Google, there are three key scenarios in e-commerce that can be improved with machine learning: finding products of interest, recommending relevant items, and analyzing customer feedback. This may be applied to a variety of industries, including retail, telco, etc.

At Google Cloud Next 2017 in San Francisco, Ram overviewed how TensorFlow and Google Cloud Machine Learning can help to implement these scenarios. The session also featured a demo of a recommendation engine built for a TV services provider, suggesting relevant programs.

Ram Ramanathan highlighted that the textual search becomes kind of out-of-date experience, as a user’s decision what to buy roots back to what he/she has seen on the web: fashion blogs, mood boards on Pinterest, etc. This way, textual search is hardly of any help when a user actually needs a search by image.

“Have you ever wondered how we can enable customers to search the most relevant and the right product at the right time, and how you can enable them to search easier than just doing the data textual query? Like, the people are more and more visual, how do we enable them to search better?” —Ram Ramanathan, Google

The technologies to aid one in enabling such a scenario, as well as numerous others, may be TensorFlow and Cloud Machine Learning services.

“We (Google) have cloud machine learning engine that helps you to really drive your machine learning both from a training perspective or prediction perspective. That’s targeted at data scientists and folks who want to really manage the machine learning life cycle from the end-to-end perspective.” —Ram Ramanathan, Google

Then, there is a bunch of APIs for image analysis, audio-to-text conversion, job hunting, dynamic translation, natural language processing, and video analysis in the cloud.

“So, these are APIs that are really focused around using Google models and Google infrastructure, and providing you with targeted solutions for scenarios.” —Ram Ramanathan

Optimization of a search engine is no new thing, but what can really help out is:

  • finding means to gather image metadata
  • finding popular logos to get product branding information
  • recognizing popular objects
  • finding ways to prevent product fraud

Cloud Vision API may be sufficient in processing image metadata to further deliver such functionality as search by color, for example. The recently developed Web Detection feature—underlying Google Image Search—can be employed to find fraud and popular items on the Internet. By crawling through billions of pages daily, the tool indexes the existing images to further find metadata about a particular image and feed it back. So, when a user feeds in an image, he/she gets back references to different pages containing it.

However, Ram stressed that Web Detection is not “an antidote to all problems.” The thing is that some users may label an image, let say, with a wrong tag—he exemplified a Stormtrooper helmet posted on a Pinterest board, which actually was used to drive a baby shower. Being a popular page with a lots of other pages linked to it, this Pinterest board got highly ranked by Google, and though it obviously features a Stormtrooper, it also contains “pregnancy” metadata.


Recommending relevant products

Ram then moved to a demo to illustrate how it all works in practice. He exemplified YouTube with over a billion hours of videos watched daily. What is the recommendation based upon? The related videos are suggested to a user based on his/her individual behavior and metadata.

“Not just the clickbait, meaning that if you watch a cat video—show more cat videos—but really focus on what’s relevant for this end user. And thinking about time to view and saying is this really a video you really want to look at? That’s a case of a content perspective.”
—Ram Ramanathan, Google

The point is this knowledge can be easily mapped onto the retail scenario. For instance, if someone bought something last year doesn’t necessarily mean he/she will do it this year again. So, here emerge multiple factors to take on board. These may include seasonality, social events driving user behavior (e.g., this year is the 20th anniversary of the first Harry Potter book published with numerous branded goods coming to sale), out of stock, etc.

Better product recommendations are enabled through:

  • history of user behaviour
  • current product metadata
  • organization dynamics
  • environmental factors

A common configuration to enable product recommendation with Google solutions (Source)

Following Ram on improving recommendations with TensorFlow, Rajiv Salimath of PwC presented how Google delivered a kiosk app to a large company providing subscription TV services in Mexico. The app provides real-time recommendations based on customer viewing habits, preferences, and budget.

The input data is driven when a user selects something to watch and is fed into a single-layered neural network—built and deployed on TensorFlow.

The challenge was in filtering what to recommend based on little data about a user. To address the issue, collaborative filtering was employed. Basically, it means that if you have all the users on an axis and all the TV shows/packages on the other axis, you get some data for a user or packages and some “holes” in a data matrix.

An architecture of the TV series recommendation app (Source)

The initial matrix in the particular case involved 20,000 users and 300 TV shows. However, soon it has grown to over two million users and around 20,000 data points, which poses a real computational pain. That was the reason for using TensorFlow to easily tweak the models and scale the data amount.


Understanding customer feedback

According to Ram Ramanathan, product reviews can be a great power behind customer decision making—submitted both on a product page or in social media. Analyzing sentiment is key to working out a better strategy. Being an online retailer, one has to understand what people are talking about your product, what alternative offers come to their minds, what the competitive advantages there are, etc.

In terms of understanding the product perception by customers, one has to find references to the product, analyze the reviews, and look for relevant follow-up items. The product reviews are by far a crucial thing to set your mind on. After digging social media for reviews, one may apply natural language processing to analyze what the rumor about the product is, concludes Ram.


Want details? Watch the video!


Further reading


About the experts

Ram Ramanathan leads the Machine Learning efforts for the Google Cloud Platform, focused on image and video analysis. Prior to Google, he led product management for BI products at GE Healthcare, as well as for Microsoft SQL Server at Microsoft.

Rajiv Salimath is an artificial intelligence and machine learning expert and consultant with PwC, who leads a team of researchers and engineers to bring AI/ML to the PwC products. He was the CEO of a semantic web search company Knewco, the leading broadband over powerlines company Amperion, and the dynamic pricing engine company Haggle. Rajiv is a fellow of the Melton Foundation, an Indian National Talent and Math Scholar, and has a degree in Electronics and Communication Engineering from Bangalore University.