ADALINE: Adaptive Linear Neurons - EXPLAINED!

CodeEmporium · Beginner ·📐 ML Fundamentals ·1y ago

Key Takeaways

The video explains ADALINE, Adaptive Linear Neurons, and its significance in the history of deep learning, providing an electrical engineering perspective from the 1960s.

Full Transcript

greetings fellow Learners now before we get into this wonderful world of adaptive linear neurons I have a thought-provoking question for you what fields are the most relevant when you think of artificial intelligence now the most obious answers for this is probably going to be something like Computer Science and Mathematics and if you consider neural networks then it would also be Neuroscience but I've also found that electrical engineering can also be pretty useful too and you can tie that very nicely with Concepts in Ai and we'll actually see that in the duration of this video but turning this question over to you what Fields do you think are most relevant when you think of artificial intelligence comment your answers down below and i' love to hear your thoughts now this video is going to be divided into three passes where we're going to first walk through the why of adaptive linear neurons then what is Adeline and then some comparisons between the per ctron model for classification and the Adeline model for classification so let's get to it in the last video we took a look at the perceptron model classifier that was created by Frank Rosen blot in 1958 and this perceptron model was inspired by the signal processing capability in human sensory systems around the same same time Bernard woodro and marcian Ted Hoff were two electrical engineers that were also interested in Signal processing but not in human biology but in electrical circuits and in order to understand now why we have these adaptive neurons we need to understand a little bit about circuits and circuit design so let's get to that so this here is a simple circuit where a circuit defines the path of electron flow and a simple circuit in the simplest form consists of a power source a switch as well as a resistor or a bulb now if we have an open switch then that means that the bulb is off which we get the response from and in a closed switch we see that electrons can flow and hence the bulb is on now for this circuit diagram if we label the switch as X and the bulb as B we can generate a truth table and also a Boolean expression with the output bulb being represented as some function of the input switch so closed switch is one open switch is zero and this would be the bullan expression now this here is a really simple circuit but circuits can get quite complex so how do we actually design more complex circuits well in 1939 Claude Shannon wrote a master's thesis in which he actually addressed exactly this and defined the steps for how you can define a circuit so it involved first constructing a true table then creating a bullan expression from this truth table then we simplify this Boolean expression using Boolean algebra and then you can reconstruct the circuit from this simplified Boolean expression and what this allowed was that the simple circuit can be constructed using this method and so circuit design now transformed because of this from an art to more of a science now the con of this however is that constructing truth tables can become INF feasible if the number of inputs and outputs is very large for n inputs there can be two to the power of n records in our truth table which is intractable so how do we solve this problem now this is where Bernard woodro and head Hoff come back and they realize that well for some circuits like traffic lights the accuracy needs to be 100% otherwise it can lead to some catastrophic results like an accident however there are many other circuits which they are interested in Signal processing specifically that don't require 100% accurate results all the time like in telecommunication now so the objective when designing a circuit should not be to minimize the number of components as Shannon had done before but instead minimize the average number of errors and so circuit designed by Bernard woodro and Marci and Ted Hoff transformed Boolean algebraic form of Designing a circuit to a statistical optimization form of Designing circuits and statistical optimization basically means involves techniques like gradient descent now just to note here at this time gradient descent did exist and it was introduced officially I guess in 1847 by a French mathematician Ki now to illustrate this statistical optimization wooder and Hoff took a fundamental element that is found in many adaptive circuits and by adaptive we mean that the circuit consists of components that can be changed and in this case these little knobs over here are voltage gains that can be changed now they also called this circuit a neuron because it is structured similar to the previous artificial neurons like the molic pits neuron that we discussed in a previous video as well as later which came on which is the John Von Newman neuron and the circuit became known as Adeline quiz time have you been paying attention let's quiz you to find out when does circuit design by minimizing the errors make sense over tro tables a when you want to simplify circuit connections B when the number of possible inputs and outputs is large C when errors do not lead to catastrophic results or D when dealing with circuits that cannot be simplified by Boolean algebra note that multiple answers may be correct here and I'll give you a few seconds to answer this question the correct answers are B and C but can you tell me why give your reasoning in the comments below and let's have a discussion now if you think I do deserve it at this point please do consider giving this video a like because it will help me out a lot now that's going to do for quiz time and pass one of this explanation but keep paying attention because I will be back to quiz you so Adeline here stands for an Adaptive linear classifier and why it's called so is going to become more apparent by the end of this pass so in this pass we're going to talk a little bit more about some details in explaining the what of Faline so it explains the mathematics and then also uses this in tandem to design an electrical circuit so let's talk about this so we know woodro and Hoff basically said that they wanted to design circuits to minimize the average number of errors this is kind of what we saw in the previous pass and so what they want to minimize is this mean squared error where this y here is going to be the reference output the actual output they want in the signal and this y hat is the output signal of the final electric circuit that they design now this output signal is going to be generated by a signal transforming device called a filter so essentially we have an input signal and the filter circuit is going to take it and generate an output signal and adaline is this filter circuit that we are designing and we want to adapt the gains those knobs that we saw before to minimize the average error now let's kind of map this a little bit to the circuit diagram so in our out ofine image that would be this prediction that we see here the output of this filter is going to be at this point here where it's going to be the sum of products of these AIS and XIs XI is going to be a switch it's an input switch then we want to kind of adjust these knobs these A's to minimize the error so that's kind of what we're saying in the math and and so what we want to do is minimize this equation right over here where we know this here is going to be the output of the adaptive filter out ofine and because we want to minimize we can take a gradient with respect to AJ so we take the gradient and then we get this big equation over here and so how much we need to tune AJ that is like one of the gains it is dependent on every single sample and from an electrical circuit standpoint this electrical circuit can become really expensive because it needs too many inputs and so in order to deal with this we draw Hof said let's approximate the gradient the total gradient with respect to that single gain to be the sum of the individual error gradients here and so what we can do is go back to the math and what we want to do is just the mean squared error for a single sample and right now we can then take the derivative and we get this equation over here so we have the gradient uh with respect to a certain knob for a single sample equal to -2 * the error time the input itself and so our actual change according to the you know if we apply this to like our gradient descent formulation is just going to be we adjust the knob by 2 e XJ and this XJ is going to be just a switch right and so if you've kind of noticed here this is like stochastic gradient descent and this is thus more practical in electrical circuit design so armed with this gradient update rule we now have an electrical circuit that's designed known as Nai adaline so it consists of 16 input switches it consists of 16 gains which can be tuned this is the bias knob over here and it consists of a reference switch which is going to give us the true signal that we desire and this voltage reading in during the training phase is going to give us the the error the magnitude of error and so if we trying to transform this knat line into a circuit diagram it kind of looks like this where we have again the input switches here or defined here as plus one and minus one the knobs are the gains here there going to be 16 of these this is the bias gain and then this over here is going to be an operational amplifier an opamp which can be designed as a summer circuit to essentially take the sum of products of every single one of these so this could be like a0 plus A1 minus A2 minus a 3 plus A4 plus A5 and so on and I say that because the X's here are just going to be plus or minus one and then we're going to get an output continuous value which is y hot which we can compare to the true reference switch value using another operational amplifier so these opamps will just take typically the difference between this plus and minus so that's Yus y hat but if you design the resistors in a certain way then the we can also make it a multiple of this difference so this Ada could just be like any small fractional value and you know this kind of probably looks very similar to like the learning rate in a gradient descent algorithm now given this architecture let's now uh iterate through the actual training procedure so for every single input and label that's in the data set we set the input via the 16 switches we then reset the reference switch to get whatever label output signal that we want want then the voltage meter is going to read the air and it's going to be determined by this formulation over here Ada is set by how the knobi Adeline has been designed specifically the opamp has been designed and then we'll adjust each knob according to this formulation that we derive with stochastic gradient descent and because we derived it with a stochastic gradient descent approach as we iterate through every single input and label these knobs will eventually converge to values that will minim the average number of errors and this overall algorithm is going to be known as the least mean squared algorithm or the LMS algorithm now during inference phase we are now given just an input and this input is set via the switches now the voltage meter is just going to read the predictions why there is no there is no reference that's set and then we are going to quantize this in the sense of like okay whatever y hat is if it's greater than zero it's going to read A+ one if it's less than zero it'll read a minus one and this would be the classification label and so in summary we have adaline it is adaptive because it has weights that can be tuned the knobs it is linear because the prediction is a linear combination of the inputs and these adjustable weights and then it's a classifier quiz time it's that time of video again have you been paying ention let's quiz you to find out how do we transform the continuous outputs to get a discrete output from Adeline a directly from the meter B using the quantizer C using the reference switch or D using the constant Source note that multiple options here may be correct and I'll give you a few seconds to answer this question the correct option is B but can you tell me why comment your reasoning down below and let's have a discussion now that's going to do it for quiz time and pass two of this explanation but keep paying attention because I will be back to quiz you in this pass let's compare perceptron and Adeline so both of these are classifiers and the perceptron was inspired by signal processing in humans while adaline was inspired by signal processing in electrical circuits now the learning procedure in perceptron is error correction so we update the weights only when an error is made whereas an analine the pro learning procedure is least mean squares algorithm and so on every sample we will have an adjustment of these gains now in the perceptron the activation function is essentially just a threshold function so the outcomes are always discret but in Adeline the activation function is linear at least before quantization quiz time oo this is going to be a fun one which of the following statements is true a the perceptron was largely influenced by human biology B the Adeline was largely influenced by electrical circuits C perceptron update is a form of stochastic gradient descent or D adaline update is a form of stochastic gradient descent note that multiple options here may be correct and I'll give you a few seconds to answer this question the correct options are all of them a b c and d but can you tell me why give your reasoning in the comments below and let's have a discussion and if you think I do deserve it at this point please do consider giving this video a like because it will help me out a lot that's going to do it for quiz time in pass three of this explanation but before we go let's generate a summary in this video we talked about Adeline Adeline is a filter circuit that we're designing to adapt gains in order to minimize the average number of Errors we walked through its training procedure which will effectively follow a stochastic gradient descent approach all in order to minimize the average number of Errors we also looked at how from the math we could construct kni Adeline and this circuit diagram where we Define out align to be adaptive because it has weights that can be tuned linear because the prediction is a linear combination of inputs and adjustable weights with a linear activation function and then is a classifier and then we ended with some comparisons between the perceptron model and the Adeline model so that we get like an idea of how they exist together and that's all that we have today thank you all so much for watching this video and if you like what you saw please do consider giving this video a like if you want to continue your AI Journey please do consider watching this video right over here you won't regret it and I will see you in the next one bye-bye

