인간 두뇌에 대한 계산적 모델을 통해 인공지능을 구현하려는 분야
인간의 뇌 구조 모방 : 뉴런과 뉴런 사이에는 전기신호를 통해 정보를 전달, 신경 세포의 구조와 동작을 모방하여 구현
인간의 뉴런 구조와 활성화 작동원리를 input(자극)과 output(반응)과의 연관으로 구현
수상돌기(Dendrite) :
다른 신경세포의 축색돌기와 연결되어 전기화학적 신호를 받아들이는 부위
축색돌기(Axon) :
수신한 전기화학적 신호의 합성결과 값이 특정 임계값이 이상이면 신호를 내보는 부위
신경연접(Synaspse) :
수상돌기와 축색돌기 연결부위, 전달되는 신호의 증폭 또는 감쇄
신경세포 구조를 단순화하여 모델링한 구조
노드(node)와 엣지(edge)로 표현
하나의 노드안에서 입력(inputs)와 가중치(weights)를 곱하고 더하는 선형구조(linear)
활성화 함수를 통한 비선형 구조 표현 가능
여러 개의 인공뉴런들이 모여 연결된 형태
뉴런들이 모인 하나의 단위를 층(layer)이라고 하고, 여러 층(multilayer)으로 이루어질 수 있음
여러 신호를 받아 하나의 신호를 흘려주는 동작과 각각이 세포 혹은 노드 단위로 작동하는 구조가 신경 세포와 닮았다. 또한 신호를 그대로 흘려보내는 것이 아니라 보내지 않을 수도 있고 혹은 다른 크기로 보내는 것도 닮음
신경망 계층 예
인간의 신경계를 활성 상태와 비활성 상태를 갖는 이진 뉴런으로 표현
생체 뉴런과 같이 시냅스의 흥분과 억제에 따라 신호가 전달되고 특정 임계치가 넘어야 신호가 발화
프랭크 로젠블랫은 헵 가설에 따라 인공신경밍이 스스로 문제에 맞춰 학습하는 퍼셉트론 개발
→생체신경망을 모방해서 만든 퍼셉트론의 처리 과정과 뉴런의 신호 전달 과정
→퍼셉트론은 비선형 문제를 해결할 수 없다.
→퍼셉트론으로 두 개 이상의 직선을 표현하려면 AND 연산 필요하다. 여러 계층으로 표현되는 다층 퍼셉트론 탄생
→여러 개의 퍼셉트론을 층으로 구성한 신경망 모델
→다층 퍼셉트론을 학습하기 어려운 것은 많은 은닉층의 수와 활성화 함수가 계단 함수라 미분이 불가능하여 미분 가능한 함수가 필요하여 학습이 어렵다.
일반적으로 인공신경망은 은닉층이 소수인 반면, 딥러닝은 은닉층이 다수 포함된 심층신경망 형태이다.
일반 신경망
데이터에서 직접 특징을 추출해서 만든 특징 벡터를 입력으로 사용하고, 특징 벡터들의 품질에 영향
딥러닝 신경망
특징추출과 학습을 함께 수행하고, 데이터로부터 효과적인 특징을 통해 추출하여 우수한 성능 달성
딥러닝은 높은 성능과 뛰어난 확장성으로 이미지 처리, 자연어 처리, 음성 인식과 같은 분야에서 급격한 발전이 이루어지고 있음
딥러닝 모델은 필요한 파라미터수가 많아서 더 많은 학습 데이터가 필요하고, 최적의 모델과 훈련을 위해 많은 시간과 비용이 필요
은닉층의 수가 많을수록 더 복잡한 문제를 해결할 수 있지만, 너무 깊으면 역전파를 위해 가중치와 바이어스를 변경하는 수학적 방법인 미분이 불가능해져 0으로 수렴되는, 즉 소멸되는 문제
활성화 함수 :
이전단계에서 다음단계에 미치는 영향(가중치)를 찾는데 적합한 통계적 함수
기울기 소멸 문제를 해결하기 위해서 시그모이드나 쌍곡 탄젠트 대신 ReLU 함수 사용
기존에는 선형 함수, 시그모이드 함수 등만 적용했지만 비선형 함수인 ReLU, ELU 등 다양한 함수를 적용하여 인공신경망 문제를 해결하러 노력
과적합 :
모델이 학습 데이터에 지나치게 맞추어진 상태를 과적합이라 부르고, 과적합된 모델은 학습되지 않는 데이터에 대해서는 성능 저하된다.
과소적합 :
모델이 작거나 단순해서 데이터를 잘 표현하지 못한 상태로 모델의 크기를 키우거나 좋은 모델로 변경이 필요하다.
과적합을 막는 방법
규제화 기법 :
큰 가중치 값에 큰 규제를 가하여 과적합되지 않도록 모델을 제한, 규제의 강도를 정하는 적절한 가중치가 중요하다.
드롭아웃 기법 :
노드들을 일정 확률로 무작위 선택하여 연결된 가중치 연결선을 없는 것으로 간주하고 학습하는 방법
배치 정규화 기법 :
모델에 입력되는 샘플들을 균일하게 만드는 방법으로 미니 배치 단위로 평균이 0, 표준편차가 1이 되도록 정규화
전이 학습 :
대용량 데이터로 사전 학습된 모델을 이용해 훈련 시간과 비용을 줄임
자기지도학습 :
레이블이 없는 데이터를 자기 스스로 학습
메타 학습 :
학습 방식을 학습하여 인간과 같이 적은 데이터로도 빠르게 학습하는 방법
설명가능한 인공지능 :
신경망 모델의 내부나 동작 원리를 파악할 수 있도록 하는 기법
NAS :
최적의 딥러닝 모델을 자동으로 찾아주는 방법
AutoML :
강화학습 방식으로 최적의 딥러닝 모델 생성