How to train simple AIs

Поділитися
Вставка
  • Опубліковано 27 тра 2024
  • This video is about a simple algorithm to experiment with basic AIs.
    Thanks to Alexislouis for the music! @alexislouis2320
    You can find the music here: / 18zvih9nrh8gtkjy9
    I will release the code of demo shown in the video later.
  • Наука та технологія

КОМЕНТАРІ • 240

  • @alexislouis2320
    @alexislouis2320 25 днів тому +105

    Nice video my friend. I would stay around for the seconds parts guys, exciting things ahead ;)

    •  12 днів тому

      fr

    • @mox189
      @mox189 4 дні тому

      BASED

  • @GuildOfCalamity
    @GuildOfCalamity 25 днів тому +106

    I could be insane, but I would swear that a rooster just taught me AI.

    • @bradley1995
      @bradley1995 22 дні тому

      He did, and a cock a doodle too!

  • @CraftingCat_IX
    @CraftingCat_IX 25 днів тому +173

    The talking chicken is *slightly* cursed. It’s probably because only the beak is moving and it’s opening a bit too wide for my taste.

    • @plaintext7288
      @plaintext7288 25 днів тому +20

      + the balls like red things

    • @the-bgrspot6997
      @the-bgrspot6997 24 дні тому +2

      hyper cursed tbh

    • @poultrypants
      @poultrypants 24 дні тому +1

      and the balls 🤣🤣

    • @sumitbiswas164
      @sumitbiswas164 19 днів тому +2

      Extremely distracting! I would prefer relevant scenes in a serious video.

    • @volbla
      @volbla 18 днів тому

      I like the chicken. I find it charming :>

  • @alliepiper4772
    @alliepiper4772 24 дні тому +30

    I'm finally starting to recover from like 3 years of intense burnout as a software engineer, and watching your videos helps me remember why I got into this field in the first place. Looking forward to the next one!

  • @grahamsnyder762
    @grahamsnyder762 25 днів тому +39

    Since the controller can output an arbitrary cart speed every timestep, it is permitted more or less infinite acceleration. It would be interesting to see how they perform if the available acceleration, (or power, or whatever) is constrained to realistic bounds

    •  22 дні тому

      That's actually pretty standard to alter into a categorical/discrete step.

  • @knitnatsnokprogramming
    @knitnatsnokprogramming 25 днів тому +60

    He’s alive!

  • @user-lm4nk1zk9y
    @user-lm4nk1zk9y 25 днів тому +189

    Now build entire ecosystem with Darwin's evolution principles.

    • @Maus_Indahaus
      @Maus_Indahaus 25 днів тому +3

      I'd like to see that!

    • @SystemBD
      @SystemBD 25 днів тому +21

      That is actually a branch of classical AI called Evolutionary/Genetic Algorithms. They are not hard to code, but they have limited applications.

    • @Me-0063
      @Me-0063 25 днів тому +11

      @@SystemBDNot hard to code is an understatement. In my opinion, its probably the easiest to code from scratch…

    • @allanburns1190
      @allanburns1190 25 днів тому +1

      I am actually working on something similar

    • @TVDaJa
      @TVDaJa 24 дні тому +3

      @@Me-0063 They sound to me like a normal neural network that uses random noise and a kind of selection instead of a more guided training algorithm

  • @thebetterbutter709
    @thebetterbutter709 24 дні тому +11

    From a frenchmen to another, your accent has improved so much! Your videos are captivating as always.

    • @proyoloks1386
      @proyoloks1386 22 дні тому +3

      yeah it's insane, I almost forgot that this is the same guy as 8 months ago...

  • @knitnatsnokprogramming
    @knitnatsnokprogramming 25 днів тому +22

    I’ll binge-watch this rn

    • @ruolbu
      @ruolbu 24 дні тому +4

      how do you binge a single 13 minute video?

    • @knitnatsnokprogramming
      @knitnatsnokprogramming 24 дні тому +8

      @@ruolbu By rewatching it over and over again at 0.25x speed

    • @PezzzasWork
      @PezzzasWork  24 дні тому +7

      Amazing

    • @ruolbu
      @ruolbu 10 днів тому +1

      dedication

  • @NickCombs
    @NickCombs 23 дні тому +3

    The first steps are always the hardest, so it might be good to show some actual code examples for them.

  • @mr.ditkovich9983
    @mr.ditkovich9983 25 днів тому +14

    Can't wait to see your next video 🙌🏾🙌🏾

  • @Oring17
    @Oring17 25 днів тому +6

    Love your work Pezzza. You are a great inspiration.

  • @xernas7880
    @xernas7880 25 днів тому +4

    Finally ! I just love your content, i'm happy to see you again, also on my favorite topic

  • @notthetruedm
    @notthetruedm 22 дні тому

    I love how you animated this! It looks so cool and made it easy to follow along

  • @TheTechnopider
    @TheTechnopider 22 дні тому +1

    Extremely excited for the next video! For some reason, AI training videos just scratch a certain itch so nicely

  • @Hailfire08
    @Hailfire08 25 днів тому +1

    Love your videos and can't wait for the next one!

  • @dedelblute3946
    @dedelblute3946 25 днів тому +1

    I love this channel. It's enjoyable to just watch cool coding stuff.

  • @Ibloop
    @Ibloop 25 днів тому +10

    I was literally about to work on a project of mine that requires AI, immaculate timing pezzza

  • @teenspirit1
    @teenspirit1 24 дні тому +2

    I do topological sorting, but then I cache all the pathways from input nodes to output nodes into lists. This way, instead of re-iterating the graph, I just do a for loop to iterate over lists of nodes instead of repeatedly recalculating paths. I haven't seen this technique used online but it makes training step much faster.

  • @elex6934
    @elex6934 25 днів тому

    I love your videos ❤ ai is such an interesting topic and I'll watch part2 as soon as possible

  • @karlosfy
    @karlosfy 19 днів тому

    Really inspiring. Will be waiting to see the code! Great content :)

  • @issamoudriss6564
    @issamoudriss6564 21 день тому

    This video is super nice man, waitin for the second part!

  • @PloverTechOfficial
    @PloverTechOfficial 22 дні тому +1

    This is amazing! I can actually understand how to create my own system if I wanted. Unlike some videos which don’t succeed at telling us in an understandable way.

  • @Sakejo
    @Sakejo 21 день тому +1

    In the next videos I suggest including some articles, in the description, to delve deeper into the topics discussed. As I was searching for the sources for this project, I couldn't find them.

  • @JayBenOh
    @JayBenOh 24 дні тому

    Great video! It's a very nice visual representation ... that must have been a ton of work!

  • @simon_aviation
    @simon_aviation 25 днів тому

    Thank you SOOOO MUCH!!!! I always wanted to do something like this, this will really help!!!

  • @srb9767
    @srb9767 24 дні тому +1

    Your projects are amazing, and often very beautiful. I aspire to make software as good as this one day!

  • @namdao2672
    @namdao2672 25 днів тому +2

    im trying to learn ML and DL by myself and find this super helpful, waiting for your next masterpiece

  • @rigbyb
    @rigbyb 25 днів тому

    Great video! Glad to see you again

  • @brickstopforall
    @brickstopforall 25 днів тому +1

    I was wanting a video on machine learning!! It's from you aswell!

  • @khatharrmalkavian3306
    @khatharrmalkavian3306 25 днів тому +7

    Double pendulum should be fun. I wonder how good a solution it will be able to find. As an aside, can't you just use the raw pendulum height (summed per frame) as a fitness function?

  • @sourabhk2373
    @sourabhk2373 3 дні тому

    Videos like these remind me why I got into this field. Man my job is sucking the soul out of me. Gotta do something about this.

  • @ZeroPlus707
    @ZeroPlus707 20 днів тому

    Great video! Hyped for the double pendulum :)

  • @allanburns1190
    @allanburns1190 25 днів тому

    This will actually help me so much in my new project

  • @ardumaniak
    @ardumaniak 24 дні тому

    Hurry up with the second part, I can't wait!

  • @abdulrahmanelawady4501
    @abdulrahmanelawady4501 20 днів тому

    Thank you for a great video

  • @loicsen8003
    @loicsen8003 5 днів тому

    Very nice video, thanks for that

  • @Wolforce
    @Wolforce 25 днів тому

    Great video! as always!

  • @midasscheffers7610
    @midasscheffers7610 24 дні тому

    Awsom video, cant wait for the second part

  • @sofia.eris.bauhaus
    @sofia.eris.bauhaus 16 днів тому

    inverted double pendulum sounds intense! looking forward to it. :)

  • @codedeus
    @codedeus 19 днів тому +1

    Great video as usual :D

  • @noahwinslow3252
    @noahwinslow3252 19 днів тому

    I'll admit I wasn't as interested in this one as your other work, but your animation quality is *chef's kiss* such a good presentation

  • @CyrilM68
    @CyrilM68 25 днів тому +1

    I can't wait to see what happens next with the double pendulum !

  • @motbus3
    @motbus3 23 дні тому

    Loved the UIs

  • @MysteryPancake
    @MysteryPancake 24 дні тому +1

    nice! it reminds me of the MarI/O video, it uses this algorithm too

  • @wjrasmussen666
    @wjrasmussen666 13 днів тому

    That is fun! Good work

  • @yraharchenko6364
    @yraharchenko6364 25 днів тому

    soooo, now I want to watch the next video, it is so excited

  • @i_do_stuff
    @i_do_stuff 22 дні тому

    Waiting for the next one!

  • @and_I_am_Life_the_fixer_of_all
    @and_I_am_Life_the_fixer_of_all 18 днів тому

    such a crime that one of the best youtubers in the tech space only has 138k views and only 34k views on this video after 7 days

  • @gedaliakoehler6992
    @gedaliakoehler6992 25 днів тому

    Very neat (haha)! Also great classical controls problem!

  • @ScienceGuides
    @ScienceGuides 21 день тому

    Great work! :-)

  • @Blooper1980
    @Blooper1980 24 дні тому +1

    Very neat video

  • @manamimnm
    @manamimnm 23 дні тому

    That trippy music!

  • @CraftingCat_IX
    @CraftingCat_IX 25 днів тому +3

    The guy is back :D

  • @Leonan-cx6dl
    @Leonan-cx6dl 25 днів тому

    Waiting for the next video!

  • @lennarth.6214
    @lennarth.6214 24 дні тому

    I really like the NEAT-algorithm and its variations. I've used them to find shapes for the unsolved mathematical problem called moving sofa. I got something similar to the currently known best solution in just a few dozen iterations. I wonder how this algorithm scales with more complex task on just a few inputs.

  • @quantumgaming9180
    @quantumgaming9180 19 днів тому

    I did not expect you to say "double pendulum" and now you are leaving us on a cliff hanger like this :(
    Hope next episode appears soon

  • @geobruce1995
    @geobruce1995 23 дні тому

    This was again an awesome and beautifully visualised video, just like I'm used from this channel.
    I'd love to be able to program something like this. If you were to make a more detailed tutorial that we can follow along with the videos and description I believe many people might benefit from this.
    Is your code open source?
    Thanks a lot for your awesome content!

  • @antoinespadone7834
    @antoinespadone7834 23 дні тому

    amazing work and i hope mine will work

  • @thatprogramer
    @thatprogramer 22 дні тому

    Very well explained! I wonder how the network would react to slight random fluctuations in the value of the nodes or just straight up removing nodes (How would it adapt?)

  • @motbus3
    @motbus3 20 днів тому

    I'm still curious about the UIs :) anxiously waiting for the source code ❤

  • @marcelob.5300
    @marcelob.5300 25 днів тому

    Wonderful!

  • @FunkyTurtle
    @FunkyTurtle 18 днів тому

    awesome video man, the graphics are super beautiful as always.
    you inspired me to make a network of my own, what sources did you use to learn the intricacies of the architecture? i understand the general flow but wouldn't know when at what rate should i add connections or nodes.
    thanks 😄

    • @PezzzasWork
      @PezzzasWork  11 днів тому

      Thank you! I did use the original paper a lot and then tweaked things a bit to feet my needs. In the end these parameters have quite a lot of flexibility, there is a wide range of possible values that can lead to good results. In this case I used 5% chance to create a new node and 50% chance to create a new connection.

  • @synterr
    @synterr 25 днів тому

    So cool example! Can't wait to see how AI will handle chaotic pendulum ;)

  • @bradley1995
    @bradley1995 22 дні тому

    This video seems much simpler than your others. Although I hope a bit more math and code examples can be used in the next. Gate logic videos seem great to teach the subject aswell. Although I feel such simplicity makes it hard to understand the topic clearly enough to extend it to more complicated matters.

  • @chrisdickens4862
    @chrisdickens4862 23 дні тому

    Very cool!

  • @P4INKillers
    @P4INKillers 23 дні тому +1

    This is an absolutely wonderful video.
    If I may provide some feedback;
    It would be great if you could visually show how these mutations (5:47) are applied using the network chart.
    When splitting an existing connection in two, do they share the same connections with their parents and children?
    Do new connections have random weights?
    Also, why does my hyperbolic tangent function provide values different from yours?

  • @g3itnal
    @g3itnal 25 днів тому

    im excited for the next video

  • @shadowcrafter01
    @shadowcrafter01 22 дні тому

    That's an awesome video. Crazy good graphics! Mind giving us a hint on how you made them?

    • @PezzzasWork
      @PezzzasWork  11 днів тому +1

      Thank you! I am using C++ and SFML, I will probably make a series of small tutorial to explain how I do this

  • @happycolours8551
    @happycolours8551 25 днів тому +1

    Yay he's back

  • @QwertyIsCool
    @QwertyIsCool 25 днів тому

    Hes back lets go!

  • @QQ-jn5jb
    @QQ-jn5jb 25 днів тому

    The talking chicken is amazing

  • @Alexander20091988
    @Alexander20091988 24 дні тому

    Really cool video, thank you! This is an really interesting sub topic of ML, especially with such simple networks. Im wondering how it would play out, to create some intermediate game ai, which handles some decisions with this sort of mechanisms instead of a huge load of switch/if/else shenanigans. Obviously not driven fully by it for performance reasons, but in an assisting way.
    Btw, can you add the used resources (wiki/paper links) to the description? I would appreciate it. Thank you!

  • @LambOfDemyelination
    @LambOfDemyelination 23 дні тому +1

    how does the NEAT method you use use the reward function to optimise the network? Is that is a feature inherent to the NEAR method, or is it relying on extra work?

    • @PezzzasWork
      @PezzzasWork  11 днів тому +1

      My implementation is a simplification of neat but the global principle is the same and the reward function is just there to drive the random operations toward better solutions by introducing a biais for better agents, at the core of the algorithm there almost only random things happening.

  • @julianxe
    @julianxe 18 днів тому

    Super insightful! What tool are you using for animations?

    • @PezzzasWork
      @PezzzasWork  11 днів тому

      I did create my own tool using C++ and SFML

  • @jmcglockYT
    @jmcglockYT 25 днів тому +1

    yes he uploaded

  • @bergolho
    @bergolho 24 дні тому

    Congratulations for the video! Could you please tell me which software you use to build the animations ?

    • @PezzzasWork
      @PezzzasWork  11 днів тому

      Thank you! I am using a C++ tool I wrote myself

  • @Gunnahan
    @Gunnahan 25 днів тому +1

    cant wait for part 2 🙂

  • @gorlix
    @gorlix 21 день тому

    after this video you convinced me to play around with neutral networks.
    i quickly found my first goal - make MNIST number recognition network. its my second day trying and the network consistently gets 30% error rate which really pisses me off, this must be because i did not use any libraries and slapped it together on a Unity C# project with a help of chat gpt.
    im planning to run network on a separate thread so i could test more variety of settings for the neural network.
    anyways if you are reading this, what would you suggest for me?
    im using traditional neural network with
    inputs of 784
    hidden layer 128
    hidden layer 32
    output layer 10
    and learning rate of 0,0005
    in each epoch it eats 60k images
    after running first half of first learning epoch it shows 25-30% error rate,
    after second epoch error rate tends to move closer to 50% which is weird, i tried making learning rate smaller but that requires lots of time too

  • @FailRaceFan
    @FailRaceFan 23 дні тому

    I feel like I've learned more in this video than in 5 hours of reading. Will you also talk about other learning algorithms?

    • @PezzzasWork
      @PezzzasWork  11 днів тому +1

      Yes I will explore other methods!

  • @alessi4249
    @alessi4249 24 дні тому

    Yeah.. the talking cockerel with sunglasses talking about NN is weirding me out.. Great video!

  • @chris.hinsley
    @chris.hinsley 25 днів тому

    Was nice to see a none layered net ! But just a DAG net.

  • @Haapavuo
    @Haapavuo 24 дні тому

    How did you implement the visualization? It looks very nice. Thanks!

    • @PezzzasWork
      @PezzzasWork  11 днів тому

      I am using C++ and SFML, I will create a series of tutorials to explain how I did as I have quite a lot of questions about it.

  • @jayearl3591
    @jayearl3591 23 дні тому +1

    So after all these months in hiding, you've been secretly building Boston Dynamics Spot knock-offs 😂

  • @Surfingnet
    @Surfingnet 24 дні тому

    Encore une super vidéo. Tu l'as codé dans quel langage ce projet? C'est quoi le cpu de la machine sur laquelle tu fais tourner le processus de sélection?

    • @PezzzasWork
      @PezzzasWork  11 днів тому +1

      Merci ! J’utilise le C++ pour tous mes projets et le CPU de mon pc c’est un I7-12700K

  • @BanD1t8
    @BanD1t8 15 днів тому

    The pendulum visualization looks really nice and tactile. Is it custom made, or was there some library/framework involved?

    • @PezzzasWork
      @PezzzasWork  11 днів тому

      It's all custom made using C++ and SFML

  • @user-ns7fz5gb5p
    @user-ns7fz5gb5p 16 днів тому +1

    Nice work! Is it possible that you publish this project would very interesting to read the code.

  • @Radu
    @Radu 10 днів тому

    Nice one!

    • @PezzzasWork
      @PezzzasWork  9 днів тому

      Thank you! I am really impressed by your understand ai videos

  • @mystifoxtech
    @mystifoxtech 22 дні тому

    the double pendulum balancing problem should allow 2d movement instead of 1d to balance it because controlling 5 parameters with one output is just not feasible

  • @Yeetmaster982
    @Yeetmaster982 25 днів тому

    im exited to see it with a double pendulum

  • @Stagnated541
    @Stagnated541 24 дні тому

    What is the best compiler for a code made in Scratch?

  • @azuky74
    @azuky74 19 днів тому

    I wanted to do the same (create my own evolution neural network) for a long time and you gave me the motivation to ! Thank a lot
    Your video is really great ! Love it !
    I have one question, on my side I have one issue. Network are get over complexed really fast, creating many neurons in fact not necessary. How did you managed this ? Do you decrease the chance to create a new neuron depending on the current number ? Do you take the size of the network in account when scoring ?
    Or maybe you didn't have this issue !
    If anyone have an idea about it, I take it !
    (I resolved the issue by decrasing the score depending on the network size, but I'm not feeling this is a good way to solve it)

  • @lefm_
    @lefm_ 25 днів тому +1

    So few nodes! Unity's ML Agents default configuration is 2 layers of 128 nodes, I dont understand why it uses so much, maybe something related to reinforced learning?

  • @mikelCold
    @mikelCold 19 днів тому

    What a hook!

  • @sergodobro2569
    @sergodobro2569 24 дні тому

    Cool video!
    Btw, do you use Godot or some other engine? If though, how to calculate physical interactions in seconds? Because usually it is 1 scene with fixed speed of time, and to calculate all those ai decisions everything should be sped up and without graphics

    • @PezzzasWork
      @PezzzasWork  11 днів тому +1

      Thanks! I am using my own simple engine :)

  • @moofin4170
    @moofin4170 22 дні тому

    In theory I understand training AI, however what software do you use? Where do you write logic? How do you get an image output? How do you offload the work to a GPU for faster matrix processing? Interesting stuff, nonetheless. Great video!

  • @ryshask
    @ryshask 25 днів тому

    Talking chicken? I'm in!

  • @filippo7349
    @filippo7349 24 дні тому

    Do you use any 3rd party library over SFML (for drawing charts, parts or so) or this is your own implementation?

    • @PezzzasWork
      @PezzzasWork  11 днів тому

      I just use SFML, all the charts are made with it.

  • @zyro8473
    @zyro8473 22 дні тому

    +1 for part 2

  • @ihv2010_cc
    @ihv2010_cc 25 днів тому +2

    YES :D