ML Was Hard Until I Learned These 5 Secrets!

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
look at all this math and code you need to understand to learn machine learning it can be very hard for me at least it was as well until I learned these five Secrets which honestly aren't even Secrets but no one really teaches you them although everyone should know them I mean I spent the last 3 and a half years studying machine learning and it took me way too long to learn these secrets on my own so let me reveal them to you so that you don't have to struggle for that long you're thinking of math the wrong way around which already sets you up for failure at the very beginning but isn't your fault back when I started learning machine learning some of my professors would simply throw a formula on screen and tell us this is the loss function for a decision tree and that was it I and most other peers were confused and simply stared at the formula and were waiting for a magical aha moment where the formula made sense I was always asking myself how those smart scientists could understand math so well they could develop new algorithms and just think in the language of math until I realized I was thinking the wrong way around I was focusing too much on the actual mathematical formulas in the realm of math instead of taking a step back and thinking like a scientist I mean I was literally looking at a formula and try to understand the formula as a whole which for me now now after learning this secret just doesn't make any sense anymore don't think of math like something abstract and make it then human interpretable you need to realize that you need to think the other way around think of the idea a human had understand it and then think of how to translate it into the language of math this perhaps sounds very confusing but math is not a standalone language in which people think scientists think just like you and me in natural language they just know how to translate their ideas into the formalisms of math which then allows them to be implemented and then further developed using the rules of math as mentioned I was always looking at a formula as a whole but each component of a formula is just a component of this human idea for example a sum or a product are literally just a for Loop that can have some conditions that are literally equivalent to an if else statement in code of course this is easier said than done and to understand a mathematical concept using human ideas requires someone to actually properly teach you these human ideas and how to translate them step by step but in my experience there are two scenarios one the teacher does that already but you don't understand he does it because you were never explicitly taught to think that way or two the teacher does really only look at the formulas and derivations in that case you need to try to figure out the original human idea Yourself by for example looking it up online but the good thing is you now know it is not your fault and there is an intuitive understanding to the math that you can find math is just the formalization of a human idea very few people actually think in the language of math it's just a tool but when it comes to every intermediate derivation step then you often actually think in the language of math which is very difficult unless you know the next secret this secret literally changed the way I look at scary moth derivations like this one again jumping back in time to when I watched a lecture at College my professor would explain the intuitive idea of an ml algorithm show the translation into the language of math and then show us where we want the formula to end up to make it more efficient or simply actually work as an algorithm that can be implemented but at some point he would go off on a derivation spree writing out one step after the other and expected us to understand why he did what he did everyone was confused and of course scared and annoyed but these derivations are simpler than you might think not easy but much simpler to execute after learning this one secret I realized each step was simply applying one specific rule or a definition I realized that up to a certain degree these mathematical derivations or Transformations just require you to have a list of rules and tricks you need to collect that you can then simply apply during the lectures for each step I see I would explicitly look for the rule and definition they used and write that's down on my list when solving or reading math derivations on my own for homework assignments or during an exam in most cases I would literally just do some sort of pattern matching I would look at where I current L am go down my list of rules and definitions and apply what fits the pattern of course some patterns rules and definitions are harder to spot than others but after doing this for long enough you just start to memorize certain patterns but in general for most ml math this secret technique does work wonders you need to collect your mathematical toolkit and learn to recognize when you can apply which rule which means practice practice practice but math is of course far from all there is to ml coding is also a very challenging skill learning the basics of python and then an ml Library like pyo is really cool and fun you simply follow a tutorial online and have a really steep learning curve you follow a recipe of steps and Implement a lot of code you really see and feel the progress you are making but then when you want to go further and learn to implement actual algorithms or ml pipelines on your own you hit a wall all of a sudden you sit on one annoying problem for several hours have written perhaps five lines of code and you think you are not making any progress this is very very frustrating and is the point where a lot of people determine coding is really hard and that they will never be able to really learn to code writing five lines of code in 3 hours how pathetic I mean I always thought I was so stupid for writing code that never worked until I debugged it for hours this can get so bad that you don't even want to start coding because you know it will fail but that is simply the wrong way to think actually writing code for 1 hour will very likely mean let's say 3 hours of debugging once I learned that this is what it really means to be coding I all of a sudden felt so relieved and just not stupid anymore coding ml models didn't feel impossible and hard anymore because I was doing exactly what was normal and expected and nowadays there are amazing tools that I can't live it out like GitHub co-pilot that can generate code for you and explain code for you but there's so much that you simply learn through your own experience or the experience of others that's why I have a completely free Weekly Newsletter where I share my experience as a machine learning researcher including actionable tips AI news and more I'll just pin a comment below with the link to sign up but anyway you have to realize that writing code is not actually coding debugging is coding this realization really helps you with implementing things on your own step by step but when you have to work with an existing code base where you have everything at once you will probably still be overwhelmed so let's look at the next secret tip there are two cases where you will need to understand complex code the first one is when build bu on top of an existing repository I remember when I started working on my first larger project where I built on top of an existing code base it was so much code I literally had no idea where to start just like in the previous secret I again felt like learning to read code was as impossible as writing code all those tutorials and smaller personal projects didn't prepare me for this much code I Tried reading each source file and started to write code as soon as possible into places I thought made sense but that unsurprisingly LEDs to a lot of headaches and wasting time writing code that was destined to fail I had to learn the hard way that there is a very simple strategy to understanding large code bases I wish someone would have simply told me once how to approach a challenge like this with most large ml repositories you have a train.py and an evil. piy file those should always be the starting point I find those files set a breakpoint in the beginning and start stepping through the code with the debugger I cannot emphasize enough how simply yet insanely effective this technique is it's literally like cheating you can step through the data pre-processing training Loop the actual model the evaluation metrics and every other detail depending on the code base and your experience this takes just a few hours and you have an amazing overview of the code base and will have a much better feeling for where to add the new code for your own idea that said you might not always want to build on top of an existing highly optimized code base but simply want to understand an algorithm better for example when you want to understand poo a famous reinforcement learning algorithm I would not recommend to look at the optimized implementation that's way too Overkill and complex luckily for many important models there are minimal educational implementations that just implement the main idea so that people can understand the model and here yet again the best way is to set a breakpoint in the beginning of the main function and then just start debugging finally there's one fundamental secret to mastering machine learning that you need to know this final secret ties everything we just discussed together and is the one reason that will determine your success or failure of mastering ml 34% of organizations consider poor AI skills expertise or knowledge as the top reason blocking successful AI adoption according to an IBM study from 2022 why do you think people fail learning ML and fall into the category of people with poor AI skills is it because it is hard yes but it was also hard for every person who has now mastered it people fail to master ml because they stop learning machine learning too early and give up and why do people give up because they have false expectations and don't enjoy the process of learning they think mastering ml is hard because they didn't learn ml in a few weeks or because they didn't understand a video explaining an ml concept the first time they will never understand it I took my first introductory AI College course about 3 and a half years ago after that semester I took my first real ml course along with working on my first ml projects after that semester I continued with my first deep learning courses and continued working on projects and reading a lot of papers I definitely didn't understand everything the first time but I knew that was normal over time I learned the secrets mentioned before and that somewhat mastering ml takes time I failed my first ml interviews for internships at Amazon nuro and Google deep mind but now I am working with an ex meta professor and collaborating with a Google deepmind researcher it takes time period this is not a skill you learn over a weekend the 10,000 hour rule applies here as well if you spend 10,000 hours on a specific skill you will master I'm absolutely not trying to discourage you rather the opposite I don't want to be some weird influencer that wants to sell you a dream of mastering ml in a few weeks I want to encourage you to really learn machine learning to really learn the theory and really gather practical experience and the Mastery of machine learning comes after after learning the Fundamentals by really working on projects encountering real world problems and reading real state-of-the-art papers or respective blog posts by having this expectation that it will take time you relax way more and the learning process becomes much easier enjoyable and successful in the end all these secrets are universally true no matter how you decide to learn machine Lear and I say that because there are mainly three ways to do so and if you want to find out which one is best for you you might want to watch this video next I there talk about data science but everything applies the same way to machine learning in general bye-bye
Info
Channel: Boris Meinardus
Views: 233,286
Rating: undefined out of 5
Keywords:
Id: sJBO7rMR8ks
Channel Id: undefined
Length: 13min 10sec (790 seconds)
Published: Wed Mar 27 2024
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.