• 카테고리

    질문 & 답변
  • 세부 분야

    딥러닝 · 머신러닝

  • 해결 여부

    미해결

ppo에서 exploration을 어떻게 하는지 궁금합니다.

22.05.19 16:20 작성 조회수 499

0

안녕하세요 강의 잘 듣고 이를 토대로 모델을 만들어서 학습하고 있습니다.

저는 ppo기반으로 학습을 진행했는데요

제가 만든환경에서 어느정도 학습이 이루어지면

환경이 조금 변화 되어 지속 학습을 하게끔하였습니다.

여기서 궁금한점은 제가 만든 환경에서 일부 환경이 바뀌게 되면

지금까지 최신화된 정책을 일부만 따르게 하고 액션을 랜덤하게 샘플링

하고 싶습니다.

q러닝에서는 e-greedy 개념으로 epsilon을 통해 액션을 랜덤하게

샘플링 하도록 조절하는데 ppo같이 stochastic 모델에서는 

어떻게 해야하는지 잘 모르겠습니다 ㅠㅠ

답변 2

·

답변을 작성해보세요.

1

안녕하세요 굿초이님.

PPO 알고리즘에서 Exploration을 구현하기 위해 사용하는 방법은 make_memory 함수에서 확인할 수 있습니다.

행동을 선택할 때 np.random.choice 함수를 사용하고 인수로 각 행동별 확률을 가지고 있는 action_prob 변수를 넣어줍니다. 예를들어 0행동에 대한 확률이 0.6이고 1행동에 대한 확률이 0.4라면, np.random.choice 함수는 행동을 선택할 때 40%와 60%의 확률을 가지고 선택하게 됩니다. 즉, 0행동을 40%, 1행동을 60% 확률을 가지고 선택하게 됩니다.

감사합니다.

0

굿초이님의 프로필

굿초이

질문자

2022.05.23

답변 감사합니다. 

노이즈를 주고 싶으면 action_pro을 조절하면 되겠네요 ㅎ

감사합니다!