The problem of misinformation has concerned me for a long time. Having witnessed the drastic effects of it in both my country and elsewhere, I think my concerns are rightly placed.
I made a small attempt in doing something about it.
This project is part of the requirements to finish my Bachelor’s degree in Computer Science (2017-2021).
It aims to demonstrate a solution to a small part of the misinformation problem. In particular, I detail here my approach in implementing a CNN-based DeepFake detector, first detailed in a paper published by Darius Afchar (Github) et al. in 2018 [1], called MesoNet. The official implementation (without any training code) is available here.
The overall project consists of three parts:
- Part 1: Model Construction and Training - This builds and trains various MesoNet variants, with the objective of obtaining multiple well-performing variants in the end. It is implemented using TensorFlow.
- Part 2: API - This is an API that can be used to fetch results from a trained MesoNet model. It is implemented using Django and the Django Rest Framework.
- Part 3: Frontend - This is a webapp app which uses the above API to allow any Internet user to explore the inner workings of MesoNet. It is implemented in Node.js.
Here, you can find documentation on all three parts. More information about the architecture of MesoNet and the dataset used for training is available in the README of Part 1.
[1] Afchar, Darius, et al. Mesonet: a compact facial video forgery detection network.