DRSAD / iCaRL

96 stars 24 forks source link

关于这里的损失 #2

Open lufengjie051523 opened 4 years ago

lufengjie051523 commented 4 years ago

您好,阅读了您的代码,写得很好,有个疑问,这里的损失您好像只计算了蒸馏的损失,对于论文中的第一项损失似乎没有计算?

DRSAD commented 4 years ago

仔细看下原论文,会发现用于计算损失的label就是[q_1,q2,...,q{s-1},os,o{s+1},....,o_s],其中q_1,q2,...,q{s-1}就是旧模型对于当前训练图片的输出,o_{s+1},....,os就是新类别的label,对于新类别图片,o{s+1},....,o_s会有一个为1,对于旧类别图片,os,o{s+1},....,o_s全为0

lufengjie051523 commented 4 years ago

我的qq. 534843250.能否加下,非常感谢!

---原始邮件--- 发件人: "zhuoyunli"<notifications@github.com> 发送时间: 2019年12月31日(周二) 上午10:52 收件人: "zhuoyunli/iCaRL"<iCaRL@noreply.github.com>; 抄送: "lufengjie051523"<534843250@qq.com>;"Author"<author@noreply.github.com>; 主题: Re: [zhuoyunli/iCaRL] 关于这里的损失 (#2)

仔细看下原论文,会发现用于计算损失的label就是[q_1,q2,...,q{s-1},os,o{s+1},....,o_s],其中q_1,q2,...,q{s-1}就是旧模型对于当前训练图片的输出,o_{s+1},....,os就是新类别的label,对于新类别图片,o{s+1},....,o_s会有一个为1,对于旧类别图片,os,o{s+1},....,o_s全为0

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe.

njulhy commented 3 years ago

您好,阅读了您的代码,写得很好,有个疑问,这里的损失您好像只计算了蒸馏的损失,对于论文中的第一项损失似乎没有计算?

新类损失在计算交叉熵的时候关于旧类的列标签都是0,所以直接置换旧类的列计算蒸馏损失。