CS/ML+DL

[Principles][1]Artificial Neural Network

esmJK 2023. 2. 5. 13:12

앞으로 진행될 센서 및 In-sensor / Near-sensor computing 연구를 위해 시리즈로 핵심 개념들을 정리해놓으려 합니다. Time series data classification을 위한 기법을 정립하는데 목적을 두고 기초적인 부분부터 연구에 관련된 내용까지 정리를 진행해보겠습니다. 

 

ANN, MLP

인간의 신경은 다음과 같이 생겼습니다.    

이를 모사해보면 아래와 같이 동그라미와 선으로 표현이 가능할텐데, 동그라미를 노드, 선을 엣지라고 합니다. 여기서 신경을 통해 정보를 전달할 때 weight 와 bias를 이용합니다. weight는 중요도에 해당, bias는 민감도에 해당합니다. 들어온 자극의 종류에 따라 얼마나 민감하게 반응할지를 bias가 정한다고 하면, weight는 자극의 원천의 중요도를 매기는 방법으로 이해될 수 있습니다. 

 

모든 layer가 FC layer인 신경망을 multilayer perceptron (MLP) 라고 합니다. 여기서 헷갈리시면 안 되는 점은, MLP는 unit step function만을 활성화함수로 사용할 필요가 없다는 점입니다. 임의의 활성화 함수를 사용하는 FC 네트워크로 의미가 확장되었다고 합니다. 

결국 MLP는 함수라는 정의를 내릴 수 있습니다. a는 Weight, b는 Bias로, 둘을 잘 추정해내는 단계가 Training 단계인 것입니다. 

 

Linear Regression

선형회귀의 정의는 입력과 출력간의 관계를 선형으로 놓고 추정하는 것입니다. 이를 통해 처음 보는 입력에 대해서도 적절한 출력을 얻을 수 있습니다. 

 

머신의 예측과 실제 몸무게의 차이로 loss(=cost) 를 정의합니다. 오차에 대해 더 민감하게 반응하도록 하려면 loss 함수를 수정해보는 접근을 취할 수 있습니다. 

 

 

Gradient Descent 

수학적 정의에 의해 gradient (grad) 는 가장 가파른 방향을 향한다는 것을 알고 있다면, 그 반대 방향으로 움직이게끔 하는것이 

이 방법은

  • 지나치게 느리고, 
  • local minimum에서 멈출 수 있다는 단점이 있습니다. 

따라서 위 단점을 보완할 목적으로  stochastic gradient descent (SGD)를 이용합니다. e1, e2 ... e5 까지 모두 살펴보는 과정 때문에 매우 느리게 gradient descent가 진행된 것이라면, e1 한 항목, 또는 e3 한 항목만을 보고 그것 (e1 또는 e3)의 가장 가파른 방향 반대방향으로 움직이게끔 할 수 있습니다. 이렇게 하는것은 오히려 local minimum에 빠지게끔 하는 상황을 면하게끔 해줄 수 있습니다. e1부터 e5까지 모두 보고 방향을 선택했을 때 local minimum에 빠지는 상황이었다면, 하나의 에러 항목만을 보고 빠르게 어디로 향할지 결정하기 때문에 local minimum에서 빠져나오는 기회를 제공한다고 합니다. 

 

여기서 또 문제점은, SGD는 항목을 하나씩만 보기 때문에 지나치게 성급한 결정을 내리는 상황이 발생하기도 합니다. 이를 보완하기 위해 mini-batch SGD를 사용합니다. 

 

RMS Prop (root mean sqaure propagation)

ADAM (adaptive moment estimation) 

 

 

Weight Initialization 

 

 

Parameter vs Hyperparemeter

Parameter는 머신이 스스로 알아내는 변수를 뜻합니다. 

Weights 와 Bias 가 해당됩니다. 

 

Hyperparemter는 우리가 직접 설정해주어야 하는 변수를 뜻합니다. 

Total Epoch : 몇 번 반복학습 할건가 

Batch Size : 몇 개씩 볼건가 

Learning Rate :  얼만큼 갈건가 

Model Architecture : layer 수, node 수, activation 함수 등 

 

 

 

 

1) 본 게시글은 패스트캠퍼스 [혁펜하임의 AI DEEP DIVE] 체험단 활동을 위해 작성되었습니다. 

2) 강의 링크 : https://bit.ly/3GV73FN

 

혁펜하임의 AI DEEP DIVE (Online.) | 패스트캠퍼스

카이스트 박사, 삼성전자 연구원 출신 인플루언서 혁펜하임과 함께하는 AI 딥러닝 강의! 필수 기초 수학 이론과 인공지능 핵심 이론을 넘어 모델 실습 리뷰까지 확장된 커리큘럼으로 기초 학습

fastcampus.co.kr

 

'CS > ML+DL' 카테고리의 다른 글

[Principles][3]Backpropagation  (0) 2023.02.07
[Principles][2]Mathematical Notation for Artificial Neural Networks  (0) 2023.02.06
CUDA + cuDNN + Anaconda Setup  (0) 2022.06.11
PyTorch Basics(2)  (0) 2021.08.24
PyTorch Basics(1)  (0) 2021.08.24