-
Notifications
You must be signed in to change notification settings - Fork 36
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
微调模型预测结果一样 #12
Comments
说明你的预测代码有问题,因为微调没有问题,但是你predict有问题,那你需要检查是不是input有问题或者ID映射问题,或者其他代码code。
***@***.***可能是0,但是微调是0.3,很明显是predict出错了,你也可以打印一下微调阶段测试结果,应该不是这个样子
从 Windows 版邮件<https://go.microsoft.com/fwlink/?LinkId=550986>发送
发件人: ***@***.***>
发送时间: 2022年6月2日 15:12
收件人: ***@***.***>
抄送: ***@***.***>
主题: [fajieyuan/SIGIR2020_peterrec] 微调模型预测结果一样 (Issue #12)
***@***.***;
***@***.***,基本两个epoch就停止收敛了;
然后使用微调的模型对预训练的数据进行top-k预测,发现不管输入啥top-k的结果都是一样的,如下所示几个seq的top-50结果:
[image]<https://user-images.githubusercontent.com/18312444/171573703-4cd89ec5-23d1-4427-8b5c-1f7e6d1a9040.png>
想请教一下,这个可能是什么原因造成的呢,毕竟微调的指标已经接近论文中的0.33了;
非常感谢。
―
Reply to this email directly, view it on GitHub<#12>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/ADTZGLLRJJOATRPXERGXSRLVNBNEBANCNFSM5XT7K4TQ>.
You are receiving this because you are subscribed to this thread.Message ID: ***@***.***>
|
我打印了微调阶段topk( 而我微调阶段指标又正常,是因为target_item_embedding(99负样本+1label)的embedding在一直变化,即使其和一直不变的cls_embedding相乘,因为metric是判断top_k中有没有index=99的label,倒也输出了正常指标? |
可以按照我论文的超参数设置,是否可以得到论文的指标。如果是的话你可以在我的代码框架上输出top-k,肯定不是都一样的,如果都是一样的,指标不可能很高。
从 Windows 版邮件<https://go.microsoft.com/fwlink/?LinkId=550986>发送
发件人: ***@***.***>
发送时间: 2022年6月2日 15:58
收件人: ***@***.***>
抄送: Fajie YUAN ***@***.***>; ***@***.***>
主题: Re: [fajieyuan/SIGIR2020_peterrec] 微调模型预测结果一样 (Issue #12)
说明你的预测代码有问题,因为微调没有问题,但是你predict有问题,那你需要检查是不是input有问题或者ID映射问题,或者其他代码code。 @.可能是0,但是微调是0.3,很明显是predict出错了,你也可以打印一下微调阶段测试结果,应该不是这个样子 从 Windows 版邮件<https://go.microsoft.com/fwlink/?LinkId=550986>发送<https://go.microsoft.com/fwlink/?LinkId=550986%3E%E5%8F%91%E9%80%81> 发件人: @.> 发送时间: 2022年6月2日 15:12 收件人: @.> 抄送: @.> 主题: [fajieyuan/SIGIR2020_peterrec] 微调模型预测结果一样 (Issue #12<#12>) @.; @.,基本两个epoch就停止收敛了; 然后使用微调的模型对预训练的数据进行top-k预测,发现不管输入啥top-k的结果都是一样的,如下所示几个seq的top-50结果: [image]https://user-images.githubusercontent.com/18312444/171573703-4cd89ec5-23d1-4427-8b5c-1f7e6d1a9040.png 想请教一下,这个可能是什么原因造成的呢,毕竟微调的指标已经接近论文中的0.33了; 非常感谢。 D Reply to this email directly, view it on GitHub<#12<#12>>, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ADTZGLLRJJOATRPXERGXSRLVNBNEBANCNFSM5XT7K4TQ. You are receiving this because you are subscribed to this thread.Message ID: @.***>
我打印了微调阶段topk(score_test = tf.matmul(source_item_embedding_test, target_item_embedding))生成的source_item_embedding(即last_cls_embedding)和target_item_embedding(99负样本+1label)的输出,前者一直都一样,这解释了预测阶段其与all_target_item_embedding的结果始终一样的情况,但这应该是不对的吧?
而我微调阶段指标又正常,是因为target_item_embedding(99负样本+1label)的embedding在一直变化,即使其和一直不变的cls_embedding相乘,因为metric是判断top_k中有没有index=99的label,倒也输出了正常指标?
―
Reply to this email directly, view it on GitHub<#12 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/ADTZGLIZP63EVBDUWHSSDRDVNBSSLANCNFSM5XT7K4TQ>.
You are receiving this because you commented.Message ID: ***@***.***>
|
找到原因了,block中有两次ReLU操作,inputs经过(conv + ln+ relu )
*2的block后,输出基本是0,导致最终输出cls_token的embedding基本等于输入cls_token的embedding,与训练后的item-embedding的相乘预测结果可不就是几乎一样么= =
![image](https://user-images.githubusercontent.com/18312444/171611736-cb5c696f-7577-4a05-8797-f31eaecd724d.png)
![image](https://user-images.githubusercontent.com/18312444/171611717-0a7d6baf-f55c-4e7f-98f2-2c035836ec8e.png)
fajieyuan ***@***.***> 于2022年6月2日周四 16:03写道:
… 可以按照我论文的超参数设置,是否可以得到论文的指标。如果是的话你可以在我的代码框架上输出top-k,肯定不是都一样的,如果都是一样的,指标不可能很高。
从 Windows 版邮件<https://go.microsoft.com/fwlink/?LinkId=550986>发送
发件人: ***@***.***>
发送时间: 2022年6月2日 15:58
收件人: ***@***.***>
抄送: Fajie YUAN ***@***.***>; ***@***.***>
主题: Re: [fajieyuan/SIGIR2020_peterrec] 微调模型预测结果一样 (Issue #12)
说明你的预测代码有问题,因为微调没有问题,但是你predict有问题,那你需要检查是不是input有问题或者ID映射问题,或者其他代码code。
@.可能是0,但是微调是0.3,很明显是predict出错了,你也可以打印一下微调阶段测试结果,应该不是这个样子 从 Windows 版邮件<
https://go.microsoft.com/fwlink/?LinkId=550986>发送<
https://go.microsoft.com/fwlink/?LinkId=550986%3E%E5%8F%91%E9%80%81> 发件人:
@.> 发送时间: 2022年6月2日 15:12 收件人: @.> 抄送: @.> 主题:
[fajieyuan/SIGIR2020_peterrec] 微调模型预测结果一样 (Issue #12<
#12>) @.;
@.,基本两个epoch就停止收敛了;
然后使用微调的模型对预训练的数据进行top-k预测,发现不管输入啥top-k的结果都是一样的,如下所示几个seq的top-50结果: [image]
https://user-images.githubusercontent.com/18312444/171573703-4cd89ec5-23d1-4427-8b5c-1f7e6d1a9040.png
想请教一下,这个可能是什么原因造成的呢,毕竟微调的指标已经接近论文中的0.33了; 非常感谢。 D Reply to this email
directly, view it on GitHub<#12<
#12>>, or
unsubscribehttps://
github.com/notifications/unsubscribe-auth/ADTZGLLRJJOATRPXERGXSRLVNBNEBANCNFSM5XT7K4TQ.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>
我打印了微调阶段topk(score_test = tf.matmul(source_item_embedding_test,
target_item_embedding))生成的source_item_embedding(即last_cls_embedding)和target_item_embedding(99负样本+1label)的输出,前者一直都一样,这解释了预测阶段其与all_target_item_embedding的结果始终一样的情况,但这应该是不对的吧?
而我微调阶段指标又正常,是因为target_item_embedding(99负样本+1label)的embedding在一直变化,即使其和一直不变的cls_embedding相乘,因为metric是判断top_k中有没有index=99的label,倒也输出了正常指标?
―
Reply to this email directly, view it on GitHub<
#12 (comment)>,
or unsubscribe<
https://github.com/notifications/unsubscribe-auth/ADTZGLIZP63EVBDUWHSSDRDVNBSSLANCNFSM5XT7K4TQ>.
You are receiving this because you commented.Message ID: ***@***.***>
—
Reply to this email directly, view it on GitHub
<#12 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AELWZ7B23F2SXX7T6H6JE3TVNBTF3ANCNFSM5XT7K4TQ>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
你是说我的代码有bug?
从 Windows 版邮件<https://go.microsoft.com/fwlink/?LinkId=550986>发送
发件人: ***@***.***>
发送时间: 2022年6月2日 18:36
收件人: ***@***.***>
抄送: Fajie YUAN ***@***.***>; ***@***.***>
主题: Re: [fajieyuan/SIGIR2020_peterrec] 微调模型预测结果一样 (Issue #12)
找到原因了,block中有两次ReLU操作,inputs经过(conv + ln+ relu )
*2的block后,输出基本是0,导致最终输出cls_token的embedding基本等于输入cls_token的embedding,与训练后的item-embedding的相乘预测结果可不就是几乎一样么=
=
[image: image.png]
[image: image.png]
fajieyuan ***@***.***> 于2022年6月2日周四 16:03写道:
可以按照我论文的超参数设置,是否可以得到论文的指标。如果是的话你可以在我的代码框架上输出top-k,肯定不是都一样的,如果都是一样的,指标不可能很高。
从 Windows 版邮件<https://go.microsoft.com/fwlink/?LinkId=550986>发送
发件人: ***@***.***>
发送时间: 2022年6月2日 15:58
收件人: ***@***.***>
抄送: Fajie YUAN ***@***.***>; ***@***.***>
主题: Re: [fajieyuan/SIGIR2020_peterrec] 微调模型预测结果一样 (Issue #12)
说明你的预测代码有问题,因为微调没有问题,但是你predict有问题,那你需要检查是不是input有问题或者ID映射问题,或者其他代码code。
@.可能是0,但是微调是0.3,很明显是predict出错了,你也可以打印一下微调阶段测试结果,应该不是这个样子 从 Windows 版邮件<
https://go.microsoft.com/fwlink/?LinkId=550986>发送<
https://go.microsoft.com/fwlink/?LinkId=550986%3E%E5%8F%91%E9%80%81> 发件人:
@.> 发送时间: 2022年6月2日 15:12 收件人: @.> 抄送: @.> 主题:
[fajieyuan/SIGIR2020_peterrec] 微调模型预测结果一样 (Issue #12<
#12>) @.;
@.,基本两个epoch就停止收敛了;
然后使用微调的模型对预训练的数据进行top-k预测,发现不管输入啥top-k的结果都是一样的,如下所示几个seq的top-50结果: [image]
https://user-images.githubusercontent.com/18312444/171573703-4cd89ec5-23d1-4427-8b5c-1f7e6d1a9040.png
想请教一下,这个可能是什么原因造成的呢,毕竟微调的指标已经接近论文中的0.33了; 非常感谢。 D Reply to this email
directly, view it on GitHub<#12<
#12>>, or
unsubscribehttps://
github.com/notifications/unsubscribe-auth/ADTZGLLRJJOATRPXERGXSRLVNBNEBANCNFSM5XT7K4TQ.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>
我打印了微调阶段topk(score_test = tf.matmul(source_item_embedding_test,
target_item_embedding))生成的source_item_embedding(即last_cls_embedding)和target_item_embedding(99负样本+1label)的输出,前者一直都一样,这解释了预测阶段其与all_target_item_embedding的结果始终一样的情况,但这应该是不对的吧?
而我微调阶段指标又正常,是因为target_item_embedding(99负样本+1label)的embedding在一直变化,即使其和一直不变的cls_embedding相乘,因为metric是判断top_k中有没有index=99的label,倒也输出了正常指标?
D
Reply to this email directly, view it on GitHub<
#12 (comment)>,
or unsubscribe<
https://github.com/notifications/unsubscribe-auth/ADTZGLIZP63EVBDUWHSSDRDVNBSSLANCNFSM5XT7K4TQ>.
You are receiving this because you commented.Message ID: ***@***.***>
―
Reply to this email directly, view it on GitHub
<#12 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AELWZ7B23F2SXX7T6H6JE3TVNBTF3ANCNFSM5XT7K4TQ>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
―
Reply to this email directly, view it on GitHub<#12 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/ADTZGLPZBOP6JGUXQA63JNTVNCFBBANCNFSM5XT7K4TQ>.
You are receiving this because you commented.Message ID: ***@***.***>
|
不知道诶,我找到我自己这边预测老是输出一样的原因,源码跑过太慢了,不晓得有没有这种情况 |
hello博士您好,我这边使用coldrec2的数据在复现的模型上测试,预训练阶段mrr@5 = 0.0407;
微调阶段mrr@5 = 0.3044,基本两个epoch就停止收敛了;
然后使用微调的模型对预训练的数据进行top-k预测,发现不管输入啥top-k的结果都是一样的,如下所示几个seq的top-50结果:
想请教一下,这个可能是什么原因造成的呢,毕竟微调的指标已经接近论文中的0.33了;
非常感谢。
The text was updated successfully, but these errors were encountered: