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

[HFUT Student ]当我使用CL4KT模型的时候报错 When I use the example code run_cl4kt_demo,I get an error #20

Closed
AKkzzzz opened this issue Dec 17, 2024 · 1 comment

Comments

@AKkzzzz
Copy link

AKkzzzz commented Dec 17, 2024

2024-12-15 00:18:43[INFO]: ============================================================
2024-12-15 00:18:47[INFO]: actual window size: 200
2024-12-15 00:18:47[ERROR]: Traceback (most recent call last):
File "C:\Users\Akkzzzz\Desktop\EDU\EduStudio-main\edustudio\quickstart\quickstart.py", line 57, in run_edustudio
traintpl = cls(cfg)
File "C:\Users\Akkzzzz\Desktop\EDU\EduStudio-main\edustudio\traintpl\gd_traintpl.py", line 25, in init
super().init(cfg)
File "C:\Users\Akkzzzz\Desktop\EDU\EduStudio-main\edustudio\traintpl\base_traintpl.py", line 54, in init
self.datatpl = self.get_datatpl_obj()
File "C:\Users\Akkzzzz\Desktop\EDU\EduStudio-main\edustudio\traintpl\base_traintpl.py", line 87, in get_datatpl_obj
datatpl: BaseDataTPL = self.datatpl_cls.from_cfg(self.cfg)
File "C:\Users\Akkzzzz\Desktop\EDU\EduStudio-main\edustudio\datatpl\common\general_datatpl.py", line 107, in from_cfg
return cls(cfg, **kwargs)
File "C:\Users\Akkzzzz\Desktop\EDU\EduStudio-main\edustudio\datatpl\common\edu_datatpl.py", line 30, in init
super().init(cfg, df, df_train, df_valid, df_test, status)
File "C:\Users\Akkzzzz\Desktop\EDU\EduStudio-main\edustudio\datatpl\common\general_datatpl.py", line 78, in init
self.process_data()
File "C:\Users\Akkzzzz\Desktop\EDU\EduStudio-main\edustudio\datatpl\common\general_datatpl.py", line 143, in process_data
self.process_load_data_from_middata()
File "C:\Users\Akkzzzz\Desktop\EDU\EduStudio-main\edustudio\datatpl\common\general_datatpl.py", line 126, in process_load_data_from_middata
kwargs = op.process(**kwargs)
File "C:\Users\Akkzzzz\Desktop\EDU\EduStudio-main\edustudio\atom_op\mid2cache\single\M2C_CL4KT_OP.py", line 23, in process
kwargs = self.compute_cpt2difflevel(**kwargs)
File "C:\Users\Akkzzzz\Desktop\EDU\EduStudio-main\edustudio\atom_op\mid2cache\single\M2C_CL4KT_OP.py", line 30, in compute_cpt2difflevel
for i, (c_list, r_list) in enumerate(zip(kwargs['df_train_folds'][0]['cpt_unfold_seq:token_seq'], kwargs['df_train_folds'][0]['label_seq:float_seq'])):
KeyError: 'df_train_folds'

经过添加调试代码,我发现是CL4KT的DataTPL中出了问题

CL4KTDataTPL如下:
class CL4KTDataTPL(EduDataTPL):
default_cfg = {
'mid2cache_op_seq': ['M2C_Label2Int', 'M2C_ReMapId', 'M2C_GenUnFoldKCSeq', 'M2C_CL4KT_OP'],
'M2C_CL4KT_OP': {
'sequence_truncation': 'recent',
}
}

调试代码显示结果如下:Processing operation: M2C_Label2Int
After M2c Label2Int, kwargs keys: dict keys(['df', 'df_train', 'df_valid', 'df_test', 'df_stu', 'df_exer', 'dt_info'])
Processing operation:M2C_ReMapId
After N2c ReapId, kwargs keys: dict keys(['df', 'df_train', 'df_valid', 'df_test', 'df_stu', 'df_exer’, 'df_info', "feats_group', "lbe_dict'])
Processing operation: M2C_GenUnFoldKcseg
After N2c Genunfoldkcseq, kwargs keys: dict keys('df', 'df_train', 'df_valid’, 'df_test’, 'df_stu’, 'df_exer’, 'df_info’, "feats_group', 'lbe_dict')

在经过M2C_GenUnFoldKCSeq的时候并没有生成df_train_folds,而df_train_folds数据是要在M2C_CL4KT_OP进行进一步处理分析的。因此我怀疑此代码报错有两点:1是因为DataTPL缺少了步骤,导致没有分出df_train_folds,2是因为M2C_GenUnFoldKCSeq代码有误,甚至是M2C_CL4KT_OP的代码有误。我在对第二点进行尝试的时候发现代码水平有限,修正不好,因此提交本issue。

@XChuckie
Copy link
Contributor

🎄 Thank you for your feedback about EduStudio.

We indeed found that content about "kwargs['df_train_folds'][0]" can not be detected, and we have fixed this issue in the new version. You can try it again.

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