Abstract:In recent years, student cognitive diagnosis has been an important research topic in educational data mining, which is of great significance for accurate feedback in modern education. However, traditional cognitive diagnosis models have problems such as low prediction accuracy and low efficiency when dealing with large-scale data. Moreover, the existing research is mainly focused on traditional offline teaching and learning, and more research is needed in programming education. To solve the above problems, a programming-performance-based fuzzy cognitive diagnosis framework (P-FuzzyCDF) is proposed from the analysis of the characteristics of programming education. First, to deal with the case of partially correct programming questions, the model fuzzes the students’ mastery of the knowledge points. Second, fuzzy set theory is combined with educational assumptions to model student mastery of the questions. Finally, students’ scores on each problem are generated by considering plagiarism factors. Notably, the model takes advantage of the visualization and accuracy of programming education data to quantify the parameters for each model component. Experiments are conducted based on real data sets, and the results show that P-FuzzyCDF can achieve high accuracy, where the values of MAE, MSE, and RMSE assessment indexes are 0.07, 0.09, and 0.01, respectively. In addition, when comparing P-FuzzyCDF with existing classical methods such as DINA, IRT, and FuzzyCDF, the results of P-FuzzyCDF are significantly better than these methods in terms of MAE, MSE, and RMSE.