Vous êtes sur la page 1sur 34

FACULTE DES SCIENCES AIN CHOCK

DEPARTEMENT DE MATHEMATIQUES ET
INFORMATIQUES

IMAGE
CAPTIONING
Réalisé par : Encadré par :

KAWTAR OUKIL M. MOHAMMED REDA

HOUDA MABROUK
Plan

01 02 03
Introduction Définition Cas d’utilisation

04 05 06
Fonctionnement de CNN Transformateur CNN Implémentation
Introduction

Un chien blanc
avec des taches
brunes 

Un chien blanc dans


une zone herbeuse 
Un chien sur
de l'herbe et
des fleurs
roses 
Image Captioning

Image Captioning fait référence au


processus de génération d'une
description textuelle à partir d'une
image donnée en fonction des objets et
des actions de l'image.
Image Captioning était l'une des tâches
les plus difficiles dans le domaine de
l'intelligence artificielle (IA) avant
Karpathy et al. a proposé une technique
de pointe pour générer
automatiquement des légendes pour
une image donnée
Cas d’utilisation

Voitures
Autonomes
 La conduite
automatique est l'un
des plus grands défis et
si nous pouvons sous-
titrer correctement la
scène autour de la
voiture, cela peut
donner un coup de
pouce au système de
conduite autonome.
Cas d’utilisation

Les caméras de
vidéo
surveillance
nous pouvons déclencher
des alarmes dès qu'il y a
une activité malveillante
quelque part. Cela pourrait
probablement aider à
réduire certains crimes
et/ou accidents.
Fonctionnement de CNN

CNN signifie Convolutional Neural


Network, qui est un type de réseau
neuronal artificiel utilisé pour la
classification et la reconnaissance
d’images. Il est spécialement conçu pour
fonctionner avec des données
structurées de type grille, telles qu’une
image, où les valeurs dans les cellules
voisines sont fortement corrélées..
Fonctionnement de CNN
Transformateur CNN
Implémentation du Image
Captioning
avec CNN et un transformateur
1
Importer les
#Intéraction avec le SE
bibliothèques #Expressions régulières
nécessaires #Calcul Numérique, tableaux , matrices
#Visualisations

#Apprentissage automatique
#Deep Learning
#Couches de réseau de neurones
#Modèles pré-formé
#Prétraitement des données
textuelles
Compréhension des données
Nous utiliserons l'ensemble de données Flickr8K
pour ce didacticiel. Cet ensemble de données
comprend plus de 8 000 images, chacune associée
à cinq légendes différentes.
Téléchargement des données

2
Téléchargement de
la base des données
Téléchargement des données

3
Initialisation des
hyperparamètres
pour le modèle
d’apprentissage
Préparation des données

4
Fonction de
chargement des
données
5
Fonction de division de la
base de donnees en
ensemble d'entraînement et
de validation
Préparation des données

6
Appel du fonction de
division d’ensemble de
données
Vectorisation des données textuelles

7
Fonction de
vectorization des
données textuelles
Construire un pipeline tf.data.Dataset pour la formation

8
Fonction de decodage
et redimensionnement
et conversion d’image
Construire le modèle

9
Fonction qui renvoit un
tuple des résultats de
deux appels de fonction
10
Fonction de creation
un ensemble de
données à l'aide de
tf.data.Dataset.from_
tensor_slices
11
Creation des deux
ensembles
d’entrainement et
de validation
Construire le modèle
12
Fonction de
création de résequ
neuronal convolutif
(CNN)
Construire le modèle

13
La classe
TransformerEncoderBlock
qui crée un bloc de couches
dans un modèle de
transformateur
Construire le modèle

14
La classe
PositionqlE,bedding
utilisée pour ajouter des
incorporations
positionnelles à une
séquence d'incorporations
de jetons.
Construire le modèle

15
La classe TransformerDecoderBlock
utilisée pour créer un bloc de
couches dans un modèle de
décodeur de transformateur.
Construire le modèle

16
La classe
ImageCaptioningModel utilisée
pour créer un modèle de image
captioning qui utilise un
modèle CNN, un encodeur et
un décodeur.
Entraînement du modèle

17
Fonction de perte pour
le modèle de sous-
titrage d'image

18
Instance du rappel
EarlyStopping dans
keras
19
La classe de planificateur
de taux d'apprentissage
personnalisée nommée
LRSchedule
Entraînement du modèle
20
Creation d’une
instance de la
classe LRSchedule

21
Calcul du nombre
d’ étapes
d'apprentissage

22
Compilation du
modèle avec
l'optimiseur Adam
Vérification des exemples de prédictions

23
Verification des
exemples de predictions
à partir l’objet de
vectorisation
Vérification des exemples de prédictions

24
Fonction generate_caption()
qui génère une légende pour
une image aléatoire à partir
du jeu de données de
validation.
Vérification des exemples de prédictions

25
L’appel la fonction
generate_caption()
plusieurs fois pour
générer des
légendes pour
plusieurs images
aléatoires à partir
du jeu de données
de validation
Vérification des exemples de prédictions
Merci pour votre attention

Vous aimerez peut-être aussi