Machine Learning in the Supply-Side Platform
PubNative’s Lead Product Manager Alexander Savelyev recently took to the stage at Hybrid Conf’18 in Moscow to discuss the practical applications of artificial intelligence (AI) and machine learning (ML) technologies at PubNative. Speaking from a product perspective, Alexander outlined the daily challenges faced and how they are overcome by the use of innovative and advanced technologies which allow continuous improvement of PubNative’s products. However, ML technologies should be applied only where necessary and applicable to solve the problem if no other solution is fitting. The issues should be properly understood and accessed before turning to such technologies.
The Advertising Technology Landscape
The advertising technology landscape has two poles; publishers and advertisers. Demand-side platforms (DSPs) work closely with advertisers to optimize traffic performance and work towards meeting their needs. Supply-Side Platforms (SSPs) on the other hand work closely with publishers to meet their needs and maximize their potential revenue. In the middle of this landscape are ad exchanges that connect SSPs and DSPs. There are many SSPs & DSPs in the market, each with its own unique value proposition, niche, advantages, and focus points.
What Makes PubNative Stand Out as an SSP Within This Landscape?
Key differentiators of PubNative are that we started as an exclusively native API-based mobile SSP in 2014 which quickly expanded into an ultimate monetization suite for publishers. We’re running programmatic trading only and heavily relying on our own programmatic exchange and ad server (the proprietary technology is built 100% in-house).
Having our own tech stack allows us to be more flexible and to answer publishers’ and demand partners’ needs faster. We are highly focused on analytics and intelligence layers across our platform which is built in a way to make data-driven decisions and produce data-based output by design.
Our vision is to build monetization technologies to empower publishers to maximize ad revenue without compromising on user experience, or what we call ‘democratizing advertising technologies for publishers’. Not only is flawless support required in order to be able to do so successfully, but also solving problems more efficiently and meeting the real needs of users.
So, What Are Our Day to Day Challenges?
At PubNative, our technology needs to make more than 200 thousand decisions per second, so machine learning is applied to improve the efficiency of these decisions. Our data pipeline is built with Spark and we use Spark ML for the ease of preparing the data to feed into models. It is a convenient choice since there is no need to have an additional level of ‘glue’. We use XGBoost models for traditional machine learning and TensorFlow models for deep learning.
With such a huge scale, an improvement of 1% in any job can significantly increase the performance. When SSPs work in the exchange bidding environment, we need to optimize the win rate to increase revenue for the publishers and compete against other SSPs. For optimization, we use Random Forest model and the problem is split into two tasks; prediction and selection.
Effective Cost Management
A significant amount of our monthly bill is data transfer so we need to optimize outgoing ad requests in order to be economically profitable. Another model that assists us is Contextual Multi-Armed Bandit, which is typically used for problems when you have to choose options among several with different probabilities on one hand while keep measuring the probabilities on all options on the other.
Prevent Mobile Ad Fraud and Ads Quality Control
We strive to build the cleanest & most transparent programmatic ad exchange both on the supply-side as well as in terms of the ad creatives that are being served to 600 million users. Open NSFW models from Yahoo (under a classification of deep neural network CAffeee models) technologies are used here to flag inappropriate creatives.
Explore New Technologies and Contribute to the Developers’ Community
As we work directly with mobile app developers, we want to be on top of the technologies they are using and be able to continuously contribute to the community. Core ML, Custom Vision AI, and ARKit are some of the technologies we use to achieve this.
Our Approach to Data Science
One can generalize our approach to data science into 5 common steps:
- Explore the data
- Formulate the problem(s)
- Design and set up the model(s)
- Test/train the model(s) offline
- Test/train the model(s) on production
Productions tests are typically run with 3+ strategies in parallel:
- Random model
- Hold out model (current production model)
- Version(s) of the new model falling back to hold out a prediction in case new model does not deliver an estimation
Machine learning should be utilized to improve products but only where it is really applicable and the best decision to solve a problem. Artificial intelligence is a very powerful tool and instrument, but it is very costly in terms of resources, both to develop and to support. There are many other tools that could assist you with a problem first; simple algorithms, ready-made solutions or even basic analytics. It is necessary to invest enough time once you have a problem to understand if you can solve it with simple methods before investing in AI. Of course, use artificial intelligence to improve your product, but only where it makes the most sense.