Max Pooling in Convolutional Neural Networks explained

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

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

  • @deeplizard
    @deeplizard  6 лет назад +6

    Check out the corresponding blog and other resources for this video at: deeplizard.com/learn/video/ZjM_XQa5s6s

    • @deeplizard
      @deeplizard  4 года назад

      Thanks, Daniel! We did go to university in the US, but we've graduated already :)

  • @joppe191
    @joppe191 4 года назад +87

    These videos are more useful than half a year of a university course on neural networks. Thanks for making them!

  • @saidul14319
    @saidul14319 6 лет назад +66

    The Way you explain and then end up with an example of code it's really nice way to grasp!!!

  • @jackmaison4209
    @jackmaison4209 5 лет назад +25

    I beg you! Keep making these videos. Your videos just light up my inner neural network.

  • @takauyamurengwa1250
    @takauyamurengwa1250 3 года назад +1

    u are such an awesome teacher! i am medical doctor with zero background to ML and your playlists are my go to place to grasp concepts before i dive in deep. Im grateful
    luv from ZIMBABWE

  • @codingtheworld674
    @codingtheworld674 3 года назад +3

    0:19 What is Maxpooling?
    5:42 Why do we use Maxpooling?
    7:06 Example for other types of pooling
    7:28 How is it done on code?
    Awesome explanation!

    • @deeplizard
      @deeplizard  3 года назад

      Added to the description. Thanks so much!

  • @n-vanb8908
    @n-vanb8908 2 года назад +2

    My new favorite channel. It has saved me at times in my undergrad

  • @kushagrachaturvedy2821
    @kushagrachaturvedy2821 4 года назад +6

    I've always struggled to understand pooling and this to-the-point explanation was the missing piece in the puzzle. I cannot thank you guys enough for the great work and taking the time to explain everything in so much detail. I owe so much of my knowledge of Deep learning to this channel

  • @CosmiaNebula
    @CosmiaNebula 4 года назад

    0:48 intro
    1:40 example
    4:25 toy example
    5:40 why max pooling
    7:27 Keras code

  • @BlackHermit
    @BlackHermit 3 года назад +5

    I love the "Hey, what's going on, everyone?" at the beginning. :)
    Great explanations, very clear and concise.

  • @jaidev2717
    @jaidev2717 4 года назад +6

    Have I found the best Deep learning channel on youtube? Um, I guess so!

  • @abdullahketeldijk8936
    @abdullahketeldijk8936 6 лет назад +5

    This is the best channel for machine learning on youtube! Thank you so much you really helped me out when I was studying for my exams. Keep up the good work!

    • @deeplizard
      @deeplizard  6 лет назад

      Glad to hear that Abdullah! Thank you!

  • @hussamsoufi1825
    @hussamsoufi1825 5 лет назад +1

    This video is a major reason why I got a job as a computer vision ML eng. Thank you a lot!

    • @deeplizard
      @deeplizard  5 лет назад

      Woah, awesome! Thanks for sharing, Sam! Were you asked about how max pooling is implemented in your interview?

  • @crackbad
    @crackbad 3 года назад +3

    Having watched your great explanatory videos on CNN and Zero padding, I am actually going to give a thumbs up on every video of yours I see before I even start watching! :)

  • @randomforrest9251
    @randomforrest9251 3 года назад +1

    Probably the most intuitive explanation I have ever seen =)

  • @1sankey2
    @1sankey2 4 года назад +5

    Hey first of all I thank you for uploading this series, secondly "Deeplizard sounds cool and unorthodox" and lastly I liked the way you structured this entire series, short and crisp at the same time easy to understand and lot to learn for a newbie like me. Keep up the good work.

  • @ashishrana9836
    @ashishrana9836 4 года назад +1

    this is the best explanation video i have ever heard in my life.

  • @fahadbshahid
    @fahadbshahid 4 года назад +1

    Now this is as simple as it can be explained. Great work.

  • @moosen8249
    @moosen8249 6 лет назад +3

    I'm blown away how good these explanation are!

  • @MarkedMuichiro828
    @MarkedMuichiro828 Год назад +1

    Thank you for making this excellent video!

  • @prasadsawant1358
    @prasadsawant1358 5 лет назад +1

    i am currently bing watching all your cnn videos, great work with top quality content.

  • @NumentaTheory
    @NumentaTheory 6 лет назад +6

    This is a great series! You do a wonderful job explaining and teaching. Thanks!

  • @petercourt
    @petercourt 4 года назад +1

    Super clear and helpful video. Many thanks!

  • @qusayhamad7243
    @qusayhamad7243 4 года назад +1

    thank you very much for this clear and helpful explanation.
    Words fail to express my gratitude.

  • @erichmarx1058
    @erichmarx1058 5 лет назад +2

    That's just the best explanation out there. Keep up the great work!

  • @jeetenzhurlollz8387
    @jeetenzhurlollz8387 5 лет назад +2

    best cnn tutorial ever...that girl rocks

  • @msuegajnriorpenda9745
    @msuegajnriorpenda9745 2 года назад +1

    Thanks for these great explanations

  • @randkill8554
    @randkill8554 4 года назад +1

    Really Nice Explanation. TNX

  • @Manu-gl6pd
    @Manu-gl6pd 2 года назад +1

    Thank you for these wonderful videos

  • @nerkulec
    @nerkulec 7 лет назад +2

    Thank you for continuing the series!

  • @oaomybb
    @oaomybb 5 лет назад +2

    extremely simple and easy to understand. Love it. Thank you.

  • @vaishvaripatel4029
    @vaishvaripatel4029 4 года назад +1

    perfectly explained... thanks much

  • @waelchabir5818
    @waelchabir5818 6 лет назад +3

    I've just discovered your channel, really the video is clear and your way of presenting things made it easy to understand.
    Big thumbs up !

    • @deeplizard
      @deeplizard  6 лет назад +1

      Thanks, Wael! Glad to have you here!

  • @abdullahmoiz8151
    @abdullahmoiz8151 5 лет назад +1

    Thanks the visualizations are excellent

  • @janeh9962
    @janeh9962 10 месяцев назад +1

    thanks for this video, it was super helpful !

  • @alifia276
    @alifia276 3 года назад +1

    Thank you so much for putting together this series, it has really helped me with understanding concepts behind deep learning:)

  • @jasonzhang6534
    @jasonzhang6534 4 года назад +1

    thanks for explaining. really helpful and easy to understand!

  • @shaikhadnan7265
    @shaikhadnan7265 4 года назад +1

    thank you soooo much!!!! this was very hard for me to understand

  • @jeffeDavid1
    @jeffeDavid1 6 лет назад +4

    Really good video, congrats!! Better than tensorflow guides.

  • @alfianabdulhalin1873
    @alfianabdulhalin1873 6 лет назад +2

    Ms Lizard... I love ure videos. Explanations are very clear with neat illustrations/animations! :)

  • @ThomasRStevenson
    @ThomasRStevenson 5 лет назад +3

    I have a question. During the video on zero padding, you indicated that padding was useful to maintain the size in the original matrix. In your example in this video you include padding='same' on both of your Conv2D layer. But then you include a MaxPooling2d layer which cuts in the matrix from 20x20 to 10x10. This seems to negate or contradict the benefits of the padding='same' on the Conv2D layers. Please explain why keeping the original size of the matrix is good for the Conv2D layer, while reducing the original size of the matrix is good for the MaxPooling2d layer. Thanks!

    • @deeplizard
      @deeplizard  5 лет назад

      When doing a convolution operation, if not using padding, then the data at the edges of the images will be completely thrown away and lost. To prevent this data loss, we use padding. Max Pooling, on the other hand, will indeed reduce the image size, but it does not throw data away. The original data from the image is used in the pooling operation to create the lower resolution image. Let me know if this makes sense.

    • @ThomasRStevenson
      @ThomasRStevenson 5 лет назад

      @@deeplizard I understand the reason for the padding (to not lose data), but I'm not sure I understand your comment regarding pooling "does not throw any data away". Given a 2x2 filter, it looks at 4 items in the image, and uses the max value, and throws the other 3 away. So we go out of our way (padding) to lose as little as possible with the Conv2D operation, just to lose 75% of the image with the polling operation. everyone does it this way, so I know it is right. I simply can't wrap my mind around why this is not an issue.

  • @chetanbuye9822
    @chetanbuye9822 6 лет назад +1

    Excellent and Detailed explanation. Thanks !!

    • @deeplizard
      @deeplizard  6 лет назад

      Thanks, chetan! Glad you liked it!

  • @sardormamarasulov3352
    @sardormamarasulov3352 6 лет назад +2

    Great explaining.Thank u very much.

  • @user-qp6fw3br1u
    @user-qp6fw3br1u 2 года назад +1

    Such a great video !!!

  • @lamnguyentrong275
    @lamnguyentrong275 3 года назад +1

    thank you, really nice explaination

  • @deepaksingh9318
    @deepaksingh9318 6 лет назад +1

    Awesome again.. Deep learning is "Simple learning" now with the way explain 😊👍

  • @jesuslopez3306
    @jesuslopez3306 4 года назад +1

    You’re marvellous, thanks very much!!!

  • @algorithmo134
    @algorithmo134 7 месяцев назад

    At 7:37, why do you have dense layer as the first layer in CNN?

  • @carolinemimeault3668
    @carolinemimeault3668 4 года назад +1

    Thank you for this great explanation!

  • @arturocabre6189
    @arturocabre6189 4 года назад

    So clearly explained, awesome job!

  • @theepoch1354
    @theepoch1354 5 лет назад

    Just what i was looking for. Thanks!

  • @kaeliflanagan5213
    @kaeliflanagan5213 4 года назад +1

    Your videos are amazing!! Keep it up :)

  • @김진우-k2z
    @김진우-k2z 4 года назад +1

    I'd really appreciate this awesome video. It's very helpful for my study.

  • @AdrianConley
    @AdrianConley 5 лет назад +1

    Another great video. Thank you.

  • @nikolacekic6317
    @nikolacekic6317 6 лет назад +1

    Amazing tutorial...you simplify concepts so well and think very clearly. I am an admirer and I just subscribed :)

  • @omerahmaad
    @omerahmaad 4 года назад +1

    Love you tutorials keep it going. Hands down

  • @도둘리-i7k
    @도둘리-i7k 6 лет назад +2

    Thank you so much! Nice understanding :)

  • @ganeshsrinivasan842
    @ganeshsrinivasan842 5 лет назад +2

    you are the best ! you are the best ! you are the best !you are the best ! you are the best !

  • @shahzmalik
    @shahzmalik 6 лет назад +3

    Excellent Tutorial. I love you Ma'am!

  • @sameeraappana7378
    @sameeraappana7378 5 лет назад

    Awesome videos! thank you very much.

  • @CarliCode
    @CarliCode 4 года назад +1

    Thanks!!!! amazing video

  • @owaguugochukwufranklin3294
    @owaguugochukwufranklin3294 5 лет назад +3

    God bless you, dear. more knowledge to you

  • @kaffafel2770
    @kaffafel2770 3 года назад

    I don't think I've ever seen a youtube channel that beautifully sums up DL/ML concepts in a way that idiots and master coders can understand. I am genuinely disappointed that I didn't find your channel before I spent ages on reddit/stackoverflow! Hahah +1 Sub, Keep up the good work from all of us here in the comments!

  • @joeledwardson8537
    @joeledwardson8537 4 года назад +1

    Great video, on the deeplizard site MaxPooling2D() is missing a comma at the end FYI

    • @deeplizard
      @deeplizard  4 года назад

      Good eye, thanks! Just corrected it on the site.

  • @Alchimystic
    @Alchimystic 3 года назад

    Some questions:
    -does it make sense to have a grid of Y x Z, where Y Z, or/and the stride be different of any of those 2?
    -what happens if in the edges of the image we don't have a full block (remainders)? Do we still max it?

  • @AjayKumar-zz2yq
    @AjayKumar-zz2yq 5 лет назад +1

    Amazing series of videos 🙌

  • @mohammedelfatih8018
    @mohammedelfatih8018 5 лет назад +1

    Nice video, u nailed it

  • @taihatranduc8613
    @taihatranduc8613 4 года назад +1

    the visual is amzing

  • @deeplizard
    @deeplizard  7 лет назад

    Machine Learning / Deep Learning Tutorials for Programmers playlist: ruclips.net/p/PLZbbT5o_s2xq7LwI2y8_QtvuXZedL6tQU
    Keras Machine Learning / Deep Learning Tutorial playlist: ruclips.net/p/PLZbbT5o_s2xrwRnXk_yCPtnqqo4_u2YGL

  • @kevinli6391
    @kevinli6391 4 года назад

    you are a legend, thank you.

  • @bruhm0ment767
    @bruhm0ment767 3 года назад

    wow this was such a good explanation, including the previous one on cnn's

    • @deeplizard
      @deeplizard  3 года назад

      Thank you! Have a look at this one as well: ruclips.net/video/kt6iUG0Gfm0/видео.html

  • @tumul1474
    @tumul1474 5 лет назад +3

    thank for the great tutorial

  • @Ali-ne4el
    @Ali-ne4el 5 лет назад +1

    Great Explanation... thank you

  • @lukefernandez3492
    @lukefernandez3492 3 года назад +1

    You made something that is supposed to be complicated and difficult... easy.
    Mind making a guide on quantum computing next? xD
    Fantastic work!
    Thank you

  • @arunavoray
    @arunavoray 6 лет назад +2

    Great work!

  • @abimaeld3567
    @abimaeld3567 6 лет назад +2

    What software do you use to make the animations, such that in the minute 3:09 moving the filter? Thanks.
    and thank you for the clear explanation!

    • @deeplizard
      @deeplizard  6 лет назад +1

      You're welcome, Abimael! The software is called Camtasia (link below).
      www.techsmith.com/video-editor.html

  • @lufttrow
    @lufttrow 5 лет назад +1

    Excelent video!

  • @hamzawi2752
    @hamzawi2752 5 лет назад +1

    This is very informative!

  • @kushagrachaturvedy2821
    @kushagrachaturvedy2821 4 года назад +1

    Great video! I have a question though. Is it a standard procedure to have a max pooling layer after every convolution layer? Furthermore, how does one decide whether to put a max pooling operation after a conv layer and in which cases should we not put a max pooling layer after a conv layer?

  • @MostafaAliMansour
    @MostafaAliMansour 6 лет назад +2

    You are a life saver !!

    • @deeplizard
      @deeplizard  6 лет назад +1

      Not all heroes wear capes 😜
      Lol glad you enjoyed the video, Mostafa!

  • @RaghavendraBoralli
    @RaghavendraBoralli 7 лет назад +2

    Well explained!

  • @thespam8385
    @thespam8385 5 лет назад +1

    {
    "question": "Stride refers to:",
    "choices": [
    "how many units the filter slides between each operation.",
    "how many operations performed on each row.",
    "the size of the batch the operations are applied to at a time.",
    "the distance between the results of the operation in the resultant matrix."
    ],
    "answer": "how many units the filter slides between each operation.",
    "creator": "Chris",
    "creationDate": "2020-02-06T05:03:54.547Z"
    }

    • @deeplizard
      @deeplizard  5 лет назад

      Thanks, Chris! Just added your question to deeplizard.com :)

  • @9899895384
    @9899895384 5 лет назад +1

    Great explanation

  • @cupajoesir
    @cupajoesir 6 лет назад +2

    nicely done. thanks

  • @giaunguyenmanh6195
    @giaunguyenmanh6195 3 года назад +1

    great video

  • @GM-qv1ql
    @GM-qv1ql 5 лет назад

    great articulation! thank you..

  • @sumant9189
    @sumant9189 3 года назад

    Thanks....it really helped

  • @JD-po3uk
    @JD-po3uk 5 лет назад +2

    Hey this is great thank you!

  • @rajuthapa9005
    @rajuthapa9005 7 лет назад +1

    Thanks for more videos. Great

    • @deeplizard
      @deeplizard  7 лет назад +1

      No problem, Raju! Thanks for keeping up with the new releases!

  • @kevincardenas6629
    @kevincardenas6629 4 года назад

    What does Flatten do in the Sequential model declaration?

  • @abhaydixit7203
    @abhaydixit7203 4 года назад

    Well explained

  • @toto171182
    @toto171182 5 лет назад +1

    good explanation..

  • @sinaasadi3800
    @sinaasadi3800 6 лет назад

    Thanks for your tutorials deeplizard. But would you please say why do we even need max pooling ? When would we need it ?

    • @deeplizard
      @deeplizard  6 лет назад

      You're welcome! It's mentioned towards the end of the video and also in the corresponding blog:
      deeplizard.com/learn/video/ZjM_XQa5s6s

  • @akankshasinghal1236
    @akankshasinghal1236 5 лет назад +1

    Great videos! easy to understand .It would be more understandable if the operations and coding part are zoomed .

    • @deeplizard
      @deeplizard  5 лет назад +1

      Thanks for the feedback, Akanksha. In later videos, the font size is increased, and I zoom in on the code :)

  • @prashant-ul2sn
    @prashant-ul2sn 6 лет назад +2

    You are the best

  • @akshaysoni6877
    @akshaysoni6877 5 лет назад +1

    very nice visualizations...why is it so underrated..?

    • @deeplizard
      @deeplizard  5 лет назад

      Thanks, akshay! Not enough people know about deeplizard. Help spread the word! :D

  • @solanofurlan443
    @solanofurlan443 5 лет назад +3

    Is max pooling the precess used when you change the resolution of a youtube video or an image?

    • @KeyYUV
      @KeyYUV 5 лет назад +3

      No, resizing images is usually done through resampling filters. They are more flexible as you can resize to any shape and look better to humans. They operate on the same concept though.

  • @danielcarregal9559
    @danielcarregal9559 2 года назад

    thank you very much for this video. I have a question, why does the Dense layer have 16 units? Greetings from Spain :) keep on doing such a good work!

  • @la_kukka
    @la_kukka 3 года назад

    Love it!

  • @luisgonzalez1899
    @luisgonzalez1899 6 лет назад +2

    THANK YOU!