논문 리뷰/RL

Guided Flow Policy: Learning from High-Value Actions in Offline Reinforcement Learning 논문 리뷰

manfromearth1 2026. 3. 30. 16:58

Flow Q-learning(FQL) 논문의 후속 연구들 중 하나이다. 내가 하고 있는 연구에서 적당히 잘 참고할 것이 있는 것 같아 논문을 가져오게 되었다. 우선 FQL이 어떤 형태인지부터 알아보자:

Flow Q Learning

다음의 actor loss만 이해하는 것만으로도 어느 정도는 충분하다:

Actor-constrained offline RL이다. 다만 그 constraint를 이전에는 dataset action과의 divergence(L2, KL 등)으로 두면서 동시에 Q를 최적화하는 문제였다면, FQL은 dataset action이 아닌 N-step flow policy의 action과 one-step flow target policy의 L2 loss를 제약으로 두면서 Q를 maximize하는 문제로 치환한다.

 

일반적으로 supervised learning보다 teacher distillation이 더 좋은 성능을 낸다는 것은 잘 알려진 사실이며, 이러한 smooth target을 바탕으로 학습한 target policy는 좋은 성능을 낸다는 것이 잘 알려져 있다. 다만 문제는 constraint coefficient에 정말 많은 부담을 가지고 있는 구조이고, 실제로 논문의 저자 또한 해당 방법이 하이퍼패러미터에 민감함을 인정한다.

그런데 이 리뷰의 필자가 관련하여 실험을 많이 해본 결과 alpha 튜닝을 정말 잘 해야 하는 것은 맞지만 동시에 이 문제점을 해결하기 위해서는 hyperparameter 개수를 늘려서 위험요소를 분산시켜 복잡도를 증가하는 일밖에 당장은 없다고 생각한다. 마치 에너지 보존의 법칙이라고 해야 하나? 동시대에서 나오는 연구에서 혁신이 나오지 않는 이상 사실 복잡도를 늘리고 튜닝 난이도를 줄이거나, 복잡도를 줄이고 튜닝 난이도를 높이는 트레이드오프가 계속 나오는 것만 같다.

 

이번 논문인 Guided Flow Policy(GFP)가 이 문제를 어떻게 해결하는지 알아보자:

Guided Flow Policy

FQL에서 Behavior cloning actor는 BC만 하는 구조였다면 GFP에서는 아래와 같이 value-aware BC를 한다:

사실 난 이게 다라고 생각한다. actor loss에서 Q에다도 coefficient로 normalization을 달았는데... 이거는 너무 benchmark task에 overfit된 방법이 아닐까 한다. 물론 다양한 벤치마크에서 성능을 냈지만... 그렇게 잘 낸 것인지는 솔직히 모르겠고.

 

근데 value-aware BC는 꽤 괜찮아보이기는 한다. 물론 해당 방식과 같이 적용하면 collapse되는 문제는 있지만 그러한 엔지니어링적인 문제는 충분히 튜닝으로 해결할 수 있지 않을까 싶고! 나는 target policy가 내는 action을 target으로 삼아서 pseudo BC(가중치 0.1 정도)를 생각했는데, 이런 방법도 있을텐데 너무 생각이 짧았던 것 같다.

 

알고리즘은 위와 같이 단순한 형태이다. 논문에서는 action-value function의 target를 다음과 같은 추가적인 형태도 보여준다:

나도 위와 관해서 비슷한 애로사항이 있었는데, 기본적으로 BC policy로 Q를 학습하면 underestimation 때문에 학습에 발전이 별로 없고, target policy로 TD backup을 하면 또 이런 action을 내놓고 평가를 하는(일반적으로 좋은 액션을 내놓는 것과 다르게) 방식에 target policy의 stationary distribution 내부에 없는 action의 경우 정확도가 떨어지는 일들이 있었던 것이다.

이에 대한 문제 해결이라고 보면 된다. 다만 음... 1/2로 그냥 퉁쳐버린 것이 그렇게 좋은 선택일지도 모르겠고, 사실 어디나 trade-off라 튜닝 자체에 관한 의지를 두지 않은 것이라 보면 될 것 같다.

참고로, 논문에서는 이렇게 두는 경우 몇몇 테스크에서 substantial performance increase가 있었음을 언급한다. 이후에 살펴보자.

성능은 괜찮게 나온다. Value-aware BC policy도 성능이 잘 나오는 것으로 보아 co-evolve할 수 있는 구조가 조금 마음에 든다. 좀만 손 잘 보면 Off-policy 알고리즘으로도 만들 수 있지 않을까??

 

다만 언제든지 GFP는 co-evolve하고자 하는 의도와 다르게 같이 무너질 가능성도 충분히 있기 때문에 이 부분에 대한 문제점이 있었을텐데 failure mode를 왜 다루지 않았는지에 대해서는 다소 의아한 부분이다.

 

결론은 flow-policy는 co-evolve할 수 있는 구조로 작용을 할 수 있어 큰 장점을 지닌다는 것이다. 표현학습에서 하는 서커스를 강화학습의 관점에서 다시 풀어서, 조만간 혁신이 한 단계 일어나지 않을까 싶다는 기대는 있다.

 

Bellman(사실은 TD) target를 어떻게 두는가에 관한 실험 결과이다. 그런데 "몇몇" 테스크라, 항상 믿을만하지는 않다. 앞서 언급한대로 tradeoff임을 더 잘 알아두도록 하는 것이 좋을 것 같다.

 

논문 리뷰는 여기서 마치도록 하겠다!