ML Was Hard Until I Learned These 5 Secrets!

00:13:10
https://www.youtube.com/watch?v=sJBO7rMR8ks

Summary

TLDRThe video discusses five overlooked yet essential "secrets" to effectively learning machine learning. It argues that many learners view math incorrectly, focusing too much on formulas rather than understanding the underlying human ideas, which should first be interpreted and then translated into mathematics. Understanding math derivations becomes easier when recognizing them as applications of specific rules or definitions, and it's crucial to gradually build a mathematical toolkit through practice. Coding ML models, on the other hand, substantially involves debugging, an integral and expected part of coding. Learners should not be discouraged by the time spent debugging. Additionally, when dealing with large code bases, it recommends starting with critical files like train.py and eval.py and debugging through the processes. The fundamental secret is maintaining realistic expectations and persistence. Many fail as they give up too early, expecting too quick results. The process of mastering ML, like any complex skill, takes time and ongoing learning through practical projects and understanding current state-of-the-art papers, which broadens knowledge and skills. It emphasizes patience and the 10,000-hour rule for skill mastery, encouraging consistent and in-depth learning rather than shortcuts.

Takeaways

  • πŸ’‘ Approach math as a translation of human ideas, not just abstract formulas.
  • πŸ” Recognize patterns in mathematical derivations to simplify understanding.
  • πŸ› οΈ Debugging is a key part of coding; embrace the process.
  • πŸ“‚ Start with main files like train.py when navigating large codebases.
  • ⏳ Mastering ML takes time; maintain realistic expectations.
  • πŸ‘¨β€πŸ”§ Build a toolkit of mathematical rules for applications during learning.
  • 🎯 Understand that coding is as much about debugging as writing code.
  • 🧠 Humans think in natural language, and translate it into math.
  • πŸ“Š Consistent practice leads to pattern recognition in math.
  • πŸ“š Embrace ongoing learning and project work for real-world understanding.

Timeline

  • 00:00:00 - 00:05:00

    Learning machine learning often seems daunting due to the heavy reliance on math and coding. The speaker shares five 'secrets' that aren't widely taught but crucial for understanding machine learning effectively. First, they discuss the importance of thinking like a scientist rather than focusing solely on mathematical formulas. Understanding the intuitive, human ideas that lead to math formulations is key. Math is a tool for implementing scientific ideas, not a standalone language. Scientists formulate their theories in natural language and translate them into math. Therefore, approaching math as merely the formalization of intuitive concepts makes it more accessible.

  • 00:05:00 - 00:13:10

    The speaker highlights another critical insight into mastering machine learning: the undervalued importance of debugging in coding. Often, individuals new to coding get frustrated when faced with seemingly insurmountable debugging tasks. However, the speaker emphasizes that debugging is an intrinsic part of the coding process, especially in machine learning models, and should not be viewed as a sign of incompetence. To make sense of complex codebases, the speaker recommends starting with main files like 'train.py' and using debugging tools to step through the code. This method provides clarity and makes it easier to understand where and how to make modifications. Finally, the speaker ties these insights into the broader picture of continuous learning, stressing that mastering machine learning demands persistence and consistent practice over time.

Mind Map

Video Q&A

  • What are the five secrets to mastering machine learning mentioned in the video?

    The secrets include approaching math from human ideas, understanding derivations by recognizing rules and patterns, coding by debugging, effectively navigating large codebases, and maintaining realistic expectations about the learning journey.

  • How should one approach mathematical formulas in machine learning?

    Instead of focusing on abstract formulas, one should start by understanding the underlying human ideas and then translate them into mathematical language.

  • What is the key realization about coding in machine learning?

    Coding involves extensive debugging; one shouldn't feel disheartened by spending a lot of time debugging, as it is a significant part of coding.

  • How can one effectively understand a large codebase?

    Start with key files like train.py and eval.py, set breakpoints, and use a debugger to step through the processes for a better understanding.

  • What is the fundamental reason many people fail at learning machine learning?

    Many people give up too early due to false expectations and not enjoying the learning process. Consistent effort and realistic expectations are crucial.

  • Why is it important to understand human ideas before approaching mathematical translations?

    Understanding human ideas helps in making sense of mathematical concepts, as math is a tool for formalizing these ideas.

  • What advice is given for learning machine learning effectively?

    Be patient and persistent. Understand that mastering machine learning takes time and involves continuous practice and learning.

  • How important is debugging in the coding process for machine learning?

    Debugging is essential and considered a core part of the coding process, as it involves refining and understanding how the code functions.

  • What mindset is recommended for learners in the field of machine learning?

    Adopt a long-term perspective, expecting the learning process to be gradual, and embrace challenges as part of the journey.

  • What is mentioned about coding tools like GitHub Co-pilot?

    Such tools can assist by generating and explaining code, making the process of learning and implementing machine learning models easier.

View more video summaries

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