Observable Simulator of SNNs
More Info
expand_more
Abstract
With the rise of the artificial intelligence starting in the late 2010s there has been a great increase of demand for neural networks. It seems AI is omnipresent these days, whether it is OpenAI releasing the famous or infamous large language model chatGPT, Google following by adopting a similar approach with integrating Artificial Intelligence (AI) into it's search engine or help desks becoming entirely controlled by AI. It is clear, AI is here to stay. NVIDIA normally a company thought of selling Graphical Processing Units (GPUs) for gaming purposes has shifted its focus to making GPUs used for running neural networks, this shift has shown its returns as it is now the most valuable company in the world.
The increased interest in AI does leave a lot of academia wondering: What actually is artificial intelligence and especially what are neural networks. With the introduction of deep learning, a machine learning method that searches for features in a dataset, neural networks have become more and more abstract. Developing an appropriate solution to better interpret, visualize and adjust the inner workings of a neural network is not just needed to keep track of the underlying dynamics of a neural network, but also to allow the user to go outside of the standardized framework to fine tune a network.
This thesis explores the functionality of neural networks, more specifically spiking neural networks, and describes the workings and functions of the created simulator. Multiple helper functions, that allow the user to both visualize and adjust the network outside of the standardized framework, are introduced that distinguishes the created simulator from the already present SNN simulators. Afterwards, five small simulations are done to validate the basic functionality of the simulator. Following these simulations the simulator is validated using two large datasets and comparing the simulator with the results from a well known spiking neural network library SLAYER. The first validation is done with a smaller data set containing hand written images of the numbers zero to nine. The second validation is done with a larger data set containing multiple different kind of performed hand gestures. Both validations show that the simulator has a high accuracy with the maximum mean square error between the SLAYER output and the simulators output being less than 2%.