본문 바로가기

[내가 읽은 책]인공지능, 머신러닝, 딥러닝 입문_77

Human and artificial neural networks have intriguing parallels and differences. The human brain is divided into the brainstem, cerebellum, and cerebrum. Its cerebral cortex contains approximately 100 billion neurons, which process and transmit signals through synapses.

In 1943, McCulloch and Pitts introduced the concept of the Threshold Logic Unit (TLU), inspired by biological neurons and resembling digital logic gates. In 1949, Hebb proposed Hebb's Rule, which describes learning as the strengthening of neural connections.

Building on these ideas, Rosenblatt developed the perceptron theory in 1958, applying it to a visual perception device. This marked the evolution of artificial neural networks into single-layer perceptrons, which later expanded into multi-layer perceptrons.

Feedforward Neural Networks represent a core concept in deep learning, where information flows sequentially from input to hidden layers and finally to output layers. Backpropagation algorithms further enhance learning by adjusting weights to minimize errors using labeled data, with gradient descent as a key optimization technique.

인공신경망_최초의 인공신경망

1.5킬로그램의 무게와 1,2리터의 부피에 달하는 사람의 뇌는 크게 뇌간, 소뇌, 대뇌로 구분된다. 뇌간은 척추가 끝나는 부분에 위치하면서 사람의 생명유지에 관 련된 자율신경계통을 관장한다. 소뇌는 뇌간의 뒤쪽에 좌우 한 쌍으로 돼 있는데 평형 감각과 운동을 담당한다. 또한 소뇌는 조건 반사나 간단한 학습 및 기억 기능 도 가지고 있다. 발달학적으로 가장 늦게 형성된 대뇌는 포유류에 특히 발달돼 있 고 다른 동물에서는 그 기능이 매우 미미하다. 사람의 대뇌는 뇌 전체의 80%를 차 지하는데, 이 비율은 영장류를 포함한 다른 포유류에 비해서도 월등히 높다.

회백색을 띠고 있는 대뇌의 표면을 대뇌피질cerebral cortex이라 한다. 대뇌피질에는 신경세포들이 집중적으로 분포돼 있는데, 사람의 경우 약 1,000억 개의 신경세포 를 가지고 있다. 이 신경세포를 뉴런neuron이라 한다.

뉴런은 세포핵을 포함한 신경세포체soma, 수상돌기dendrite, 축색돌기axon, 축색종말 axon terminal로 구성돼 있으며, 전기적인 또는 화학적인 신호를 처리하고 전달하는 기능을 한다. 수상돌기는 마치 나뭇가지 모양을 하고 있는데, 나뭇가지처럼 돌출 된 부분에서 신호를 받는다. 여러 줄기의 수상돌기에서 받은 신호를 신경세포체 가 모두 합친 후 일정 크기 이상의 강도, 즉 임계치threshold가 되면 이 신호를 발사 fire한다. 발사된 신호는 축색돌기를 통해 전달되며 축색종말에서 다음 뉴런의 수상 돌기로 전달한다. A뉴런의 축색종말과 B뉴런의 수상돌기가 연결되는 것을 시냅스 synapse라고 한다. 사람의 대뇌에 있는 뉴런은 한 개당 약 7,000개 정도의 시냅스를 가지고 있다.

뉴런의 개수는 태어나기 전에 이미 완성되지만 뉴런을 연결하는 시냅스 기능은 전 무하다. 시냅스의 개수는 출생 후 본격적으로 증가한다. 평균적으로 생후 3년째가 되면 가장 많은 1,000조 개의 연결을 유지하다가 이후 필요 없는 시냅스를 제거하 는 프루닝 과정을 거치면서 성인이 되면 약 100조에서 500조 개로 줄어든다. 이후 시냅스의 개수는 지속적으로 서서히 감소하는 경향을 보인다.

1943년 워렌 맥컬록과 월터 피츠는 논문을 통해 생물학적인 신경망 이론을 단순 화해서 논리, 산술, 기호 연산 기능을 구현할 수 있는 인공신경망Artificial Neural Network 이론을 제시했다. 그들이 이 논문을 통해 보이려고 했던 인공신경망 이론은 오늘 날 우리가 사용하고 있는 디지털 회로의 논리 게이트logic gate와 유사하다.

