Sefik Serengil

Unboxing the DeepFace

How do you search billions of faces in milliseconds? This talk unboxes the open-source library and modern algorithms that make it possible.

Unboxing the DeepFace
#1about 4 minutes

Introducing the DeepFace facial recognition library

Learn about the open-source DeepFace Python library, its key features, and how to install and use it for basic face verification.

#2about 2 minutes

Understanding face verification versus face recognition

Face verification is a one-to-one comparison with O(1) complexity, while face recognition is a one-to-many search with O(n) complexity.

#3about 2 minutes

Analyzing facial attributes like age and gender

DeepFace can predict apparent age, gender, emotion, and race to help reduce search space or mitigate dataset bias.

#4about 2 minutes

Stage 1: Detecting faces with different backends

Choose from various face detectors like OpenCV for speed or RetinaFace for higher accuracy in crowded images.

#5about 2 minutes

Stages 2 & 3: Aligning and normalizing facial images

Improve accuracy by rotating images to align the eyes horizontally and cropping the facial area to remove background noise.

#6about 6 minutes

Stage 4: Creating vector embeddings with neural networks

Convolutional neural networks convert facial images into unique vector embeddings, avoiding the need to retrain the model for new identities.

#7about 3 minutes

Stage 5: Verifying identity using distance and thresholds

Calculate the distance between two vector embeddings to determine if they represent the same person by comparing it to a pre-defined threshold.

#8about 3 minutes

The challenge of scaling facial recognition to billions of images

Traditional one-to-many search is too slow for large-scale applications like those at Google or Facebook, requiring more advanced algorithms.

#9about 2 minutes

Using Approximate Nearest Neighbor for fast searching

Accelerate large-scale searches by using Approximate Nearest Neighbor (ANN) algorithms, which trade perfect accuracy for significant speed gains.

#10about 3 minutes

Choosing the right tech stack for your use case

Select key-value stores like Redis for fast verification, distributed systems like Spark for high-confidence recognition, or vector databases for ANN-powered search.

#11about 3 minutes

Key benefits of using the DeepFace library

DeepFace is a lightweight, easy-to-install, open-source library that wraps state-of-the-art models and is language-independent via its API.

#12about 13 minutes

Audience Q&A on emotion detection, 3D sensors, and bias

The speaker answers questions about measuring emotion, handling 3D data, determining thresholds, and addressing bias in training datasets.

Related jobs
Jobs that call for the skills explored in this talk.

Featured Partners

From learning to earning

Jobs that call for the skills explored in this talk.