How Taboola leverages machine learning to deliver billions of personalized content recommendations

Written by Joyce Famakinwa
Published on Aug. 31, 2018
How Taboola leverages machine learning to deliver billions of personalized content recommendations
Brand Studio Logo
Gil Chamiel, Taboola’s director of data science and algorithm engineering
photo via Taboola

In an increasingly connected and content-driven age, it can be a challenge for companies and brands to grab and retain the attention of the masses. At Taboola, the team is working to solve this challenge for their customers via their content discovery platform — and doing so in a way that keeps users top of mind.

The platform provides brands with the opportunity to push video and content in the form of native advertising to 350 billion users on media sites such as those of NBC and USA Today — all while using machine learning to deliver personalized content recommendations. 

We recently caught up with Gil Chamiel, Taboola’s director of data science and algorithm engineering, to learn more about the work of his team.

 

Describe your role at Taboola. What is your day-to-day experience?

I lead the algorithms group, my group is responsible for all algorithmic and machine learning aspects of the Taboola discovery platform, including its organic recirculation, sponsored content, editorial content and other products.

As a manager of various teams, my work differs from one day to the next. I spend a lot of time with my team leaders in order to mentor and coach them and to assist in their technical, managerial and hiring decisions. I also spend some time with the product and business teams in order to understand their needs and how they perceive the way the algorithm behaves.

Finally, I try to make myself more thoroughly involved in one or two efforts in the group where I help lead the technical aspects of the algorithm and sometimes dive even deeper — running analysis and writing a bit of code.

 

What is the most interesting tech challenge your team is currently facing?

A bit more than a year ago, we launched the Taboola Feed, which brings a more dynamic and rich user experience to publishers’ websites. An interesting challenge here is how to personalize the feed layout, look and the order of cards to the individual user. That requires understanding users’ preferences in terms of their interaction with the feed, their browsing behavior on the web and their feed activity.

A second challenge — which is extremely interesting — is building a personalized news feed for Android manufacturers and mobile carriers. This means creating a news feed of the most important stories from Taboola publishers as if an editor had picked those stories and then making that news feed personalized for users.

 

Which technologies do your team use to get your job done?

We base our algorithmic solutions on deep neural networks (deep learning) technology. Deep learning is great in taking raw data (like text, image and video) as input and automatically extracting features from that data using a neural network. Since people mainly interact with text, images and videos on the web, this is very relevant to us.

Our algorithmic work is mainly focused on finding the best neural network architecture which yields the best performance. Also, deep learning is great in finding complex relations. Since, essentially, our work is to find content which best matches users' interests, it works well from that aspect as well.

To implement this, we use TensorFlow, an open-source deep learning platform, for designing and training our networks and "TensorFlow Serving" for providing predictions at scale. We code most of our algorithms in Python and use Java for our services. We also use a variety of big data infrastructures, mostly JVM-based, including Spark, Kafka, Cassandra, HDFS and more.

 

What role does data science play in driving the business forward? How do you ensure your team stays on the cutting edge?

Data science, algorithms and machine learning play a major role in driving Taboola's business success simply because it makes the most crucial decisions, that is, which recommendations to provide to which users and in which context.

We run a weekly knowledge share session, in which one team member reviews an interesting algorithm or technology they read about or experienced to ensure that we have a constant stream of information flowing into the group.

We also spend quite a lot of time sharing our own experiences and insights with the machine learning community by attending conferences and meetups and publishing blog posts and papers. That creates a lot of networking opportunities and brings innovative ideas into the group.

 

I believe that technical goals or productivity exist when culture is healthy. "

Tell us about a project the team produced under your leadership that you’re proud of.

I am extremely proud of the project for moving our personalization algorithm from classical machine learning to deep learning. Up to that point, we used a logistic regression-based algorithm, which performed well but we believed we could get even better results via deep learning.

What makes me proud is the fact that the people who didn't code that effort directly, continued to push the existing algorithm forward, introducing new features and gaining both results and experience, knowing that the replacement for the system was on its way. That allowed us to graduate to a far more sophisticated platform while preserving good progression in bringing value to the business.

 

 

How would you describe your leadership style? How do you balance team culture with the technical goals of your team?

I believe that technical goals or productivity exist when culture is healthy. That means encouraging people to take end-to-end ownership, making the project they work on their own and helping each other. Setting clear goals for the team is a big driver for success.

When it comes to leadership style, I like to think of the work as mentorship. Simply put, I would say that leadership is all about finding the right balance between being encouraging, when good progress is made, being empathetic and containing difficult situations and being challenging when the need arises.

I'm also a big believer in leading by example. This means taking on PagerDuty shifts, brainstorming with the team and sharing in their excitement for projects. them.  

 

What are the top three qualities you look for when looking to hire new additions to the team?

The far most important elements we look for are personality aspects. The great culture in the group and the Taboola R&D is very close to our hearts and we do not compromise on that. So we look for people who are good team players, who like to keep an open mind and know how to challenge and be challenged in an honest and non-judgmental manner.

Also, we find that what makes people succeed in Taboola is a real passion for solving complex problems in an iterative and intelligent way.

Hiring Now
Ampersand
AdTech • Big Data • Machine Learning • Sales • Analytics