Giter VIP home page Giter VIP logo

brain-m's Introduction

BRAIN-M

DESCRIPTION

In this project, we are planning to create a digital brain that would use two different concepts of brain functions -mainly neural information propagation and high level cognition- to learn and recall a specific memory upon stimulus. Today’s neural networks and brain simulations are very accurate, yet they either are not sufficient to show intelligent behavior, or lack neuronal basis. In order to tackle this problem, in this project, we are connecting both of these concepts together with a simplistic approach. Thus the project consists of three parts: First, neuronal evaluation of inputs; Second, creation of memory neurons from the evaluated outcomes of inputs; Lastly, intelligent decision-making from the given inputs using the formula of intelligence as proposed by Alex Wissner-Gross (F=T∇S) on a matrix of memory neurons. In order to test whether the neural machine has learned or not, we will have two modes: First, in the learning mode, inputs will be stored in memory neurons after being sieved through the input neurons and each memory neuron will be assigned a random output; then in the test mode, when we give a specific input to the neural machine, it will show the output of the memory neuron that has the closest match to that one using the formula, (A great explanation video of the formula can be found here: https://www.ted.com/talks/alex_wissner_gross_a_new_equation_for_intelligence?language=en)

In the learning mode:

First of all, inputs will be gathered from the ultrasound sensor and evaluated according to the threshold level of a single neuron. One digital neuron unit will be assigned to a part of each sensory input. For example, a single neuron will search for a certain pattern in the ultrasound input, and another neuron will look for a different or continuing pattern in the same input. As a result, if the specific pattern on the neuron is matched with the input, it would give a high output. Then the outputs of these several neurons will be sent to another neuron -in neuroscience, it is called a ganglion- which will evaluate the overall pattern and decide on its own whether to give a high output or not. On the other hand, several different neurons corresponding to different sensors can also be inputs to a ganglion. This structure is very similar to that of finite state machines. This first neural mechanism will be used both in learn and test mode. Following the outputs of the ganglion, new memory neurons will be created to store the several bits of input information, which can be done by using registers, and each memory neuron will have a random output assigned to them to show through the dot matrix. These memory neurons will receive input and hold them at the learning mode.

In the test mode:

When the test mode is on, an input will be shown to the ultrasound module, then it will go through the neural mechanism. When it exits the neural process, it will start to use the formula. The formula can be briefly described as, Srepresents a state in a matrix of several states that changes according to time. All of these states are the memory neurons. The overall T∇Sstatement will be the direction of the preferable memory neuron from the matrix that is assigned a coefficient according to its number of connections to different neurons. As a result, the input will be compared with each memory neuron and will be assigned a coefficient which will lead to the choosing of that memory location to show its outputs. Thus, the random output of that memory neuron will show at the dot matrix.

An example procedure:

The ultrasound system will be shown an approaching object -diminishing its distance towards the sensor- in the learning stage. At this point, each neuron -coded beforehand to give high output when the object passes from a certain point- that corresponds to certain instances of the movement will give high outputs. This outputs will be collected via ganglion and be held in a memory neuron. This memory neuron will have a random dot matrix output such as it would create a circle with a green color. After showing several inputs like this, such as an object going to the left, or right or backwards to the sensor, and creating several memory neurons corresponding to it with random shape outputs, the learning mode will be completed. In the test mode, when we show an object that is approaching, the neural machine, using the formula, will assign coefficients to the memory neurons according to their likeliness to the new test input by comparing them. As a result, the memory neuron with the biggest coefficient will be selected and its output will be shown on the dot matrix.

brain-m's People

Contributors

merterm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

brain-m's Issues

Wow....!!! This concept is amazing... Any updates or breakthroughs?

I saw a video in Ted talk.. and then came across your project...
Awesome... I'm planning to replicate this equation...
Do you think that this equation can be used for decision making for memory neurons in tensorflow(becouz TF is about deep learning which comes under software but your project is an neuromorphic Computing concept which is hardware based )??
U guys should continue developing this.... Seriously...!!!! 🔥🔥

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.