Results 4 comments of yujinhan

Hi @WindVChen, This [article](https://neurips.cc/virtual/2023/poster/71718) proposes the Segment-wise Forwarding-Backwarding algorithm to address the memory issue in computational graphs, aiming to improve the efficiency of DiffAttack.

这里似乎有bug,前面的token的位置是better - worse - better padding -worse padding,计算CFG的时候,使用的却是better - better padding 和 worse -worse padding的加权计算,如果理解错了请纠正

> > 这里似乎有bug,前面的token的位置是better - worse - better padding -worse padding,计算CFG的时候,使用的却是better - better padding 和 worse -worse padding的加权计算,如果理解错了请纠正 > > 从您的表述看似乎是DPO对的实现逻辑有问题,Janus的DPO分为两种逻辑,但是在处理数据时padding的策略都是一致的(参考`align-anything/datasets/janus/preference.py`中的`PreferenceCollator`,统一是执行(better + better_padding) + (worse + worse_padding)的逻辑,对(better, worse)先padding成(better + better_padding, worse...

> > 感谢回复,我的问题是tokens (batch size=1)后是不是按照better - worse - better padding -worse padding排列,使用现在的CFG代码是否会造成better - better padding 和 worse -worse padding的加权计算?是不是应该是better - worse 和 better padding -worse padding的加权计算。也就是一开始截图里的问题 “在训练过程中发现将与条件数据放在前一半 无条件数据放在后一半 但是后续logits是奇偶放置的”。感谢您的解释。 >...