Max Pooling in Convolutional Neural Networks explained

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

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

  • @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 4 года назад +25

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

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

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

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

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

  • @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!

  • @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! :)

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

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

  • @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

  • @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!

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

    Probably the most intuitive explanation I have ever seen =)

  • @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?

  • @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.

  • @fahadbshahid
    @fahadbshahid 3 года назад +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!

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

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

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

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

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

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

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

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

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

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

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

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

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

    Super clear and helpful video. Many thanks!

  • @JoseSanchez-vv1zd
    @JoseSanchez-vv1zd Год назад +1

    Thank you for making this excellent video!

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

    Thank you for continuing the series!

  • @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!

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

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

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

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

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

    thanks for explaining. really helpful and easy to understand!

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

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

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

    best cnn tutorial ever...that girl rocks

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

    Thank you for these wonderful videos

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

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

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

    Really Nice Explanation. TNX

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

    Thanks for these great explanations

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

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

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

    Great explaining.Thank u very much.

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

    thanks for this video, it was super helpful !

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

    Thank you for this great explanation!

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

    Thanks the visualizations are excellent

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

    Excellent and Detailed explanation. Thanks !!

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

      Thanks, chetan! Glad you liked it!

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

    Your videos are amazing!! Keep it up :)

  • @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!

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

    Love you tutorials keep it going. Hands down

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

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

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

    perfectly explained... thanks much

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

    Such a great video !!!

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

    Excellent Tutorial. I love you Ma'am!

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

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

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

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

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

    Another great video. Thank you.

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

    You’re marvellous, thanks very much!!!

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

    God bless you, dear. more knowledge to you

  • @thespam8385
    @thespam8385 4 года назад +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  4 года назад

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

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

    So clearly explained, awesome job!

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

    Amazing series of videos 🙌

  • @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

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

    Just what i was looking for. Thanks!

  • @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?

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

    thank you, really nice explaination

  • @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!

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

    the visual is amzing

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

    Thank you so much! Nice understanding :)

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

    thank for the great tutorial

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

    Great work!

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

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

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

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

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

    you are a legend, thank you.

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

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

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

    Nice video, u nailed it

  • @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

  • @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.

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

    Thanks!!!! amazing video

  • @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?

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

    Excelent video!

  • @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.

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

    Great explanation

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

    Well explained!

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

    Awesome videos! thank you very much.

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

    Great Explanation... thank you

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

    This is very informative!

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

    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

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

    nicely done. thanks

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

    Great video! But can you explain what "Flatten()" layer does? Thanks!

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

      Thanks, ivzlccs! A Flatten() layer transforms the output from the previous convolutional layer into a 1D tensor so that it can be provided as input to the following Dense() layer.
      The two videos on learnable parameters in a CNN below may be helpful as well. There, when transitioning from the convolutional layer to the output layer, we discuss the flatten operation.
      ruclips.net/video/gmBfb6LNnZs/видео.html
      ruclips.net/video/8d-9SnGt5E0/видео.html

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

      @@deeplizard Can you kindly also explain what dense layer does? The explanation that i have is that it connects layers but why would you have unconnected layers in the first place?

  • @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 :)

  • @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

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

    THANK YOU!

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

    You are the best

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

    {
    "question": "If we have an image of size n by n, (or for python users: image.shape == (n,n)) and we perform max pooling with a filter size of 2 by 2 and a stride of 2.

    How much smaller will the output image of the Max Pooling Layer be than our input?",
    "choices": [
    "2",
    "n",
    "2/n",
    "n/2"
    ],
    "answer": "2",
    "creator": "Kaffafel",
    "creationDate": "2021-04-18T13:22:11.978Z"
    }

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

    great video

  • @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!

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

    Hey this is great thank you!

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

    What does Flatten do in the Sequential model declaration?

  • @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  5 лет назад

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

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

    Love it!

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

    Thanks for more videos. Great

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

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

  • @alexandrahurst3220
    @alexandrahurst3220 3 года назад +11

    Good thing I paid for grad school when the stuff on RUclips is 10x more useful.

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

    great articulation! thank you..

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

    good explanation..