Deepfakes : des modèles géométriques aux auto-encodeurs
⏱ 5 minEn deux ans, les vidéos falsifiées, mettant en scène des personnes réelles dans une situation factice, ont incroyablement gagné en qualité et en rapidité de réalisation. Et les techniques continuent de s’améliorer sans, pour l’instant, que des attaques dignes de ce nom ne soient à déplorer. Voyons d’abord comment sont conçus les deepfakes.
Obama traitant Trump de pauvre con, ce dernier appelant les Belges à se retirer de l’accord sur le climat, Mark Zuckerberg alertant sur le pouvoir de Facebook… autant d’exemples récents de deepfakes qui ont fait le buzz.
Le phénomène est en général daté de 2017, lorsque des visages de célébrités ont été insérées dans des vidéos pornos (ou porn fakes). Depuis, les techniques évoluent très vite, et la qualité de rendu de certains deepfakes, en français hypertrucage, ou permutation intelligente de visage (PIV), trompe même les plus avisés. Mais pas encore les chercheurs.
« Pour l’instant, les deepfakes sont fabriqués à façon, plutôt pour alerter et montrer le potentiel de la technologie, et on arrive assez facilement à détecter que c’est un faux. Mais la menace est à prendre au sérieux, prévient Denis Teyssou, responsable du Medialab de l’AFP. L’utilisation de ces technologies, à la base imaginées pour améliorer les effets spéciaux au cinéma, se démocratise. Tout un chacun peut désormais s’amuser à en faire, par exemple avec la dernière application chinoise Zao (à condition d’avoir un iPhone chinois…). Mais, il y aura immanquablement des attaques à dessein, potentiellement impactantes, comme ces porn fakes en Asie contre des hommes politiques. » Car la différence avec les effets spéciaux utilisés au cinéma (avec des modèles 3D reconstitués à partir de capteurs posés sur le corps d’acteurs), est que ces images sont truquées à l’insu des intéressés. Et qu’il n’y a plus besoin d’être spécialiste. Avec certaines applications, quelques images suffisent pour trafiquer une vidéo en quelques minutes là où il fallait des heures et une expertise en photomontage.
Une grande variété de méthodes
Les trucages vidéo ont basculé dans une nouvelle ère à l’automne 2017 quand un utilisateur anonyme du site communautaire Reddit, surnommé Deepfake, a publié des vidéos pornographiques falsifiées via l’application gratuite FakeApp, à base d’auto-encodeurs (voir plus loin). Il échangeait le visage d’acteurs de pornos par celui de célébrités (ce qu’on appelle le Face Swapping). Depuis, certains qualifient de deepfakes les vidéos truquées par une intelligence artificielle. Mais il n’y a pas de consensus sur le terme. Car d’autres y intègrent les vidéos truquées à partir d’outils plus traditionnels de vision par ordinateur comme Face2Face, à base de modèles géométriques de visages et de traitements d’images (une vidéo n’est rien d’autre qu’une succession d’images). Ce débat sémantique a finalement peu d’intérêt ; d’autant plus que les méthodes géométriques évoluent elles aussi, certaines étapes intégrant désormais du deep learning.
« Il y a une grande variété de méthodes pour faire des deepfakes, résume Ewa Kijak, maître de conférences et chercheure à l’Irisa, à Rennes. Certaines sont basées sur du machine learning de bout en bout, d’autres pour certaines étapes seulement. Peu importe. Quelle que soit la méthode, on constate surtout que les performances s’améliorent. » La chercheure pointe également l’étendue de l’échelle des modifications : « De la seule modification et synchronisation du masque labial (lipsync) pour changer le discours, à celle de toute l’image de la personne (motion transfer) en passant par les expressions du visage et le mouvement de la tête (facial reenactment) ou de toute la tête (face swapping)… un jour, à n’en pas douter, des vidéos de personnes ex-nihilo seront créées ! » Si l’on s’en tient à ce seul point de vue technique sans parler des aspects éthiques, plus généralement liés au développement des fake news, le sujet est passionnant. Et les équipes de recherche qui s’y sont engouffrées sont nombreuses. Tant pour créer que pour détecter des vidéos truquées. Une incroyable compétition.
Vision par ordinateur et/ou réseaux de neurones
Commençons par les méthodes à base de vision par ordinateur. Comme Face2Face, qui a beaucoup impressionné lors de sa publication en juin 2016 par des chercheurs de l’université d’Erlangen-Nuremberg, du Max Planck Institute, en Allemagne, ainsi que de l’université de Stanford, aux États-Unis. La technique consiste à transférer l’expression faciale et les mouvements de la bouche d’un acteur filmé à une personne dans une vidéo existante pour lui faire dire ce que l’on veut. Cela repose sur des modèles génériques de visages que l’on déforme, et que l’on texture. « Ces reconstructions 3D sont très bien faites, quasi en temps réel, avec les outils les plus performants du moment en vision par ordinateur et à partir de très peu de données, précise Vincent Nozick, maître de conférences à l’université Paris-Est Marne-la-Vallée, chercheur au Laboratoire d’informatique Gaspard Monge (LIGM). C’est très impressionnant ! » Et, comme on l’a dit, certaines applications utilisent désormais des briques à base de machine learning. « C’est la technique la plus dangereuse, alerte-t-il, d’autant plus que la méthode intègre également la voix maintenant. Heureusement, le code de Face2Face n’est pas accessible. Pour le moment. »
Qu’en est-il des solutions à base de deep learning ? « Elles reposent toutes sur une idée simple mais brillante : celle de l’auto-encodeur », poursuit Vincent Nozick. Quèsaco ? Un auto-encodeur, ce sont deux réseaux de neurones partenaires, entraînés de façon non supervisée : le premier, l’encodeur, observe et décrit l’image, par exemple le visage d’une personne (sourit-elle ? est-elle maquillée ? où regarde-t-elle ? est-elle éclairée ?…) ; le second, le décodeur, reconstitue l’image en restituant parfaitement ce visage grâce à ces mêmes indications (la personne sourit, n’est pas maquillée, regarde à droite, etc.). Le score de ressemblance du résultat est attribué aux deux réseaux, tant à l’encodeur qu’au décodeur. « L’idée mise en œuvre dans les deepfakes a été de partager l’encodeur entre 2 personnes, disons A et B, dont il apprend à détecter les caractéristiques, avec les mêmes « mots », explique Vincent Nozick. Puis deux décodeurs, l’un pour A, l’autre pour B, reconnaissent ces mots et sont capables de reproduire les caractéristiques correspondantes. Autrement dit, une image de A peut être reproduite fidèlement sur la personne B. » Le tour est joué !
Avec les GAN (pour Generative Adversarial Network ou Réseau antagoniste génératif), un type particulier d’auto-encodeurs apparus en 2014, l’intelligence artificielle ne se contente plus seulement d’apprendre, elle est capable de générer une vidéo du même style. Les deux réseaux de neurones sont, cette fois, antagonistes : l’encodeur génère une vidéo et le décodeur corrige en comparant le résultat à la vidéo originale. Résultat : grâce à cette auto-évaluation, il devient possible de créer des images falsifiées particulièrement crédibles à partir de milliers d’images existantes. Ces algorithmes sont néanmoins très compliqués à entraîner, et nécessitent de caler beaucoup d’hyperparamètres. Quelle que soit la longueur de la vidéo, il faut environ une journée pour réaliser une vidéo truquée de la sorte si on dispose des données et d’une bonne puissance de calcul : c’est le temps nécessaire pour entraîner l’auto-encodeur. La suite se fait quasi en temps réel : 10 minutes suffisent pour réaliser 15 minutes de vidéo, 6 ou 7 heures pour une vidéo de 5 heures.
Traitements de l’image
« La méthode de l’auto-encodeur, en elle-même, n’a pas beaucoup évolué avec les deepfakes, reprend Vincent Nozick. Il y a des évolutions sur la topologie des réseaux de neurones mais on en aura vite fait le tour entre les réseaux trop gros, trop lourds à entraîner et les trop petits, trop approximatifs. En revanche, les techniques de traitement d’images associées, pré et surtout post-traitement, évoluent beaucoup pour améliorer le rendu. » Il y a, par exemple, une étape préalable de recalage des images (pour figer en quelques sortes la position des yeux et de la bouche dans l’image), ce qui provoque des distorsions (warping) corrigées ensuite. Quant au post-traitement, il consiste à améliorer les images, certaines parties du visage sont remises à l’échelle, lissées, changées de couleur, de hauteur, etc. Tous ces traitements, préalables à l’entraînement des réseaux, se font pour l’instant de façon manuelle, mais le résultat est de plus en plus crédible. Alors qu’il était facile de reconnaître les premiers deepfakes, par exemple en l’absence de clignements d’yeux, les falsifications deviennent plus subtiles, difficiles à détecter à l’œil nu.
« Les verrous actuels sont le nombre d’exemples sur lesquels les réseaux de neurones doivent être entraînés, la puissance de calcul, la résolution des vidéos (au plus 256 x 256, souvent 64 x 64), directement liée au temps d’entraînement et la qualité de rendu, conclut Ewa Kijak. Mais déjà des modèles apparaissent qui nécessitent moins d’exemples d’apprentissage, sont plus rapides à entraîner et produisent de meilleures résolutions. » Comment les détecter ? Nous ferons le tour des techniques dans notre prochain article.
Isabelle Bellin