맥컬록과 피츠는 이 논문에서 사람의 신경세포인 뉴런이 어떻게 작동하는지를 이 해하고 이를 인공적으로 구현하는 데 초점을 맞췄기 때문에 그들의 TLU는 생물학 적 뉴런의 동작 메커니즘과 많이 닮아 있다. 맥컬록과 피츠는 그림 10.2에서와 같 이 여러 가지 모양의 TLU를 통해 사람의 뉴런을 표현하고자 했다.

1949년 도널드 올딩 헵헴Donald Olding Hebb은 자신의 책 『The Organization of Behavior』에서 생물학적 신경망에서 시그널이 발생할 때 신경망에서 나타나는 학 습 및 기억 효과를 인공신경망에 적용할 수 있음을 보여줬다. 헵은 생물학적 신경 망에서 뉴런 A에서 엑손axon을 따라 뉴런 B로 신호가 전달될 때 신호전달의 효율 성 또는 다른 어떤 목적을 위해 반복적으로 또는 지속적으로 신호가 자극됨을 주 시했다. 이 결과로 뉴런 A에서 뉴런 B로 가는 경로, 즉 시냅스synapse 연결이 강화 된다. 그는 이를 신경 레벨에서 발생하는 일종의 학습 또는 기억의 과정이라고 보 고 인공신경망에서는 가중치라는 개념으로 설명했다. 그는 이러한 현상을 헵스 규칙Hebb's Rule 또는 헵스 학습Hebb's learning이라고 불렀다.

미국의 심리학자인 프랭크 로센블래트는 1958년 맥컬록과 피츠의 TLU 이론과 헵 의 행동학적 신경 모델 연구를 바탕으로 퍼셉트론 이론을 발표한다. 퍼셉트론은 인공신경망이론을 설명한 최초의 알고리즘이다. 그의 연구 결과는 당시 뉴욕타임즈에전자 '두뇌'가 스스로 배운다Electronic 'Brain' Teaches Itself"라는 헤드라인으로 소개되기도 했다.

로센블래트는 사람의 시각 인지 과정에 영감을 얻어 퍼셉트론 이론을 인공적인 시 각인지 과정을 구현하는 데 적용했다. 그의 목표는 사람의 시각 인지 과정과 같이 실제로 어떤 물체를 시각적으로 인지하는 물리적인 장치를 만드는 것이었다. 예를 들면, 여러 가지 단순한 이미지를 시각적으로 감지하고 그것들을 삼각형, 사각형, 동그라미 등과 같은 몇 개의 카테고리로 구분하는 장치 같은 것이다. 사람의 홍채 역할을 하는 400여 개의 빛을 감지하는 센서와 이것들을 증폭시키는 512개의 방 아쇠 기능을 하는 부품, 그리고 이를 제어하기 위한 40개의 모터와 다이얼 스위치 를 사용했다. 이렇게 복잡한 장치는 고작 8개의 뉴런을 시뮬레이션할 수 있었다.

당시의 열악한 기술 수준으로 매우 원시적인 인공 시각 장치를 만드는 데 그쳤지 만 로센블래트는 자신의 퍼셉트론 이론이 향후 충분한 하드웨어 성능과 기능만 갖 춰진다면(그 당시에는 컴퓨터라는 개념이 없었다) 어떠한 물체도 인지할 수 있는 시스템으로 발전할 것이라고 확신했다.

단층 퍼셉트론

로센블래트가 제안한 퍼셉트론 모델 가운데 가장 간단한 것이 입력층과 출력층으로 만 구성돼 있는 단층 퍼셉트론SLP; Single-Layer Perceptron이다. 단층 퍼셉트론은 맥컬록과 피츠의 TLU 개념에 헴의 가중치 이론이 더해진 것이다. 여기서 X1, X2는 입력값이고 21, 2는 각 입력값에 대한 가중치다. 출력층은 가중치를 갖는 입력값을 선형적으로 합하는 함수와 임계치 0를 가지는 활성화 함수로 돼 있다.

다층 퍼셉트론

1962년 로센블래트는 자신의 퍼셉트론 이론을 보완하고 정리해서 『신경 역학의 법 Principles of Neurodynamics』이라는 책을 출간한다. 그의 퍼셉트론 기본 구조는 3개의 유닛unit으로 구성돼 있는데, 첫 번째 단계는 센 서(S, sensory) 유닛이고, 두 번째 단계는 연계(A, association) 유닛이다. 마지막 단계는 결과 출력에 해당하는 반응(R, response) 유닛이다. 로센블래트 퍼셉트론 의 동작 순서는 S→ A → R로 이뤄진다. 로센블래트의 유닛의 개념은 신경망에서 층의 개념과 동일하다.

