Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Learning Objectives: General Information

Télécharger au format odt, pdf ou txt
Télécharger au format odt, pdf ou txt
Vous êtes sur la page 1sur 17

General Information

Prerequisites
1. Python Programming. For example, you can complete this course on
edX: Python Basics for Data Science.

2. Machine Learning with Python. For example, you can complete this course on
edX: Machine Learning with Python: A Practical Introduction.

3. Partial Derivatives. For example, you can complete this tutorial on Khan
Academy: Khan Academy Tutorial

Learning Objectives
In this course you will learn to:

 Discuss exciting applications of deep learning and why it is really


rewarding to learn how to leverage deep learning skills.

 Describe Neural networks and how most of the deep learning


algorithms are inspired by the way brain functions and the neurons
process data.

 Explain how neural networks feed data forward through the network.

 Define the gradient descent algorithm and how variables are


optimized with respect to a defined function.

 Define backpropagation and how neural networks learn and update


their weights and biases.

 Define the vanishing gradient problem.

 Describe Activation Functions.

 Describe the Deep learning libraries namely, Keras, PyTorch, and


TensorFlow.

 Build a regression model using the Keras library.

 Build a classification model using the Keras library.

 Explain the difference between the shallow and deep neural


networks.

 Describe Convolutional Networks and how to build them using the


Keras library.
 Explain what Recurrent Neural Networks are.

 Describe Autoencoders and how to build them using the Keras


library.
Syllabus
Module 1 - Introduction to Deep Learning

 Introduction to Deep Learning

 Biological Neural Networks

 Artificial Neural Networks - Forward Propagation

Module 2 - Artificial Neural Networks

o Gradient Descent

o Backpropagation

o Vanishing Gradient

o Activation Functions

Module 3 - Deep Learning Libraries

o Introduction to Deep Learning Libraries

o Regression Models with Keras

o Classification Models with Keras

Module 4 - Deep Learning Models

o Shallow and Deep Neural Networks

o Convolutional Neural Networks

o Recurrent Neural Networks

o Autoencoders
Grading Scheme
1. The minimum passing mark for the course is 70% with the following
weights:
o 50% - All Review Questions

o 50% - The Final Exam

2. Though Review Questions and the Final Exam have a passing mark of 50%
respectively, the only grade that matters is the overall grade for the course.

3. Review Questions have no time limit. You are encouraged to review the course
material to find the answers. Please remember that the Review Questions are
worth 50% of your final mark.

4. The final exam has a 1 hour time limit.

5. Attempts are per question in both, the Review Questions and the Final Exam:

o One attempt - For True/False questions

o Two attempts - For any question other than True/False

6. There are no penalties for incorrect attempts.


7. Clicking the "Final Check" button when it appears, means
your submission is FINAL. You will NOT be able to resubmit your
answer for that question ever again.
8. Check your grades in the course at any time by clicking on the
"Progress" tab.

Artificial Neural Networks


