sunzeyeah / RLHF

Implementation of Chinese ChatGPT
283 stars 35 forks source link

关于取最后一个token作为reward分数的方式 #17

Closed Bo396543018 closed 1 year ago

Bo396543018 commented 1 year ago

您好,看到您使用最后一个token作为reward分数的实现,在训练阶段会取两个回答的max_ind作为end_ind,这样会不会存在与推理时候某一句的end_id对不齐呢

sunzeyeah commented 1 year ago

你好,谢谢指出这个问题,目前如何计算reward得分还在试验不同的方案,但如果使用最后一个非padding token的话,确实不应该取max(c_ind, r_ind)。已调整为分别使用c_indr_ind

Bo396543018 commented 1 year ago

最近也在看这个问题,感觉Open-Assistant实现感觉比较科学:https://github.com/LAION-AI/Open-Assistant/blob/main/model/model_training/models/reward_model.py