Identifying Deepfake Images and Videos Using Python with Keras


Deepfake synthetic videos and images have found a range of uses, including both harmless and harmful. Fully automated detection is a difficult but important task, particularly since deepfake generation methods continue to evolve. To help people develop successful detection methods, Facebook and other organizations have released public databases of deepfakes to use as training data. This workshop will cover the basic methodologies used for creating deepfakes, the public databases available for training, and some methods (implemented in Python with Keras) for building a detection algorithm. While there are some fully trained detection systems available to web-based users, it is important to know how these systems work and to be able to adjust, adapt, and fine-tune them---skills this workshop aims to equip you with.

Session Outline
Module 1: What are deepfakes and what have they been used for?
This non-technical introduction lecture tours the lay of the deepfake landscape to convey what the positive applications of deepfakes are and what some of the societal dangers are with them.

Module 2: How are deepfakes generated?
A more technical lecture on the mechanics and methods used to produce deepfakes---both images (for instance of faces of non-existent people) and movies (e.g. face swaps and puppeteering). This lecture focuses on concepts rather than programming implementation.

Module 3: Deepfake data sets
A tour of the publicly available deepfake datasets, to show what training data is available for detection methods.

Module 4: Deepfake detection
The longest and most significant module in the workshop, here we finally turn to Python code to see examples of developing supervised deepfake classification algorithms. The goal is to provide sample code and to work through it so we understand it and can modify it as needed for your own future applications.

Background Knowledge
Required concepts: supervised learning, including deep learning. Required programming languages: Python with Keras. That said, participants will still get a lot out of the workshop even without deep learning knowledge and Keras familiarity---they just might have to accept some concepts and sample code on faith in that situation.


Noah Giansiracusa received a PhD in mathematics from Brown University and is an Assistant Professor of Mathematics and Data Science at Bentley University, a business school near Boston. He previously taught at U.C. Berkeley and Swarthmore College. He's received multiple national grants to fund his research and has been quoted in Forbes, Financial Times, and U.S. News. He is the author of "How Algorithms Create and Prevent Fake News: Exploring the Impacts of Social Media, Deepfakes, GPT-3, and More," about which Nobel Laureate and former Chief Economist at the World Bank Paul Romer said "There is no better guide to the strategies and stakes of this battle for the future."

Open Data Science




Open Data Science
One Broadway
Cambridge, MA 02142

Privacy Settings
We use cookies to enhance your experience while using our website. If you are using our Services via a browser you can restrict, block or remove cookies through your web browser settings. We also use content and scripts from third parties that may use tracking technologies. You can selectively provide your consent below to allow such third party embeds. For complete information about the cookies we use, data we collect and how we process them, please check our Privacy Policy
Consent to display content from Youtube
Consent to display content from Vimeo
Google Maps
Consent to display content from Google