Original Description

We are going to go back to the 1960s to get an electrical engineering perspective that kickstarted deep learning. RESOURCES [1 📚] Here is the paper that introduced the Adaptive Neuron Layers (ADALINE): https://www-isl.stanford.edu/~widrow/papers/c1960adaptiveswitching.pdf [2 📚] Good reading resource: https://com-cog-book.github.io/com-cog-book/features/adaline.html#ADALINE-limitations [3 📚] Perceptron vs Adaline: https://sebastianraschka.com/faq/docs/diff-perceptron-adaline-neuralnet.html [4 📚] Nice introduction to history of neural networks: https://www-isl.stanford.edu/~widrow/papers/bc1995perceptronsadalines.pdf [5 📚] Shanon circuit analysis: https://www.youtube.com/watch?v=r5dPasQtbY8 [6 📚] Link to the Shanon’s masters thesis (considered one of the most important): https://www.cs.virginia.edu/~evans/greatworks/shannon38.pdf [7 📚] Introduction to op-amps: https://www.youtube.com/watch?v=fmRHDqcodS4 [8 📚] Constructing a summer and average circuit with op amps: https://www.ablic.com/en/semicon/products/analog/opamp/intro/ [9 📚] Cauchy’s work on gradient descent optimization back in 1847: https://web.archive.org/web/20181229073335/https://www.math.uni-bielefeld.de/documenta/vol-ismp/40_lemarechal-claude.pdf [10 📚] Lecture notes based on Jon Von Neumann‘s neuron: https://static.ias.edu/pitp/archive/2012files/Probabilistic_Logics.pdf [11 📚] Interview with Bernard Woodrow where he shows a demow of knobby Adeline about 50 minutes in: https://youtu.be/IhZP31TADUI?si=3qdPaYJnZUbAybBw [12 📚] ADALINE is an adaptive filter: https://www.mathworks.com/help/deeplearning/ug/adaptive-neural-network-filters.html ABOUT ME ⭕ Subscribe: https://www.youtube.com/c/CodeEmporium?sub_confirmation=1 📚 Medium Blog: https://medium.com/@dataemporium 💻 Github: https://github.com/ajhalthor 👔 LinkedIn: https://www.linkedin.com/in/ajay-halthor-477974bb/ PLAYLISTS FROM MY CHANNEL ⭕ Deep Learning 101: https://www.youtube.com/playlist?list=PLTl9hO2Oobd_NwyY_PeSYrYfsvHZnH
Watch on YouTube ↗ (saves to browser)
Sign in to unlock AI tutor explanation · ⚡30

