You are viewing content from a past/completed QCon

Presentation: Artwork Personalization @Netflix

Track: Modern CS in the Real World

Location: Pacific LMNO

Duration: 10:35am - 11:25am

Day of week: Monday

Level: Intermediate

Persona: Architect, Data Engineering, ML Engineer

Share this on:

What You’ll Learn

  1. Understand how Netflix leverages machine learning to make recommendations and choose personalized artwork for those recommendations.

  2. Learn how a continuous feedback loop is used to get data, process it, and update recommendations.

  3. Hear how Netflix architected and designed their artwork personalization solution.


Abstract

For many years, the main goal of the Netflix personalized recommendation system has been to get the right titles in front each of our members at the right time. With a catalog spanning thousands of titles and a diverse member base spanning over a hundred million accounts, recommending the titles that are just right for each member is crucial. But the job of recommendation does not end there. Why should you care about any particular title we recommend? What can we say about a new and unfamiliar title that will pique your interest? How do we convince you that a title is worth watching? Answering these questions is critical in helping our members discover great content, especially for unfamiliar titles. One way to do this is to consider the artwork or imagery we use to visually portray each title. If the artwork representing a title captures something compelling to you, then it acts as a gateway into that title and gives you some visual “evidence” for why the title might be good for you. Selecting good artwork is important because it may be the first time a member becomes aware of a title (and sometimes the only time), so it must speak to them in a meaningful way. In this talk, we will present an approach for personalizing the artwork we show for each title on the Netflix homepage. We will look at how to frame this as a machine learning problem using contextual multi-armed bandits in a recommendation system setting. We will also describe the algorithmic and system challenges involved in getting this type of approach for artwork personalization to succeed at Netflix scale. Finally, we will discuss some of the future opportunities that we see to expand and improve upon this approach.

Question: 

What work do you do at Netflix?

Answer: 

I lead one of the Machine Learning and Recommendation teams at Netflix. We're responsible for the end-to-end machine learning that decides what shows up on the Netflix homepage across all our different experiences. When you log into Netflix, my team is responsible for what rows of TV shows and movies you see on the homepage. We select rows and titles to help our members quickly find something great to watch. For example, whether you see Popular on Netflix or Continue Watching at the top of your homepage. We also work on algorithms to personalize the imagery that we display for each title across the experience.

Question: 

One-third of all Internet traffic at prime-time in North America flows through Netflix systems. How do you measure scale and volume for the amount of recommendations you’re making?

Answer: 

There are over 130 million Netflix subscribers and each home page has many different recommendations on it. Over 80% of what people watch comes from our recommendation systems. Each time you log in, you're typically seeing something new. So we’re serving up a huge number of recommendations to people on a regular basis.

Question: 

Your talk is Artwork Personalization at Netflix. What’s the purpose, the motivation, and the scope of your talk?

Answer: 

Our personalization don't end with selecting what title we want to show to the member.  Each section of the screen is a precious piece of real estate so we want to ensure the member understands why this particular title is being shown to them, especially for a new original series or movies that we create. A great new title may only have one chance to really resonate with somebody, so we want to give it the best opportunity to make the connection with them.

To do this, we select the imagery based on the person’s viewing habits. For example, if we take a romantic comedy, maybe you've watched a lot of comedies so we show you a funny image from that movie. If another person watches more romances we may use an image of a couple from the movie on a date. It’s about helping a member understand what's in it for them by presenting the most appropriate imagery we have. This helps them find and enjoy that film.

Question: 

Who is your target audience?

Answer: 

The target audience for the talk is people who have some background or are interested in machine learning. They should know some basic machine learning but would like to learn more about how to use bandits and contextual bandits. Bandits add new technical challenges by having to close a feedback loop. It's not just a classification or regression problem. You're actually putting something out there and then needing to pull the data back. Once it comes back, you then update your models and put them out again. It’s a continuous loop of improvement. So it’s an interesting application of machine learning that should be of useful to people facing similar challenges.

Question: 

What technology problem keeps you up at night?

Answer: 

Making sure that when we're recommending titles we're actually showing the ones people want to watch and will enjoy. We know that when we show titles on the homepage, people are likely to click on them and watch them because they're ranked highly. But we want to make sure that our recommendations showcase the best way for people to spend their time on Netflix. We don’t want our recommendations to be influenced by feedback loops just due to us ranking them highly in the past because it may mean we don’t end up surfacing the content that people will enjoy the most.

Speaker: Justin Basilico

Machine Learning Research/Engineering Director @Netflix

Justin Basilico is a Research/Engineering Director for Page Algorithms Engineering at Netflix. He leads an applied research team focused on developing the next generation of algorithms used to generate the Netflix homepage through machine learning, recommender systems, and large-scale software engineering. Prior to Netflix, he worked on machine learning in the Cognitive Systems group at Sandia National Laboratories. He has an MS in Computer Science from Brown University and a BA in Computer Science from Pomona College.

Find Justin Basilico at

Proposed Tracks

  • Human Systems: Hacking the Org

    Power of leadership, Engineering Metrics and strategies for shaping the org for velocity.

  • Building High-Performing Teams

    Building, maintaining, and growing a team balanced for skills and aptitudes. Constraint theory, systems thinking, lean, hiring/firing and performance improvement

  • Software Defined Infrastructure: Kubernetes, Service Meshes & Beyond

    Deploying, scaling and managing your services is undifferentiated heavy lifting. Hear stories, learn techniques and dive deep into what it means to code your infrastructure.

  • Practices of DevOps & Lean Thinking

    Practical approaches using DevOps and a lean approach to delivering software.

  • Operationalizing Microservices: Design, Deliver, Operate

    What's the last mile for deploying your service? Learn techniques from the world's most innovative shops on managing and operating Microservices at scale.

  • Developer Experience: Level up your Engineering Effectiveness

    Improving the end to end developer experience - design, dev, test, deploy and operate/understand.

  • Architectures You've Always Wondered About

    Next-gen architectures from the most admired companies in software, such as Netflix, Google, Facebook, Twitter, & more

  • Machine Learning without a PhD

    AI/ML is more approachable than ever. Discover how deep learning and ML is being used in practice. Topics include: TensorFlow, TPUs, Keras, PyTorch & more. No PhD required.

  • Production Readiness: Building Resilient Systems

    Making systems resilient involves people and tech. Learn about strategies being used from chaos testing to distributed systems clustering.

  • Building Predictive Data Pipelines

    From personalized news feeds to engaging experiences that forecast demand: learn how innovators are building predictive systems in modern application development.

  • Modern Languages: The Right Language for the Job

    We're polyglot developers. Learn languages that excel at very specific tasks and remove undifferentiated heavy lifting at the language level.

  • Delivering on the Promise of Containers

    Runtime containers, libraries and services that power microservices.

  • Evolving Java & the JVM

    6 month cadence, cloud-native deployments, scale, Graal, Kotlin, and beyond. Learn how the role of Java and the JVM is evolving.

  • Trust, Safety & Security

    Privacy, confidentiality, safety and security: learning from the frontlines.

  • Beyond the Web: What’s Next for JavaScript

    JavaScript is the language of the web. Latest practices for JavaScript development in and out of the browser topics: react, serverless, npm, performance, & less traditional interfaces.

  • Modern Operating Systems

    Applied, practical & real-world deep-dive into industry adoption of OS, containers and virtualization, including Linux on.

  • Optimizing You: Human Skills for Individuals

    Better teams start with a better self. Learn practical skills for IC.

  • Modern CS in the Real World

    Thoughts pushing software forward, including consensus, CRDT's, formal methods & probabilistic programming.