Animated AI

(animatedai.github.io)

302 points | by frozenseven 43 days ago

14 comments

  • jerpint 38 days ago
    Nice! I made my own version of this many years ago, with a very basic manim animation

    https://www.jerpint.io/blog/2021-03-18-cnn-cheatsheet/

  • throwaway2027 38 days ago
    I don't think these are useful at all. If you implement a simple network that approximates 1D functions like sin or learn how image blurring works with kernels and then move into ML/AI that gave me a much better understanding.
    • nobodywillobsrv 38 days ago
      Thank you for saying this. I often find this "glib" explains of ML stuff very frustrating as a human coming from an Applied Math background. It just makes me feel a bit crazy and alone to see what appears to be a certain kind of person saying "gosh" at various "explanations" when I just don't get it.

      Obviously this is beautiful as art but it would also be useful to understand how exactly these visualizations are useful to people who think they are. Useful to me means you gain a new ability to extrapolate in task space (aka "understanding").

    • noduerme 38 days ago
      Idk, it's fun. 20 years ago I made a cubic neural model in Flash that actually lit up cubes depending on how much they were being accessed. This was a case of binding logic way too tightly to display code, but it was a cool experiment.
    • barrenko 38 days ago
      Yup, I'd say you learn more by doing math by hand (shouldn't be that surprising).
      • nosianu 38 days ago
        So... I remember math including doing quite a bit of geometry by hand and with real tools, at least initially. "Math" is not just the symbol stuff written with a pencil, or with a keyboard.

        The mechanical analog computers of old (e.g. https://youtu.be/IgF3OX8nT0w, or https://youtu.be/s1i-dnAH9Y4) are examples too that math is more than symbol manipulation.

    • patresh 38 days ago
      They're likely of limited use for someone looking for introductory material to ML, but for someone having done some computer vision and used various types convolution layers, it can be useful to see a summary with visualizations.
    • socalgal2 37 days ago
      Agree. They didn't seem to convey any info what-so-ever, pretty as they were
    • amelius 37 days ago
      Yes, especially if you ask someone why one is better than the other in a certain configuration.
    • j45 38 days ago
      Learning first principles of something are always useful for beginners.

      Everyone is a beginner at something.

  • jaredwilber 38 days ago
    Years back I worked on some animated ML articles, my favorites being: https://mlu-explain.github.io/neural-networks/ and https://mlu-explain.github.io/decision-tree/
  • sujayk_33 38 days ago
    I worked on something similar but specifically for transformer architecture: https://transformer.sujayk.me/
    • yu3zhou4 38 days ago
      On Safari mobile it shows a modal that can’t be scrolled nor closed
      • sujayk_33 38 days ago
        Yeah, it's not mobile-friendly. didn't get a chance to look into it
  • mnkv 38 days ago
    Nice work. A while back, I learned convolutions using similar animations by Vincent Dumoulin and Francesco Visin's gifs

    https://github.com/vdumoulin/conv_arithmetic

    • _giorgio_ 33 days ago
      Very good arxiv paper, I wish there where some updates on that.
  • amkharg26 38 days ago
    This is a fantastic educational resource! Visual animations like these make understanding complex ML concepts so much more intuitive than just reading equations.

    The neural network visualization is particularly well done - seeing the forward and backward passes in action helps build the right mental model. Would be great to see more visualizations covering transformer architectures and attention mechanisms, which are often harder to grasp.

    For anyone building educational tools or internal documentation for ML teams, this approach of animated explanations is really effective for knowledge transfer.

  • mg 38 days ago
    Is there an error in the first video at 00:25?

    https://www.youtube.com/watch?v=eMXuk97NeSI&t=25

    It says the input has 3 dimensions, two spatial dimensions and one feature dimension. So it would be a 2D grid of numbers. Like a grayscale photo. But at 00:38 it shows the numbers and it looks like each of the blocks positioned in 3D space holds a floating-point value. Which would make it a 4-dimensional input.

  • wwarner 38 days ago
    I feel like these are helpful, and I think the calculus oriented visualizations of convex surfaces and gradient descent help a lot as well.
  • jlebar 38 days ago
    Shameless plug for my writeup about convolutions: https://jlebar.com/2023/9/11/convolutions.html
  • diginova 38 days ago
    here is the github link for anyone wanting to star the repo https://github.com/animatedai/animatedai
  • kristopolous 38 days ago
    • josephant 36 days ago
      This looks great for explaining transformer!!
    • johnnyfived 37 days ago
      Now this one actually looks usable
      • kristopolous 37 days ago
        I've been wanting to build a really small transformer based system but for some reason I only remember that I want to do that at like 3am and my brain has turned off.
  • krackers 38 days ago
    You should add dilated conv and conv_transpose to the list.
  • fuzzy_lumpkins 38 days ago
    amazing resource!
  • sapphirebreeze 38 days ago
    [dead]