Diffusion Models From Scratch | Score-Based Generative Models Explained | Math Explained

Поделиться
HTML-код
  • Опубликовано: 23 окт 2024

Комментарии • 103

  • @outliier
    @outliier  14 дней назад +46

    Since these videos take an enormous amount of time (this one took about 300 hours), would you like to see, additionally, paper explanations in the style of Yannic Kilcher (www.youtube.com/@YannicKilcher) ? I could cover papers very quickly after they are released and also cover topics I wouldn’t do an animated video for. Let me know what you think :)

    • @r00t257
      @r00t257 14 дней назад

      1000% yessssss ❤❤❤🎉

    • @DonCat-sc3qo
      @DonCat-sc3qo 14 дней назад

      Sure 👍🏻

    • @suraj7984
      @suraj7984 14 дней назад +4

      Sure! But I would prefer a deep dive once in a while to many simple paper explanations. There aren't many (video) resources for diffusion that go in such depth. So this is really great, thanks a lot for doing the video!

    • @outliier
      @outliier  14 дней назад

      @@suraj7984 gotcha, yea I will keep doing normal videos. Was just wondering if other formats are also interesting

    • @nirajpudasaini4450
      @nirajpudasaini4450 14 дней назад

      I think you should do both ... sorry. You explain in such a better way. Thanks alot for doing this.

  • @huytruonguic
    @huytruonguic 17 часов назад

    love your mathematics explanation and visualization, no fancy transitions were needed, just slow, simple, and clear english phrases

  • @Cyan-g2g
    @Cyan-g2g 14 дней назад +8

    Wow! I did not expect this video to go this deep. But this is awesome! Please make more in depth explanation like this. It’s clear a lot of hard work went into it and the animation is sooo elegant

  • @Xynolphia
    @Xynolphia 3 дня назад

    Most of the diffusion models I've watched so far and mainly using images to sample. This video is really great in terms of understanding the fundamentals. Would love to see more in depth explanation from zero to hero.

  • @venkatbalachandra5965
    @venkatbalachandra5965 14 дней назад +3

    I absolutely love how you started from scratch, as in what the underlying PDF was. I'm working on a project on diffusion models and I don't know anything about it, and all the resources available are catered towards those with prerequisites I don't have yet, until this one. I haven't yet watched the whole thing, but I'm going to keep coming back to this till I understand everything in this video. Cheers mate!

  • @tilaksharma7768
    @tilaksharma7768 10 дней назад

    A series on topics like this would be a gold mine. Great work!!

  • @DongyeopKang-w3o
    @DongyeopKang-w3o 5 дней назад

    Hi. Thank you so much for providing this incredibly great video. I've found this to be the best resource for understanding the derivation of score functions. I would love to see you cover model-based diffusion as your next topic!

  • @francescodesantis3023
    @francescodesantis3023 4 дня назад

    A full series in generative diffusion models would be awesome

  • @BenjaminEvans316
    @BenjaminEvans316 6 дней назад

    Your videos are great. You do well at taking very complex maths topics and walking through them. The summary at the end also helps.

  • @novantha1
    @novantha1 13 дней назад

    Your videos are somehow simultaneously timely and timeless. Your content is absolutely appreciated and I wish you the best in your endeavors.

  • @Тима-щ2ю
    @Тима-щ2ю 11 дней назад

    Thank you for your work! I have started to learn about diffusion models and found that this is more complex idea than VAE idea and GAN idea. However, the people who try to explain these complex concepts to others are very impressive!

  • @איילתדמור
    @איילתדמור 14 дней назад +1

    Amazing video, thank you. I learned most of it a year ago in university but this was a great refresher which also provided me with new insights to some of the stuff. I really liked the conclusion of the Denoising Score Matching part, very beautiful.

  • @phucnguyenthanh9223
    @phucnguyenthanh9223 14 дней назад +1

    1 year. See you back with a really easy to understand explanation. Thank you!

    • @outliier
      @outliier  14 дней назад +4

      Will be more active!

  • @JieqiLiu-f1o
    @JieqiLiu-f1o 5 дней назад

    This is a brilliant video!!!!!!!! I almost addressed all the questions I have about score matching and how it is related to diffusion model.

  • @InturnetHaetMachine
    @InturnetHaetMachine 11 дней назад +1

    Regarding your pinned comment. No offense to Yannic, but your explanations are 10x better. The topics you've covered you actually understand, you explain not only what is going on, but also why. That, and you going into mathematical explanations are really appreciated. Don't worry about the quantity, it's easy to read a paper, and put surface level explanations out for more views, what you're doing is more valuable. Your videos are a treasure for amateur Deep Learning hobbyists like me who want to dig deeper into this field.

  • @김학규-q2p
    @김학규-q2p 9 дней назад

    thanks, thanks, thanks! you finally gave me missing explanations in those diffusion papers!

  • @chocobelly
    @chocobelly 12 дней назад

    The mathematical derivation and explanation is such a lifesaver, I also never really understood the underlying meaning when reading the diffusion models but now everything clicked. Thank you so much for the videos, really enjoyed it. Please make more of such videos. Liked and subscribed : ).

  • @gajendersharma417
    @gajendersharma417 9 дней назад

    Thankyou so much for making this video ! hatsoff to this elegant explanation!

  • @pedrambazrafshan9598
    @pedrambazrafshan9598 День назад

    This is a great video explaining in depth. Really enjoyed it. Would it also be possible for you to make implementation videos as well, like what you did for DDPM? Particularly, I am interested in videos explaining how to condition DDPM, for example, in engineering domain that requires the model to be conditioned with physics.

  • @talhaahmed6488
    @talhaahmed6488 10 дней назад

    What an amazing video! I did not expect the video to contain the derivations which I have personally struggled to search for. If its not too much, can you do a pytorch implementation of VP-SDE or SDE - DDPM/DDIM? Your previous video of DDPM in Pytorch was extremely useful and would appreciate it if a similar video for this is possible. Finally, love the work you put in this. This channel is a gem for AI enthusiasts.

    • @outliier
      @outliier  10 дней назад

      @@talhaahmed6488 thank you so much for the nice comment! I will do an implementation video after the next one!

  • @laurenznagler7405
    @laurenznagler7405 12 дней назад

    Very nice introduction to the topic!

  • @arpanpoudel
    @arpanpoudel 13 дней назад

    I used Score-SDE in my thesis and I have my defense next week :D what a timing

  • @guillermogarciamanjarrez8934
    @guillermogarciamanjarrez8934 9 дней назад

    more videos on diffusion models would be great

  • @joshp8820
    @joshp8820 14 дней назад

    youtube giving good content??? i’ve been looking for exactly this lmao, thanks for your work

  • @boydkane5469
    @boydkane5469 11 дней назад

    Had an epiphany watching you explain so many things that I never fully grilled, thank you so much

  • @tell2rain
    @tell2rain 12 дней назад

    excellent work done by you, thanks for your explaining!

  • @alenqquin4509
    @alenqquin4509 6 дней назад

    nice video for diffusion models!

  • @ihmejakki2731
    @ihmejakki2731 11 дней назад

    Every time you say theta I hear feta. Very nice video.

    • @outliier
      @outliier  11 дней назад

      @@ihmejakki2731 bon appetit

  • @nicolasdufour315
    @nicolasdufour315 14 дней назад +2

    Great video! Would be great to see a video on flow matching in the same style!

    • @outliier
      @outliier  14 дней назад +4

      @@nicolasdufour315 That actually is my plan to do for the next video haha

    • @MrMIB983
      @MrMIB983 14 дней назад

      ​@@outliierI really want that video bro, awesome job!

  • @DenisShiryaev
    @DenisShiryaev 14 дней назад

    Thank you for the video, love it!

  • @RadientAI
    @RadientAI 14 дней назад

    I haven't seen it yet, but pretty sure is an awesome video. Keep it up man!

  • @leerichard5542
    @leerichard5542 9 дней назад

    u finally come back! love ur video 🎉

  • @outliier
    @outliier  14 дней назад

    32:38 To correct myself here, the paper gives explanation how to derive the sampler. I personally just find that approach much harder to understand and generally the papers don’t go into too much details for their derivations.

  • @tell2rain
    @tell2rain 12 дней назад +2

    7:35 i have a question, the second line -Ep(x)[
    abla_x s_theta(x)] = -\int p(x)
    abla_x s_theta(x) dx, but you wrote a positive sign?

    • @Topakhok
      @Topakhok 11 дней назад +2

      There was another mistake with a sign, which cancels this one out. He was wrong with a sign after integrating by parts (after that it should have changed and be plus instead of minus)

  • @00osmboy
    @00osmboy 9 дней назад

    great work

  • @hahiZY
    @hahiZY 5 дней назад

    thank you for the awesome video!!

  • @swaystar1235
    @swaystar1235 12 дней назад

    Id love to see a video on training video models cheaply like you did for image models with wurchsten

    • @outliier
      @outliier  12 дней назад

      @@swaystar1235 Unfortunately even doing Würstchen style video models is still super expensive and there are many things that you have to solve first outside the model :/

  • @hanzhiyin5239
    @hanzhiyin5239 10 дней назад

    Thanks for your hard work! Amazing explanation! Just want to check the squared equation at 5:55. Can you explain why $\mathbb{E}[p(x)] = \int p(x) dx$? I feel like the equation has something missing...

  • @NoahElRhandour
    @NoahElRhandour 14 дней назад

    schön, dich mal wieder zu sehen \o/

    • @outliier
      @outliier  14 дней назад

      @@NoahElRhandour hehe

  • @lorenzovannini82
    @lorenzovannini82 9 дней назад

    Thank you so much. Wonderful Wonderful Wonderful

  • @vinc6966
    @vinc6966 14 дней назад

    Really nice explanation, intuitive but also math oriented. Now I am looking forward for implementation

    • @outliier
      @outliier  12 дней назад +1

      @@vinc6966 My plan is to do Flow Matching next and then an implementation tutorial :)

    • @vinc6966
      @vinc6966 12 дней назад +1

      @@outliier ah yes, GANs, diffusion, score-based models, and flow matching, the four horsemen of generative AI, keep up the good work! :))

    • @Тима-щ2ю
      @Тима-щ2ю 11 дней назад +1

      @@outliier Yeah, Flow Matching sounds interesting. There are not a lot of explanations in the internet. implementation tutorial is also very cool

  • @anumanchi1
    @anumanchi1 7 дней назад

    Can you make an implementation video for Score SDE's ?

  • @dmitriizhilenkov2673
    @dmitriizhilenkov2673 13 дней назад

    Wow! Great job. Many thanks for sharing =)

  • @waynenilsen3422
    @waynenilsen3422 13 дней назад

    i know its a short video but some of the syntax may be confusing eg the subscript on the \mathbb{E} that is p(x) in a financial context we often use things such as \mathbb{E}_t [ h(X_T) ] = the conditional probability of h(X_T) where X is a stochastic process creating a filtration such as so it is equal to \mathbb{E} [ h(X_T) | \mathcal{F}_t ]
    I know its a totally different domains but oftentimes notation like this can be dripping with meaning, so, what is the _meaning_ of the subscript p(x) and what is the _meaning_ of the double bar ( ||_2^2 ) in the expectation ? is that the L2 Norm? timestamp 8:17

  • @Coding-for-startups
    @Coding-for-startups 9 дней назад

    What about story visualization video?

  • @nanjiang2738
    @nanjiang2738 13 дней назад

    awesome!

  • @AnanthRachakonda
    @AnanthRachakonda 8 дней назад

    This is epic!

  • @venkatbalachandra5965
    @venkatbalachandra5965 14 дней назад

    If you want to make videos with quicker production, maybe you could use a whitescreen and write everything out, so you can still explain it intuitively but quicker.

  • @高鑫-i2r
    @高鑫-i2r 14 дней назад

    It appears that the minus sign in the integration by parts was mistakenly written as a plus

  • @NYExplains
    @NYExplains 8 дней назад

    can you give the source for the math ? i want to try a hands - on approach

    • @outliier
      @outliier  7 дней назад

      Take a look at the papers I linked. The math in the video is taken from all of them together, however some of the things are not really found anywhere in them unfortunately. So this took a while

  • @NikolajKuntner
    @NikolajKuntner 14 дней назад

    thx

  • @SY-fb7yc
    @SY-fb7yc 14 дней назад

    Can you explain more about classifier free guidance code implementation during training? 😂

  • @oguzhanercan4701
    @oguzhanercan4701 11 дней назад

    I wonder that, for a year, did you studied on this, only? Because I really wonder that being able to go this much deep takes a year?

    • @outliier
      @outliier  11 дней назад +1

      @@oguzhanercan4701 no I was just doing bunch of other things too and didn‘t spend so much time always on the video.

    • @oguzhanercan4701
      @oguzhanercan4701 11 дней назад

      @@outliier To ask more clearly, have you been working on the basics of score matching and diffusion models for the last year? Assuming that you are using diffusion models at Luma, you also studied advanced topics on the related subject.

    • @outliier
      @outliier  11 дней назад

      @@oguzhanercan4701 yea I have been mostly working with diffusion models over the last 2 years

  • @tejomaypadole4392
    @tejomaypadole4392 14 дней назад +4

    Bro also explained why - (a - b) = (b - a) 😂😂

    • @outliier
      @outliier  14 дней назад

      @@tejomaypadole4392 no details left out haha

  • @SY-fb7yc
    @SY-fb7yc 14 дней назад

    Love the music background, very relaxing when learning, pls don’t change! Thx!

  • @NikolajKuntner
    @NikolajKuntner 10 дней назад

    Calling ∇s stretches terminology a bit, right? Given s is a gradient vector field itself.
    Cool effort, thanks for going through all the manipulations. As for designing a read thread for the video, I'm not sure fully sure why you work 10 minutes for the E[s^2]+... term, but then in the explained denoising approach it's not really showing up anymore.
    Last note: Unlike Lagrang-ian dynamics, Langevin dynamics is not Langev-ian dynamics. But I think Langevin is still on the easier side to pronounce - don't be afraid.

  • @denisfitzpatrick6781
    @denisfitzpatrick6781 7 дней назад

    Music is unhelpful and distracting.

  • @madrooky1398
    @madrooky1398 14 дней назад +19

    Please don't do piano background it is super annoying and distracting. Thanks

    • @outliier
      @outliier  14 дней назад +7

      @@madrooky1398 interesting. I found it much more comforting and giving 3B1B vibes. Will consider

    • @amortalbeing
      @amortalbeing 14 дней назад +2

      @@outliier I second this. but also you've done a wonderful job.

    • @outliier
      @outliier  14 дней назад +2

      @@amortalbeing thanks for the feedback. Should do a poll at some point I guess

    • @DonCat-sc3qo
      @DonCat-sc3qo 14 дней назад +3

      +1 , the piano music is distracting. If one likes it, he can overlay it himself.

    • @valentinfunk202
      @valentinfunk202 14 дней назад +1

      FWIW I liked the piano because it calms me down when I get frustrated from not understanding a step 😃

  • @Suro_One
    @Suro_One 14 дней назад

    This technology is obnoxiously abstracted beyond usefulness. The mathematical approach is also likely flawed and misses nuance. AMI is better.

    • @outliier
      @outliier  12 дней назад

      @@Suro_One what is AMI?