nbkcnil commited on
Commit
cee3d59
·
verified ·
1 Parent(s): 12c95d6

Delete application_neo4j/static/notice/notice.html

Browse files
application_neo4j/static/notice/notice.html DELETED
@@ -1,175 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="fr">
3
- <head>
4
- <meta charset="UTF-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>Accueil - Généalogie des Modèles</title>
7
- <link rel="stylesheet" href="{{ url_for('static', filename='css/style.css') }}">
8
- <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css" rel="stylesheet">
9
-
10
- <style>/* Style simple pour la page d'accueil */
11
- body {
12
- font-family: sans-serif;
13
- background-color: #f4f4f9;
14
- color: #333;
15
- margin: 0;
16
- padding: 0;
17
- }
18
-
19
- /* En-tête avec titre + bouton */
20
- .welcome-container {
21
- display: flex;
22
- flex-direction: column;
23
- align-items: center;
24
- text-align: center;
25
- gap: 15px;
26
- padding: 40px 20px;
27
- }
28
-
29
- .welcome-container h1 {
30
- color: #2c3e50;
31
- font-size: 2rem;
32
- font-weight: 700;
33
- margin: 0;
34
- }
35
-
36
- .info-btn {
37
- background: linear-gradient(135deg, #3498db, #5dade2);
38
- color: white;
39
- padding: 12px 30px;
40
- border-radius: 50px;
41
- text-decoration: none;
42
- font-weight: bold;
43
- transition: all 0.3s ease;
44
- box-shadow: 0 3px 8px rgba(0,0,0,0.15);
45
- }
46
-
47
- .info-btn:hover {
48
- background: linear-gradient(135deg, #2980b9, #3498db);
49
- transform: scale(1.05);
50
- }
51
-
52
- /* Section et cartes */
53
- .content-section {
54
- padding: 40px 20px;
55
- }
56
-
57
- .content-card {
58
- background: white;
59
- padding: 30px;
60
- border-radius: 12px;
61
- box-shadow: 0 4px 10px rgba(0,0,0,0.08);
62
- transition: transform 0.2s ease-in-out;
63
- height: 100%;
64
- text-align: justify;
65
- }
66
-
67
- .content-card:hover {
68
- transform: translateY(-5px);
69
- }
70
-
71
- .content-card h4, .content-card h6 {
72
- color: #6a11cb;
73
- margin-bottom: 15px;
74
- }
75
-
76
- /* Décalage des puces */
77
- .content-card p {
78
- margin-left: 15px;
79
- }
80
-
81
- /* Mise en forme spécifique pour Alice */
82
- .highlight {
83
- font-style: italic;
84
- color: #6a11cb;
85
- display: block;
86
- margin-left: 15px; /* aligné avec les puces */
87
- }
88
-
89
- /* Boutons */
90
- .buttons-container {
91
- display: flex;
92
- flex-direction: column; /* empilés verticalement */
93
- align-items: center;
94
- gap: 15px;
95
- margin-top: 20px;
96
- }
97
-
98
-
99
- </style>
100
- </head>
101
-
102
- <body>
103
-
104
- <h1 id="un-outil-pour-explorer-la-généalogie-des-modèles-dia-open-source">Un outil pour explorer la généalogie des modèles d’IA <em>open-source</em> </h1>
105
- <h1 id="quest-ce-quun-modèle-dia">Qu’est-ce qu’un modèle d’IA ?</h1>
106
- <h3 id="son-entraînement">Son entraînement </h3>
107
- <p>Les champs d'action de l'IA sont vastes et semblent difficiles à circonscrire puisqu'ils s'étendent à de nombreux aspects du quotidien : que ce soit pour effectuer des recherches ou des achats en ligne, le ciblage publicitaire, la traduction automatique, les assistants numériques personnels, les villes connectées, mais aussi dans le domaine des transports, de la santé, etc.</p>
108
- <p>D’après l’<a href="https://artificialintelligenceact.eu/fr/article/3/">article 3</a> du règlement européen sur l’intelligence artificielle un système d'IA peut être défini comme <em>«  un système basé sur une machine qui est conçu pour fonctionner avec différents niveaux d'autonomie et qui peut faire preuve d'adaptabilité après son déploiement, et qui, pour des objectifs explicites ou implicites, déduit, à partir des données qu'il reçoit, comment générer des résultats tels que des prédictions, du contenu, des recommandations ou des décisions qui peuvent influencer des environnements physiques ou virtuels. »</em></p>
109
- <p>Ces systèmes intègrent un ou plusieurs <a href="https://www.cnil.fr/fr/definition/modele-ia">modèles</a> d’IA qu’il est possible de définir comme des algorithmes, dont le fonctionnement est déterminé par un ensemble d’attributs, et qui sont conçus pour opérer, selon les cas, différentes tâches, telles que la prédiction, la classification, l’inférence ou la génération. Par exemple, les modèles de réseaux de neurones profonds (<em>deep neural networks</em>) sont constitués de nœuds (les neurones), répartis selon des couches, et reliés entre eux par des connections qui ont des poids, qui sont ajustés durant la phase d’entraînement pour apprendre la distribution statistique des données d’entraînement. Concrètement, dans le cas d’un réseau de neurone simple, les attributs du modèle pourraient être :</p>
110
- <ol type="i">
111
- <li><p>Le type et la taille de chaque couche (linéaire, convolutionnel, attention, etc.),</p></li>
112
- <li><p>Les poids attribués à chaque arrête (parfois aussi appelés « paramètres »),</p></li>
113
- <li><p>Les fonctions d’activations présentes entre chaque couche,</p></li>
114
- <li><p>Et possiblement d’autres opérations qui peuvent être situées au sein ou entre les couches.</p></li>
115
- </ol>
116
- <p><img src="notice_html/media/image1.png" style="width:4.51705in;height:2.16592in" /></p>
117
- <p><em><span class="underline">Figure 1 : Schéma d’un réseau neuronal (auteurs)</span></em></p>
118
- <p>Par exemple, quand un réseau de neurones est entraîné pour reconnaître des images, il lui est fourni des exemples où les pixels de l’image sont associés à une annotation (ou « étiquette »). Le modèle ajuste alors ses paramètres, appelés « poids », pour apprendre à attribuer le bon label le plus souvent possible.</p>
119
- <p>La principale différence entre un modèle d’apprentissage profond et un programme informatique classique est que le modèle apprend de manière autonome les règles d’inférence à partir des données. Dans un programme classique, la résolution d'une tâche repose sur un ensemble de règles explicites définies à l’avance par le développeur. Par exemple, pour trier une liste de nombres, est programmé précisément l’ordre dans lequel comparer les éléments. Ce type d’approche fonctionne très bien pour des tâches précises et délimitées, ce qui permet d’établir des règles claires pour les résoudre. À l’inverse, dans le cas d’un modèle d’apprentissage profond, illes règles ne sont pas spécifiées directement. Il est fourni plutôt au modèle un grand volume de données d’exemples (dites « données d’entraînement ») pour permettre, dans la phase dite d’apprentissage, de trouver les régularités statistiques ou les stratégies qui permettent de résoudre la tâche. Cette approche permet d’automatiser des tâches beaucoup plus complexes pour lesquelles il serait extrêmement difficile, voire impossible, de définir toutes les règles à la main.</p>
120
- <h3 id="son-utilisation">Son utilisation</h3>
121
- <p>Nous allons maintenant explorer certaines des tâches complexes que les modèles d’IA peuvent résoudre. Une fois qu’un modèle a été entraîné, il peut être utilisé tel quel, sans modification supplémentaire, pour effectuer automatiquement des tâches spécifiques. C’est ce qu’on appelle la phase d’inférence. À ce moment-là, le modèle reçoit une entrée (par exemple une image, un texte, ou un signal audio) et produit une sortie en fonction de ce qu’il a appris lors de l’entraînement. Il agit alors comme une « boîte noire » : il applique les régularités qu’il a intégrées, sans modifier sa structure interne ni apprendre de nouvelles choses.</p>
122
- <p>Prenons l’exemple de la traduction automatique. Un modèle basé sur un réseau de neurones entraîné sur des millions de paires de phrases en espagnol et en anglais peut être utilisé, à l’inférence, pour traduire automatiquement un nouveau texte de l’anglais vers l’espagnol. Les règles linguistiques ne sont pas explicitement implémentées dans le modèle, mais il a appris à faire correspondre des séquences de mots en s’appuyant sur des régularités statistiques présentes dans les données d’entraînement.</p>
123
- <p>Autre exemple, les modèles « image-to-text » permettant la génération de légendes d’images. Il est possible d’entraîner un modèle à associer des images avec des descriptions textuelles. Une fois entraîné, il est capable de recevoir une nouvelle image, par exemple, une photo de chien courant dans un parc, et de générer automatiquement une phrase du type : « Un chien court sur l’herbe dans un parc ».</p>
124
- <p><img src="notice_html/media/image2.png" style="width:6.3in;height:1.50972in" /></p>
125
- <p><em><span class="underline">Figure 2 – Exemple de description textuelle d’une image (source : https://imagedescriber.online/fr)</span></em></p>
126
- <p>Ces cas d’usage illustrent la puissance des avancées de l’apprentissage profond dans l’automatisation de tâches complexes, souvent subjectives ou ambiguës, pour lesquelles il serait difficile voire impossible d’écrire des règles explicites à la main.</p>
127
- <h3 id="ses-dérivés-finetuning-merge-quantization...">Ses dérivés : finetuning, merge, quantization...</h3>
128
- <p>Toutefois, pour adapter plus finement un réseau de neurones à une tâche spécifique, optimiser ses performances, ou encore réduire ses coûts d'exécution, plusieurs transformations peuvent être effectuées à partir d’un modèle initial pré-entraîné.</p>
129
- <p>Ces modifications sont très fréquentes dans l’écosystème en source ouverte (<em>open-source</em>) et permettent, à partir d’un ou plusieurs modèles initiaux, et possiblement de données supplémentaires, de créer de nouveaux modèles. Parmi ces transformations qui apparaissent entre un modèle cible et un modèle source, nous pouvons en mentionner quatre types :</p>
130
- <ul>
131
- <li><blockquote>
132
- <p>Ajustement (<em>finetune</em>) : le modèle d’origine est un modèle général qui parfait son entrainement sur un jeu de données spécifique afin d’améliorer ses performances pour une tâche plus précise (par exemple : un grand modèle de langage, initialement entraîné sur des sources internet librement accessibles, est ajusté sur les données métiers d’une entreprise, afin de mieux maîtriser le vocabulaire et les expressions métiers de celle-ci).</p>
133
- </blockquote></li>
134
- <li><blockquote>
135
- <p>Quantisation (<em>quantized</em>) : la précision des poids du modèle d’origine est réduite afin de diminuer son empreinte en mémoire (par exemple : le poids sont initialement encodés sur 32 bits, et sont arrondis au nombre codé sur 16 bits le plus proche).</p>
136
- </blockquote></li>
137
- <li><blockquote>
138
- <p>Adaptation (<em>adapter</em>) : le modèle d’origine est ajusté pour pouvoir être être utilisée avec peu de ressources de calcul (par exemple pour pouvoir être utilisé sur téléphone portable), la plupart du temps basée sur la technique de <a href="https://arxiv.org/abs/2106.09685"><em>Low Rank Adaptation</em></a> (LoRA).</p>
139
- </blockquote></li>
140
- <li><blockquote>
141
- <p>Fusion (<em>merge) :</em> les couches de différents modèles sont mélangées afin d’améliorer leur performance (par exemple : un LLM A et un LLM B ont tous les deux été entraînés sur des corpus généraux de texte ; la moyenne des poids qui se situent dans la 12<sup>ème</sup> couche de A et B est effectué et il apparaît que le LLM C obtenu en remplaçant dans A la 12<sup>ème</sup> couche par la moyenne des couches de A et B a des meilleures performances que A et B).</p>
142
- </blockquote></li>
143
- </ul>
144
- <h1 id="une-plateforme-pour-lia-open-source-huggingface">Une plateforme pour l’IA open-source : <em>HuggingFace</em></h1>
145
- <p>Afin de permettre le partage et la mise à disposition de modèles d’IA pour et par le plus grand nombre, l’entreprise franco-américaine <em>HuggingFace</em>, créée en 2016, a développé une plateforme <em>de</em> centralisation des modèles et jeux de données. Elle propose aussi des outils logiciels pour déployer des modèles d’IA. C’est la plateforme qui recense aujourd’hui le plus de modèles open-source disponibles (de deux millions de modèles disponibles en septembre 2025. ) et qui joue un rôle de catalyseur de l’écosystème de l’IA open-source</p>
146
- <p>Voici un exemple concret pour comprendre comment fonctionne cette plateforme :</p>
147
- <ul>
148
- <li><p>L’utilisateur C a pour objectif la création d’un modèle permettant la détection automatique de mails frauduleux.</p></li>
149
- <li><p>L’utilisateur A a publié sur <em>HuggingFace</em> un modèle de traitement du langage automatique (exemple : <em>Google</em> a publié <a href="https://huggingface.co/google/gemma-3-27b-it">google/gemma-3-27b-it · Hugging Face</a>) et l’utilisateur B a publié un jeu de données contenant des millions de mails classés comme frauduleux ou non.</p></li>
150
- <li><p>L’utilisateur C peut télécharger ce modèle et ce jeu de données. Ensuite, il entraîne le modèle sur ce jeu de données afin de le spécifier pour sa tâche de classification. Une fois qu’il obtient un modèle de classification automatique avec de bons résultats, il peut publier son nouveau modèle sur <em>HuggingFace</em>, afin que, n’importe quel utilisateur puisse l’utiliser tel quel ou l’entraîner de nouveau sur d’autres jeux de données pour améliorer ses performances.</p></li>
151
- </ul>
152
- <p><img src="notice_html/media/image3.png" style="width:6.26782in;height:2.08661in" /></p>
153
- <p><em><span class="underline">Figure 3 : Exemple d’utilisation de HuggingFace</span></em></p>
154
- <p>En somme, <em>HuggingFace</em> est une plateforme qui fournit des outils pour construire, entraîner et déployer des modèles d'apprentissage profond basés sur des technologies et du code open-source. Il offre également un espace où chercheurs, ingénieurs et amateurs peuvent se réunir pour échanger des idées, obtenir du soutien et contribuer à des projets open-source.</p>
155
- <h3 id="bienfaits-de-lia-open-source">Bienfaits de l'IA open-source</h3>
156
- <p>L’essor de l’IA open-source montre que des modèles puissants et en partie transparents peuvent rivaliser avec les solutions propriétaires tout en stimulant l’innovation collective. Le modèle <a href="https://fr.wikipedia.org/wiki/BLOOM_(mod%C3%A8le_de_langage)">BLOOM</a> 176 milliards de paramètres, 2022) développé par le consortium BigScience (<a href="https://linc.cnil.fr/bigscience-il-faut-promouvoir-linnovation-ouverte-et-bienveillante-pour-mettre-le-respect-de-la-vie">voir notre interview</a>) illustre cette dynamique : entraîné sur 46 langues, il a permis le développement d’assistants conversationnels multilingues en Afrique, en Amérique latine et dans le monde arabe, là où les modèles commerciaux restaient peu adaptés aux langues locales.</p>
157
- <p>De même, <a href="https://www.eleuther.ai/">GPT-J et GPT-NeoX</a> (EleutherAI), Vicuna (<strong>LMSYS</strong>) ont servi de base à des projets open-source qui ont permis à des universités et startups de créer des chatbots spécialisés sans dépendre de services fermés. Ces modèles ont également rendu possible la <a href="https://arxiv.org/pdf/2503.15815">recherche sur la détection de biais</a> et la <a href="https://arxiv.org/pdf/2307.15043">robustesse des grands modèles de langage</a>.</p>
158
- <p>Dans le domaine de la vision, <a href="https://en.wikipedia.org/wiki/Stable_Diffusion">Stable Diffusion</a> (<strong>Stability AI</strong>) a bouleversé la création visuelle : les poids du modèle ont été mis à disposition gratuitement, il a ouvert la voie à des applications dans le jeu vidéo, la publicité et la production audiovisuelle (génération d’images de concept, storyboards, design rapide). Son code open-source a permis la création d’outils comme <a href="https://en.wikipedia.org/wiki/Automatic1111">Automatic1111</a> ou <a href="https://en.wikipedia.org/wiki/ComfyUI">ComfyUI</a>, utilisés par des centaines de milliers d’artistes et de chercheurs.</p>
159
- <p>L’impact est aussi industriel : <a href="https://fr.wikipedia.org/wiki/LLaMA">LLaMA</a> (Meta), initialement diffusé à la communauté de recherche, a donné naissance à toute une génération de modèles dérivés –Zephyr, Nous-Hermes, OpenChat, etc. – utilisés aujourd’hui pour des tâches concrètes de support client, de résumé de documents juridiques ou médicaux, et même de prototypage de code.</p>
160
- <p>Enfin, dans le domaine scientifique, des projets comme <a href="https://huggingface.co/microsoft/biogpt">BioGPT</a> (Microsoft Research) ou <a href="https://openfold.io/">OpenFold</a> (inspiré d’AlphaFold) démontrent comment l’ouverture du code et des poids accélère la recherche biomédicale, en permettant à des laboratoires indépendants de reproduire et d’améliorer des résultats sur la prédiction de structures protéiques ou la recherche de molécules.</p>
161
- <p>Ces réussites montrent que l’open-source ne se limite pas à la réutilisation de modèles : il permet une appropriation technologique, une adaptation locale et une innovation ouverte dans des domaines aussi variés que la création artistique, la santé, l’éducation, la science des données et les industries culturelles.</p>
162
- <p>Néanmoins, un certain niveau d’opacité peut demeurer dans la façon dont ces modèles sont constitués : avec quelles données ? avec quel algorithme d’entraînement. Pour aller plus loin, une <a href="https://www.cnil.fr/sites/cnil/files/2024-06/note_d_analyse_sur_les_pratiques_open_source_en_ia.pdf">note de la CNIL</a> ainsi qu’une note du <a href="https://www.peren.gouv.fr/rapports/2024-04-03_Eclairage%20sur_OpenSource-IAG_FR.pdf">PEReN</a> sont disponibles sur le sujet.</p>
163
- <h1 id="enjeux-pour-la-vie-privée">Enjeux pour la vie privée</h1>
164
- <h3 id="la-mémorisation-des-modèles-dia">La mémorisation des modèles d’IA</h3>
165
- <p>La communauté scientifique a établi de longue date, qu’il est souvent possible d’extraire des informations sur les données à partir desquelles un modèle d’IA est entraîné, à partir d’un accès même partiel au modèle (voire à ce sujet <a href="https://linc.cnil.fr/petite-taxonomie-des-attaques-des-systemes-dia">l’article LINC sur la taxonomie des attaques</a>). Dans le cas de l’IA générative, un modèle peut par exemple reproduire du texte ou des images qui sont très proches de données qui étaient présentent dans son jeu de données d’entraînement. Dans la figure ci-dessous, nous voyons que quand il est demandé au modèle de <em>stable diffusion</em> de générer une image correspondant à la légende « Emma Watson to play Belle in Disneys Beauty and the Beast », l’image générée en sortie correspond de très près à une image qui était présente dans la base d’entraînement. Il s’agit de <strong>régurgitation (voir figure ci-dessous), qui n’est qu’un des avatars de la mémorisation. Il est par exemple parfois possible d’obtenir d’autres types d’informations, telle que l’appartenance d’une donnée particulière au jeu d’entraînement, à l’aide de méthodes statistiques (attaques par inférence d’appartenance).</strong></p>
166
- <p><img src="notice_html/media/image4.png" style="width:6.3in;height:3.74326in" /></p>
167
- <p><span class="underline">Figure</span> <span class="underline">4 - Source Louis Hunt (Linkedin)</span></p>
168
- <p>Pour les modèles de texte comme les chatbots, des cas emblématiques de régurgitations sont déjà largement documentés, comme l’observation qu’une version de ChatGPT a été capable de générer presque à l’identique des <a href="https://www.lemonde.fr/pixels/article/2023/12/27/le-new-york-times-poursuit-en-justice-microsoft-et-openai-createur-de-chatgpt-pour-violation-de-droits-d-auteur_6207946_4408996.html">articles du New York Times</a>, ou bien de fournir des informations personnelles telles que <a href="https://arxiv.org/pdf/2311.17035">le nom, l’adresse et le numéro de téléphone d’une personne</a> (voir notre article sur le sujet).</p>
169
- <h3 id="le-rgpd-et-les-modèles-dia">Le RGPD et les modèles d’IA </h3>
170
- <p>Dès lors qu’il est en général possible d’extraire des informations concernant la base d’entraînement d’un modèle d’IA à partir de celui-ci, quel régime juridique doit s’appliquer à celui-ci si le jeu d’entraînement contient des données personnelles ? C’est ce qu’a clarifié le Comité Européen de Protection des Données dans <a href="https://www.edpb.europa.eu/our-work-tools/our-documents/opinion-board-art-64/opinion-282024-certain-data-protection-aspects_en">son avis 28/2024 sur les modèles d’IA</a>, sur lesquelles se basent les <a href="https://www.cnil.fr/fr/ia-analyser-le-statut-dun-modele-dia-au-regard-du-rgpd">dernières recommandation de la CNIL</a>. L’avis conclut en particulier qu’en raison de leur capacité de mémorisation, le RGPD doit s’appliquer dans de nombreux cas aux modèles d’IA lorsqu’ils ont été entraînés sur des données personnelles.</p>
171
- <h3 id="exercer-ses-droits-sur-des-modèles-dia">Exercer ses droits sur des modèles d’IA</h3>
172
- <p>Pour les modèles d’IA soumis au RGPD, les personnes concernées par la mémorisation ont des droits sur leurs données, tels que le droit d’opposition, d’accès ou d’effacement. Il faut noter que ces droits ne sont pas absolus, et qu’un responsable de traitement peut y déroger dans plusieurs situations, par exemple lorsque la demande est manifestement infondée ou excessive (article 12), ou bien que celui-ci n’est pas en mesure d’identifier la personne concernée (pour plus de détail, voir <a href="https://www.cnil.fr/fr/ia-respecter-lexercice-des-droits-des-personnes">fiche sur l’exercice des droits</a>).</p>
173
- <p>Dans un contexte où les instances européennes confirment que le droit à la protection des données s’applique également aux modèles d’IA, la CNIL souhaite étudier les conditions dans lesquelles ceux-ci pourraient s’appliquer au sein de l’écosystème très dynamique de l’IA open-source.</p>
174
- </body>
175
- </html>