PyTorch Tutorial 04 - Backpropagation - Theory With Example

แชร์
ฝัง
  • เผยแพร่เมื่อ 13 ธ.ค. 2024

ความคิดเห็น • 119

  • @fuma9532
    @fuma9532 3 ปีที่แล้ว +23

    Clear, simple, with an easy example... Just brilliant! Thank you so much, I wish more people made things simple :D
    I'm sharing this!

    • @patloeber
      @patloeber  3 ปีที่แล้ว +1

      thanks so much!

    • @fuma9532
      @fuma9532 3 ปีที่แล้ว

      @@patloeber Thank you man: you're doing a great job!

  • @vaibhavtiwari1084
    @vaibhavtiwari1084 11 หลายเดือนก่อน +1

    This is the best video I've seen for backprop, forward pass and how the values get updated. Classic!!

  • @Adarsh256
    @Adarsh256 4 ปีที่แล้ว +20

    you're a genius, I've been stuck on this step since ages. Thanks and keep going!!

    • @patloeber
      @patloeber  4 ปีที่แล้ว

      Glad you like it!

    • @jayceonsantana1405
      @jayceonsantana1405 3 ปีที่แล้ว

      i guess it's kind of off topic but does anybody know a good website to stream new tv shows online ?

    • @leonidaspreston3310
      @leonidaspreston3310 3 ปีที่แล้ว

      @Jayceon Santana Flixportal :D

    • @jayceonsantana1405
      @jayceonsantana1405 3 ปีที่แล้ว

      @Leonidas Preston Thanks, I signed up and it seems like a nice service :) Appreciate it !

    • @leonidaspreston3310
      @leonidaspreston3310 3 ปีที่แล้ว

      @Jayceon Santana No problem xD

  • @safine8354
    @safine8354 3 วันที่ผ่านมา

    Amazingly well-explained. In ten minutes i understand perfectly with this three essential steps how to compute the backward password. Thank you so much to help me in my path of self-learning

  • @kanewilliams1653
    @kanewilliams1653 5 หลายเดือนก่อน

    Best explanation of backprop i've ever seen! Phenomenal!

  • @davidcordova1773
    @davidcordova1773 3 ปีที่แล้ว +1

    this is the best explanation of backpropagation on youtube, thank u so much

    • @patloeber
      @patloeber  3 ปีที่แล้ว

      Glad to hear thar!

  • @djchrisi
    @djchrisi 2 ปีที่แล้ว +2

    Da hast du mich wirklich an die Hand genommen und alles ganz super erklärt! danke schön!

  • @choco4429
    @choco4429 3 ปีที่แล้ว +1

    Your video is clearer than my teacher's lecture. I subscribe directly

    • @patloeber
      @patloeber  3 ปีที่แล้ว

      thanks! glad yo hear that

  • @amitg2k
    @amitg2k 3 ปีที่แล้ว +3

    You just made it look so simple. One of the best tutorials in a long time. Many thanks.

    • @patloeber
      @patloeber  3 ปีที่แล้ว

      Glad you liked it!

  • @nj4089
    @nj4089 2 ปีที่แล้ว +9

    This is wonderful. I appreciate the simple example and translating to PyTorch. Too few videos connect the two. Thank you!

  • @johnhildenbrand9867
    @johnhildenbrand9867 ปีที่แล้ว

    First time I finally understand the chain rule in detail....thx!

  • @tanmaybhagwat3650
    @tanmaybhagwat3650 4 ปีที่แล้ว +14

    7:30 That's the craziest 1 I have ever seen.

    • @kaveen_93
      @kaveen_93 3 ปีที่แล้ว +1

      That's how we write 1 in Germany, assuming the tutor is from Germany.
      I believe this is done to ensure the clear difference visually between, 1 (one), I (uppercase i), l (lowercase l) etc,.

  • @jacobmoore8734
    @jacobmoore8734 9 หลายเดือนก่อน

    One quick note about linear regression @4:46, gradient methods are almost never used in practice because there is a closed form solution with pure linear algebra.

  • @sugamtyagi101
    @sugamtyagi101 4 ปีที่แล้ว +2

    I found your explaination of backpropogation very intutitive. I'm loving this playlist.

    • @patloeber
      @patloeber  4 ปีที่แล้ว

      Thank you 😊

  • @imdadood5705
    @imdadood5705 3 ปีที่แล้ว

    I have always noticed. Even the complicated topics can be easily explained when we simple numbers without going with the alphabets. Thanks, Python Engineer!

    • @patloeber
      @patloeber  3 ปีที่แล้ว

      glad to hear that :)

  • @greenmanhulk
    @greenmanhulk ปีที่แล้ว

    The best so far

  • @Kimthepowerfuljong-un
    @Kimthepowerfuljong-un ปีที่แล้ว

    the best video i could've ever find! thanksss!

  • @arslanali900
    @arslanali900 ปีที่แล้ว

    Amazing explanation! good job man.

  • @istiaquerezaauyon1
    @istiaquerezaauyon1 หลายเดือนก่อน

    Great video on the topic!

  • @josepoktopus8924
    @josepoktopus8924 9 หลายเดือนก่อน

    Simple and precise, go ahead with your great work.

  • @Vikram-wx4hg
    @Vikram-wx4hg 3 ปีที่แล้ว

    Excellent clarity and explanation!

  • @我想學英文
    @我想學英文 2 ปีที่แล้ว +1

    8:10
    I need learn some calculate.
    to figure out why the answer is 1.

  • @dfdiasbr
    @dfdiasbr 9 หลายเดือนก่อน

    😱 what an explanation! Thanks!!

  • @ericohana9650
    @ericohana9650 3 ปีที่แล้ว

    Short, sweet and to the point, thank you!

  • @hamzawi2752
    @hamzawi2752 ปีที่แล้ว

    Thank you so much for your extraordinary explanation. Please keep up this informative video.

  • @我想學英文
    @我想學英文 2 ปีที่แล้ว

    9:53 final gradient = -2
    dLoss/dw = -2
    12:36
    w.grad mean dLoss/d w
    h.grad dLoss/d h
    g.grad dLoss/d g

  • @alirezamohseni5045
    @alirezamohseni5045 10 หลายเดือนก่อน

    that was very useful, thank you so mush

  • @maithilijoshi796
    @maithilijoshi796 ปีที่แล้ว

    thankyou for the explanation

  • @justlasse7773
    @justlasse7773 ปีที่แล้ว

    Thank you so much!

  • @xinyi9015
    @xinyi9015 3 ปีที่แล้ว

    It's really helpful! Thank you!

  • @nikcru
    @nikcru 4 ปีที่แล้ว +10

    i request you to make a Udemy course out of these video series, very nicely taught.

    • @patloeber
      @patloeber  4 ปีที่แล้ว +1

      thanks! maybe in the future! What kind of course would you be interested in?

    • @thomasgeudens7131
      @thomasgeudens7131 4 ปีที่แล้ว +6

      @@patloeber machine learning from zero to hero?

    • @lambsauce5445
      @lambsauce5445 3 ปีที่แล้ว

      @@patloeber a full course. Please. It'd go really well. Please make it free tho...

    • @robosergTV
      @robosergTV 3 ปีที่แล้ว +1

      @@lambsauce5445 a free course is the one you watch LOL

  • @adityasahu96
    @adityasahu96 3 ปีที่แล้ว

    extremely well explained.

  • @adeelahmad1066
    @adeelahmad1066 11 หลายเดือนก่อน

    Thanks, I like this tutorial

  • @hpaghababa8111
    @hpaghababa8111 3 ปีที่แล้ว +2

    That was a great tutorial and I enjoyed it. Before watching this video I used to calculate gradients through a painful operations!!! It would be interesting if you could have other examples with a bit complicated functions like multi-rule functions (say absolute value function for example). Moreover, if you give an exercise to do and attach a solution, it would be great for learners to practice, I guess.

  • @alirezaasadi9109
    @alirezaasadi9109 4 ปีที่แล้ว

    Keep on going ... Very very useful ...

  • @yangthomas5064
    @yangthomas5064 10 หลายเดือนก่อน

    love it ,good

  • @sb-tq3xw
    @sb-tq3xw 4 ปีที่แล้ว +1

    thanks a lot for this video, keep going!!!

    • @patloeber
      @patloeber  4 ปีที่แล้ว

      Glad you like it :)

  • @Andrey-dh6sx
    @Andrey-dh6sx 3 ปีที่แล้ว

    Thanks, very detailed explanation, helped a lot!

    • @patloeber
      @patloeber  3 ปีที่แล้ว +1

      Great to hear!

  • @AKSHAY99552
    @AKSHAY99552 ปีที่แล้ว +1

    why the calculation of d (y_pred - y)/d y_pred = 1 why not -1 ?

  • @minipy3164
    @minipy3164 3 ปีที่แล้ว

    This is the best explanation for backpropagation in the entire TH-cam

    • @patloeber
      @patloeber  3 ปีที่แล้ว

      thanks so much!

  • @muntasiradnan6321
    @muntasiradnan6321 9 หลายเดือนก่อน

    so after backward pass 1st iteration, first we need to reset gradient, right? then start a new iteration like update weight, forward pass and so on?

  • @ezdul2404
    @ezdul2404 ปีที่แล้ว

    Great video, nice coding examples, but at 7:57 ds/dy^ should be -1 and not 1

    • @rodrigosalazar6112
      @rodrigosalazar6112 ปีที่แล้ว

      It's 1. In this case it is taking the derivative with respect to y^, not y. This means y is treated as a constant here with regards to the derivative. The y gets dropped and the y^ turns into just it's coefficient which is 1.

  • @dwhdai
    @dwhdai 4 ปีที่แล้ว

    great videos, thanks for doing these!

    • @patloeber
      @patloeber  4 ปีที่แล้ว

      glad you like it!

  • @HieuTran-rt1mv
    @HieuTran-rt1mv 4 ปีที่แล้ว

    Great! So easy to understand. Thank you so much

    • @patloeber
      @patloeber  4 ปีที่แล้ว

      Glad you like it!

  • @castilTube
    @castilTube 4 ปีที่แล้ว

    Great explanation!. Thank you very much for this video. Your channel is fantastic!

    • @patloeber
      @patloeber  4 ปีที่แล้ว +1

      thanks for the feedback :)

  • @albertog2196
    @albertog2196 4 ปีที่แล้ว

    Thanks. Good explanation

  • @shrawansahu9500
    @shrawansahu9500 2 ปีที่แล้ว

    It was Brilliant can you please add playlist for Pytorch with NLP

  • @vipulritwik
    @vipulritwik 4 ปีที่แล้ว

    Very well taught

  • @InfoArduino
    @InfoArduino 3 ปีที่แล้ว

    Very good!

  • @ashishpondit8183
    @ashishpondit8183 4 ปีที่แล้ว

    thanks man big help

    • @patloeber
      @patloeber  4 ปีที่แล้ว +1

      Glad it is helpful!

  • @monsterpets5899
    @monsterpets5899 ปีที่แล้ว

    love it

  • @Kenbomp
    @Kenbomp 3 ปีที่แล้ว

    Nice to have a use for calculus

  • @jorgemercadog
    @jorgemercadog 3 ปีที่แล้ว

    Thank you!!

    • @patloeber
      @patloeber  3 ปีที่แล้ว

      glad you like it!

  • @TheOraware
    @TheOraware 3 ปีที่แล้ว

    Hi Patrick , you are great thanks for it. At 6:35 doing backward pass you mentioned dloss/dy^ , i think it should be ds/dy^ isnt? Please clear my confusion

    • @patloeber
      @patloeber  3 ปีที่แล้ว

      No what I mentioned is correct. Maybe it gets clearer at minute 9 when I explain the steps in more detail. While doing the backward pass we need dloss/dy^ as an intermediate result for the chain rule

  • @mykun8737
    @mykun8737 2 ปีที่แล้ว

    thanks, How simple everything is when I hear you draw pictures with a pen and explain

  • @rohit2761
    @rohit2761 2 ปีที่แล้ว

    I have installed torch in my system. But in VS code, it shows "No module named torch". If i create virtual env and then pip install torch, it works. But Not In VS Code.
    Please help
    Thanks

  • @panosparaskevopoulos5043
    @panosparaskevopoulos5043 11 หลายเดือนก่อน

    im 13 yo and i can confirm that some experiments with pytorch, help of chat gpt and a lot of thinking i manage to follow along (to be noted: i havent even been introduced to calculus or anything similar and im not a native speaker as you can see)

  • @steven9492
    @steven9492 2 ปีที่แล้ว

    great video! the only thing complicated is this guys "1".

  • @sanjaykrish8719
    @sanjaykrish8719 3 ปีที่แล้ว

    PyTorch should have this as their official tutorial..

  • @manideepgupta2433
    @manideepgupta2433 4 ปีที่แล้ว

    hey!! your videos are very clear! but i have a small question in this, if x,y are 2 separate variables, then dz/dx=x'y+yx' ? why did you consider other variable as a constant? at 2:55

    • @patloeber
      @patloeber  4 ปีที่แล้ว +3

      Thanks for watching! In this toy example the function is x*y, so df/dx=y. We are using partial derivatives here, that means the other one is constant. But we also have to do the partial derivative for y then

  • @sandroalexormeno
    @sandroalexormeno 4 ปีที่แล้ว

    This is a very useful tutorial. But i need a little bit explanation.
    when you said (4:47) dLoss/ds =ds^s/ds = 2s,
    but it,s not simple for me, why it's equal to 2s ???
    Please give me a way or a route to understand it.

    • @sandroalexormeno
      @sandroalexormeno 4 ปีที่แล้ว

      OH, I found my own answer

    • @patloeber
      @patloeber  4 ปีที่แล้ว +1

      Glad you like it!

    • @pokemonXD1
      @pokemonXD1 4 ปีที่แล้ว

      Could either of you explain this to me please? I don't understand how we'd get 2s.

    • @pokemonXD1
      @pokemonXD1 4 ปีที่แล้ว

      Oh wait. dloss/ds where loss = s^2 so it's dloss = s^2 ds => dloss = 2s.

  • @gastroacid1971
    @gastroacid1971 ปีที่แล้ว

    Strange it makes you disable gradients with no_grad() in order to actually subtract them. The software doing the calculus for you makes it much easier than writing the code manually in C++.

    • @lucyfrye6723
      @lucyfrye6723 ปีที่แล้ว

      I did just that. It helps if you use a good linear algebra library, without it I got completely lost in endless for loops and keeping track of indices. By using the Eigen library , as if by magic, all the equations reduced to about 8 lines of code, it was one of the most gratifying pet projects I ever did, seeing four screens of unreadable code get reduced to a golden nugget. It took me about 8 days, including doing it the wrong way and learning the new library. I can recommend it!

  • @JohnFerrier
    @JohnFerrier 3 ปีที่แล้ว

    Why is your 1 an upside down v? It makes things difficult to follow sometimes

  • @shaheryarshafi
    @shaheryarshafi 4 ปีที่แล้ว +3

    i didn't understand backward pass clearly how we got -2

    • @akashverma4280
      @akashverma4280 4 ปีที่แล้ว +1

      it is based on the chain rule. Can you explain exactly what you didn't understand? I will try to help.

  • @whaysdsdsd973
    @whaysdsdsd973 2 ปีที่แล้ว

    Thank you so much (T^T), it made me understand.

  • @ahmetcihan8025
    @ahmetcihan8025 4 ปีที่แล้ว

    Hi Patrick my friend could you do c++ opencv tutorials also ? Thanks.

    • @patloeber
      @patloeber  4 ปีที่แล้ว +1

      Good suggestion! Maybe in the future :)

  • @vatsal_gamit
    @vatsal_gamit 4 ปีที่แล้ว

    Can anyone please tell me how to remove that extra path in output terminal in VS code?? How to get clean output

    • @patloeber
      @patloeber  4 ปีที่แล้ว

      Can be found in the settings for the code runner extension

  • @my_opiniondemocracy6584
    @my_opiniondemocracy6584 2 ปีที่แล้ว

    your one dosent seem to be a one...it seems like a big lamda... please try to correct it

  • @djsosbxbdirndxnkcbebxhxbe
    @djsosbxbdirndxnkcbebxhxbe 5 หลายเดือนก่อน +1

    My ears are bleeding when i hear you pronounce Z like C

  • @shamilkaka134
    @shamilkaka134 6 หลายเดือนก่อน

    Please it is Zeeeeee not Ceeeee ....... Thank you for great video

  • @gorkemvids4839
    @gorkemvids4839 2 ปีที่แล้ว

    It could be better with proper naming

  • @priyanshujain22f
    @priyanshujain22f 3 หลายเดือนก่อน

    How is that a 1? More like ^

  • @zaiyrsharsheyev
    @zaiyrsharsheyev 2 หลายเดือนก่อน

    Amazing explanation. Thank you so much!

  • @kevinliao9938
    @kevinliao9938 7 หลายเดือนก่อน

    This is really helpful. Thank you!