Playlist

Uploads from CodeEmporium · CodeEmporium · 0 of 60

← Previous Next →
1 Linear Regression and Multiple Regression
Linear Regression and Multiple Regression
CodeEmporium
2 Logistic Regression - THE MATH YOU SHOULD KNOW!
Logistic Regression - THE MATH YOU SHOULD KNOW!
CodeEmporium
3 Generative Adversarial Networks - FUTURISTIC & FUN AI !
Generative Adversarial Networks - FUTURISTIC & FUN AI !
CodeEmporium
4 Deep Learning on the Cloud - GPU TO LEARN FASTER
Deep Learning on the Cloud - GPU TO LEARN FASTER
CodeEmporium
5 Deep Mind's AlphaGo Zero - EXPLAINED
Deep Mind's AlphaGo Zero - EXPLAINED
CodeEmporium
6 Mask Region based Convolution Neural Networks - EXPLAINED!
Mask Region based Convolution Neural Networks - EXPLAINED!
CodeEmporium
7 Attention in Neural Networks
Attention in Neural Networks
CodeEmporium
8 Depthwise Separable Convolution - A FASTER CONVOLUTION!
Depthwise Separable Convolution - A FASTER CONVOLUTION!
CodeEmporium
9 One Neural network learns EVERYTHING ?!
One Neural network learns EVERYTHING ?!
CodeEmporium
10 Neural Voice Cloning
Neural Voice Cloning
CodeEmporium
11 AI creates Image Classifiers…by DRAWING?
AI creates Image Classifiers…by DRAWING?
CodeEmporium
12 Unpaired Image-Image Translation using CycleGANs
Unpaired Image-Image Translation using CycleGANs
CodeEmporium
13 K-Means Clustering - EXPLAINED!
K-Means Clustering - EXPLAINED!
CodeEmporium
14 Random Forest Classification
Random Forest Classification
CodeEmporium
15 Data Science in Finance
Data Science in Finance
CodeEmporium
16 Hypothesis testing with Applications in Data Science
Hypothesis testing with Applications in Data Science
CodeEmporium
17 A/B Testing - Simply Explained
A/B Testing - Simply Explained
CodeEmporium
18 The Kernel Trick - THE MATH YOU SHOULD KNOW!
The Kernel Trick - THE MATH YOU SHOULD KNOW!
CodeEmporium
19 Support Vector Machines - THE MATH YOU  SHOULD KNOW
Support Vector Machines - THE MATH YOU SHOULD KNOW
CodeEmporium
20 Principal Component Analysis (PCA) - THE MATH YOU SHOULD KNOW!
Principal Component Analysis (PCA) - THE MATH YOU SHOULD KNOW!
CodeEmporium
21 History of Calculus - Animated
History of Calculus - Animated
CodeEmporium
22 Curiosity in AI
Curiosity in AI
CodeEmporium
23 DropBlock - A BETTER DROPOUT for Neural Networks
DropBlock - A BETTER DROPOUT for Neural Networks
CodeEmporium
24 Autoencoders - EXPLAINED
Autoencoders - EXPLAINED
CodeEmporium
25 Recurrent Neural Networks - EXPLAINED!
Recurrent Neural Networks - EXPLAINED!
CodeEmporium
26 LSTM Networks - EXPLAINED!
LSTM Networks - EXPLAINED!
CodeEmporium
27 Building an Image Captioner with Neural Networks
Building an Image Captioner with Neural Networks
CodeEmporium
28 10 Machine Learning Questions - ANSWERED!
10 Machine Learning Questions - ANSWERED!
CodeEmporium
29 How do neural networks work?
How do neural networks work?
CodeEmporium
30 Evolution of Face Generation |  Evolution of GANs
Evolution of Face Generation | Evolution of GANs
CodeEmporium
31 How does Google Translate's AI work?
How does Google Translate's AI work?
CodeEmporium
32 How to keep up with AI research?
How to keep up with AI research?
CodeEmporium
33 How does YouTube recommend videos? - AI EXPLAINED!
How does YouTube recommend videos? - AI EXPLAINED!
CodeEmporium
34 Variational Autoencoders - EXPLAINED!
Variational Autoencoders - EXPLAINED!
CodeEmporium
35 Logistic Regression - VISUALIZED!
Logistic Regression - VISUALIZED!
CodeEmporium
36 Gradient Descent - THE MATH YOU SHOULD KNOW
Gradient Descent - THE MATH YOU SHOULD KNOW
CodeEmporium
37 Boosting - EXPLAINED!
Boosting - EXPLAINED!
CodeEmporium
38 Transformer Neural Networks - EXPLAINED! (Attention is all you need)
Transformer Neural Networks - EXPLAINED! (Attention is all you need)
CodeEmporium
39 Loss Functions - EXPLAINED!
Loss Functions - EXPLAINED!
CodeEmporium
40 Optimizers - EXPLAINED!
Optimizers - EXPLAINED!
CodeEmporium
41 NLP with Neural Networks & Transformers
NLP with Neural Networks & Transformers
CodeEmporium
42 Batch Normalization - EXPLAINED!
Batch Normalization - EXPLAINED!
CodeEmporium
43 Activation Functions - EXPLAINED!
Activation Functions - EXPLAINED!
CodeEmporium
44 Data Scientist Answers Interview Questions
Data Scientist Answers Interview Questions
CodeEmporium
45 Why use GPU with Neural Networks?
Why use GPU with Neural Networks?
CodeEmporium
46 How do GPUs speed up Neural Network training?
How do GPUs speed up Neural Network training?
CodeEmporium
47 BERT Neural Network - EXPLAINED!
BERT Neural Network - EXPLAINED!
CodeEmporium
48 ConvNets Scaled Efficiently
ConvNets Scaled Efficiently
CodeEmporium
49 Transformer Neural Net makes music! (JukeboxAI)
Transformer Neural Net makes music! (JukeboxAI)
CodeEmporium
50 What do filters of Convolution Neural Network learn?
What do filters of Convolution Neural Network learn?
CodeEmporium
51 We're hosting a Machine Learning Conference!
We're hosting a Machine Learning Conference!
CodeEmporium
52 MLconfEU 2020: Machine Learning Conference for Software Engineers
MLconfEU 2020: Machine Learning Conference for Software Engineers
CodeEmporium
53 Are Neural Networks Intelligent?
Are Neural Networks Intelligent?
CodeEmporium
54 Time Series Forecasting with Machine Learning
Time Series Forecasting with Machine Learning
CodeEmporium
55 Few Shot Learning - EXPLAINED!
Few Shot Learning - EXPLAINED!
CodeEmporium
56 How does a Data Scientist Fight FRAUD?
How does a Data Scientist Fight FRAUD?
CodeEmporium
57 How would a Data Scientist analyze Customer Churn?
How would a Data Scientist analyze Customer Churn?
CodeEmporium
58 Expectations with Machine Learning
Expectations with Machine Learning
CodeEmporium
59 Why Logistic Regression DOESN'T return probabilities?!
Why Logistic Regression DOESN'T return probabilities?!
CodeEmporium
60 How you SHOULD code Machine Learning
How you SHOULD code Machine Learning
CodeEmporium

