JAX in 100 Seconds

Поделиться
HTML-код
  • Опубликовано: 25 авг 2024
  • Try Brilliant free for 30 days brilliant.org/... You’ll also get 20% off an annual premium subscription
    JAX is a Python library similar to NumPy for scientific computing and linear algebra, but designed to run on accelerators like Cuda-based GPUs and Google's TPUs.
    #programming #math #100SecondsOfCode
    💬 Chat with Me on Discord
    / discord
    🔗 Resources
    Google JAX on GitHub github.com/goo...
    Tensorflow in 100 Seconds • TensorFlow in 100 Seconds
    Cuda in 100 Seconds • Nvidia CUDA in 100 Sec...
    GPU vs TPU • CPU vs GPU vs TPU vs D...
    🔥 Get More Content - Upgrade to PRO
    Upgrade at fireship.io/pro
    Use code YT25 for 25% off PRO access
    🎨 My Editor Settings
    - Atom One Dark
    - vscode-icons
    - Fira Code Font
    🔖 Topics Covered
    - JAX basics tutorial
    - How does JAX work?
    - JAXPpython explained quickly
    - Pytorch alternative
    - Tensorflow vs JAX
    - How is calculus used on Machine Learning

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

  • @4dtoaster819
    @4dtoaster819 2 месяца назад +421

    "Why did you start using JAX?"
    Me: "I like the logo"

  • @justingolden87
    @justingolden87 2 месяца назад +2094

    "Imagine you're writing a nuclear warhead in your mom's basement" Oh I don't have to imagine fireship

    • @gezenews
      @gezenews 2 месяца назад +31

      Lol worst day to possibly make that joke.

    • @Roiadas
      @Roiadas 2 месяца назад +6

      Relatable

    • @JoaoLucas-fo8gv
      @JoaoLucas-fo8gv 2 месяца назад +9

      FBI would like to know your location

    • @GLUBSCHI
      @GLUBSCHI 2 месяца назад +31

      @@gezenews?

    • @franciscos.2301
      @franciscos.2301 2 месяца назад +39

      ​@@GLUBSCHI he must know something we don't 😳

  • @rafaelsanchezmartinez9393
    @rafaelsanchezmartinez9393 2 месяца назад +1578

    Now I have 10 years of experience in JAX. NICE!

    • @ArthurKhazbs
      @ArthurKhazbs 2 месяца назад +38

      Well done! Congratulations!

    • @user-pe7gf9rv4m
      @user-pe7gf9rv4m 2 месяца назад +23

      parallelized

    • @hoskdjciianbflso
      @hoskdjciianbflso 2 месяца назад +3

      Enough years for Jax

    • @Cfomodz
      @Cfomodz 2 месяца назад +14

      Good because that's the min req for the newest jobs using it

    • @LabiaLicker
      @LabiaLicker 2 месяца назад

      *writes in resume

  • @jonathansmith8070
    @jonathansmith8070 2 месяца назад +585

    Active: Jax enters Evasion, a defensive stance, for up to 2 seconds, causing all basic attacks against him to miss. Jax also takes 25% reduced damage from all champion area of effect abilities. After 1 second, Jax can reactivate to end it immediately.

    • @deathpacito8702
      @deathpacito8702 2 месяца назад +20

      Active: Jax enters Evasion, a defensive stance, for up to 2 seconds, causing all basic attacks against him to miss. Jax also takes 25% reduced damage from all champion area of effect abilities. After 1 second, Jax can reactivate to end it immediately.

    •  2 месяца назад +25

      Imagine if Jax had a real weapon?

    • @mysterioustraveller7165
      @mysterioustraveller7165 2 месяца назад +9

      ACTIVE: Jax Dash dashes to the target unit's location.
      If the target is an enemy and they are in range upon arrival, Jax deals them physical damage.
      Jax can cast any of his abilities during the dash

    • @kalpamonx
      @kalpamonx 2 месяца назад +2

      Gotta try AP Jax someday, one time I had this one rando Jax who went AP in my team. He was melting everyone!

    • @Dom-zy1qy
      @Dom-zy1qy 2 месяца назад +3

      Was just scrolling waiting to find a comment like this.

  • @wlockuz4467
    @wlockuz4467 2 месяца назад +389

    As a software engineer with 10 years of experience, I understood some of those words.

    • @MaxMalm
      @MaxMalm 2 месяца назад +36

      I felt so stupid watching this

    • @yad-thaddag
      @yad-thaddag 2 месяца назад +2

      @@MaxMalm You're not the only one. 😉

    • @poulticegeist
      @poulticegeist 2 месяца назад +9

      Yeah, I guess that goes to show that those years of experience were wasted

    • @mohamedtrfnx6632
      @mohamedtrfnx6632 2 месяца назад +9

      This is what happens when people become software engineers from the internet lol

    • @twentyeightO1
      @twentyeightO1 2 месяца назад +22

      As a ML student I understood everything. That just means you're not into this stuff.

  • @randomeone100
    @randomeone100 2 месяца назад +411

    Time to add JAX in my resume

  • @mritunjaymusale
    @mritunjaymusale 2 месяца назад +639

    Jax sounds like less abstract version of pytorch and more complicated version of numpy

    • @Imperial_Squid
      @Imperial_Squid 2 месяца назад +14

      Pretty much yeah

    • @kittydaddy2023
      @kittydaddy2023 2 месяца назад +2

      huh

    • @Michallote
      @Michallote 2 месяца назад +6

      However performance is above torch somehow

    • @Imperial_Squid
      @Imperial_Squid 2 месяца назад +53

      @@Michallote because JAX basically compiles down to machine code when run, and while a lot of Pytorch iis done at a low level, there's still some overhead that's python running things. But conversely torch allows you to do dynamic ML (edit: actually pytorch also let's you compile but I haven't played with it personally), whereas JAX has to all be perfectly laid out from the start so it depends what you're trying to do. Torch is also just more useful to more people so it's more well supported so even if Jax would be better for your project, there's incentive to follow the herd and use the thing everyone else is using.

    • @user-pe7gf9rv4m
      @user-pe7gf9rv4m 2 месяца назад +6

      jax borrows a lot of ideas from haskell and functional programming
      it just has a more familiar syntax (python-style) and calls things differently (scan is a bifunctor for instance)

  • @alcoholrelated4529
    @alcoholrelated4529 2 месяца назад +66

    i'm interested in computer science, calculus and statistics, but i only have 300 seconds in total

  • @potato_zeq3571
    @potato_zeq3571 2 месяца назад +139

    "Imagine if i had a real weapon!"

    • @hlab3524
      @hlab3524 2 месяца назад +2

      I WAS LOOKING FOR IT xd

    • @sephroth201
      @sephroth201 2 месяца назад +6

      now we need another library call annie

    • @ChrisCarlos64
      @ChrisCarlos64 2 месяца назад +1

      My thoughts exactly, especially the color scheme looking like his default costume

    • @potatosheep
      @potatosheep 2 месяца назад +1

      League x Programming = Legendary

    • @mindaugask_
      @mindaugask_ 2 месяца назад

      ​@@potatosheep found the scripter

  • @unclecode
    @unclecode 2 месяца назад +14

    The sample code u shared at the end, so simple & elegant shows what training is all about. Approximation of a function F defined as multiplication of multiple matrixes (its layers), then calculating its error over known data E(F(x), y), computing gradients of that error E', & then updating F's parameters, such E' approach to zero. I will share this code to my students. Thanks again.

  • @picoplanetdev
    @picoplanetdev 2 месяца назад +76

    Oh boy another Fireship video!

    • @ortana-v2
      @ortana-v2 2 месяца назад +3

      truely the first

    • @12crenshaw
      @12crenshaw 2 месяца назад +1

      At least that one haven't made me anxious about AI taking over the world

  • @rick-ed1sn
    @rick-ed1sn 2 месяца назад +55

    that's a very clever logo

    • @LouisChiaki
      @LouisChiaki 2 месяца назад +1

      Then you should also love Tensorflow.

    • @yash1152
      @yash1152 2 месяца назад

      2:43 that sure looks cool and inspiring. but whats clever about it?

  • @VisibilityO2
    @VisibilityO2 2 месяца назад +4

    I have never heard the best explanation of derivative from calculus like 'if you want to know how big is the mushroom cloud is growing ' .

  • @athlone_tch
    @athlone_tch 2 месяца назад +18

    - “Mum, could I practice my predictions from automatic differentiation in our garden?”
    1:47

  • @Henrique-up4su
    @Henrique-up4su 2 месяца назад +220

    "Let's start with X: Accelerated (...)"
    "???"

    • @tienatnguyen8899
      @tienatnguyen8899 2 месяца назад +42

      That's because X is pronounced "eks", and accelerated is pronounced like "eks-elerated"

    • @bruwyvn
      @bruwyvn 2 месяца назад +29

      Clearly you haven't watched BEN10

    • @birdbeakbeardneck3617
      @birdbeakbeardneck3617 2 месяца назад +2

      ai fireship strong with this one

    • @joaofrancisco5781
      @joaofrancisco5781 2 месяца назад +7

      @@bruwyvn For non native speakers XLR8 is just XLR8 in the translated language, usually who watches/ed ben10 at 10yo would not speak english, outside of native speaking countries. It took me years to realise that xlr8 is spelled accelerate

    • @kintrix007
      @kintrix007 2 месяца назад

      @@joaofrancisco5781 Nah it really depends.
      For example, in the Hungarian dub its name would literally translate back to English as "Lightning Gremlin". They just took the message of it, and gave XLR8 a name a 10 year old could have come up with. Instead of a letter sequence that is otherwise nonsensical.
      Or, in the Japanese dub, they just called it "Accelerate", as they kept the pronunciation of all the aliens, not the spelling.

  • @bramvdnheuvel
    @bramvdnheuvel 2 месяца назад +2

    Do Elm in 100 seconds! You'll love it! It's an older JavaScript framework that had a lot of thought behind it. It's funny to see more popular ones catch up, but Elm did a lot of the things very well and it deserves some love!

  • @zstrizzel
    @zstrizzel 2 месяца назад +10

    great video but still very sad we did not work in a mortal kombat jax reference

    • @fernandogurgel
      @fernandogurgel 2 месяца назад +3

      Was looking for this comment.
      I always wanted to see a library or tech called Jax, because all I got was AJAX concept from Javascript, which would not entirely fit it, but somehow always reminded me of the MK fighter.

  • @MarcusAurelius-kl5yz
    @MarcusAurelius-kl5yz 2 месяца назад +14

    Dang missed opportunity using the Jax from league of legends on the video

    • @Gm-ce5kg
      @Gm-ce5kg 2 месяца назад +5

      missed opportunity to take a shower

    • @msghia5252
      @msghia5252 Месяц назад

      Who?

  • @robertholtz
    @robertholtz 2 месяца назад +4

    Thank you, Fireship. Up until I watched this video, I thought I was smart.

  • @4RILDIGITAL
    @4RILDIGITAL 2 месяца назад +3

    This video really clarified how this isn't just another accelerated linear algebra library, but a tool developed by Google for futuristic new hardware. The constraints on immutability and the way it compiles to low-level code for accelerated Hardware seems ideal for machine learning. And the automatic differentiation feature is truly next level.

    • @FasutonemuMyoji
      @FasutonemuMyoji 2 месяца назад +1

      Thanx totally not chat gpt or equivalent

  • @codexcursors
    @codexcursors 2 месяца назад +4

    Thanks, I can now add 10 years experience of JAX to my résumé!

  • @codyandersan
    @codyandersan 2 месяца назад +2

    For those who don't know:
    Fireship lives on a planet whose gravity is stronger than our Earth, that's why his 100 seconds are our 226..

  • @joshuaevans4301
    @joshuaevans4301 2 месяца назад +1

    Holy shit automatic differentiation is so freaking cool. Imma need to remember this when I jump back into calculus

  • @masicbemester
    @masicbemester 2 месяца назад +3

    ah yes that one character from The Amazing Mortal Kombat Circus

  • @8ball437
    @8ball437 Месяц назад +1

    0:55 the points of inflection are marked wrong on the graph. The yellow points are local extremums, not inflection points.

  • @utorque
    @utorque 2 месяца назад +4

    Could you do a ROCm video (AMD's CUDA couterpart) ? Love you and your vids !

  • @NY_Mountain_Man
    @NY_Mountain_Man 2 месяца назад

    I'm an artist who worries constantly about saying the wrong thing on occasion. Meanwhile, I'm watching some guy talk about nuclear warheads.
    What a fascinating channel. 👏

  • @apps9129
    @apps9129 2 месяца назад

    Actually understood a lot more than I thought I would randomly clicking on this video.

  • @KennaBlackburn-tm9xn
    @KennaBlackburn-tm9xn 2 месяца назад +1

    100 seconds is a bit of a stretch, but well what can you do. Keep up the great work.

  • @ItWasEnder
    @ItWasEnder 2 месяца назад

    I said "Im not going to use JAX probably not going to watch". I'm glad I did, it actually looks useful lol.

  • @vintagegenious
    @vintagegenious 2 месяца назад

    All those new languages and libraries are converging closer to functional programming

  • @Channel-iu6de
    @Channel-iu6de 2 месяца назад

    Man that logo design for Jax is amazing

  • @netcodedev
    @netcodedev 2 месяца назад

    I just opened RUclips and thought it must be about time for a new fireship video. And bang! There it is

  • @um8078
    @um8078 2 месяца назад

    Then at your interview they're gonna require you to have 5 years of experience in JAX

  • @monkeyofjp
    @monkeyofjp 2 месяца назад +1

    "Imagine if I had a real weapon"

  • @cinderwolf32
    @cinderwolf32 2 месяца назад

    I would love to see Smalltalk in 100 seconds

  • @kushagrachaturvedy2821
    @kushagrachaturvedy2821 2 месяца назад +1

    Love the visuals in this one

  • @YandiBanyu
    @YandiBanyu 2 месяца назад

    Oh, that is actually useful. The abstraction is very much welcomed here. Can't wait to see RandBLAS and RandLAPACK too!

  • @Rahul.Gurung.
    @Rahul.Gurung. 2 месяца назад +1

    Brilliant back at it again, everywhere I go I see brilliant.

  • @SuperMaker.M
    @SuperMaker.M 2 месяца назад +1

    nice I just literally started learning JAX after using TF and torch for a long time

  • @R3dX5118
    @R3dX5118 2 месяца назад +3

    Mr fireship, please don't scam us, this ain't no 100 seconds anymore, Thank you ❤

  • @叵
    @叵 2 месяца назад +81

    *jax from the amazing digital circus* ⁉️

    • @thecatguy893
      @thecatguy893 2 месяца назад

      What i thought

    • @SirusStarTV
      @SirusStarTV 2 месяца назад +5

      Nah, from Mortal Kombat

    • @Console.Log01
      @Console.Log01 2 месяца назад

      please end it all my bro

    • @teamllr3137
      @teamllr3137 2 месяца назад +1

      I was sure there would be at least 1 comment like this...

    • @Fafr
      @Fafr 2 месяца назад

      No it's the classic creator from Geometry Dash, the one behind the legendaray The Nightmare

  • @pasmanitan
    @pasmanitan 2 месяца назад +1

    Recruiters are gonna ask for ppl with 15 years of experience with JAX

  • @ferdinandbardamou5508
    @ferdinandbardamou5508 2 месяца назад

    My experience: ~1200 to 1500x accelaration of a function with numpy operations on a conventional 3070 GPU, by just adjusting the numpy code to JAX syntax. Just remember that array dimensions must be constant.

  • @MrDejvidkit
    @MrDejvidkit 2 месяца назад +3

    Please do scala next!

  • @jjhacker810
    @jjhacker810 2 месяца назад +1

    Can I suggest R? It seems to be gaining traction in Google Courses, EdX, Uni, Etc. It'd be good to get a high level overview of the langugage that can be used to summarize it for business, friends, family, etc

  • @XyndraNerd
    @XyndraNerd 2 месяца назад

    You know you're balling if you have your own TPU

  • @costitica
    @costitica 2 месяца назад

    Imagine I tell the interviewer I have 100 seconds of experience in JAX

  • @Gstyle85255
    @Gstyle85255 2 месяца назад +1

    Good to see its not just JS languages in the merry-go-round

  • @hanif72muhammad
    @hanif72muhammad 2 месяца назад

    My brain too smooth, what are you talking about?

  • @skejeton
    @skejeton 2 месяца назад

    "i invented a new hyper parallel execution language!"
    new or shading language?
    "shading language"

  • @kellymoses8566
    @kellymoses8566 2 месяца назад

    Automatic differentiation is fascinating

  • @alphaios7763
    @alphaios7763 2 месяца назад +12

    Hoped to get some tips on top lane

    • @LetyQ
      @LetyQ 2 месяца назад

      1) Always keep track of jungler pathing.
      2) Freeze lane when ahead, even if the opponent does not contest and thus does not die, the gold and xp lead from the minion is enough to snowball.
      3) Death timers are very low until level 7, don't greed a plate if a takedown is taken, you will lose in tempo and therefore reduce the advantage from the kill.
      4) If opponent roams, hard shove then follow up if action not ended. Best case scenario the roams does not connect and opponent will lose wave. Worst case scenario, the roam is successful but as the lane is under the opponent tower, they can neither base nor push for plates, therefor the play is even in tempo even if it is losing in gold/xp.

  • @dovs96
    @dovs96 2 месяца назад +1

    That's exactly the thing I needed lol, thanks a lot.

  • @edbrito-swdev
    @edbrito-swdev 2 месяца назад +1

    I saw the title and thought it was going to be on Jax-RS. I'm glad it wasn't!

  • @soflass1293
    @soflass1293 2 месяца назад

    The most understandable 100 seconds ever

  • @soundstudio7803
    @soundstudio7803 2 месяца назад +2

    tfw you realize 100 seconds videos aren't actually 100 seconds long

  • @SatoshiSeeker.
    @SatoshiSeeker. 2 месяца назад

    How can we differentiate between Jax and Numpy when it comes to mutating arrays? Could you make a video explaining this further and diving deeper into the differences? Can you dive deeper into RWA altcoins in future videos?

  • @howird
    @howird 2 месяца назад +1

    JAX actually stands for "Just After eXecution" according to the original white paper

  • @Rebel101
    @Rebel101 2 месяца назад

    You know it's a sponsored video, when there is no flat earth.

  • @nafrost2787
    @nafrost2787 2 месяца назад +1

    This sounds extremely similar to pytorch, tensorflow, keras and the likes. I'm surprised I haven't heard of it by now. Anyone here on the internet have any ideas why is it less known? Maybe it's a latecomer?

    • @f3arbhy
      @f3arbhy 2 месяца назад

      its pretty well used for machine learning in the scientific community. Jax probabiliy has the best api in terms of writing pure functions and transforming them into functions that returns gradient's or hessian. For that reason, one can write code just like writing an equation, which is well appreciated by the scientific community..

  • @zainkhalid3670
    @zainkhalid3670 2 месяца назад

    Just about time I add it in my CV

  • @MinibossMakaque
    @MinibossMakaque 2 месяца назад

    My math and CS degrees allow me to understand everything you just said without really knowing how to put it to good use.

  • @J3dotgg
    @J3dotgg 2 месяца назад

    Thanks Fireship, this library will definitely accelerate the development of my nuclear warhead!

  • @StrikerEureka85
    @StrikerEureka85 2 месяца назад

    normally, i feel a tad bit smarter after watching every one of these videos. this is one of the few ones that makes me realize how little i know and how much of a dumb-ass i really am.

  • @hectors.1644
    @hectors.1644 2 месяца назад

    A must like video, due to your effort to research this type of content, keep that good work

  • @thedelanyo
    @thedelanyo 2 месяца назад +1

    The only in 100 seconds without "Hi mom"

  • @boriscrisp518
    @boriscrisp518 2 месяца назад

    This is te best youtube channel on the internet. I just wish youtube wasnt censored so i could expresshow much I enjoy the content

  • @nafrost2787
    @nafrost2787 2 месяца назад

    Who else is proud of our little Jeff for graduating to a brilliant sponsorship?

  • @Tubeytime
    @Tubeytime 2 месяца назад

    Thought this was a TADC compilation video, but I'll take this instead

  • @dsjgfhidupgjret
    @dsjgfhidupgjret 2 месяца назад +1

    Finally something I’ve used in this channel :)

  • @ZipMapp
    @ZipMapp 2 месяца назад

    Two autos on minions, q, aa, w reset, e , aa till death. There jax in two sentences.

  • @shoopddawhooped
    @shoopddawhooped 2 месяца назад +8

    Ends @ 2:50

  • @Andeiih
    @Andeiih 2 месяца назад

    My head is exploding like a nuclear mushroom cloud after this one

  • @lenionio
    @lenionio 2 месяца назад +1

    I have 20 years experience in JAX and I must say I love it

  • @syrus3k
    @syrus3k 2 месяца назад +2

    Wasn't Jax a character in mortal kombat?

  • @vspoke9150
    @vspoke9150 2 месяца назад

    I have a 30 day streak in brilliant, and I can confirm is really useful

  • @the_everything999
    @the_everything999 2 месяца назад +1

    Jax seems really cool.

  • @geoffreybrunet5948
    @geoffreybrunet5948 Месяц назад

    There is an error for mushroom example with array, it's a 3 elements array but you try to get arr[3], je gradient is [60., 4., 3.]

  • @loserpacman
    @loserpacman 2 месяца назад

    The linear algebra field going to the moon with this one

  • @TimmyM
    @TimmyM 2 месяца назад +1

    I don't understand anything you say, but I love watching these videos anyway.

  • @ANONYMOUS-qx4yx
    @ANONYMOUS-qx4yx 2 месяца назад +1

    its about time for another 100 seceonds

  • @foxy_robin
    @foxy_robin 2 месяца назад

    You videos with Brilliant sponsorship are max quality ser.

  • @eulmdev
    @eulmdev 2 месяца назад +1

    common W fireship vid
    i love the 100 seconds series lol

  • @Crozz22
    @Crozz22 2 месяца назад

    I've been programming for 15 years and I understood some of these words...

  • @Jack-ul2rb
    @Jack-ul2rb 2 месяца назад +1

    How you edit your videos? . It was an amazing edit And which platform do you use for such arrows and animantions .

  • @khla.mp4
    @khla.mp4 2 месяца назад

    I played this out loud to impress my family

  • @toxiq5295
    @toxiq5295 2 месяца назад

    That logo is sickly designed

  • @_rd_kocaman
    @_rd_kocaman 2 месяца назад

    Thanks for the video mate now I can add JAX to my resume

  • @integralyogin
    @integralyogin 2 месяца назад +1

    oooh how much I have to learn.

  • @thatguyoverthere32
    @thatguyoverthere32 2 месяца назад

    Is this just giga chad MATLAB? Was my first year compute physics course useful after all?

  • @EigenCharlie
    @EigenCharlie 2 месяца назад

    Really want to see how impoved versions of KANs wil perform using JAX

  • @avasthii
    @avasthii 2 месяца назад

    I understood nothing mathematically. But this video was great.

  • @dogukan463
    @dogukan463 2 месяца назад

    So, essentially newer and better tensorflow

  • @krucafuks123
    @krucafuks123 2 месяца назад

    i thought this will be combos for jax

  • @user-bl9ec8kj3w
    @user-bl9ec8kj3w 2 месяца назад

    as a math student learning java I can confirm I have ten year experience in JAX

  • @andreschou9560
    @andreschou9560 2 месяца назад

    damn everything was so good until the end advertisement lol

  • @tomasfiala5014
    @tomasfiala5014 2 месяца назад

    Thanks to Fireship, my GPU keep me warm at night.

  • @Nekoeye
    @Nekoeye 2 месяца назад

    "Imagine"... stop it right there. I'm lost.

  • @🈁_🈁
    @🈁_🈁 2 месяца назад +2570

    Those who didn't come from Tiktok, are allowed to like this comment.

    • @Adomas_B
      @Adomas_B 2 месяца назад +223

      Who df would come from TikTok?

    • @voidpointer398
      @voidpointer398 2 месяца назад +86

      The video dropped 2 fucking minutes ago

    • @YouAreTheRaidBoss
      @YouAreTheRaidBoss 2 месяца назад +35

      Skibidi toilet?

    • @micbab-vg2mu
      @micbab-vg2mu 2 месяца назад +26

      what is Tiktok :)

    • @randomeone100
      @randomeone100 2 месяца назад +12

      Lets get out of this schrisophobia of social media and embrace❤