Running an Artificial Neural Networks on an Arduino Uno -06/12/23
In this lesson, we used our Arduino to run an Artificial Neural Network which uses Machine Learning Algorithms. This was the perfect project to learn about machine learning and the basics of artificial intelligence. The program was designed to interpret the segments displayed on an LED numerical display to solve the corresponding binary number.
An artificial neural network is a segment of code which learns how to respond to inputs based on examples sets of inputs and outputs. They are very powerful tools and use in autonomous vehicles and facial recognition system and pattern recognition. A good example of it is in handwriting recognition.
One of the key principles, in an artificial neural network is that the network needs to be trained. So, first the program starts with the untrained values. We need to run the serial monitor to see this values.
After that, the program runs in training cycle to solve the answer which is needed and the picture is attached below.
There is a problem with this which can be solved by XOR.
XOR problem is one of the logical operations when performed on binary inputs that yield output for different combinations of input, and for the same combinations of input no output is produced. The outputs produced by the XOR logic are not linearly separable in the hyperplane.
In order to add an additional layer of input for the program to run through the artificial neural network, hidden nodes were added as a variable in example code to solve the XOR problem.
Additionally, the program itself keeps running through training cycles until the error rate is reduced to the predetermined level. Every time, the AI is trained the number of training cycles will be vary.
Comments
Post a Comment