American scientists from the University of Pennsylvania recently published in arXiv The results of their work on artificial intelligence and artificial neural networks. They created a new programming language to mimic the logic circuits of a standard computer inside a neural network so that it would be able to run a program. Then this artificial network will be able to play games, increase its computational speed, and even launch another artificial intelligence implementation inside it!
What is an artificial neural network?
An artificial neural network is an artificial system that works like the human brain. The concept, which seems modern, is actually ancient since it was invented by mathematician Walter Bates (1923-1969) and neurophysicist Warren McCulloch (1898-1969), both of whom were from the University of Chicago.
However, it will be necessary to wait more than 60 years and the emergence of big data and parallel processing on a large scale during the first decade of the twenty-first century to obtain the sufficient computing power needed to implement complex neural networks.
Usually, an artificial neural network is “built” with a large number of processors organized in fractions and working in parallel. It is the first segment that receives the initial information and which then processes it which transmits the processed information to the next segment of artificial neurons and so on. The last part is responsible for giving results.
Algorithms, which are a sequence of instructions and operations, solve a problem and allow a neural network to teach a computer of new data. The computer learns through the neural network to perform a task from examples that serve as training.
Just like the young human brain is learning, an artificial neural network cannot be programmed to perform a task. So they also have to learn!
There are currently several types of artificial neural networks. They are generally classified according to the number of “layers” between the input of the raw information and the output of the results. The simplest network is called feed-forward, followed by recurrent neural networks, and then the more complex, but increasingly used, convolutional neural networks.
(Read also: This is how artificial intelligence is helping mathematicians)
new programming language
Future microprocessors will combine computer technology and artificial intelligence to process information in real time! Source: SweetBunFactory / Shutterstock
In their work, the two researchers from the University of Pennsylvania decided to teach an artificial neural network to execute computer code like a traditional computer.
By simulating computer logic circuits, AI must be able to execute computer code and thus speed up its computational speed. However, to get there, researchers set out to create a simple programming language that is interpreted by neural networks.
Their new programming language allowed them to add a complete implementation of software virtualization and logical circuits to the computer. This language is based on reservoir computing, called “reservoir computing”, which is derived from the theory of recurrent neural networks.
To start, the two researchers calculated the effect of each neuron and created a basic neural network capable of doing very simple calculations like addition. Going forward, they interconnected many of these core networks so that a more complex network could perform more difficult operations.
Finally, by combining these more complex networks, they were able to achieve a nervous system capable of performing more difficult operations as a traditional computer would, such as playing a game of Pong or running another artificial neural network.
(Also read: This is the first human-computer wireless connection!)
The advent of neural computing
These neural networks and this new programming language should make it possible to simplify the division of complex computational tasks. Often, this type of operation is distributed over several processors in order to increase the speed.
Moreover, the use of these new neural networks in conjunction with neural computing can enable a much faster operating speed.
Neural computing includes chips with neural shapes. These chips mimic the work of the human nervous system.
Conventional computers have an architecture in which the information storage part (computer memory) is separated from the processing and computation part (computer microprocessor). This process, far from the process of the human brain, processes information sequentially and simultaneously.
A neural therapist works differently. In a neural network that constitutes a neural processor, artificial neurons communicate with each other by processing information asynchronously and parallel. Information storage and computation are processed together in a neural network. These are systems that therefore have the ability to process information infrequently, allowing them to adapt to events.
The neural processor is more powerful, faster, and less energy-intensive than a traditional computer. A computer equipped with this type of processor will be able to learn and adapt with very low latency.
The fact of being able to process a large amount of information in parallel allows for a much faster speed of arithmetic operations.
However, the researchers still have to adapt this process to the size of the computer, because they carried out their work on a network of a small number of artificial neurons.
(Read also: Is there a computer chip that mimics our brains?)
Jason Z. Kim and Danny S. Bassett, “Reservoir Computer Neuroprogramming Language,”arXivMarch 9, 2022, https://arxiv.org/abs/2203.05032