피드포워드 신경망

일반적으로 인공신경망은 다층 퍼셉트론을 의미한다. 다층 퍼셉트론에서 정보의 흐름은 입력층에서 시작해 은닉층을 거쳐 출력층으로 진행된다. 정보가 전방으로 전달되는 것은 생물학적 신경계에서도 유사하게 나타나며, 이러한 원리에 의해 인 공신경망을 피드포워드 신경망FNN; Feedforward Neural Network이라 한다. 피드포워드 신 경망은 딥러닝에서 가장 핵심적인 구조 개념이다

역전파

역전파는 레이블된 학습 데이터를 가지고 여러 개의 은닉층을 가지는 피드포워드 신경망을 학습시킬 때 사용되는 대표적인 지도학습 알고리즘이다. 현재 역전파 알 고리즘은 신경망에서 가장 많이 사용되고 있는 학습 알고리즘인데, 그 이유는 명 확한 수학적 이론을 기반으로 계산의 편리성까지 제공하기 때문이다.

용어는 예측된 결과와 실제값의 차이인 에러의 역전파를 통해 가중치를 구한다는 의미인 '에러의 역방향 전파backward propagation of errors'에서 시작됐다. 그림 10.14는 역전파의 동작 원리를 보여준다. 역전파 학습은 크게 3단계 과정이 반복적으로 이뤄진다.

첫 번째는 피드포워드 과정이다. 이 과정에서는 먼저 모든 층에 있는 가중치를 적 당히 작은 임의의 수로 초기화한다. 초기화가 완료되면 레이블된 학습 데이터를 입력층에서 입력받아 은닉층을 통해 출력층까지 피드포워드한다. 그림 10.13과 같 은 피드포워드 신경망이 있다고 가정하면 첫 번째 단계의 결과는 다음과 같다. 여기서 A는 시그모이드와 같은 활성화 함수를 의미한다.

두 번째 단계는 에러의 역전파 계산 과정이다. , 에러의 역전파를 통해 출력층 에서 나타난 에러를 최소화하는 가중치를 찾는 과정이다. 이를 위해 첫 번째 단 계에서 피드포워드된 예상값과 실제값의 차이인 에러를 구하고 델타 룰Delta Rule을 적용한다. , 에러의 최소평균제곱을 구하고 이를 가중치에 대한 미분값을 구한 다. 이때 실제값을 라고 하면 에러를 기반으로 하는 목적함수를 다음과 같이 구 할 수 있다.

경사감소법

경사감소법은 최적화 문제에서 지역최솟값을 구하는 데 사용되는 가장 보편적인 알고리즘이다. 이 방법은 다른 머신러닝 모델 중에서 서포트 벡터 머신 모델이나 회귀 모델에서도 사용되고 있으며, 특히 피드포워드 신경망의 학습모델인 역전파 알고리즘에서는 사실상 표준으로 알려져 있다. 최근 대부분의 딥러닝의 프레임워 크에는 경사감소법 라이브러리가 필수적으로 설치돼 있다.

모든 학습 데이터세트에 대해 피드포워드와 역전파 과정을 완료시킨 것을 1에포크 epoch라고 한다. , 한 세대의 학습이 이뤄진 것이다. 희망하는 정확도를 얻기까지 여러 번의 에포크가 필요하다. 이를 위해 경사감소법에서는 정확해에 근접하기 위 해 전체 학습 데이터를 반복적으로 사용한다. 배치 경사감소법에서는 한 에포크에 단 한 번의 가중치 업데이트가 발생하고 미 니배치 경사감소법에서는 한 에포크 안에 전체 학습 데이터세트와 미니배치 크기 의 비율만큼 가중치 업데이트가 발생한다. 예를 들면, 전체 데이터세트의 크기가 10,000이고 미니 데이터세트의 크기를 50이라고 하면 한 에포크 내에 200번의 가 중치 업데이트가 발생한다. 같은 방법으로 한 개의 샘플 데이터를 가지고 △w(t)를 구하는 확률적 경사감소법에서는 10,000번의 가중치 업데이트가 발생한다.

 

책 제목 : 알고리즘으로 배우는 인공지능, 머신러닝, 딥러닝 입문

지은이 : 김의중