Backpropagation

Introduktion till djupinlärning i Python

Dan Becker

Data Scientist and contributor to Keras and TensorFlow libraries

Backpropagation

ch2_3_v2.003.png

Introduktion till djupinlärning i Python

Backpropagation

ch2_3_v2.004.png

Introduktion till djupinlärning i Python

Backpropagation

ch2_3_v2.005.png

Introduktion till djupinlärning i Python

Backpropagation

ch2_3_v2.006.png

  • Gör det möjligt för gradientinlärning att uppdatera alla vikter i det neurala nätverket (genom att beräkna gradienter för samtliga vikter)
  • Bygger på kedjeregeln inom differentialkalkyl
  • Viktigt att förstå processen, men i praktiken används vanligtvis ett bibliotek som implementerar detta
Introduktion till djupinlärning i Python

Backpropagationsprocessen

  • Syftar till att skatta lutningen hos förlustfunktionen med avseende på varje vikt
  • Utför framåtpropagering för att beräkna prediktioner och fel
Introduktion till djupinlärning i Python

Backpropagationsprocessen

ch2_3_v2.013.png

Introduktion till djupinlärning i Python

Backpropagationsprocessen

ch2_3_v2.014.png

Introduktion till djupinlärning i Python

Backpropagationsprocessen

  • Gå tillbaka ett lager i taget
  • Gradienten för en vikt är produkten av:
    1. Nodvärdet som matas in i den vikten
    2. Lutningen hos förlustfunktionen med avseende på den nod vikten matar in i
    3. Lutningen hos aktiveringsfunktionen i den noden
Introduktion till djupinlärning i Python

ReLU-aktiveringsfunktionen

ch2_3_v2.022.png

Introduktion till djupinlärning i Python

Backpropagationsprocessen

  • Håll även koll på lutningarna hos förlustfunktionen med avseende på nodvärden
  • Lutningen för ett nodvärde är summan av lutningarna för alla vikter som utgår från noden
Introduktion till djupinlärning i Python

Nu kör vi en övning!

Introduktion till djupinlärning i Python

Preparing Video For Download...