| As one of the classic online education systems,the online assessment system(OJ)contains a huge amount of programming exercises and learner learning data,and it is important for learners to analyze these data to make personalized programming exercise recommendations.Most of the existing methods for recommending programming exercises are based on cognitive diagnostic methods or collaborative filtering methods.However,these existing approaches have some shortcomings.First,when dealing with subjective problems such as programming exercises,cognitive diagnosis-based methods simply treat subjective problems as objective problems,ignoring the rich information in subjective problems,resulting in cognitive analysis results that deviate significantly from the actual results.In addition,the use of traditional collaborative filtering algorithms for programming problem recommendation ignores the differences in learners’ individual knowledge levels,resulting in poor recommendation results.To address the shortcomings of the above methods in the recommendation of programming exercises,this thesis conducts a relevant study as follows:First,a cognitive diagnosis model PECDM-AT for programming domain is proposed to address the problem that the rich information contained in the answer results of subjective questions is ignored in the diagnosis.This paper takes programming exercises as the research object,and the model considers the influence of the answer results of subjective questions on the modeling of learners’ cognitive states,uses code2 vec to capture the rich The model uses code2 vec to capture the rich semantic and structural feature information in the subjective question results,which makes the diagnosed learners’ knowledge mastery more consistent with the actual situation.In addition,when the information of subjective question results is integrated with the existing cognitive diagnostic factors,the rich feature information of subjective question results is further extracted by using the attention mechanism to enhance the influence of subjective question results on the prediction of learners’ future performance in order to improve the diagnostic effect.In addition,considering that the question difficulty level also affects learners’ response performance,the question difficulty feature is introduced for the integration of multiple factors.The experimental results show that the model has better results in terms of accuracy,rationality and interpretability compared with existing methods.Second,the neural collaborative filtering algorithm PECDM-ATNCF,which incorporates learners’ knowledge mastery,is proposed to address the limitations of existing recommendation methods applied in educational fields such as programming exercise recommendation.personalized difference features among learners need to be considered when personalized recommendation is performed in educational fields.The method combines the advantages of cognitive diagnostic methods and collaborative filtering algorithms in recommendation,i.e.,it takes into account the differences in learners’ individual knowledge acquisition and the common characteristics of similar learners,and recommends reasonable exercises for learners.The method first assesses learners’ knowledge mastery by modeling their learning activities with PECDM-AT,and then uses a neural collaborative filtering algorithm that incorporates learners’ knowledge mastery,taking into account the shortcomings of traditional collaborative filtering algorithms in handling multiple features,so that the low-dimensional potential influence factors include learners’ personalized features,while using neural networks to handle the complex interactions between multiple features to provide learners with more accurate recommendations.The neural network is also used to deal with the complex interactions between multiple features to provide learners with more accurate recommendation results and to better improve the interpretability of the recommendation results.Finally,based on the recommendation algorithm proposed in this paper,we design and implement a recommendation system for programming exercises.The main design and development modules are learner knowledge mastery display,personalized exercise recommendation and data collection to assist learners in programming remedial learning and improve their learning efficiency. |