Skip to content
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

关于论文提出的对测试集平衡采样在代码实现上的问题 #1

Open
ZhijieXiong opened this issue Mar 28, 2024 · 2 comments

Comments

@ZhijieXiong
Copy link

您好,我认为你们的工作非常新颖,并且感谢你们能开源,让我受益匪浅。
但是我在看你们的代码实现时,发现一个小问题,就是测试代码的balance_example,在对测试集中每道习题进行平衡采样时,采样的样本是正确数量加错误数量除以2,因此使用了重复采样(np.random.choices的参数replace为True),这会导致计算模型性能时测试样本重复计算。实际上我复现了你们的工作(qDKT-CORE),发现如果不使用重复采样(这个时候采样样本数就要设置为正确数量和错误数量两个值中的最小值),计算出来的指标要低0.3个点左右。
另外还有个问题,在代码中的fusion mode有3个取值:sum,hm,rubi,我对第2个不理解,请问这是来自哪里?
万分感谢!

@lucky7-code
Copy link
Owner

感谢你对我们工作的关注,并提出了建设性的问题,对于我们以后工作有很大的启发。
对于第一你提出的第一个问题,我们在实际的设计中也考虑到了这样会进行重复采样,但是由于数据集中有些问题的答对和答错偏差非常的大,如果只取其中的最小值,会导致降采样极其严重,最后的评估更不具有代表性。最终综合考虑后,我们使用了这种方式,这种后续这种评估方式后续还有改进的空间,也欢迎你提出好的想法和意见。
对于第二个问题中关于fusion model 的三个取值,这分别是三种融合方式,sum,hm,rubi,实验中我们发现sum这种方式比较适合我们这个任务,最终就将参数固定使用sum这种方式了。对于出自哪里你可以参考相关l论文中文献[17]。
如果你同样对KT非常感兴趣,欢迎能有进一步的交流与讨论。

@ZhijieXiong
Copy link
Author

ZhijieXiong commented Mar 28, 2024

非常感谢你的细心解答。
我要表示抱歉,我上述的第一点说法有误,根据我的复现结果,采用重复采样和非重复采样在不同数据集上的结果不一样(具体来说,在Assist2009上重复采样性能更好,但是在另外两个数据集上是非重复采样性能更好)
这是我做的一个知识追踪算法库:https://github.com/ZhijieXiong/dlkt ,包含了基本上所有KT数据集和主流的知识追踪模型,以及可以设置任意的实验设置,和各种细粒度模型评估方法,并且已经复现了绝大数论文汇报的结果。做这个算法库的目的是和PYKT互补,如果你觉得该算法库还可以的话,也可以尝试用它跑实验。如果发现了其中的bug的话,希望能和我反馈一下,非常感谢!
我也非常期待和你们可以有更多关于KT的交流讨论

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants