NN(Neural Network)은 생물학적인 신경망의 model이고, 물론 안 그런 부분도 있긴 하지만 역사적으로 볼 때 NN 분야 영감중의 많은 부분이, 인간의 두뇌가 일상적으로 수행하는 정교하고 지능적인 연산들이 가능한 인공 system을 만들어서 인간 두뇌에 대한 이해를 가능케 하려는 시도에서 왔다.
대부분의 NN은 어떠한 "training" 규칙에 따라서, data를 기반으로 하는 각 connection의 weight를 조절한다. 다시 말하면, NN은 예를 통해서 "배우고" (마치 아이들이 강아지의 예로부터 강아지를 인식하게 되는 것과 비슷하다.), 훈련된 data 이상의 일반화 능력을 보인다.
NN에서는 각 부분의 연산이 서로 독립적이기 때문에 뛰어난 병렬성을 잠재적으로 가진다. 그래서 어떤 사람들은 NN를 정의하는 특징으로 대규모의 병렬성과 높은 긴밀성을 들기도 하지만, 그런 요건들은 NN의 특별한 경우로 알려져있는 단순선형회귀(겨우 두 개의 unit과 bias로 이루어진 feedforward net)와 같은 simple한 model들을 배재시키는 면이 있다.
Neural Network(NN)의 정의로는 다음과 같은 것들이 있다.:
DARPA에 의한 정의: Neural Network는 병렬적으로 동작하는 processing element들로 구성된 system이며 각 element의 기능은 network의 구조와 연결의 강도 그리고 각 node에서 수행되는 process로 정의된다.
Haykin에 의한 정의: Neural Network는, 경험적인 지식을 저장하고 사용하는 경향을 지니는 거대한 병렬분산처리기이며 다음과 같은 두 가지 면에서 인간의 두뇌와 닮았다.:
Network는 learning process를 통해서 지식을 얻는다.
지식을 저장하는 것은 synaptic weight라고 하는 neuron 간의 연결이다.
Nigrin에 의한 정의: Neural Network는 신경을 기반으로하는 단순한 processing element들이 상당히 많이 모여서 이루는 회로이다. 각 element는 지역적인 정보만을 가지고 동작한다. 게다가 각 element는 비동기로 동작하기 때문에 system clock이 필요하지 않다.
Zurada에 의한 정의: 인공 신경 system이라고도 하는 Neural Network는 물리적인 cellular system으로서 경험적인 지식을 습득하고 저장하며 이용할 수 있다.
다음의 site들에서 Neural Network Processor에 대한 정보를 더 얻을 수 있다.
Omers Neural Network pointers http://www.cs.cf.ac.uk/User/O.F.Rana/neural.html
Automation corp Neural Network Processor hardware