본문 바로가기

공학/인공지능

신경망 시작 - McCulloch_Pitt 모델(1)

기계 학습을 공부하면서여기다 정리를 해보고자 합니다.

기계학습에서 많은 갈래가 있겠지만신경망 관련해서 내용을 정리하고자 합니다.

특히 최종적으로는 SNN(Spiking Neural Network)내용을 중점적으로 할려고 하는데,

아직 공부가 부족해서 그건 한참 후가 될꺼 같네요.

 

신경망의 내용은 역시 신경망은 대체 무엇인가와 역사 정도 장점 정도가 적당한거 같네요.(저도 공부하는 단계이니틀린 내용 있다면 피드백 부탁 드립니다.)

 

기계학습이나 인공지능 쪽은 결국 컴퓨터나 기계가 학습을 하게 하고궁극적 모델을 인간으로 잡고 있죠   갈래로 계산주의와 연결주의로 나눠집니다.

 

계산주의는 인간의 뇌가 하고 있는 언어와 같은 기호를 처리하는 시스템이고이를 직렬적으로 연결해서 계산하면 인간의 뇌를 만들수 있다는 생각입니다.

연결주의는 인간의 뇌의 구조를 보면 신경망 다발로 얽혀있는데이런 뉴런을 연결하여 정보를 병렬적으로 처리해야 된다는 생각이죠.

(저의 경우는 연결주의가 궁극적으로 인간의 뇌를 만들  있다고 생각합니다물론 어느 특정한 문제해결의 경우에는 연결 주의 식으로 해결하는게  좋을 수도 있지만소위 강한 인공지능을 만들수 있는건 연결주의라고 생각합니다이유는 그냥  직감이죠.)

 

인공 신경망 이론은 결국 연결주의와 일맥상통하는데어느 특정한 모델을 가진 뉴런(인간의 뇌에는 20 정도의 뉴런을 가진다) 가지고 서로 연결을  시키면 지능을 만들  있다는 생각이죠. ANN(Artifical Neural Network) 연구하는 방법은 뉴런  자체를 연구하는 방법어느 모델을 가지고 시뮬레이션  결과 분석 그리고 수학적 분석을 통해서 하고는 합니다앞으로의 내용도 여러 가지 방법을 혼합해서 할듯하네요이제 신경망의 역사에 대해 설명하겠습니다.

 

ANN 최초의 모델은 1943 정신과 의사  맥클로크(McCulloch) 수학자인 피츠(pitts) 의해 만들어졌습니다그들의 논문<A Logical calculus of ideas immanent in nervous activity>에서 신경세포를 간단하게 모델링한 뉴런을 이용하여 AND, OR, NOT 같은 논리 연산을 만들어 냈습니다.

 

McCulloch-Pitts 모델에서 사용한 가설은 다음과 같다.

1. 뉴런은 활성화되거나 혹은 활성화되지 않은 2 가지 상태이다. 즉, 뉴런의 활성화는 all-or-none 프로세스이다.

2. 어떤 뉴런을 흥분되게 (excited) 하려면 2개 이상의 고정된 수의 시냅스가 일정한 시간내에 활성화 (activated) 되어야 한다.

3. 신경 시스템에서 유일하게 의미있는 시간지연 (delay) 은 시냅스에서의 지연 (synaptic delay) 이다.

4. 어떠한 억제적인 (inhibitory) 시냅스는 그 시각의 뉴런의 활성화 (activation) 를 절대적으로 방지한다

5. 신경망의 구조는 시간에 따라 변하지 않는다.

 

원본 위치 <http://www.aistudy.co.kr/neural/McCulloch_Pitts.htm>

 



 


뉴런은 인접한 여러 뉴런으로부터 신호를 수신하는데  뉴런간의 연결에는 흥분성과 억제성 2가지가 있다고 가정합니다. (w 흥분성, p 억제성입니다.)

NET 가중 입력 값을 갖는데 NET값은 활성화 함수의 입력 값이 되며, y값이 점화되는지 여부가 결정됩니다.

 

약간 다른 쪽에 빠져서 위의 뉴런을 통해 논리 연산을 할수 있다는 의미를 파악해 보겠습니다여러분들 누구나 컴퓨터를 사용할 것입니다정말 대단한 발명품이죠그러면 누가 최초로 컴퓨터를 만들었을까요아시는 분들은 아시겠지만앨런 튜링이라는 분이 만들었습니다찾아보면 대단한 분인데  덕분에 2 세계대전에서 연합군이 이길수 있었다 생각합니다여러 업적이 있겠지만가장 중요한 업적으로는 컴퓨터(튜링 기계)라는 개념을 최초로 만들었습니다. <on computable numbers with an application to the entscheidungsproblem>에서 튜링기계라는 개념이 나왔는데,매우  테이프 같은 데다간단한 연산만 하고앞뒤로 테이프에다 기록하고 읽을 수있는 기계가 있다면대부분의 수학적 알고리즘은 풀어낼  있다는 내용입니다결국 매우 복잡한 수학적 알고리즘도 결국 반복적이고 간단한 계산이면 해결할  있다는 의미입니다 현대적인 예를 들면아무리 어려운 프로그램(게임수학계산그래픽 연산검색엔진모두 간단한 연산과 읽기기록  정해진 순서대로 수행한거다 라는 의미입니다. (자세한 내용은 http://www.aistudy.com/computer/turing_machine.htm)

 

간단하게 말하면 사칙 연산 정도의 계산과 기록읽기면 거의 모든  해결할수 있다는 말입니다거기다 한가지  나아가서 논리 연산(AND, OR, NOT)   있다면 사칙 연산도   있습니다이건 다시 말해서 논리 연산이 가능하면사칙 연산이 가능하고사칙 연산이 가능하면 튜링 기계를 만들수 있습니다튜링 기계는 대부분의 알고리즘을 구현하는 기계이므로논리 연산만 가능하다면 대부분의 알고리즘을 구현할  있다는 말입니다결국 뉴런으로   신경망을 잘만 엮으면 컴퓨터도 만들  있다는 말이죠간단한 뉴런으로  신경망을 엄청난 가능성을 가진 것입니다.  

'공학 > 인공지능' 카테고리의 다른 글

인공 신경망(2)  (0) 2013.04.02