微调 讨论区

请教一下,为什么教程中只有训练的代码,没有预测的代码?
求完整的预测代码,多谢

1060,6GB,train不动。。。显存不足

问下,你这是在window上设置的嘛?直接添加一个环境变量还是?

其实就是正反类吧 取反表示"不是热狗"

这是为什么啊?和书上一模一样,不能训练

求教大神:sob:书上的源码都不能运行了,这是为啥?

个人认为不对。

首先源模型的输出层是1000个种类,而热狗是713类,对于一张测试图,源模型的输出若是713最大的话,则会判断为热狗图。

而当热狗类权重参数拿出来与其取反的权重concat后当做2个类的输出层参数时,那么其对于每张图的2个输出总是为相反数,然后取argmax(dim=1)为y_hat即预判的类型。

考虑下面情况:一张非热狗图,用源模型热狗类权重参数的输出为一个较小的正数c时,对于源模型来说会有其他类的输出比他大,所以不会判断其为热狗,而对于现在的目标模型来说,输出会是(c,-c),那么显然c>-c,模型还是会判断其为热狗,导致误判。

所以我将输出层的权重参数换成nd.concat(hotdog_w,nd.zeros((1,512)),dim=0),其效果比nd.concat(hotdog_w,-hotdog_w,dim=0)更好