# Percival: Making In-Browser Perceptual Ad Blocking Practical With Deep Learning

arXiv: https://arxiv.org/abs/1905.07444 · HTML: https://mlsanity.com/paper/1905.07444/

## Key facts

- Cited by 3 papers in the map (data through 14 Oct 2026).
- First posted on arXiv 17 May 2019.

## Built on by (most cited first, 3 of 3)

- [AutoFR: Automated Filter Rule Generation for Adblocking](https://mlsanity.com/paper/2202.12872/) (2022)
- [Collaborative Domain Blocking: Using federated NLP To Detect Malicious Domains](https://mlsanity.com/paper/2210.04088/) (2022)
- [Beyond the Request: Harnessing HTTP Response Headers for Cross-Browser Web Tracker Classification in an Imbalanced Setting](https://mlsanity.com/paper/2402.01240/) (2024)

## Abstract (arXiv)

In this paper we present Percival, a browser-embedded, lightweight, deep learning-powered ad blocker. Percival embeds itself within the browser's image rendering pipeline, which makes it possible to intercept every image obtained during page execution and to perform blocking based on applying machine learning for image classification to flag potential ads. Our implementation inside both Chromium and Brave browsers shows only a minor rendering performance overhead of 4.55%, demonstrating the feasibility of deploying traditionally heavy models (i.e. deep neural networks) inside the critical path of the rendering engine of a browser. We show that our image-based ad blocker can replicate EasyList rules with an accuracy of 96.76%. To show the versatility of the Percival's approach we present case studies that demonstrate that Percival 1) does surprisingly well on ads in languages other than English; 2) Percival also performs well on blocking first-party Facebook ads, which have presented issues for other ad blockers. Percival proves that image-based perceptual ad blocking is an attractive complement to today's dominant approach of block lists
