ABSTRACT
이제는 의사결정 문제에서 어떤 의사결정을 하였고, 얼마나 바람직한 의사결정을 하였는지에 대한 중요한 데이터들이 있다. 데이터를 이용하여 surrogate model을 학습할 수 있고 model로 하여금 결과를 최적화 하는 의사결정을 할 수가 있다. 이러한 과정들을 Evolutionary Surrogate-Assisted Prescription 또는 ESP라 부른다. 예시를 들어보면, Surrogate는 Randomforest, neural network로 훈련되었고, 최종 전략은 Surrogate model의 예측을 최대화하기 위해 진화한 신경망이다. 본 논문에서는 순차적 의사결정으로 강화학습 벤치마크의 framework를 평가 할 수 있다.Surrogate와 Strategy network 모두 의사 결정 행동을 정규화하기 때문에 솔루션 또한 더 낫다. 따라서 ESP는 실제 문제에서 의사 결정 최적화의 유망한 기반을 형성한다.
INTRODUCTION
Example
- Context 변수 : 원자재, 날씨와 같은 주어지는 데이터
- Action 변수 : 최적화 하고 싶은 셋팅값, 주유량
- Predictor : P(C,A) = target
- Prescriptor : P(C) = A
Figure 1 : Predictor는 과거 데이터에서 주어진 Contexts 변수와 어떠한 Actions 변수들이 작용했는지에 대해 결과물이 도출 된다. Predictor는 randomforest, neural network와 같은지도학습 방법의 머신러닝 모델을 학습한다. Predictor는 Prescriptor의 결과를 향상 시키기 위하여 사용되고, 최상의 결과를 가져오는 의사결정 정책의 신경망으로 사용된다. 대부분의 평가는 Surrogate에 의해 진행되고, 프로세스를 효율적으로 만들고 정규화 되어 잘 일반화되는 의사 결정 정책으로 이어진다.
비즈니스, 정부, 교육, 헬스케어와 같은 많은 조직들이 이제는 중요한 데이터들을 수집한다. 또한 데이터들은 조직의 의사결정을 변화시키고 있다. 이제는 머신러닝을 이용하여 행동, 수요를 예측하여 더 나은 의사결정을 할 수 있게 되었지만 이것은 과정의 일부일 뿐이다. 예측 모델은 실제로 최적의 의사결정이 무엇인지 명시하고 있지 않다. 좋은 의사 결정을 하기 위해서는 다른 무언가가 필요하다. Strategies를 생성하고, 평가하여 결과에 기초한 새롭고 더 나은 Strategies를 생성함으로써 좋은 의사결정 전략을 찾을 필요가 있다. 하지만 많은 도메인에서 이러한 탐색을 시도할 수 있는 것은 아니다. 예를들어 의학적 치료와 같은 도메인을 시험하는 것은 많은 비용이 들 수 있다.엔지니어링 설계를 평가하는 것과 같은 일들은 많은 리소스가 필요할 수 도 있다. 그러나 과거 결정과 그 결과에 대한 과거 데이터가 존재하기 때문에 이를 평가하기 위해 예측 모델을 Surrogate로 사용하여 검색할 수 있다.
개인적 의견 논문이 작성된 시기에는 의학적 치료에 대한 데이터가 많이 존재 하지 않았지만 현재는 적은 비용에 적은 리소스로 simulate 할 수 있을 것이라 생각함. 더불어 Surrogate는 더 Empact한 효과를 가져올 수 있지 않을까 생각됨
로컬 탐색을 통해 솔루션을 점진적으로 개선하는 강화 학습(RL)과 같은 검색 방법은 솔루션 전략 검색에도 도움이 되지 않는다. 또한, 변수의 수는 매우 클 수 있다. 예를 들어 일부 제조 및 물류 문제에서처럼 수천 또는 수백만 개일 수 있어, Kriging 및 베이지안 최적화와 같은 방법을 비효율적으로 만든다.
개인적 의견 로컬 탐색이 아니라면 강화 학습이 더 좋거나 같을 수도 있다는 생각이들지만 다르게 해석하면 ESP는 여러 도메인에 걸쳐 최적의 의사결정을 탐색을 가능하게 하는 솔루션이 됨
population기반 탐색을 하게 되면, 기만적인? 고차원의 landscapes를 탐색하고 여러 목표에 걸친 절충점을 발견할 수 있다. 이 strategy는 neural net으로 표현되고 평가는 과거의 결과를 토대로 훈련된 예측모델을 사용하여 수행한다.
이 논문의 목표는 현재 사용되는 ESP를 소개하고 일련의 의사 결정으로 구성된 의사 결정 전략으로 더 확장하는 것이다. ESP는 여러 가지 방법으로 강화학습을 개선한다. 동일한 횟수의 에피소드를 고려할 때 수렴 속도가 빨라져 샘플링 효율성이 향상되고, 정책 성능에 대한 분산이 낮아지며, 솔루션의 신뢰성이 높아지고 비용 절감, 안정성 향상이 이루어진다. 놀랍게도 Surrogate를 최적화 하는 것은 정규화의 효과도 가져온다. ESP는 일반적이므로 때때로 도메인 자체에서 발견된 솔루션들 보다 효과가 좋을 수 있다. 또한 ESP는 위에 설명된 population 기반 검색의 이점을 RL로, 즉 향상된 탐색, 다중 객관성 및 고차원 검색 공간으로 스케일업한다. ESP는 표준 강화학습 접근법과 비교하여 더 나은 샘플 효율성, 신뢰성 및 더 낮은 비용을 입증한다. 실험은 또한 대리인을 통한 정규화와 다양한 종류의 예측 모델(예: 랜덤 포레스트 및 신경망)을 활용하여 데이터에 가장 잘 맞는 능력을 보여준다. 따라서 ESP는 순차적 의사 결정 작업에 대한 유망한 진화 최적화 기반 접근 방식을 형성한다.
개인적 의견 Surrogate 최적화가 정규화의 효과도 가져오는 것이 어떻게 입증 되었는지 확인할 필요가 있는 것 같음. 논문에서는 강화학습보다 ESP가 더 좋은 최적화 방법론이라고 설명하는데, 도메인마다 차이가 있을 것이라고 생각함
RELATED WORK
전통적인 모델 RL은 주어진 상태와 동작들에 따라서 시스템의 다음 상태를 추정하는 시스템의 역학을 구현한 전환 모델 구축을 목표로 한다. RL process 일부로 학습된 전환 모델을 통해 효과적인 조치의 선택을 가능하게 한다. 이 모델로 에이전트는 환경의 미래 상태에 대한 예측을 가능하게 한다. 그러나 모델 기반 RL은 보통 엄청난 양의 데이터를 전환 모델을 구축하는 데에 사용해야한다. 간단한 시스템도 수만수십가지의 샘플이 필요로 할 수도 있다. PILCO 와 같은 기술은 모델 기반 RL에서 샘플 효율성을 구체적으로 다루기 위해 개발 되었지만 낮은 차원의 도메인을 제외 하고는 계산적으로 힘들 수 있다.
개인적 의견 2002년도 논문이기 때문에 기술의 차이는 현저히 있을 것이라 판단됨. 현재 강화학습을 할때에도 꼭 많은 양의 데이터가 필요한지 의문임
RL이 실제 비용이 드는 복잡한 태스크에 적용 되고 있기 때문에 샘플의 효율성은 더욱 강조되고 있다. 따라서 성능 및 효율성은 샘플링, 보상 추정 방식에 따라 달라진다. 대표적인 model-free 상황에서 off-policy 방법으로, Deep Q Networks(DQN)은 action values를 이용하여 미래 보상을 모델링함으로써 샘플 효율성 문제를 해결한다. 또한 Q값이라고도 한다. Q 네트워크는 실제 상호 작용에서 훈련 데이터를 수집하는 재생 버퍼를 기반으로 학습된다. 이중 Q-Learing 및 dueling network architectures와 같은 고급 기술은 도전적인 문제에서 DQN을 경쟁력 있게 만든다. 하지만 일반적으로 진화적 대리 지원 처방을 통한 효과적인 강화 학습은 매개 변수 설정에 상당히 민감하고 압도적인 수의 샘플을 필요로 한다.
개인적 의견 지금은 RL에 자동으로 매개 변수 설정을 해 주는 정책은 없는지? 아직까지 많은 샘플을 필요로 하는지 궁금함. 필자가 알기론 ESP는 적은 양의 데이터로도 유의미한 퍼포먼스를 도출 할 수 있는데, 아직도 강화학습이 적은양으로 불가능한지 궁금함. 만약 강화학습이 아직도 많은 리소스가 필요하다면 사용할 필요가 없지 않은가?
ESP는 예측 변수를 블랙박스로 취급하여 많은 경우에 충분한 Random Forest와 같은 단순한 모델을 포함하여 모델 선택의 높은 유연성을 허용합니다.
THE ESP APPROACH
ESP의 접근 방식의 목표는 결과를 최적화 하는 의사결정 정책을 찾는 것이다. 가능한 Context - C와 Action A의 집합이 주어지면, 의사결정 정책 D는 각 Context C에서 수행될 Action A의 집합을 반환합니다.
여기서 C∈C 와 A∈A 그러한 (C,A) 쌍 각각에 대해 일련의 결과 O(C,A), 즉 상황 C에서 결정 A를 수행하는 결과가 있다. 예를 들어 Context는 환자에 대한 설명일 수 있고, Action은 약물일 수 있으며 결과는 부작용 및 비용일 수 있다. ESP에서는 Predictor와 Prescriptor 두 개의 모델이 사용된다. Predictor는 Context 정보와 해당 컨텍스트에서 수행된 Action을 input으로 사용합니다. Predictor의 Output은 주어진 Context에서 주어진 Action이 적용될 때의 결과입니다. 따라서 Predictor는 다음과 같이 정의됩니다.
Figure 2 : Predictor는 Prescriptor가 Evolved하는 동시에 점진적으로 train 될 수 있으며, Prescriptor를 사용하여 탐색을 유도한다. 즉, 사용자는 Prescriptor의 output을 실제 환경에 적용하고, 결과를 관찰하고, Predictor의 Trainning Set로 통합할 수 있다.
개인적 의견 당연한 이야기겠지만 실제 환경에 얼마나 잘 적용하고 추후에 고도화를 어떻게 하느냐가 Surrogate Model의 성능을 판가름 할 것이라 생각듦. 실제 Surrogate Model을 활용한 예시가 더 있는지 Search 해 볼 필요가 있음.
따라서 모든 차원 O의 j가 $\sum_j L(Oj,O'j)$가 최소화된다. 함수 L은 cross-entropy나 mean-squared-error와 같은 Machine Learning에 사용되는 일반적인 손실 함수 중 하나일 수 있으며, Predictor 자체는 신경망 또는 RandomForest 와 같은 학습된 Machine Learning 모델일 수 있다. Prescriptor 주어진 Context를 input으로 사용하고 Action을 출력합니다.
따라서 모든 Context i에서 $\sum_{i,j}O'_{j}(C_i,A_i)$ 최대화됩니다. 그래서 문제의 최적 의사결정 정책으로 근사화 된다. 최적의 Action A는 알 수 없으므로 Searching을 통해 찾아야 한다. 그런 다음 ESP 알고리즘은 Predictor, Prescriptor를 구성하는 외부 루프로 작동합니다.
ESP 구동 순서
(1) 과거 train data를 기반으로 한 Predictor trainning
(2) Predictor를 Surrogate로 하여 Prescriptor를 Evolve
(3) 현실 세계에서 가장 뛰어난 Prescriptor를 적용
(4) 새 데이터를 수집하고 Trainning Set에 추가합니다.
(5) 수렴할 때까지 반복합니다.
진화적 탐색은 늘 그렇듯, 만족스러운 결과가 나왔거나 더이상 진전을 이룰 수 없을때 프로세스가 종료된다.
개인적 의견 최적의 Action A를 Searching할 때 사용하는 Fitness함수를 어떻게 효율적, 효과적으로 잘 구축하는지가 핵심임. 의문이 드는 것은 새 데이터를 수집 했을 때 Trainning Set에 데이터가 추가 될 텐데, Surrogate모델의 재구축을 해야하지 않을까? 라는 의문이 들긴함.
(C,A,O) 데이터 세트가 주어지면 예측 변수 모델을 구축하는 것이 간단합니다. 알고리즘의 선택은 도메인, 즉 데이터가 얼마나 많은지, 그것이 연속적이든 이산적이든, 구조적이든 비정형적이든에 따라 달라진다. Random Forest와 신경망은 이 논문에서 이 역할을 통해 입증될 것이다. 이와 대조적으로 Prescriptor 모델은 ESP의 신경 진화를 사용하여 구축되었습니다. 신경망은 복잡한 비선형 매핑을 자연스럽게 표현할 수 있기 때문에 그리고 evolution 그러한 매핑을 발견하는 효율적인 방법이기 때문에 여러 목표를 최적화하는 데 자연스럽게 적합하다. Predictor와 함께 Evolve하기 때문에 Prescriptor는 제한된 Trainning dataset 또는 실제 환경에서 평가할 수 있는 기회에 제한되지 않는다. 대신 Predictor가 Fitness 역할을 하므로 자주 효율적으로 queried? 할 수 있습니다.
RL 구동 순서
ESP 프레임워크를 RL 문제에 적용하는 것은 Context와 Action을 시퀀스로 확장하는 것을 포함한다.
(1) 실제 영역에 엘리트 Prescriptor를 적용
(2) 각 Prescriptor의 각 시간 단계에 대한 Q 값을 수집
(3) 2단계에서 수집한 데이터를 기반으로 Predictor를 trainning
(4) Predictor를 Surrogate으로 하여 Predictor Evolve
(5) 수렴할 때까지 반복
Figure 3 : ESP 과정을 시각화 한다 (a) True reward for every state-action pair (b−c) After 1000 episodes, the top Prescriptors for direct evolution (DE) and PPO are still far from optimal (d) ESP Prescriptor (orange) and Predictor (background) for several iterations
반투명 원은 지금까지 샘플링된 state-action 쌍, 즉 Predictor가 trainning 되는 샘플을 나타냅니다. 125회까지 ESP는 최적의 Prescriptor를 중심으로 수렴 되었으며, ESP Predictor는 이 최적 근사치에 수렴되어 ESP가 시간이 지남에 따라 Predictor를 활용하여 good Action을 신속하게 찾을 수 있는 방법을 보여줍니다. Prescriptor는 Predictor가 최적이라고 제안하는 Action과 정확히 일치하지 않습니다. Prescriptor는 시간이 지남에 따라 진화한 예측 변수를 암시적으로 결합함으로써 Predictor의 과적합을 정규화합니다. 알고리즘에 대한 전체 비디오는 http://evolution.ml/demos/espvisualization 을 참조하십시오.
개인적 의견
이외의 최근 데이터를 사용하여 RL과 ESP를 비교해보는 기회가 있으면 좋을 것 같다고 생각함
'Paper Review' 카테고리의 다른 글
[NLP] Attention Is All You (0) | 2023.01.19 |
---|---|
[NLP] DeBERTa-Decoding-enhanced-BERT-with-Disentangled-Attention (0) | 2022.05.20 |
[NLP] BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding (0) | 2022.05.20 |