[Paper Review] Reinforced Self-Training (ReST) for Language Modeling

Guan Wang, 칭화대
[Paper Review] Reinforced Self-Training (ReST) for Language Modeling

👨🏽‍💻 Title & Authors (Affiliation)

  • Reinforced Self-Training (ReST) for Language Modeling
  • Caglar Gulcehre et. al, DeepMind

✍🏼 한 줄 요약

  • Grow, Improve 2가지 step으로 진행되는 간단하지만 굉장히 효과적인 Self-RL 방식 제안

🔒 Problem

  • 복잡한 online-RLHF(PPO) 대신, simple 한 batch offline RL을 해볼까?

🔑 Main Ideas

  • Reinforced Self-Training(ReST) 방식 제안
  • image
    • Grow : 현재 Policy로 한 샘플 당 여러 개의 Prediction을 생성
    • Improve : Score Function(Metrix X 사용)을 통해 생성된 데이터를 filtering and ranking하고, policy를 supervised learning 함
  • Policy를 학습할 때는 평범한 Negative Likelihood Loss or V-MPO or offline actor-critic을 사용함
  • New Policy를 학습할 때는 더 작은 LR로 낮추면서 학습해서 overfitting을 줄이도록 함.
  • Model은 standard Transformer 사용(Task 자체가 워낙 간단해서..)

📈 Results

  • Translation Dataset에만 테스트
  • image
    • Grow를 1번하고, Improve만 여러번 할 수도 있음(G=0, I=0은 SFT)
  • image
    • Grow도 여러번하면 성능이 확 좋아짐.(G=0, I=0은 SFT)
  • image
    • 그러나 Reward Model의 점수와 사람이 매긴 점수간의 차이가 크게 존재한다.
    • 이것은 G, I Step이 증가 할 수록 심해짐
    • 그래서 매 스텝마다 human annotation 데이터를 섞어 주는 게 좋을 것 같음.

Limitations

  • 1번의 Grow, Iteration Step을 밟는 연구는 꽤 비슷한게 많이 있음
  • 번역 Task 자체가 너무 쉬움(추후에 나오는 ReST 2에서는 수학과 코딩에 적용)
  • Reward Model을 사용하지 않고 BLEU 같이 번역에서 많이 쓰이는 Scoring Function을 사용했네? 너무 날로 먹은거 아님?(Appendix에 이에 대한 내용이 있긴 있음)

✏️ Conclusion

  • 여러번의 G, I Step과 심플한 NLL Loss로도 충분히 강력한 성능을 낼 수 있다.
  • 그러나 Reward model에 대한 Overfitting을 막는게 중요함

❔ Questions

  • 다른 Task에 적용해볼 필요 있음.
  • Scoring Function 대신 Reward Model을 사용하면?