Début de la transcription. Passez à la fin.
Dans cette vidéo, nous allons commencer à
apprendre
sur la formulation mathématique de
les réseaux de neurones. Dans la vidéo
précédente, nous
établi que la forme d'un
Le neurone artificiel ressemble à ceci
afin de ressembler à un véritable biologique
neurone. Pour un réseau de neurones, nous
divisez-le normalement en différentes
couches :
la première couche qui alimente l'entrée
le réseau s'appelle évidemment le
couche d'entrée. L'ensemble des nœuds qui
à condition que la sortie du réseau soit
appelée couche de sortie. Et tous les
ensembles de
nœuds entre l'entrée et le
les couches de sortie sont appelées les
couches cachées
couches. Lorsque vous travaillez avec des
réseaux de neurones,
les trois principaux sujets que nous traitons
sont : la propagation vers l’avant, la
rétropropagation,
et fonctions d'activation. Le reste de
cette vidéo portera principalement sur l'avenir
propagation, et je vais l'expliquer
à travers des exemples avec des chiffres.
Avant
la propagation est le processus par lequel
les données traversent des couches de
neurones dans
un réseau de neurones de la couche d'entrée
jusqu'à la couche de sortie. Allons
utilisez un neurone et mathématiquement
formuler la manière dont l'information circule
à travers. Comme indiqué ici, les données
circulent
à travers chaque neurone par des connexions
ou
les dendrites. Chaque connexion a un
poids spécifique par lequel le flux de
les données sont réglementées. Ici x1 et x2
sont les
deux entrées, elles peuvent être un entier ou
flotter. Lorsque ces entrées passent par le
connexions, ils sont ajustés en fonction
sur les poids de connexion, w1 et w2.
Le neurone traite ensuite cela
informations en produisant une somme
pondérée
de ces entrées. Cela ajoute également une
constante
à la somme appelée
biais. Donc, z voici le linéaire
combinaison des entrées et des poids
avec le biais, et a est la sortie
du réseau. Par souci de cohérence, nous allons
respectez ces lettres tout au long de
bien sûr, donc z représentera toujours le
linéaire
combinaison des entrées et une volonté
représentent toujours la sortie d’un neurone.
Cependant, en produisant simplement une
somme pondérée
des intrants limite les tâches qui peuvent
être effectuée par le réseau neuronal.
Par conséquent, un meilleur traitement du
les données seraient de mapper la somme
pondérée à
un espace non linéaire. Une fonction populaire
est
la fonction sigmoïde, où si le
la somme pondérée est un très grand positif
nombre, alors la sortie du neurone est
proche de 1, et si la somme pondérée est un
très grand nombre négatif, alors le
la sortie du neurone est proche de zéro.
Les transformations non linéaires comme
la fonction sigmoïde est appelée activation
les fonctions. Les fonctions d'activation sont
une autre caractéristique extrêmement
importante de
réseaux de neurones artificiels. Ils
en gros, décider si un neurone doit
être activé ou non. Autrement dit,
si les informations que le neurone
reçoit est pertinent ou devrait être
ignoré. Le message à retenir ici est
qu'un réseau de neurones sans
la fonction d'activation est essentiellement
simplement
un modèle de régression linéaire. L'activation
la fonction effectue des opérations non
linéaires
transformation en entrée permettant la
réseau neuronal d'apprentissage et
effectuer des tâches plus complexes, telles
que
classifications d'images et langage
traductions. Pour plus de simplification,
Je vais procéder avec un réseau de neurones
d'un neurone et d'une entrée. Allons-y
sur un exemple de la façon de calculer le
sortir. Disons que la valeur de x1 est
0.1, et nous voulons prédire la sortie
pour cette entrée. Le réseau a été optimisé
poids et biais où w1 est 0,15 et b1
est 0,4. La première étape consiste à calculer
z, qui est le produit scalaire de
entrées et les poids correspondants
plus le biais. Nous trouvons donc que z vaut
0,415.
Le neurone utilise alors
la fonction sigmoïde pour appliquer du non-
linéaire
transformation en z. Par conséquent, la
la sortie du neurone est de 0,6023.
Pour un réseau à deux neurones, le
la sortie du premier neurone sera la
entrée au deuxième neurone. Le reste est
alors exactement pareil. Le deuxième neurone
prend l'entrée et calcule le point
produit de l'entrée, qui est a1 dans
ce cas, et le poids qui est w2,
et ajoute le biais qui est b2. Utilisant un
fonction sigmoïde comme activation
fonction, la sortie du réseau serait
être 0,7153.
Et ce serait la valeur prédite pour
l'entrée 0,1. C'est dans
essentiellement, comment un réseau de
neurones prédit
la sortie pour une entrée donnée. Peu importe
à quel point le réseau devient compliqué, c'est
exactement le même processus. Résumer,
étant donné un réseau de neurones avec un
ensemble de
poids et biais, vous devriez être capable de
calculer la sortie du réseau pour
toute entrée donnée. Dans la vidéo suivante,
nous
commencera à apprendre à former un
réseau de neurones et optimiser les poids
et les préjugés.
Module 2 - Artificial Neural Networks
Début de la transcription. Passez à la fin.
Avant de pouvoir commencer à découvrir comment
les réseaux de neurones apprennent et optimisent
leur
poids et biais, apprenons-en
Descente graduelle. Si vous le savez déjà,
s'il te plaît, supporte-moi, car je veux faire
je suis sûr que tous ceux qui prennent ça
le cours est sur la même page. Disons
que nous avons des données, et voici un
nuage de points des données. Pour la simplicité,
J'ai généré des données où z est deux fois x.
Et disons que nous voulons trouver la valeur de w
cela générerait une ligne qui conviendrait le mieux
correspond à ces données. Pour ce faire, nous
définissons un
coût ou une fonction de perte.
Une fonction courante de coût ou de perte est la
celui montré ici comme J, où nous prenons le
différence entre les valeurs z et la
produit de w et x. Nous mettons cela au carré et
nous additionnons la différence au carré sur tous
valeurs de z et x. La meilleure valeur de w
serait alors la valeur qui donne
la valeur minimale de ce coût ou de cette perte
fonction. Voyons comment cela
à quoi ressemble la fonction de coût.
Qu'est-ce qui fait que cette perte ou ce coût
fonctionne
attrayant est que c'est une parabole, et
a un minimum global ou un unique
solution. Pour les données données, la valeur de
w cela rend cette fonction de coût minimale,
est-ce que w est égal à 2, ce qui signifie que z est
égal à 2x, ce qui
donnerait une ligne qui correspond à la
pointe parfaitement. C'est un très
exemple simplifié comme dans des ensembles de
données du monde réel,
la variable cible z serait
dépendant de plus d'une variable et
nous ne pouvons pas simplement calculer le coût
fonctionner et déterminer visuellement le meilleur
valeur des poids. Alors comment pouvons-nous
déterminer la meilleure valeur de w. Le meilleur
valeur de w, ou w au cas où vous en auriez
plusieurs
poids à optimiser, est déterminé par
un algorithme appelé descente de gradient.
La descente de gradient est une itération
algorithme d'optimisation pour trouver le
minimum d'une fonction. Pour trouver le
minimum d'une fonction utilisant le dégradé
descente, on fait des pas proportionnels à
le négatif du gradient du
fonctionner au point actuel.
Qu'est-ce que cela signifie? On commence au
hasard
valeur initiale de w. Appelons-le w0,
et disons que c'est égal à 0,2, et
nous commençons à faire des pas vers le vert
point qui vaut w = 2. Pour déterminer
dans quelle direction se déplacer, nous calculons
le gradient de la fonction de perte au
valeur actuelle de w, qui est 0,2.
La pente est donnée par la pente
de la tangente à w = 0,2,
et puis l'ampleur du pas
est contrôlé par un paramètre appelé le
taux d'apprentissage. Plus l'apprentissage est
grand
taux, plus le pas que nous faisons est grand, et le
plus le taux d'apprentissage est faible, plus
le pas que nous faisons. Alors on franchit le pas
et on passe à w1. w1 est essentiellement
calculé comme w0 moins le taux d'apprentissage
fois le gradient à w0. Ce
représente la première itération du
algorithme. A w1, on répète la même chose
processus de calcul du gradient à w1
et en utilisant le même taux d'apprentissage pour
contrôler l'ampleur du pas
vers le minimum. Nous ne cessons de répéter
cette étape encore et encore jusqu'à ce que nous
atteignions
le minimum ou une valeur du coût
fonction très proche de
minimum, dans un très petit prédéfini
seuil. Maintenant, au moment de choisir
l'apprentissage
taux, nous devons être très prudents en tant que
un taux d'apprentissage élevé peut conduire à de
grandes
étapes et finalement manquer le minimum.
En revanche, un faible taux d'apprentissage
peut entraîner de très petites étapes et
provoquant ainsi que l'algorithme prenne
beaucoup de temps pour trouver le point minimum.
Voyons maintenant comment chaque itération avec
un
un taux d'apprentissage de 0,4 affecte la façon
dont le
la ligne résultante correspond aux données de
gauche.
On initialise w à 0, ce qui veut dire z
est égal à 0.
C'est une ligne horizontale et donc le
le coût est élevé et la ligne est la plus possible
voir est un mauvais ajustement. Après le 1er
itération, w se rapproche de 2 et
car la pente est très forte à w=0,
la nouvelle valeur de w donne lieu à un
grosse baisse de la fonction de perte.
La ligne résultante correspond mieux que la
premier mais il reste encore de la place pour
amélioration. Après la 2ème itération, w
continue d’avancer vers w = 2.
Parce que la pente n'est pas aussi raide que
avant, le pas n'est pas aussi grand mais le
la fonction de coût continue de perdre de la valeur
et
la ligne résultante se rapproche de
la ligne la mieux ajustée idéale. Le même
l'observation est notée au 3ème
itération et la 4ème itération. Après
4 itérations, vous pouvez voir comment nous
sommes
presque là à w = 2, et le
la ligne résultante correspond presque à la
un nuage de points parfaitement. Avec chaque
itération, le poids est mis à jour de manière
c'est proportionnel au négatif de
le gradient de la fonction au
point actuel. Par conséquent, si vous
initialiser le poids à une valeur qui doit
le droit au minimum, puis le
un gradient positif entraînera w
se déplaçant vers la gauche vers le minimum.
Maintenant que nous comprenons comment
optimiser un
paramètre dont dépend une fonction,
nous sommes maintenant prêts à commencer à en
apprendre davantage
rétropropagation et comment les réseaux de
neurones
apprendre et optimiser leurs poids et
Les préjugés.

Backpropagation

pour résumer la formation


algorithme : tout d’abord, nous initialisons le
poids et biais par rapport aux valeurs aléatoires.
Alors,
nous répétons itérativement ce qui suit
étapes : 1. Calculer le réseau
sortie utilisant la propagation vers l’avant.
2. Calculez l'erreur entre le
la vérité terrain et l'estimation ou
sortie prévue du réseau.
3. Mettre à jour les poids et les biais
par rétropropagation. Répétez le
au dessus de trois marches
jusqu'au nombre d'itérations ou d'époques
est atteint ou l'erreur entre le
la vérité terrain et le résultat prévu est
en dessous d'un seuil prédéfini.

Vous aimerez peut-être aussi