베이킹소다 용어 정리

작성자 이경미 수정일 2022-12-23 13:24

#베이킹소다, #베이킹소다 사용법

목록


들어가며

  • 베이킹 소다를 사용할 때 참고할 수 있습니다.
  • 베이킹 소다를 사용하기 전 용어나 사용 방법을 확인할 수 있습니다. 


내용

Simulator 란

: 시뮬레이터란 모델이 데이터를 잘게잘게 읽어 학습을 잔행하고, 학습된 데이터를 기반으로 데이터를 생성하는 것입니다. 

  • 베이킹 소다의 SIMULATOR 흐름
    1. Create Code : Simulators > simulator > notebook
      1. 베이킹소다에서 제공하는 notebook 양식에 맞춰 코드를 작성합니다.
      2. 작성된 코드를 GITLAB 에 commit & push 를 진행합니다. 
        1. gitlab 에 push 한 버전을 통해 server 를 생성할 수 있습니다.
    2. Create Server : Simulators > simulator > server
      1. 학습을 생성하기 위해서는 시뮬레이터와 통신할 서버가 필요합니다.
        1. 시뮬레이터는 rest server 로 작동합니다.
      2. GITLAB 에 업로드한 버전을 통해 서버를 생성합니다.
        1. 정상적으로 생성된 서버는 endpoint 를 통해 외부에서 호출이 가능합니다.  
    3. Create Experiment 
      1. Simulator 를 확인할 수 있습니다. 
      2. Select Simulator : 시뮬레이터 생성 시 Server 가 생성된 version 을 선택합니다. 
        • Server 생성 시 endPoint 가 설정되어야 합니다. 
      3. State : 시뮬레이터에 지정된 variable 을 확인합니다. 
        • 시뮬레이터가 가지고 있는 정보를 조회하여 보여주는 값입니다.
      4. Action 
      5. Reward : 보상함수를 작성합니다. 



Experiment 란

: Parameter 와 model 이 학습할 수 있는 코드(시뮬레이터) 를 기반으로 진행되는 학습입니다. 

Experiment 가 생성되면 NNI 동작을 위해 nni-proxy 가 동작하여 Trial 을 생성합니다.



NNI 란

: 학습 (Experiment) 를 생성하면 가장 먼저 사용하게 되는 라이브러리입니다. 생성된 NNI 는 TUNER 를 이용하여 자동으로 최적의 PARAMETER 의 값을 결정하고, TRIAL 을 생성합니다. 



TRIAL 란

: Experiment 가 최적의 값을 내기위해 Parameter 값을 바꿔가며 시도하는 것입니다. 

  1. Trial Concurrency : NNI 를 생성할 때 Trial 을 생성하는데 이 때, 동시에 생성할 수 있는 Trial 의 갯수입니다. 최대 생성 가능 개수는 4개 입니다. 
  2. Number of Maximum Trials: 생성할 Trial 의 개수를 지정합니다. 
  3. Number of Maximum Duration : 학습이 진행되는 최대 시간을 지정합니다.


TUNER 란

: Trial 을 생성할 때 마다 자동으로 파라미터 값을 바꾸어 최적의 parameter 값으로 결정해주는 것입니다. 

tuner 의 알고리즘에 따라 parameter 를 결정하는데 차이가 있습니다. 


▶️ Algorithm

베이킹소다에서 제공하는 타입을 확인할 수 있습니다. 

  • State Type
ModelDescription
MLP Model일반 데이터들의 정렬
CNN Model이미지 데이터들의 정렬
Multi ModelMLP + CNN 이 합쳐진 데이터들의 정렬


  • Hyperparameter Tuner
TunerDescription
Random Search주어진 범위 내에서 임의의 조합을 추출하여 최적의 조합을 탐색하는 방법
Grid Search주어진 값 내에서 적용할 수 있는 모든 조합의 하이퍼 파라미터를 사용하여 최적의 하이퍼 파라미터를 탐색하는 방법 
Tree-Structured Parzen EstimatorGrid Search 와 동일한 목적으로 동작하지만 진행방식에 차이가 존재


  • RL Algorithm
AlgorithmDescription
PPO안좋은 행동에 대해 clipping 하고 trust region 에 한해서 학습하여 안정적인 성능을 보이는 알고리즘
PG높은 reward 를 얻는 방향의 Gradient 를 따르도록 policy 의 parameter 를 취하는 알고리즘
A2C행동을 결정하는 Actor 의 상태와 가치를 판단하는 Critic. 두개의 네트워크를 이용하여 학습하는 알고리즘
DQN강화학습에서 Deep Neural Network 를 이용하여 Q-value 를 사용해 학습하는 알고리즘
SAC기존의 강화학습에서 샘플 효율성을 높이기 위해 MaxEntropy 기법을 적용한 알고리즘



PARAMETER 란 

: Experiment 가 최적의 값을 낼 수 있도록 값을 지정하는 trial 의 configuration 입니다.


▶️ Hyperparameter tunning

: NNI 가 학습의 값을 비교해가며 자동으로 trial 을 생성할 수 있도록 옵션을 설정합니다. 

옵션 값은 지정하는 Algorithm, Tuner 에 따라 기본값이 다르고 사용자가 value값을 수정할 수 있습니다. 

value 



마무리

  • 용어를 확인하여 베이킹소다를 이해하는데 도움을 줄 수 있습니다. 

아티클이 유용했나요?

훌륭합니다!

피드백을 제공해 주셔서 감사합니다.

도움이 되지 못해 죄송합니다!

피드백을 제공해 주셔서 감사합니다.

아티클을 개선할 수 있는 방법을 알려주세요!

최소 하나의 이유를 선택하세요
CAPTCHA 확인이 필요합니다.

피드백 전송

소중한 의견을 수렴하여 아티클을 개선하도록 노력하겠습니다.

02-558-8300