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

help #138

Open
MyGithub1234567890 opened this issue Oct 14, 2023 · 4 comments
Open

help #138

MyGithub1234567890 opened this issue Oct 14, 2023 · 4 comments

Comments

@MyGithub1234567890
Copy link

我有个问题 就是我用pykt库里面的 iekt模型跑 然后auc是0.8318。然后我需要atdkt模型数据集里面的 历史正确性这个数据。就把iekt的数据loader换成了atdkt的loader 数据集不变.然后啥也没改 iekt的auc就到了0.923。
修改代码如下:

elif model_name in que_type_models:

#     curvalid = KTQueDataset(os.path.join(data_config["dpath"], data_config["train_valid_file_quelevel"]),
#                     input_type=data_config["input_type"], folds={i}, 
#                     concept_num=data_config['num_c'], max_concepts=data_config['max_concepts'])
#     curtrain = KTQueDataset(os.path.join(data_config["dpath"], data_config["train_valid_file_quelevel"]),
#                     input_type=data_config["input_type"], folds=all_folds - {i}, 
#                     concept_num=data_config['num_c'], max_concepts=data_config['max_concepts'])
elif model_name in ["iekt"]:
    curvalid = ATDKTDataset(os.path.join(data_config["dpath"], data_config["train_valid_file"]), data_config["input_type"], {i})
    curtrain = ATDKTDataset(os.path.join(data_config["dpath"], data_config["train_valid_file"]), data_config["input_type"], all_folds - {i})

请问哪里出错了啊?

@MyGithub1234567890
Copy link
Author

有没有大佬知道什么原因啊,孩子很着急啊

@sonyawong
Copy link
Collaborator

有没有大佬知道什么原因啊,孩子很着急啊

iekt的data_loader用question-level的数据集,atdkt的dataloader使用的kc-level的(对于一个题对多知识点会进行扩展),你用kc-level的数据集跑iekt,应该是存在标签泄露的问题导致结果虚高,对于历史正确性这个数据,建议根据代码在iekt的data_loader上修改

@sonyawong
Copy link
Collaborator

有没有大佬知道什么原因啊,孩子很着急啊

iekt的data_loader用question-level的数据集,atdkt的dataloader使用的kc-level的(对于一个题对多知识点会进行扩展),你用kc-level的数据集跑iekt,应该是存在标签泄露的问题导致结果虚高,对于历史正确性这个数据,建议根据代码在iekt的data_loader上修改

我后面还用到了DIMKT里面的SD(技能难度),QD(问题难度)这两个数据,用了上面那个方法来换了loader,结果auc0.8969,这里也存在标签泄露问题吗?

是的,dimkt用的也是kc-level的数据集

@MyGithub1234567890
Copy link
Author

有没有大佬知道什么原因啊,孩子很着急啊

iekt的data_loader用question-level的数据集,atdkt的dataloader使用的kc-level的(对于一个题对多知识点会进行扩展),你用kc-level的数据集跑iekt,应该是存在标签泄露的问题导致结果虚高,对于历史正确性这个数据,建议根据代码在iekt的data_loader上修改

我后面还用到了DIMKT里面的SD(技能难度),QD(问题难度)这两个数据,用了上面那个方法来换了loader,结果auc0.8969,这里也存在标签泄露问题吗?

是的,dimkt用的也是kc-level的数据集

谢谢大佬,孩子得救了,祝大佬科研顺利

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