How to train simple AIs

Ғылым және технология

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
Github github.com/johnBuffer/Pendulu...

Пікірлер: 256

  • @alexislouis2320
    @alexislouis2320Ай бұрын

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

  • 26 күн бұрын

    fr

  • @mox189

    @mox189

    18 күн бұрын

    BASED

  • @GuildOfCalamity
    @GuildOfCalamityАй бұрын

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

  • @bradley1995

    @bradley1995

    Ай бұрын

    He did, and a cock a doodle too!

  • @CraftingCat_IX
    @CraftingCat_IXАй бұрын

    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

    Ай бұрын

    + the balls like red things

  • @the-bgrspot6997

    @the-bgrspot6997

    Ай бұрын

    hyper cursed tbh

  • @poultrypants

    @poultrypants

    Ай бұрын

    and the balls 🤣🤣

  • @sumitbiswas164

    @sumitbiswas164

    Ай бұрын

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

  • @volbla

    @volbla

    Ай бұрын

    I like the chicken. I find it charming :>

  • @alliepiper4772
    @alliepiper4772Ай бұрын

    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Ай бұрын

    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

  • Ай бұрын

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

  • @knitnatsnokprogramming
    @knitnatsnokprogrammingАй бұрын

    He’s alive!

  • @thebetterbutter709
    @thebetterbutter709Ай бұрын

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

  • @proyoloks1386

    @proyoloks1386

    Ай бұрын

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

  • @user-lm4nk1zk9y
    @user-lm4nk1zk9yАй бұрын

    Now build entire ecosystem with Darwin's evolution principles.

  • @Maus_Indahaus

    @Maus_Indahaus

    Ай бұрын

    I'd like to see that!

  • @SystemBD

    @SystemBD

    Ай бұрын

    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

    Ай бұрын

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

  • @allanburns1190

    @allanburns1190

    Ай бұрын

    I am actually working on something similar

  • @TVDaJa

    @TVDaJa

    Ай бұрын

    @@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

  • @mr.ditkovich9983
    @mr.ditkovich9983Ай бұрын

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

  • @Oring17
    @Oring17Ай бұрын

    Love your work Pezzza. You are a great inspiration.

  • @TheTechnopider
    @TheTechnopiderАй бұрын

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

  • @xernas7880
    @xernas7880Ай бұрын

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

  • @NickCombs
    @NickCombsАй бұрын

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

  • @knitnatsnokprogramming
    @knitnatsnokprogrammingАй бұрын

    I’ll binge-watch this rn

  • @ruolbu

    @ruolbu

    Ай бұрын

    how do you binge a single 13 minute video?

  • @knitnatsnokprogramming

    @knitnatsnokprogramming

    Ай бұрын

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

  • @PezzzasWork

    @PezzzasWork

    Ай бұрын

    Amazing

  • @ruolbu

    @ruolbu

    24 күн бұрын

    dedication

  • @notthetruedm
    @notthetruedmАй бұрын

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

  • @Ibloop
    @IbloopАй бұрын

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

  • @dedelblute3946
    @dedelblute3946Ай бұрын

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

  • @khatharrmalkavian3306
    @khatharrmalkavian3306Ай бұрын

    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?

  • @Hailfire08
    @Hailfire08Ай бұрын

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

  • @elex6934
    @elex6934Ай бұрын

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

  • @issamoudriss6564
    @issamoudriss6564Ай бұрын

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

  • @karlosfy
    @karlosfyАй бұрын

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

  • @Sakejo
    @SakejoАй бұрын

    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.

  • @PloverTechOfficial
    @PloverTechOfficialАй бұрын

    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.

  • @rigbyb
    @rigbybАй бұрын

    Great video! Glad to see you again

  • @srb9767
    @srb9767Ай бұрын

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

  • @CraftingCat_IX
    @CraftingCat_IXАй бұрын

    The guy is back :D

  • @JayBenOh
    @JayBenOhАй бұрын

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

  • @namdao2672
    @namdao2672Ай бұрын

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

  • @simon_aviation
    @simon_aviationАй бұрын

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

  • @allanburns1190
    @allanburns1190Ай бұрын

    This will actually help me so much in my new project

  • @wjrasmussen666
    @wjrasmussen66627 күн бұрын

    That is fun! Good work

  • @sourabhk2373
    @sourabhk237317 күн бұрын

    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.

  • @Wolforce
    @WolforceАй бұрын

    Great video! as always!

  • @P4INKillers
    @P4INKillersАй бұрын

    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?

  • @loicsen8003
    @loicsen800319 күн бұрын

    Very nice video, thanks for that

  • @brickstopforall
    @brickstopforallАй бұрын

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

  • @ZeroPlus707
    @ZeroPlus707Ай бұрын

    Great video! Hyped for the double pendulum :)

  • @Koroistro
    @Koroistro5 күн бұрын

    I always found these systems fascinating, adding noise made me wonder about one thing: what if there was noise on the neurons themselves? In the real world neurons live in a chaotic systems too, so it stands to reason that there'd be sources of noise there too.

  • @kinsondigital
    @kinsondigital3 күн бұрын

    What would be neat is to take an AI model that has been trained in realist physics and see if it can be applied to balance a real-world physical pendulum. There are forces and things in real-world physics that you cannot account for in a software simulation. For example, there are electrical forces, such as wire resistance, with the electric motor that drives the cart. The friction forces of the rail and the cartwheels, forces of wind if the balance operation occurred in an outside windy environment, and more. It would be fun to build something like this and train a model to control a real-world pendulum!!

  • @enderdodo9749
    @enderdodo97496 күн бұрын

    Very interesting video! The editing and animations are so nice and makes it easy to understand, and I was wondering, what software did you use to make them?

  • @midasscheffers7610
    @midasscheffers7610Ай бұрын

    Awsom video, cant wait for the second part

  • @gedaliakoehler6992
    @gedaliakoehler6992Ай бұрын

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

  • @ardumaniak
    @ardumaniakАй бұрын

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

  • @motbus3
    @motbus3Ай бұрын

    Loved the UIs

  • @codedeus
    @codedeusАй бұрын

    Great video as usual :D

  • @sofia.eris.bauhaus
    @sofia.eris.bauhausАй бұрын

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

  • @teenspirit1
    @teenspirit1Ай бұрын

    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.

  • @Prism019

    @Prism019

    5 күн бұрын

    Yeah, that popped out to me as an immediate speedup opportunity. Just gotta make sure it's only valid while the topology of it doesn't change. (Maybe invalidate it in the "add node/connection" mutations)

  • @geobruce1995
    @geobruce1995Ай бұрын

    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!

  • @CyrilM68
    @CyrilM68Ай бұрын

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

  • @MysteryPancake
    @MysteryPancakeАй бұрын

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

  • @and_I_am_Life_the_fixer_of_all
    @and_I_am_Life_the_fixer_of_allАй бұрын

    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

  • @yraharchenko6364
    @yraharchenko6364Ай бұрын

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

  • @abdulrahmanelawady4501
    @abdulrahmanelawady4501Ай бұрын

    Thank you for a great video

  • @Blooper1980
    @Blooper1980Ай бұрын

    Very neat video

  • @Leonan-cx6dl
    @Leonan-cx6dlАй бұрын

    Waiting for the next video!

  • @i_do_stuff
    @i_do_stuffАй бұрын

    Waiting for the next one!

  • @marcelob.5300
    @marcelob.5300Ай бұрын

    Wonderful!

  • @noahwinslow3252
    @noahwinslow3252Ай бұрын

    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

  • @ScienceGuides
    @ScienceGuidesАй бұрын

    Great work! :-)

  • @manamimnm
    @manamimnmАй бұрын

    That trippy music!

  • @thatprogramer
    @thatprogramerАй бұрын

    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?)

  • @FunkyTurtle
    @FunkyTurtleАй бұрын

    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

    25 күн бұрын

    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.

  • @shadowcrafter01
    @shadowcrafter01Ай бұрын

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

  • @PezzzasWork

    @PezzzasWork

    25 күн бұрын

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

  • @antoinespadone7834
    @antoinespadone7834Ай бұрын

    amazing work and i hope mine will work

  • @lennarth.6214
    @lennarth.6214Ай бұрын

    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.

  • @Alexander20091988
    @Alexander20091988Ай бұрын

    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!

  • @g3itnal
    @g3itnalАй бұрын

    im excited for the next video

  • @quantumgaming9180
    @quantumgaming9180Ай бұрын

    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

  • @happycolours8551
    @happycolours8551Ай бұрын

    Yay he's back

  • @motbus3
    @motbus3Ай бұрын

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

  • @chrisdickens4862
    @chrisdickens4862Ай бұрын

    Very cool!

  • @bradley1995
    @bradley1995Ай бұрын

    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.

  • @QwertyIsCool
    @QwertyIsCoolАй бұрын

    Hes back lets go!

  • @Antcode-wk7tu
    @Antcode-wk7tu13 күн бұрын

    Hi Pezzza. I have got a question for a physics rigid body particle simulation you made ages ago, and I am dying to know since you didn’t upload the source code and can’t find what I need anywhere else. You have the feature where you are able to draw your own rigid bodies with the mouse. I believe the objects are composed of particles which are interconnected by constraints (correct me if I am wrong). I know how to implement everything apart from the constraint connections. How do I connect the particles in a way that works for any drawing and keeps the object's rigidity. A naive approach be to connect every particle to every other particle but that would suffer from performance issues. How did you implement it?

  • @ihv2010_cc
    @ihv2010_ccАй бұрын

    YES :D

  • @synterr
    @synterrАй бұрын

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

  • @jazzargamer3064
    @jazzargamer30646 күн бұрын

    That's amazing. I really like what you have done here. Can you share some of the code used in this video? It would be appreciated.

  • @chris.hinsley
    @chris.hinsleyАй бұрын

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

  • @Radu
    @Radu24 күн бұрын

    Nice one!

  • @PezzzasWork

    @PezzzasWork

    24 күн бұрын

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

  • @Radu

    @Radu

    13 күн бұрын

    @@PezzzasWork you've seen those? Cool, thanks for watching :-)

  • @julianxe
    @julianxeАй бұрын

    Super insightful! What tool are you using for animations?

  • @PezzzasWork

    @PezzzasWork

    25 күн бұрын

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

  • @bergolho
    @bergolhoАй бұрын

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

  • @PezzzasWork

    @PezzzasWork

    25 күн бұрын

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

  • @azuky74
    @azuky74Ай бұрын

    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)

  • @BanD1t8
    @BanD1t829 күн бұрын

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

  • @PezzzasWork

    @PezzzasWork

    25 күн бұрын

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

  • @FailRaceFan
    @FailRaceFanАй бұрын

    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

    25 күн бұрын

    Yes I will explore other methods!

  • @jmcglockYT
    @jmcglockYTАй бұрын

    yes he uploaded

  • @Gunnahan
    @GunnahanАй бұрын

    cant wait for part 2 🙂

  • @Banaannaa

    @Banaannaa

    Ай бұрын

    same

  • @moofin4170
    @moofin4170Ай бұрын

    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!

  • @QQ-jn5jb
    @QQ-jn5jbАй бұрын

    The talking chicken is amazing

  • @Surfingnet
    @SurfingnetАй бұрын

    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

    25 күн бұрын

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

  • @lefm_
    @lefm_Ай бұрын

    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Ай бұрын

    What a hook!

  • @gorlix
    @gorlixАй бұрын

    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

  • @sergodobro2569
    @sergodobro2569Ай бұрын

    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

    25 күн бұрын

    Thanks! I am using my own simple engine :)

  • @Yeetmaster982
    @Yeetmaster982Ай бұрын

    im exited to see it with a double pendulum

  • @Haapavuo
    @HaapavuoАй бұрын

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

  • @PezzzasWork

    @PezzzasWork

    25 күн бұрын

    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.

  • @alessi4249
    @alessi4249Ай бұрын

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

  • @LambOfDemyelination
    @LambOfDemyelinationАй бұрын

    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

    25 күн бұрын

    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.

  • @alexalves3293
    @alexalves32932 күн бұрын

    Do you have any extra channels where you teach these AI programs?

  • @ErikBongers
    @ErikBongers6 күн бұрын

    Are the mutations equally distributed between those 4 possibilities? But some extra mutation decisions need to be made: where to insert a new node, which weight to change or where to add a new connection. Are these decisions also equally distributed?

Келесі