10.13: Neural Networks: Feedforward Algorithm Part 2 - The Nature of Code

  Рет қаралды 80,628

The Coding Train

The Coding Train

Күн бұрын

Пікірлер: 149
@RodrigoCastroAngelo
@RodrigoCastroAngelo 7 жыл бұрын
I've been trying to study neural networks for the last couple of months, and this video series is being surprisingly helpful. Most other more 'formal' courses are much harder to keep up. Your videos are indeed somewhat more loose, but I could finally understand how to code a neural network, so thank you!
@TheCodingTrain
@TheCodingTrain 7 жыл бұрын
This is so nice to hear! It's really hard, I'm trying my best!
@nilsonsls
@nilsonsls 6 жыл бұрын
I'm creating a neural network, but I got stuck at some point of the backpropagation implementation and I ended up here watching your videos. You're so great at explaining! I'm glad everything looks so similar to my code so far. Hope my answer is in the next video, cause I've been watching those for 3 and a half years so far lol
@OLApplin
@OLApplin 6 жыл бұрын
Doing this in Vanilla Java while reading the book you mention ... so satisfying when it starts working!!!
@finninnes2973
@finninnes2973 4 жыл бұрын
How'd you get on with the java version?
@dalegriffiths3628
@dalegriffiths3628 4 жыл бұрын
Dear Dan, I worked through Tariq Rashid's book based on you recommendation(using Jupytor notebooks and python), now I'm working through this in Javascript. You are a great teacher!
@priyankarsinha685
@priyankarsinha685 5 жыл бұрын
0:33 😂, you are the ideal teacher that we require but we do not deserve. Keep going sir, understanding the subject is so easy when theres teaching with a happy, excited face.
@tiresink1978
@tiresink1978 3 жыл бұрын
Will you plz tell me language name of algorithm and software in which it is written
@mandeepthebest
@mandeepthebest 6 жыл бұрын
You are just the best. I have been taking courses on ML and DL, as I am trying to transition from ChemEng to Data Science, but didnt understand them fundamentally. Omg, you are making me feel part of computer science community, now that I understand it.
@Aditya-hk7vn
@Aditya-hk7vn 5 жыл бұрын
I was late on my AI class yesterday because of work - Your video is the best video that explained about neural network, and the coding part actually made me understand it even better. Thank you! I am sure there are thousands of people that find your video helpful and very informative!
@alixhurtado
@alixhurtado 6 жыл бұрын
Side note: convinced my school department to let take an independent study as a tech elective and just follow your videos and code a neural network so thank you
@TheCodingTrain
@TheCodingTrain 6 жыл бұрын
Cool! Where do you go to school?
@alixhurtado
@alixhurtado 6 жыл бұрын
The Coding Train, Northern Illinois University! Studying IE on my last semester!!!! Still needed a tech elective and my curriculum isn’t the most updated, (really manufacturing focused) so I wrote up this proposal saying I’m more interested in big data and machine learning so now I’m doing research with my professor and learning together!
@polowesh
@polowesh 6 жыл бұрын
Merci Beaucoup !!!!!!! You're doing great. Everything is so simple with you aside. So much energy and will to teach. I can perfectly understand what you're explaining althougth I'm french and I don't even know what JavaScript is (I'm a python beginner). It's now 1 am and I've been watching you're neural network lessons since like 10 am (yes from the previous day). Thank you so much coding train !!!
@TheCodingTrain
@TheCodingTrain 6 жыл бұрын
Merci!
@demian2435
@demian2435 7 жыл бұрын
How do you make everything so simple? you are great!
@amitbansode
@amitbansode 6 жыл бұрын
Presented in so interesting and simplified way ... God bless you
@junior75980
@junior75980 6 жыл бұрын
This is the theme in my research in fermentation's reactions. That is awasome that my a ideia is not so away of the road by applying this tecnic in de excel/vba code. I hope that you keep going this nice work. Spread the knowledge is so amazing thing to do. Thanks for sharing!
@alixhurtado
@alixhurtado 6 жыл бұрын
You’re the best lecturer ever
@letterborneVods
@letterborneVods 2 жыл бұрын
I love this channel so much ♥️ I finally feel like I understand Math! I might actually watch all of this channel! (But with my pace it’ll probably take me years lol)
@clbgrmn
@clbgrmn 7 жыл бұрын
This was a great tutorial! It was a great combination of your quirky teaching style and being quick and effective! Keep it up! :) Also, you should call the 'train' function 'codingTrain'
@TheCodingTrain
@TheCodingTrain 7 жыл бұрын
Hah!
@vinitsunita
@vinitsunita 5 жыл бұрын
Man you are doing amazing work. I love your teaching style.
@bogdyvyp
@bogdyvyp 5 жыл бұрын
7:50 isn't that going to add the bias matrix to the weights matrix in a element by element fashion resulting in adding the bias to every element so later when you do the sum it will have the bias added in 3 times instead of 1?
@fr3fou
@fr3fou 4 жыл бұрын
i was gonna ask the same
@omicron296
@omicron296 Жыл бұрын
Cara, você é muito bom! Sigo seu canal em sempre aprendo mais! Obrigado!
@MultiLeandrini
@MultiLeandrini 6 жыл бұрын
seriously I'm so sad I can only like this once!!
@raigiku7272
@raigiku7272 6 жыл бұрын
Amazing! After spending like 9 hours researching this stuff, your videos are the most helpful ones!
@lewisrichardson4671
@lewisrichardson4671 5 жыл бұрын
Hi, Firstly this is an awesome channel and it is seriously useful. I am struggling with one thing at the moment, how does the matrix product function work when there is only one column for the inputs? As I see it, to get h1 it loops over the columns of the weights and the rows of the inputs....but then when it moves to h2, it moves to the next row of weights and loops over its columns....but there is no second column to loop over the rows for the inputs??
@lirongsun5848
@lirongsun5848 4 жыл бұрын
I watch through all the series
@Pablo-pk2qi
@Pablo-pk2qi 2 жыл бұрын
This "hello" in first second looks like "I'm sorry this series is so long already" :D
@zet723
@zet723 6 жыл бұрын
as always perfect, keep on going Prof.
@AneeshAbbineni
@AneeshAbbineni Жыл бұрын
You can make an array of weights and biases, and use that array system in the algorithms.
@MatichekYoutube
@MatichekYoutube 6 жыл бұрын
This series is dope. Thank you for sharing.
@neelpatel122
@neelpatel122 4 жыл бұрын
this guy is crazy and i like it :)
@10xGarden
@10xGarden 7 жыл бұрын
I love you Dan I love you Man...You are Awesome!! ]
@themirlabs
@themirlabs Жыл бұрын
Im trying to build a nural network and im a little confused. Dose each layer need a seperate bias input value? because i thought a bias input would be enough? Also why are you making entierly seperate bias matrix's? how do they fit in? maybe i need to watch this again...
@lirongsun5848
@lirongsun5848 4 жыл бұрын
Excellent explanation
@theRECONN
@theRECONN 7 жыл бұрын
Take in account easy changeability of the activation function (maybe even for each layer). After you are done you should try other (like ELU) activation function and compare Cost Plots :)
@pallabchakraborty3821
@pallabchakraborty3821 4 жыл бұрын
Thanks for Excellent Tutorials!.I want to know how many neuron or nodes should be inside of hidden layer?? waiting for your ans... Thanks
@kuhlde1337
@kuhlde1337 6 жыл бұрын
As a primarily C-based language developer, the lack of datatype declarations for variables in JavaScript always makes me a little anxious.
@samuelgunter
@samuelgunter 6 жыл бұрын
I have the opposite problem. i'm mainly a javascript programmer, so when I try to use processing or another language, i get somewhat confused of why i have to declare what the variable type is and what the function will return, and what type of variable is the input , because i want to be able to either import a instanceof the neuralnetwork or just the input nodes which is easy in javascript.
@Nicolas-pd3vy
@Nicolas-pd3vy 6 жыл бұрын
16:39 why output isn’t a matrix ? When did it become just a number
@samuelgunter
@samuelgunter 6 жыл бұрын
he wrote a function, toArray() { let arr = []; for (let i = 0; i < this.rows; i++) { for (let j = 0; j < this.cols; j++) { arr.push(this.data[i][j]); } } return arr; } that converted the output to an array. Also return output.toArray(); means that it is does the function toArray() and returns the output, and then print(output) in setup is the same as console.log(output);
@airxperimentboom
@airxperimentboom 6 жыл бұрын
I just want to let you know that I am one of your biggest rainbowed fan :D it's so interesting and I always wanted to learn such a thing. For this purpose, I watched the 3blue1brown videos and then TADA I saw you uploaded a video about neuralnetworks
@TheCodingTrain
@TheCodingTrain 6 жыл бұрын
Thank you!
@SourabhBhat
@SourabhBhat 6 жыл бұрын
Using a sigmoid function for output 'Y' will restrict the output to range [0, 1]. Will it be better not to use the sigmoid for calculation of Y (i.e. the last layer)?
@magsudhajiyev7810
@magsudhajiyev7810 6 жыл бұрын
Can you or someone else please show me where you code the nn.js file?
@samuelgunter
@samuelgunter 6 жыл бұрын
in this video? i dont understand your question
@shakhawathossainshihab7998
@shakhawathossainshihab7998 3 жыл бұрын
@@samuelgunter where is the source code of this video?
@hullopes
@hullopes 5 жыл бұрын
I can imagine that you'll treat about decision criterion of the class with the output value (threshold?) in the following videos. But now, I'm asking myself: how we adjust of W in feedforward NN??
@xot9897
@xot9897 4 жыл бұрын
does anyone know why you multiply weight* inputs instead of inputs* weights?
@samator1236
@samator1236 4 жыл бұрын
So when multiplying 2 matrix's, i thought the collumns of a had to be the same as the rows for b? So why does multiplying the input with the weights work? Because to my understanding, the weights are 2x2 and the inputs are 2x1 in the example you went through. I've been following along and get errors at this stage. Could you explain how the multiply function works? Im struggling to grasp it. thank you :)
@TheCodingTrain
@TheCodingTrain 4 жыл бұрын
I recommend you join our Discord where you can ask code related questions to the community : discord.gg/hPuGy2g - The Coding Train Team
@narahamashi
@narahamashi 6 жыл бұрын
i made a version of matrix library in ES5. everything works fine except when i call the feedforward it returns NaN . i cross checked and found if i call the matrix multiplication from the nn library it results a matrix of NaN. could you guide?
@greatdouble8966
@greatdouble8966 6 жыл бұрын
Why did you randomize the whole bias_o (and bias_h) vector, when the bias for each weight matrix between two layers should be only with only one particular value?
@juangreen8194
@juangreen8194 7 жыл бұрын
Hello, could you post a known output for a given input including all the intermediate weights and biases so I can verify my code is producing the same results, thank you.
@TheCodingTrain
@TheCodingTrain 6 жыл бұрын
This is an excellent idea. I'm not able to do this right now but you can see my code in progress here for the time being (drive.google.com/open?id=1BFim9qORvxFxUqiLrS-g-spbautXtADd). Github link forthcoming.
@MarneyRS
@MarneyRS 3 жыл бұрын
does the bias weight have to be random too?
@no_more_free_nicks
@no_more_free_nicks 6 жыл бұрын
I would appreciate it if you started with a test. Then in the test you can specify your expectations (like the XOR function) and then backfill the code.
@zurym4962
@zurym4962 3 жыл бұрын
Could you make a video where you create a neural network using R programming?
@nagesh007
@nagesh007 Жыл бұрын
Amazing , Thanks a lot
@sofianbenhamman2038
@sofianbenhamman2038 7 жыл бұрын
So the Perceptron class, that you did before in one of your previous videos, you will not use it here?
@TheCodingTrain
@TheCodingTrain 7 жыл бұрын
I'm starting over in order to use the matrix math, but the same ideas should map?
@ssslava
@ssslava 5 жыл бұрын
Amazing series!
@crisiberny
@crisiberny 6 жыл бұрын
I'm a bit confussed about the Map() function. Isn't there already another function called the same that maps one interval to another? Won't this cause problems by having the same name? Sorry for my english, not my mother tongue.
@tiresink1978
@tiresink1978 3 жыл бұрын
Will you plz tell me language of this algorithm
@olufemitosin3526
@olufemitosin3526 6 жыл бұрын
I love your work and jesture keep it up man
@olufemitosin3526
@olufemitosin3526 6 жыл бұрын
How do you get paid for your work?
@unchayndspersonalaccount7690
@unchayndspersonalaccount7690 3 жыл бұрын
16:15 I don't know if you're still reading comments on this video, but you should make an iteration song for your soundboard for when you're typing "for" loops XD
@AdityaFingerstyle
@AdityaFingerstyle 7 жыл бұрын
Cannot thank you enough Dan.
@MarneyRS
@MarneyRS 3 жыл бұрын
im having some issues, my output is always between 0.71... and 0.98... its never one and never less than 0.71.... i have tested with thousands of inputs
@tiresink1978
@tiresink1978 3 жыл бұрын
Will you plz tell me language using in algorithm and software name in which algorithm written
@samuelmarques2074
@samuelmarques2074 6 жыл бұрын
I have doubts about bias, its value is 1, or is it random? Great video!
@views-hh3el
@views-hh3el 6 жыл бұрын
Bias -1 is an input too of that neuron, so is affected by a weight too, W*X-Bias*(weight)=0, that weight change when the neuron is learnig
@luca-lewin
@luca-lewin 6 жыл бұрын
I've converted the code from Github into Java, but the 'dot' function does not work
@HeyItsSahilSoni
@HeyItsSahilSoni 7 жыл бұрын
This video is unlisted. You might want to publish it and put it in the playlist..
@PhilBoswell
@PhilBoswell 7 жыл бұрын
I think he normally uploads a whole live-session's-worth of episodes in one go, but only publishes them one-per-day?
@HeyItsSahilSoni
@HeyItsSahilSoni 7 жыл бұрын
no, i dont think so, I think he forgot to publish this one.
@PhilBoswell
@PhilBoswell 7 жыл бұрын
Is that better now?
@HeyItsSahilSoni
@HeyItsSahilSoni 7 жыл бұрын
Phil Boswell hahaha yeah
@AugusDogus
@AugusDogus 7 жыл бұрын
How did you find this video 3 days ago (at the moment of this comment's writing) when it was unlisted?
@amitkumar-eb3se
@amitkumar-eb3se 5 жыл бұрын
YOU ARE GREAT.....FANTASTIC
@unnikked
@unnikked 7 жыл бұрын
I might have an idea for future videos. Train weights using Genetic algorithms since you've done some work about GA in the past. Wha do you think?
@TheCodingTrain
@TheCodingTrain 7 жыл бұрын
Yes I am planning to do this for sure!!
@Hydrozoa
@Hydrozoa 7 жыл бұрын
unnikked I have two videos where I explore this exact concept
@unnikked
@unnikked 7 жыл бұрын
NEAT 😂
@Hydrozoa
@Hydrozoa 7 жыл бұрын
unnikked The authors of the paper came up with that 😌
@unnikked
@unnikked 7 жыл бұрын
I know, pun intended :)
@nandkishorenangre3541
@nandkishorenangre3541 5 жыл бұрын
Thank you , you owe me
@derekbaker4299
@derekbaker4299 5 жыл бұрын
Is the complete code for this video available anywhere?
@derekbaker4299
@derekbaker4299 5 жыл бұрын
I found this, which appears to be close enough: github.com/CodingTrain/website/tree/master/Courses/natureofcode/10.18-toy_neural_network/lib
@8eck
@8eck 4 жыл бұрын
Did i miss something? Shouldn't inputs be summed after multiplied? Where is the sum step?
@8eck
@8eck 4 жыл бұрын
Oh, forgot that he is doing dot product inside multiply method.
@vkquads
@vkquads 10 ай бұрын
You can also normalize your inputs for better results.
@views-hh3el
@views-hh3el 6 жыл бұрын
So the inputs are [1,0] the output is [0.59310]? I'm sorry but what's the idea of feedforward if you don't have a tarjet? the neural network reacts to that inputs and gives you a "whatever" number? it's unidireccional, there's not learning nothing
@samuelgunter
@samuelgunter 6 жыл бұрын
this is just doing the math for the outputs, back propagation is where it trains to get the desired output
@tiresink1978
@tiresink1978 3 жыл бұрын
In which language this program is written... And software.?
@Pablo-pk2qi
@Pablo-pk2qi 2 жыл бұрын
Java script so far. (ES6 version)
@evanperrygiblin
@evanperrygiblin 7 жыл бұрын
glad to see you got your shit together
@emilie1977
@emilie1977 7 жыл бұрын
I love this video!
@gabrielkwiecinskiantunes8950
@gabrielkwiecinskiantunes8950 6 жыл бұрын
Great video, bro. Hold back on the Adderall tho. Still, I learned a lot. Thanks.
@mehmetrzaoz9016
@mehmetrzaoz9016 5 жыл бұрын
Thank you for that great work. But i can't find the source code.
@TheCodingTrain
@TheCodingTrain 5 жыл бұрын
It's all in these two places: github.com/CodingTrain/website/tree/master/Courses/natureofcode/10.18-toy_neural_network github.com/CodingTrain/Toy-Neural-Network-JS/
@mvdlele29
@mvdlele29 5 ай бұрын
it would be nice that fromarray function be a constructor
@thewarlord269
@thewarlord269 7 жыл бұрын
Excuse me ! I noticed that p5 is needs you to pay to get it, i used to work with p5 earlier and it was free to download So we can't get it for free anymore !? Please i'm waiting for your answer, Thank you!!
@TheCodingTrain
@TheCodingTrain 7 жыл бұрын
p5 is a free, open-source JavaScript library supported by donations. See: p5js.org. For more processingfoundation.org
@thewarlord269
@thewarlord269 7 жыл бұрын
The Coding Train but jt asks me every time to make a donation befor I could install it ,! Please can you help !?
@RodrigoCastroAngelo
@RodrigoCastroAngelo 7 жыл бұрын
Hi TheWarLord, I could download it here without making a donation. After the file is downloaded, the p5js website indeed redirects me to a page with instructions as to how you can support the project, but the download is working here. Maybe there's something happening with your browser?
@thewarlord269
@thewarlord269 7 жыл бұрын
Hey ,Rodrigo Ângelo; yes yes i found the problem , i had an add blocker, it was blocking the installation as well, i just disabled it and it worked fine, thank you anyway !
@yubrajsharmadhakal6446
@yubrajsharmadhakal6446 4 жыл бұрын
I mean seriously, who the hell disliked???
@joshstafford9353
@joshstafford9353 6 жыл бұрын
16:07 Just kind of sums up Dan doesn't it :D
@adityahirwani1672
@adityahirwani1672 5 жыл бұрын
You are amazing
@QG1996
@QG1996 7 жыл бұрын
I thing we need weights for biases too, don't we?
@syawadhilahpradipta828
@syawadhilahpradipta828 7 жыл бұрын
What language are you using?
@TheCodingTrain
@TheCodingTrain 7 жыл бұрын
This is all JavaScript.
@rusifbudaqov2712
@rusifbudaqov2712 6 жыл бұрын
thanks for videos.It is verry super)
@mahalakshmil1
@mahalakshmil1 3 жыл бұрын
Awesome!!
@geoffwagner4935
@geoffwagner4935 Жыл бұрын
This is very convenient when the author also points out the kind of lunatic we deal with when we hit pause on a regular basis. this is the real Dan, this picture right here. one should not be fooled by this calm, collect, well trimmed facade before us here. he is showing us the real Dan here, the one trying to escape, all the time, bleeps and bloops occasionally. i'm sure it would be quite a spectacle to let him loose in a data center while he thinks he's alone and it all comes out. Unintelligible bleeps and bloops, a roller chair, spinning in circles, madness, and no English . probably this face the entire time
@hichemsetif1741
@hichemsetif1741 4 жыл бұрын
Awesome.
@FlareGunDebate
@FlareGunDebate 5 жыл бұрын
After all that I feel like I should get a 0.5931076632680795 tattoo haha what the heck.
@sparknews2218
@sparknews2218 4 жыл бұрын
how to do this in python??
@tiresink1978
@tiresink1978 3 жыл бұрын
In which language this code is written?
@geoffwagner4935
@geoffwagner4935 Жыл бұрын
wow, this is shockingly more obvious than brown blue. this i very interesting with dot products from a matrix with a couple nodes. freakishly obvious lol hopefully i'm not speaking to soon. the way that just "clicked", felt a needful impulse say something. super wow.
@webarify
@webarify 7 жыл бұрын
Adaboost Ensemble Learning pls sir.. :)
4 жыл бұрын
18:07 loooooooool
@ritikkhatri
@ritikkhatri 5 жыл бұрын
16:14
@toastyPredicament
@toastyPredicament 2 жыл бұрын
When do I get to be with someone ?
@seabiscuitthechallenger6899
@seabiscuitthechallenger6899 5 ай бұрын
👍
@ayaayari5666
@ayaayari5666 6 жыл бұрын
thank youu!!!!!
@felipedejesus6696
@felipedejesus6696 Жыл бұрын
friendly! 😄
@Gentleman217
@Gentleman217 5 жыл бұрын
@alixhurtado
@alixhurtado 6 жыл бұрын
I love you
@Stehocke
@Stehocke 4 жыл бұрын
Once, there was also this video - Neural Network + XOR operator: kzbin.info/www/bejne/gZzaiWp8oLGZq8k I really liked it, will you make it public again?
@professordrabhijitsayamber2299
@professordrabhijitsayamber2299 3 жыл бұрын
Om shanti k
@KemiksPL
@KemiksPL 6 жыл бұрын
You really hate simplicity... toArray() { return this.data.slice() }
@PeterCollingridge
@PeterCollingridge 6 жыл бұрын
Slice returns a shallow copy, so if you have a 2D array like here, you'll end up with references to the internal arrays, so changing them will alter the matrix data. Which I think you want to avoid.
@KemiksPL
@KemiksPL 6 жыл бұрын
Thank you, I didn't know that
@adailtonmoraes5981
@adailtonmoraes5981 5 жыл бұрын
Depois falam que professor brasileiro que parece meio louco olha esse do usa ai brincadeira kķkkkkkkkkkkkk.
@vasyapupkin9338
@vasyapupkin9338 6 жыл бұрын
doo doo doo
@maxtwin5380
@maxtwin5380 2 жыл бұрын
Hi Goofy
@alixhurtado
@alixhurtado 6 жыл бұрын
Please marry me
@toastyPredicament
@toastyPredicament 2 жыл бұрын
When do I get to be with someone ?
@toastyPredicament
@toastyPredicament 2 жыл бұрын
Else
10.14: Neural Networks: Backpropagation Part 1 - The Nature of Code
19:33
The Coding Train
Рет қаралды 188 М.
10.12: Neural Networks: Feedforward Algorithm Part 1 - The Nature of Code
27:41
How Many Balloons To Make A Store Fly?
00:22
MrBeast
Рет қаралды 199 МЛН
Beat Ronaldo, Win $1,000,000
22:45
MrBeast
Рет қаралды 156 МЛН
BAYGUYSTAN | 1 СЕРИЯ | bayGUYS
37:51
bayGUYS
Рет қаралды 1,7 МЛН
How to treat Acne💉
00:31
ISSEI / いっせい
Рет қаралды 76 МЛН
Coding Challenge 171: Wave Function Collapse
1:18:37
The Coding Train
Рет қаралды 558 М.
The Most Important Algorithm in Machine Learning
40:08
Artem Kirsanov
Рет қаралды 541 М.
Coding Challenge #98.1: Quadtree - Part 1
38:08
The Coding Train
Рет қаралды 316 М.
10.9: Neural Networks: Matrix Math Part 3 - The Nature of Code
28:11
The Coding Train
Рет қаралды 62 М.
Coding Challenge 183: Paper Marbling Algorithm
32:10
The Coding Train
Рет қаралды 80 М.
Coding Challenge #99: Neural Network Color Predictor
37:45
The Coding Train
Рет қаралды 97 М.
Coding Challenge 181: Weighted Voronoi Stippling
28:59
The Coding Train
Рет қаралды 179 М.
10.15: Neural Networks: Backpropagation Part 2 - The Nature of Code
19:17
The Coding Train
Рет қаралды 102 М.
5 Math Skills Every Programmer Needs
9:08
Sahil & Sarra
Рет қаралды 1,1 МЛН
But what is a convolution?
23:01
3Blue1Brown
Рет қаралды 2,8 МЛН
How Many Balloons To Make A Store Fly?
00:22
MrBeast
Рет қаралды 199 МЛН