Neural Network   신경망

(2024-10-22)

Artificial Neural Network, 인공 신경망, 인공 신경 회로망, Perceptron, 퍼셉트론


1. 생체 신경망 (Biological Neural Network)

  ㅇ 구조
     - 1천억개(1O11개)의 신경 세포뉴런들이 있고,
        . (뉴런 (Neuron) : 정보 처리에 관여하는 기본 세포)
     - 이들 간을 연결하는 시냅스들로 구성된 결합체
        . (시냅스 (Synapse) : 각 뉴런 간을 연결하는 수천만개의 연결부위)

  ㅇ  기능
     - 시냅스로 연결된, 적응적,병렬적 특성을 갖는, 신경 회로망을 통해,
     - 감각,기억,판단,운동 기능을 일으키며, 조화롭게 발현됨

  ㅇ 특징 
     - 병렬 처리, 학습과 적응, 비선형2. 인공 신경망 (Artificial Neural Network, ANN)

  ㅇ 인간의  구조에 착안,모방하여 만든 기계학습법의 일종
     - 적응적 학습병렬 처리 등이 가능함


3. 인공 신경망의 특징학습이 가능함
     - 훈련 데이터 집합주면, 연결 강도를 자동 추정하며, 인공 신경망이 만들어짐

  ㅇ 적응적 학습
     - 신경 세포 구조를 적응적으로 변화시키는 것에 의해 학습 함
        . 잘못된 답으로 이끄는 뉴런들 사이의 연결은 약화되고,
        . 올바른 답으로 이끄는 연결은 강화됨

     * 시냅스 가소성 (Synaptic Plasticity) 
        . 시냅스를 통해 신경 전달 물질이 많이 전달되면, 관계 강화됨
        . 그 역이면, 관계 약화됨                                                 

  ㅇ 병렬 정보 처리
     - 정보가 신경망 특정 위치가 아니라 신경망 전체에 동시에 저장되고 처리됨
        . 통상, 노드의 출력이 연결 강도와 곱하여, 계산이 이루어지므로,
        . 각각 독립적으로 계산 처리되면서, 병렬 처리 가능

  ㅇ 인공 신경망(ANN)은 딥러닝의 핵심
     - 다재다능하고, 강력하며, 확장성이 뛰어남


4. 인공 신경망의 주요 모델

  ㅇ 퍼셉트론 (Perceptron)
     - 생물학뉴런의 기능을 수학적으로 모델링한 것
        . 입력 데이터에 대해 가중치를 적용하고, 
        . 이 가중치의 합을 계산한 후, 
        . 활성화 함수를 통해, 최종 출력을 결정
     - 선형 분류기의 일종
     - 2개의 층을 갖음
        . 왼쪽에 입력을 받는 입력층 (input layer)
        . 오른쪽에 출력을 보내는 출력층 (output layer)
        . (일정 개수의 입력이 활성화되었을 때, 출력을 내보냄)
     - 구성요소  :  입력값, 가중치, 바이어스, 가중치합, 활성화 함수 
     - 매개변수  :  가중치(weight), 편향(bias)
        . 가중치(weight) : 각각의 입력 신호에 부여되어, 입력 신호와의 계산을 하고,
           .. 신호 총합이, 정해진 임계값(θ; theta,세타)을,
           .. 넘으면, 1을 출력 (활성화, activation)
           .. 넘지 못하면, 0 또는 -1을 출력
        . 입력 신호
           .. 입력 각각에 고유한 가중치가 부여됨
           .. weight가 클수록, 해당 신호가 중요하다고 봄
        . [참고]
           .. 사실상, 가중치를 만들어내는 것이 학습이며, 
           .. 가중치 값은, 학습 알고리즘에 따라 달라짐

  ㅇ 다층 퍼셉트론 (MLP, Multi Layer Perceptron)
     - 비선형 분류기의 일종
     - 층 구분 : 입력 층, 은닉 층 (하나 이상), 출력 층
        . 은닉층을 늘려 더 복잡한 패턴학습할 수 있음
        . 다만, 은닉층이 많아질수록 학습이 어려워지고 계산 비용이 증가
        . 특히 역전파 과정에서, 기울기 소실 문제(Vanishing Gradient Problem) 발생 가능
        . 은닉 층이 2 이상 있는 경우 : 심층 신경망 (DNN : Deep Neural Network)
     - 각 층의 역할 및 구조
        . 입출력 : 이전 층의 출력을 입력 받아 연산을 수행하고, 그 결과를 다음 층으로 전달
        . 각 층 내 뉴런들의 구조 : 서로 완전히 연결되는 완전 연결층(Fully Connected Layer) 구조
     - 다층 퍼셉트론은, 딥러닝의 기본적인 구성 요소로, CNN, RNN 등의 심층 신경망의 기초가 됨
     - 학습 과정 : 역전파 알고리즘을 사용하여 학습
        . 순전파 (Feedforward) : 입력을 통해 각 층의 출력을 순차 계산하여 최종 출력층까지 전달
        . 오차 계산 (Error Calculation) : 출력층의 출력과 실제 정답 간의 오차를 계산
           .. 오차손실 함수(Loss Function)를 통해 정의됨
        . 역전파 (Backpropagation) : 출력층부터 입력층 방향으로 오차를 전달하며 가중치를 조정
           .. 가중치 갱신(Weight Update)는 경사 하강법에 의해 오차를 최소화하는 방향으로 이루어짐
     - 학습 모델의 형성 : (종단간 학습, end-to-end learning)
        . 충분히 학습을 진행하면, 여러 층을 경유하면서,
        . 임의 데이터를 입력 받아 이를 점진적으로 변형하며 출력을 내는 모델이 만들어짐


5. 인공 신경망의 학습 방식

  ㅇ 가중 링크 (Weighted Link)
     - 뉴런들 간에 링크로 연결되어 있고, 
     - 그에 연관된 수치 가중치가 있어서,
     - 가중치들을 반복적으로 조정하며 학습이 이루어짐

  ㅇ 즉, 가중치 조정으로 프로그램될 수 있는 학습능력을 갖는다고 볼 수 있음


6. 인공 신경망의 응용분류,예측,평가,합성,제어 등 다양한 분야에 적용 가능함
     - 즉, 일반적인 문제 해결을 위한 수학적 도구로써 주로 활용됨
 
  ㅇ 例) 이미지 분류, 음성 인식, 동영상 추천, 바둑 경기 등


7. 인공 신경망의 종류 

  ㅇ DNN (Deep Neural Network, 심층 신경망)
  ㅇ CNN (Convolutional Neural Network, 합성곱 신경망)
     - 컴퓨팅 성능의 향상, 훈련 데이터의 증가, 심층 신경망 훈련에 대한 다양한 기법 덕분에,
       복잡한 시각 작업에서 CNN은 인간을 능가하게 됨
     - 응용 例) 검색 서비스, 자율 주행차, 자동 비디오 분류 시스템 등
  ㅇ RNN (Recurrent Neural Network, 순환 신경망)

[신경망, 딥러닝]1. 인공 신경망 (ANN)   2. 딥러닝   3. 활성화 함수   4. 역전파  

  1. Top (분류 펼침)      :     1,594개 분류    6,533건 해설

"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"
     [정보통신기술용어해설]       편집·운영 (차재복)