This video explains ADALINE, a crucial concept in deep learning history, and provides resources for further learning. It covers the basics of Adaptive Linear Neurons and their significance in the development of neural networks.

Key Takeaways
  1. Learn about ADALINE and its history
  2. Understand the difference between ADALINE and Perceptron
  3. Explore resources on op-amps and gradient descent
  4. Read about Jon Von Neumann's work on neurons
💡 ADALINE is an adaptive filter that played a significant role in the development of deep learning.

Related Reads

📰
I Spent 300+ Hours Learning Machine Learning, Data Science, Deep Learning & MLOps.
Learn how to optimize your machine learning learning journey by focusing on the right topics and avoiding unnecessary ones
Medium · Data Science
📰
Day 4 of My Python Learning Journey: Conditional Statements
Learn to use conditional statements in Python to make decisions based on conditions
Medium · Programming
📰
The Day My Pipeline Promoted 29 Worse Models
Learn from a developer's experience with production bugs in an MLOps system for trading signals and understand the importance of ML engineering
Dev.to · chatoxz
📰
"Why does the AI always leave a few blocks out?"
Discover why AI models often miss a few blocks of data and how to address this issue for better performance
Dev.to · Dexterlung
Up next
SQLite3 Tutorial - Learn SQL for Python in 17 Minutes
Thomas Janssen
Watch →