Rapport tp1 Deep Learning
Rapport tp1 Deep Learning
Elaboré par:
AATMANE Soukaina
Encadré par:
M. IBN ELHAJ
Abstract
Un neurone est un objet mathématique qui fut à l’origine introduit, entre autres choses,
1 Introduction 2
References 6
1
Chapter 1
Introduction
Ce qui rend ce perceptron Python unique, c’est que nous allons être aussi
explicites que possible avec nos noms de variables et nos formules, et que
nous allons tout passer en revue, ligne par ligne, avant de devenir intelligents,
2
Chapter 2
En executant ce dernier:
3
2.2 Explication du code
numpy est une bibliothèque numérique apportant le support efficace de larges tableaux
algèbre linéaire, statistiques, etc.). La bibliothèque NumPy permet d’effectuer des calculs
numériques avec Python. Elle introduit une gestion facilitée des tableaux de nombres.
nous créons une nouvelle classe Perceptron. Cela nous permettra, entre autres, de
maintenir l’état afin d’utiliser notre perceptron après qu’il ait appris et attribué des valeurs
à ses poids.
c l a s s Perceptron ( object ) :
s e l f .W = np . z e r o s ( i n p u t s i z e +1)
s e l f . epochs = epochs
s e l f . I r= I r
epochs: le nombre d’époques que nous allons permettre à notre algorithme d’apprentissage
Ir : est utilisé pour déterminer l’ampleur de la variation de nos poids à chaque étape par
4
nous déplaçons notre biais dans le vecteur de poids, afin de ne pas avoir à le traiter
C’est notre fonction de marche pied. Cela se lit comme un pseudo-code : si la somme
du haut est supérieure à 0, nous stockons 1 dans la variable activation, sinon, activation
def activation fn ( s e l f , x ) :
r e t u r n ( x>=0). a s t y p e ( np . f l o a t 3 2 )
def predict ( s e l f , x ) :
z = s e l f .W. T . dot ( x )
return a
C’est là qu’intervient la fonction de produit numpy dot, qui fonctionne exactement comme
on peut s’y attendre. np. dot(a, b) == a - b. Il est important de se rappeler que les
produits de points ne fonctionnent que si les deux vecteurs sont de dimension égale. [ 1,
2, 3] - [1, 2, 3, 4] n’est pas valable. Les choses deviennent un peu délicates ici parce que
nous avons ajouté une dimension supplémentaire à notre vecteur self. w pour agir comme
un biais.
Ensuite, nous définissons la méthode du fit, qui prend deux arguments : les données
d’entrainements et la sortie souhaitéeet .Cette dernière devrait être une liste composée de
vecteurs numpy à utiliser comme entrées par la méthode de prédiction et censé être un
5
tableau numérique des valeurs de sortie attendues pour chacune des entrées correspon-
d e f f i t ( s e l f , X, d ) :
f o r i in range ( s e l f . epochs ) :
f o r i i n r a n g e ( d . shape [ 0 ] ) :
x=np . i n s e r t (X[ i ] , 0 , 1 )
y= s e l f . p r e d i c t ( x )
e=d [ i ]−y
s e l f .W = s e l f .W + s e l f . I r ∗ e ∗ x
Nous définissons la méthode du fit, qui prend deux arguments : X et d. X devrait être une
liste composée de vecteurs numpy à utiliser comme entrées par la méthode de prédiction,
Et censé être un tableau numérique des valeurs de sortie attendues pour chacune des