Skip to content

camara94/formation-deep-learning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

formation-deep-learning

Les bases du Deep Learning en Intelligence Artificielle.

Théorie de Hebb

image

Le Perceptron (1957)

image

image

Perceptron Multi-Couche

image

Forward Propagation

Consiste à faire circuler les données de la première couche jusqu'à la dernière couche pour afin produire une sortie y.

image

Cost Function

Elle permet de calculer la moyenne des erreurs de notre modèle.

image

Backward Propagation

Qui consiste à determiner comment la sortie du réseau varie en fonction des paramètres (w, b) présents dans chaque couche. Pour cela on calcule une chaine de gradient à savoir comment la sortie de la dernière couche varie en fonction de l'avant dernière, puis comment la sortie de l'avant dernière varie en fonction de l'avant avant dernière ainsi de suite jusqu'à la dernière couche.

image

Gradient Descent

Grâce aux gradients, on peut alors mettre à jour les paramètres (w, b) de chaque couche de telle sorte à ce qu'ils minimisent l'erreur entre la sortie du modèle et la réponse attendue.

image

Résumé

Pour développer et entrainer un Réseau de Neurones Artificiels, on répète en boucle les quatre étapes suivantes:

image

Le Perceptron

image

Modèle Linéaire

image

image

image

La fonction de faire cette transformation en probabilité est appélée Sigmoïd

image

Exemple 1:

image

Exemple 2:

image

La Loi de Bernoulli

image

image

Résumé d'un Neurone

image

La Fonction Coût

image

Démonstration de la Fonction Coût

Vraisemblance

image

Exemple: Si une plante est toxique et que notre modèle nous donne une probabilité de 0.8

image

Alors pour calculer la vraisemblance de notre modèle nous allons nous servir de la loi de Bernoulli

image

  • Si le résultat de notre modèle est proche de 100% ce qui signifie que notre modèle à une vraisemblable proche de 100%

image

  • Sinon si le résultat de notre modèle est proche de 0% ce qui signifie que notre modèle à une vraisemblable proche de 0%

image

Problème de la Vraisemblance

Comme les probabilités sont des nombres inférieure à 1, alors plus on fait le produit des nombres inférieur à 1 plus on tend vers 0.

image

image

Pour eviter que la vraisemblance de notre modèle ne converse vers 0, on l'applique le logarithme.

image

Comme La fonction logarithme est une fonction monotône croissante alors elle conserve l'ordre de nos termes.

image

Cela signifie que lorsqu'on cherche le maximum de nos vraisemblances, il sufit de chercher le maximum du log de la vraisemblance. voir graphique

image

Alors par deduction on aura:

image

Pour la formule de log loss: Au fait on veut maximiser la vraisemblance or en mathématique il n'existe pas de fonction de maximisation mais il n'existe que des fonctions de minimisation par conséquent on essaie de prendre l'inverse de la fonction de minisation. C'est à dire qu'on multiplie par (-1) puis on normalise par (1/m).

image

image

Origine de Log Loss

La fonction Log Loss elle tire son origine de la maximisation de la vraisemblance(Likelihood)

Descent de Gradient

image

Gradient de Descent en Mathématique

image

  • Si la dérivée est négative ça nous indique que la dérivée diminue lorsque w augmente.

image

  • Si la dérivée est positive ça nous indique que la dérivé augmente lorsque w augmente.

image

  • Descente de Gradient

image

  • en répetant cette formule, le gradient descent jusqu'au minimum de notre fonction.

image

Pratique Cours Suivant

image

Quelques dérivées Utiles pour le Cours

image

Demonstration de la Descente de Gradient

image

Vectorisation

image

image

Exemple en Python

image

Utilité des Vecteurs

image

Matrices

image

Exemple

image

Les Opérations Matricielles à Connaître en Deep Learning

image

1. Les Additions et Soustractions

image

2. La Transposition

image

3. La Multiplication

image

image

Exercice

image

Vectorisation des Equations de Deep Learning

image

Dataset

A la base, on a un Dataset de de x1 et x2 variables indépendantes et y variable dépendante.

image

Vectorisation du Dataset

image

Vectorisation de Z

image

Vectorisons nos Equations

image

Vectorisation de A

image

Vectorisation de la Fonction Coût

image

image

image

Vectorisation de la Descente de Gradient

image

image

image

  • Au en Python, il nous reste qu'à calculer W et B.

image

Vectorisation des Gradients

image

image

image

image

image

image

image

image

Modèle

Pour développer notre modèle, nous allons partir d'un dataset de 100 ligne de x1, x2 et y.

image

Process de Travail en Python

image

Réseau de Neurones multi-couches

image

Comment Construire un Réseau de Neurones

Pour créer un réseau de neurones, nous allons ajouter un second neurone à côté de celui que nous avons crée précedemment.

image

Les Equations des Réseaux de Neurones

image

Deuxième Couche

image

  • Si on veut ajouter autant de couches, on aura ce forme:

image

Deep Neural Network

On peut construire autant de couches que l'on desire dont chaque couche est constituée de plusieurs neurones d'où le nom Deep Learning

image

Résumé de Réseaux de neurones Multi-couches

Voici les trois points les plus importants à retenir:

image

Implementation

image

  • A la place, il faut vectoriser l'ensemble de ses équations par un vecteur.

Vectorisation d'un Réseau de Neurones

image

  • Ce qui nous donne:

image

  • L'avantage de cette technique, c'est ce que si vous voulez rajouter un autre neurone à votre couche, alors tout ce que vous avez à faire est d'ajouter une autre colonne à votre matrice W et un paramètre de biais b à votre matrice B et par le calcule matriciel vous obtiendrez une matrice m*(n+1) automatiquement.

image

  • Parfois il arrive qu'on trouve dans certains documents, la matrice X transposée ou renversée pourque celle-ci soit compatible à nos dimensions dans nos équations, mais cela n'a aucune influence sur les résultats de nos calcules.

image

image

Résumé de la Vectorisation

image

image

Back-Propagation

image

image

image

  • On determine la dérivée partielle de L par rapport à A

    image

  • On determine la dérivée partielle de A par rapport à Z

image

  • Puis pour terminer, onn determine les dérivées partielles de Z par rapport à W et b.

image

  • Tout ça là, nous donnes les équations suivantes:

image

  • Mais on peut les simplifier pour obtenir les équations suivantes:

image

image

Exercice Multi-couches

image

  • Attention:

    images

Releases

No releases published

Packages

No packages published