How Deep Neural Networks Work

Поділитися
Вставка
  • Опубліковано 1 бер 2017
  • Part of the End-to-End Machine Learning School Course 193, How Neural Networks Work at e2eml.school/193
    Visit the blog:
    brohrer.github.io/how_neural_...
    Get the slides:
    docs.google.com/presentation/...
    Errata
    3:40 - I presented a hyperbolic tangent function and labeled it a sigmoid. While it is S-shaped (the literal meaning of "sigmoid") the term is generally used as a synonym for the logistic function. The label is misleading. It should read "hyperbolic tangent".
    7:10 - The two connections leading to the bottom most node in the most recently added layer are shown as black when they should be white. This is corrected in 10:10.
  • Наука та технологія

КОМЕНТАРІ • 865

  • @flavialan4544
    @flavialan4544 3 роки тому +73

    This should be recommended as the 1st video to watch when it comes to learn neural networks

    • @DR-bq4ph
      @DR-bq4ph Рік тому +1

      Yes

    • @ckpioo
      @ckpioo 2 місяці тому

      yes I agree but for simplicity sake he should have done a 0 to 1, 0 being black 1 being white and 0.5 being grey, because almost everyone follows that pattern, and for new learners its a bit harder for them to switch from thinking about -1 to 1 to 0 to 1

  • @danklabunde
    @danklabunde 4 роки тому +68

    I've been struggling to wrap my head around this topic for a few days, now. You went through everything very slowly and thoroughly and I'm now ready to dive into more complex lessons on this. Thank you so much, Brandon!

  • @biokult7828
    @biokult7828 7 років тому +88

    "Connections are weighted, MEANING".... Holy fuck.....after viewing numerous videos from youtube, online courses and google talks.... (often with comments below saying "thanks for the clear explanation")....This is the FIRST person i have EVER seen that has actually explained what the purpose of weights are....

    • @Tremor244
      @Tremor244 6 років тому +2

      I feel the same, even though I still can't completely understand how weighting works :/

    • @garretthart4883
      @garretthart4883 6 років тому +2

      Tremor244 I am by no means an expert but weighting is what makes the network "learn" to be correct. By changing the weights it changes the output of each neuron and eventually the output of the network. If you tune the weights enough you will eventually get an output that is what it is supposed to be. i hope this helps

    • @LuxSolari
      @LuxSolari 6 років тому +30

      I don't work with neural networks but with other types of machine learning. But weighting is more or less the same in all these fields of mathematics.
      You want a system that, provided with an input (an image, for instance), achieves its classification as the output. For instance you have a scenery (input) and you want to know if it's from vacations at the mountains or at the beach (a classification, ie. the output).
      So you pass the image trough a set of filters: (1) does the image have umbrellas? (2) does it have clouds? (3) is there a lot of blue? (4) is there a lot of brown?, etc.
      If the image passes a specific combination of filters, there is a greater probability that the image is of a specific type (for instance, if the image (1) have umbrellas, (3) is blueish and isn't (4) brownish, it's more likely to be from the BEACH). But how much more likely?
      That's when the WEIGHTING comes into play. Through machine learning we want to calculate some coefficients (weights) that state a sort of likelihood of an image to pass a filter, given its type (for instance, if it has umbrellas there's a probability of 0.9 out of 1 (90%) that it is from the beach and not from a mountain, but if there's a lot of blue maybe only 0.6 of those images are from the beach, and so the WEIGHT IS LIGHTER. That means that, if the image passes a filter of COLOR BLUE it is likely to be from a BEACH, but if it passes a filter of UMBRELLAS it is EVEN MORE LIKELY). Weights, then, are a parameter of RELEVANCE of each of the selected filters to achieve the correct classification.
      So we make the machine learn from LOTS (thousands, perhaps) of images that we KNOW are from the beach or the mountain. One image from the beach has umbrellas, so the classification through the filters was correct and then the WEIGHT for the umbrellas is increased. But if there is an image of the mountains with umbrellas and the program says it's from the beach, the weight goes down for the umbrellas. When we did this with a lot of images, the weights are FINE TUNED to classify correctly most of the time (if the filters are any good... if we chose wrong filters from the beginning, then there's a chance the dictionary won't get any better even fed with lots of images. That could also happen if the training images are biased: ie. if they don't represent the real set of images that we want to classify).
      I hope this works better for you!

    • @anselmoufc
      @anselmoufc 6 років тому +5

      If you have had a course on linear regression, you will recognize weights are equivalent to parameters. They are just "free variables" you adjust in order to match inputs with outputs. In one-dimensional linear regression, the parameters are the slope and offset of a line, you adjust them so that the distance between the line and your points (your training examples) is the least. Neural networks use the same idea as statistical regression. The main difference is that neural networks use a lot of weights (parameters), and for this reason you have to care about overfitting. This in general does not happen in linear regression, since the models are way more parsimonious (use only a few parameters). The use of a lot of weights is also the reason why neural networks are good general approximators, the large amount of weights give them high flexibility. They are like bazookas, while statistical regression is more like a small gun. The point is that most of the times you need only a small gun. However, people like to apply neural networks to problems where linear regression would do a good job since NN are "sexier".

    • @madsbjerg8186
      @madsbjerg8186 6 років тому +1

      +Esteban Lucas Solari I want to let you know that I love you for everything you just wrote.

  • @heyasmusic7553
    @heyasmusic7553 10 місяців тому +4

    I watched your videos 3 years ago. It'salmost nostalgic. You may not see this. But you're one of the reasons I kept moving through with Machine Learning

    • @BrandonRohrer
      @BrandonRohrer  10 місяців тому +1

      I legit cried a little bit. Thank you for this.

  • @mikewen8216
    @mikewen8216 7 років тому +319

    I've watched many videos and read many blogs and articles, you are literally the best explainer at making these intuitive to understand

    • @behrampatel3563
      @behrampatel3563 7 років тому +9

      I agree.Penny dropped for me today with this Video.
      Thank you so much Brandon

    • @a.yashwanth
      @a.yashwanth 4 роки тому +9

      3blue1brown

  • @klaudialustig3259
    @klaudialustig3259 7 років тому +13

    I already knew how neural networks work, but next time someone asks me, I'll consider showing him or her this video! Your explanation is visualized really nicely.

  • @rickiehatchell8637
    @rickiehatchell8637 4 роки тому +3

    Clean, concise, informative, astonishingly helpful, you have my deepest gratitude.
    I've never seen anyone explain backprop as well as you just did, great job!

  • @jabrilsdev
    @jabrilsdev 7 років тому +5

    this is probably the best breakdown ive came across, very dense, you've left no spaces in between your explanations! Thanks for the great lesson! Onward to a calculus class!

  • @AnkitSharma-ir8ud
    @AnkitSharma-ir8ud 5 років тому +3

    Really great explanation Brandon. Also, I greatly appreciate that you share your slides as well and that too in raw (PPT) format. Great work.

  • @InsaneAssassin24
    @InsaneAssassin24 6 років тому +3

    As a chemist who just recently took Physical Chemistry, back propagation makes SOOO much more sense to me when you put it into a calculus description, rather than a qualitative one as I've been seeing elsewhere. So THANK YOU!

  • @DeltaTrader
    @DeltaTrader 7 років тому +5

    Possibly one of the best explanations about NN out there... Congratulations!

  • @alignedbyprinciple
    @alignedbyprinciple 6 років тому +1

    I have seen many many videos regarding NN but this is by far the best; Brandon understands the relationship between the NN and the backbone of the NN, which is the underlining math. He clearly presented them in a very intuitive way. Hats off for you sir. Keep up the good job.

  • @claireanderson5903
    @claireanderson5903 4 роки тому +8

    Brilliant! I was involved 50 years ago in a very early AI project and was exposed to simple neural nets back then. Of course, having no need for neural nets, I forgot most of what I ever knew about them during the interval. And, wow, has the field expanded since then. You have given a very clear and accessible explanation of deep networks and their workings. Will happily subscribe and hope to find further edification on Reinforcement Learning from you. THANK YOU.

  • @bestoonhussien2851
    @bestoonhussien2851 6 років тому +4

    I'm in love with the way you explain things! So professional yet simple and easy to follow. Keep it up!

  • @FlashKenTutorials
    @FlashKenTutorials 7 років тому +25

    Clean, concise, informative, astonishingly helpful, you have my deepest gratitude.

  • @coolcasper3
    @coolcasper3 7 років тому +15

    This is the most intuitive explanation of neutral nets that I've seen, keep up the great content!

  • @cloudywithachanceofparticl2321
    @cloudywithachanceofparticl2321 6 років тому +31

    A physics guy coming into coding, this video completely clarified the topic. Your treatment of this topic is perfect!

    •  4 роки тому +1

      Don't worry people I asked this guy if he was a physicist

    • @Mau365PP
      @Mau365PP 4 роки тому

      @ thanks bro

  • @mdellertson
    @mdellertson 7 років тому +1

    Yours was a very easy explanation of deep neural networks. Each step in the process was broken down into bite-sized chunks, making it very clear what's going on inside a deep neural network. Thanks so much!

  • @Toonfish_
    @Toonfish_ 7 років тому +48

    I've never seen anyone explain backprop as well as you just did, great job!

    • @ViralKiller
      @ViralKiller Рік тому +1

      I never understood backprop properly until this video...this was the light bulb

  • @MatthewKleinsmith
    @MatthewKleinsmith 7 років тому +69

    Great video. Here are my notes:
    7:54: The edges going into the bottom right node should be white instead of black. This small error repeats throughout the video.
    10:47: You fixed the color error.
    11:15: Man, this video feels good.
    21:41: Man, this video feels really good.
    An extension for the interested:
    Sometimes we calculate the error of a network not by comparing its output to labels immediately, but by first putting its output through a function, and comparing that new output to something we consider to be the truth. That function could be another neural network. For example, in real-time style transfer (Johnson et al.), the network we train takes an image and transforms it into another image; we then take that generated image and analyze it with another neural network, comparing the new output with something we consider to be the truth. The point of the second neural network is to assess the error in the generated image in a deeper way than just calculating errors pixel by pixel with respect to an image we consider to be the truth. The authors of the real-time style transfer paper call this higher-level error "perceptual loss", as opposed to "per-pixel loss".
    I know this was outside the scope of this video, but it was helpful to me to write it, and I hope it will help someone who reads it.

    • @humanity3.090
      @humanity3.090 7 років тому +4

      Good to know that I'm not the only one who caught the logical mistakes.
      9:14 Bottom second squash should be vertically inverted, if I'm not mistaken.

    • @ganondorfchampin
      @ganondorfchampin 5 років тому +3

      I had the idea of doing perceptual loss before I even knew the term for it, seems like it would work better for warp transforms and the like versus level transforms.

    • @hozelda
      @hozelda 4 роки тому +2

      Alternatively, the edges are correct but the corresponding picture should be flipped.
      Regardless, the final step (output perceptron at the bottom indicating horizontal) works with either the white white edges or the black black edges scenario.

    • @oz459
      @oz459 3 роки тому

      thanks :)

    • @sali-math-arts2769
      @sali-math-arts2769 2 роки тому

      YES - thanks , I saw that tiny error too 🙂

  • @fghj-zh6cv
    @fghj-zh6cv 6 років тому +1

    This simple lecture truly makes all viewers fully understand the logic behind neural networks. I strongly recommend this video clip to my colleagues participated in data driven industry. Thanks.

  • @WilsonMar1
    @WilsonMar1 7 років тому +2

    I've seen a lot of videos and this is the most clear explanation. Exceptional graphics too.

  • @thehoxgenre
    @thehoxgenre 5 років тому

    i was amazed by the way you talk, and explain very slowly as well you remain slow until the end and you dont rush things. bravo

  • @andrewschroeder4167
    @andrewschroeder4167 6 років тому +1

    I hate how many people try to explain complicated concepts that require math without using math. Because you used clear mathematical notation, you made this much easier to understand. Thank you so much.

  • @abhimanyusingh4281
    @abhimanyusingh4281 7 років тому +1

    I have been trying develop a DNN for a week. I have seen almost a 100 videos, forums, blogs. Of all those this is the only one with calculus that made complete sense to me. You sir are the real MVP

  • @OtRatsaphong
    @OtRatsaphong 4 роки тому +11

    Thank you Brandon for taking the time to explain the logic behind neural networks. You have given me enough information to take the next steps towards building one of my own... and thank you UA-cam algo for bringing this video to my attention.

  • @Gunth0r
    @Gunth0r 6 років тому +1

    My kind of teacher! Subscribed! Nice voice, nice face, nice tempo, nice amount of information, nice visuals. You'd almost start to believe this video was produced with the concepts you've talked about.
    And my mind was just blown. I realized that we could make a lot more types of virtual neurons and in that way outclass our own brains (at even a fraction of the informational capacity) with a multitude of task-specific sub-brains forming a higher brain that may or may not develop personality.

  • @NewMediaServicesDe
    @NewMediaServicesDe 4 роки тому +6

    30 years ago, I studied computer science. we were into pattern-recognition and stuff, and I was always interested in learning machines, but couldn't get the underlying principle. now, I got it. that was simply brilliant. thanks a lot.

  • @yashsharma6112
    @yashsharma6112 2 місяці тому

    Very very rare way to explain a neural network in such a great depth. Loved the way you explained it ❤

  • @radioactium
    @radioactium 7 років тому +8

    Wow, this is a very simple explanation, and it helped me understand the concept of neural networks. Thank you.

  • @antwonmccadney5994
    @antwonmccadney5994 5 років тому +4

    Holy shit! Now I... I actually get it!
    Thank you!
    Clean, concise, informative, astonishingly helpful, you have my deepest gratitude.

  • @bowbert23
    @bowbert23 Рік тому +3

    I always had trouble intuitvely understanding how a derivate works and how practically its calculation is reflected in simple terms. Little did I know starting this video, that I'll finally understand it. Thank you! I'm relieved and feel less stupid now.

    • @BrandonRohrer
      @BrandonRohrer  Рік тому

      I'm really happy to hear that Bowbert. Thank you for the note.

  • @Thejosiphas
    @Thejosiphas 6 років тому

    I like how much effort you put into making these ideas accessible

  • @kademmohammed6836
    @kademmohammed6836 7 років тому +2

    by far the best video about ANN i've watched, thank you so much, really clear

  • @SunyangFu
    @SunyangFu 7 років тому +1

    The best and easily understandable neural net video I have seen

  • @salmamohsen8208
    @salmamohsen8208 4 роки тому

    Easiest most elaborate explanation I have found on that matter

  • @lucazarts25
    @lucazarts25 6 років тому +6

    OMG it's even harder then I expected! Thank you very much for the thorough and thoughtful explanation!

    • @lucazarts25
      @lucazarts25 6 років тому

      it goes without saying that I became a subscriber as well ;)

  • @slayemin
    @slayemin 7 років тому +12

    This explanation of back propagation was exactly what I needed. This is very clear and I now have higher confidence in my ability to create my own ANN from scratch.

    • @mehranmemnai
      @mehranmemnai 5 років тому +1

      Same here. My vision is clear

    • @brendawilliams8062
      @brendawilliams8062 2 роки тому

      I just enjoy numbers. Anything to do with them is a fantastic thing.

  • @sirnate9065
    @sirnate9065 6 років тому +317

    Who else paused the video at 15:10, went and did a semester of calculus, then came back and finished watching?

  • @AashishKumar1
    @AashishKumar1 7 років тому +1

    This is one of the best explanation of neural network I have seen

  • @PierreThierryKPH
    @PierreThierryKPH 6 років тому

    Very slowly and clearly gets to the point, nice and accessible video on the subject.

  • @cveja69
    @cveja69 7 років тому +23

    I almost never post comments, but this one deserve it :D
    Truly great :D

  • @Beudd
    @Beudd 6 років тому +1

    This video is crazy good. Truly, this is amazingly well explained from the beginning till the end. Wow, thanks a lot for such an excellent presentation.

  • @Ivan_1791
    @Ivan_1791 4 роки тому +2

    Best explanation I have seen so far man. Congratulations!

  • @Uniquecapture
    @Uniquecapture 6 років тому +1

    Best explanation I’ve seen yet. Many thanks for posting.

  • @dixingxu
    @dixingxu 7 років тому +305

    Very detailed and clear explanation. Thank you for sharing! :)

  • @intros1854
    @intros1854 6 років тому +1

    Finally! You are the only one on the internet who explained this properly!

  • @DanielMoleGuacamole
    @DanielMoleGuacamole Рік тому

    Holy thank you!! ive watched like 50+ ich tutorials on neural networks but all of em explained things poorly or too fast. But you went through everything slowly and actually explained all the info clearly!!

    • @BrandonRohrer
      @BrandonRohrer  Рік тому

      Thank you so much! I'm happy to hear how helpful it was, and it means a lot that you would send me a note saying so.

  • @tomryan9827
    @tomryan9827 4 роки тому

    Great video. A single clear, concrete example is more useful than 100 articles full of abstract equations and brushed-over details. Speaking as someone who's read 100 articles full of abstract equations and brushed-over details.

  • @shahidmahmood7252
    @shahidmahmood7252 6 років тому +1

    Superb!! The best explanation of DL that I have come across after completing the Andrew NG's Stanford ML course. I am a follower now.

  • @Jojooo64
    @Jojooo64 7 років тому +1

    Best video explaining neural networks i found so far. Thank you a lot!

  • @AlbertLeng
    @AlbertLeng 4 роки тому +1

    Thanks Brandon for your great video which simplifies things and gives an amazing easy to follow learning experience.

  • @jones1351
    @jones1351 Рік тому +1

    Fantastic description of what these networks do. I've gone thru a few of these explainers and all they demonstrated was the person knew their subject, they just couldn't teach it. They talk in jargon, that quickly loses those unfamiliar. IOW they're not teaching, they're having a 'conversation' with those who are already versed and have background in the field.
    Einstein is to have said, 'If you can't explain it simply, then you don't understand it yourself'
    Thanks, again. I walk away feeling like I actually learned something. You Can Teach.

    • @BrandonRohrer
      @BrandonRohrer  Рік тому

      Hey thanks! I really appreciate this. It's the highest compliment.

  • @greenmartha3587
    @greenmartha3587 4 роки тому +1

    Very detailed and clear explanation. Thank you for sharing! :)
    I've never seen anyone explain backprop as well as you just did, great job!
    This is very well explained. Great job, and thanks so much! subbed

  • @mukulbarai1441
    @mukulbarai1441 3 роки тому +1

    I've watched many videos on UA-cam but non of the videos explained the concepts as intuitively as you did. Thought I have to watch it again as I've failed to grasp some concepts, I am sure that it will be clear as I watch more.

  • @Sascha8a
    @Sascha8a 7 років тому +6

    This is a really good video! For me as a complete beginner this really help me understand the basics of neural networks, thanks!

    • @AviPars
      @AviPars 7 років тому +1

      Artem Kovera lovely book , just downloaded. for the lazy people : amzn.to/2ntC9Zm

  • @user-kr6dk7bq6b
    @user-kr6dk7bq6b 4 роки тому

    It's the first time I get to understand how neural networks work. Thank you.

  • @centreswift3371
    @centreswift3371 5 років тому +2

    Thank you, this has been very helpful for my understanding of these networks for studying.

  • @vipinsingh-dj2ty
    @vipinsingh-dj2ty 7 років тому +1

    literally THE best explanation i found on the internet.

  • @Yoonoo
    @Yoonoo 7 років тому +1

    Great video! Definitely one of the best explanations I've seen for Deep Neural Networks.

  • @rohitupadhyay4665
    @rohitupadhyay4665 5 років тому

    came across your blog today, reading about indexing and slicing dataframes. Great content :)

  • @shivamkeshri487
    @shivamkeshri487 6 років тому +1

    wow awesome i never find a video like this with the simple example and clarity of neural network and its a though topic to explain but you make it easy... thanks

  • @khrilibrik
    @khrilibrik 6 років тому

    Thanks for the clarity of your explanation

  • @davidguaita
    @davidguaita 6 років тому +1

    You're the man at explaining these things. Thank you so much.

  • @srinivasabugada2726
    @srinivasabugada2726 5 років тому

    You explained How Neural Networks in very simple and easy to understand manner. thanks for sharing!

  • @JeromeEtienne
    @JeromeEtienne 6 років тому +1

    Very clear description! without assumption of previous knowledge. Thanks i found it most helpful :)

  • @adrienr4466
    @adrienr4466 5 років тому

    Wow, this is really good! It's great to have such complete and clear explantions

  • @alfakannan
    @alfakannan 2 роки тому

    You are a gifted teacher. Even I could understand.

  • @abhijeetbhowmik2264
    @abhijeetbhowmik2264 6 років тому +1

    The best Back Propagation explanation on you tube. Thank you sir.

  • @abubakar205
    @abubakar205 4 роки тому +1

    one of the best teacher you cleared all my doubts for neural networks thanks sir let me click an ad for you

  • @aseedb
    @aseedb 6 років тому +2

    Great explanation, thanks for sharing the slides!

  • @buffnuffin
    @buffnuffin 7 років тому +2

    thank you for sharing, Brandon !
    Nicely explained

  • @yassinelamarti4157
    @yassinelamarti4157 4 роки тому +1

    the best explanation for Neural Networks ever !

  • @junepark1003
    @junepark1003 Рік тому +1

    This is one of the best explanations I’ve come across. Thank you! And subscribed :)

  • @user-rb5kw8cd4o
    @user-rb5kw8cd4o 7 років тому +3

    Detailed and easy to understand

  • @suryabhusal1527
    @suryabhusal1527 5 років тому

    Precise and clear. Just wow! Great explanation. If possible please add video on feature extraction.

  • @ziaurrehman2180
    @ziaurrehman2180 2 роки тому

    After wasting too much time finally I found the right place , excellent explanation 👏👏👏💯

  • @tobimayr
    @tobimayr 6 років тому +2

    Thank you for this clear and understandable tutorial!

  • @ViralKiller
    @ViralKiller Рік тому

    That was incredible...watched 7 videos so far and every day my brain understands a bit more...I recently learning Houdini VEX code which is 3D graphics programming, and that took 1 year of watching a whole bunch of stuff and not getting it...until I did...so I know I will grasp this soon....Im sticking to these simple examples for now, until I can code it from scratch in Python

  • @technoultimategaming2999
    @technoultimategaming2999 3 роки тому

    I understand every topic. From computer enginerring to calculus and AI basics, but put them all together and working to make a digital functioning brain is magic

  • @nakitumizajashi4047
    @nakitumizajashi4047 6 років тому +1

    Thanks for quick and simple explanation!

  • @MrEnkelmagnus
    @MrEnkelmagnus 7 років тому +1

    This one was great! It was exactly what i was looking for.

  • @halitekmekcioglu7150
    @halitekmekcioglu7150 4 роки тому

    Thanks for the smooth narration, I liked very much!

  • @Vermilicious
    @Vermilicious 7 років тому +1

    Nice intro. Fairly easy to grasp the essence.

  • @snehotoshbanerjee1938
    @snehotoshbanerjee1938 6 років тому +1

    Your all videos on NN are excellent!

  • @antoinedorman
    @antoinedorman 4 роки тому

    This is gold if your looking to learn neural networks!! Well done

  • @TheExpression638
    @TheExpression638 7 років тому +3

    Very clear cut explanation

  • @DanielRamBeats
    @DanielRamBeats 6 років тому

    One of the best explanations I've seen. Thanks!

  • @RandyFortier
    @RandyFortier 7 років тому +4

    This is very well explained. Great job, and thanks so much! subbed

  • @dbiswas
    @dbiswas 2 роки тому

    You explanation is so far the best. I am sure you are the best teacher so far. Thanks for uploading such a informative video.

  • @SyedMehdiX
    @SyedMehdiX 4 роки тому

    That was flat out the best video explaining neural networks. Thank you!

  • @jacolansac
    @jacolansac 5 років тому

    The internet needed a video like this one. Thanks a lot!

  • @kd4pba
    @kd4pba 2 роки тому

    Damn, This is perfect. I had kept backing away from all this until now. I finally get it. You really helped me Brandon, thank you.

  • @jd.8019
    @jd.8019 6 років тому +2

    Great explanation and thank you for your time and efforts. Grade A work!

  • @Mr_AciD
    @Mr_AciD 7 років тому +35

    At 7:48, the bottom right receptive field should be Black black white white, not White white black black :)
    Congratulations on the explanation!

    • @yhr4052
      @yhr4052 7 років тому +12

      Yes, there is a mistake.

    • @BrandonRohrer
      @BrandonRohrer  7 років тому +12

      It is true! Good catch both of you.

  • @hankil81
    @hankil81 7 років тому +1

    Great example with even greater explanation.

  • @zacharyprime1
    @zacharyprime1 6 років тому +1

    Great video! I wish I had seen this before I spent hours trying to learn this.

  • @papperme
    @papperme 7 років тому +1

    Well DONE, Thanks for sharing this so clearly. I want to learn more ....

  • @jamescarter7577
    @jamescarter7577 5 років тому

    This was so unbelievably good! Thank you for doing this!

  • @d0o0b
    @d0o0b 7 років тому +55

    Just got smarter than yesterday. Thanks for sharing! :0)