Font Size: a A A

Research On The Personalized Recommendation Technology For Programming Learning Of Scratch

Posted on:2023-10-01Degree:DoctorType:Dissertation
Country:ChinaCandidate:P QiFull Text:PDF
GTID:1528306911995139Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
With the advent of the artificial intelligence era,the demand for programming talents continues to increase worldwide.As the importance of programming education has gradually increased,programming education for teenagers becomes a key factor influencing the technological development of various countries.As a popular online programming learning platform for teenagers,Scratch plays an important role in popularizing programming education which can effectively help users learn programming knowledge and enhance their collaboration,reasoning,and creative thinking skills.However,similar to other online learning platforms,Scratch has arisen the information overload problem as the number of users and learning resources increases.Surrounded by a large number of programming resources,it is difficult for users to find suitable learning resources,which seriously affects their programming learning quality and experiences.Although there is a large number of recommendation methods in academia,considering the unique programming characteristics of Scratch,existing methods cannot effectively mine the domain programming knowledge from the platform data,so they cannot be directly used in Scratch.Therefore,it is of great theoretical significance and application value to research the personalized recommendation techniques of Scratch.This paper focuses on the personalized programming recommendation technology of Scratch from four aspects,including integrating platform programming information,exploring preferencebased recommendation,preference and skill-based recommendation,and the interpretability of programming recommendation.We propose a series of new models and methods:(1)For the programming data integrating problem of Scratch,we study a Scratch domain knowledge graph construction framework.First,we define a complete data model to cover the platform data effectively.For the semi-structured data,a hierarchical clustering method is proposed to extract the web templates of Scratch,and the triple patterns and positions in the web templates are analyzed,based on which we design a web page matching method to extract triples from the new web pages.For the text data,we propose a secondary labeling algorithm for DeepDive,which effectively solves the problem of noise labeling and improves the accuracy of triple extraction.In order to extract programming topic information,we design the S-TextRank scheme by introducing word graph structure to evaluate the influence of words and introducing context information to enhance the semantics of words,which improves the quality of keyword generation.For the code data,a frequent continuous block sequence mining algorithm is designed to extract the knowledge points of the programming project,which effectively mines the domain knowledge of Scratch.Experimental results show that the proposed methods achieve accurate information extraction results and effectively construct the Scratch knowledge graph.(2)For the preference-based recommendation problem of Scratch,we study a personalized programming recommendation strategy based on network preference features.First,a node feature embedding scheme that preserves topology and programming information is designed to effectively integrate programming information of Scratch network.Then,we propose a Scratch adversarial learning model is proposed,including a Scratch generative adversarial network and a preference difference constraint component.We also design a preference-based generator generation strategy to simulate user preference passing.The Scratch generative adversarial network is used to learn the preference distribution of users,and the preference difference constraint component is used to identify the preference differences of users from their interaction behaviors.These two modules fully embed the preference information into the node representation of the network.Based on the vector similarity,we can make recommendations that fit the user’s preference.Experimental results verify the effectiveness of the proposed recommendation strategy.(3)For the problem of recommending projects adapting user programming skills,we study a Scratch recommendation strategy that comprehensively considers the user’s programming preference and programming skill.To make full use of the programming information of projects,we propose a project embedding scheme that jointly learns functional features and semantic features of code.Then,we propose a water wave diffusion model.By aggregating multi-hop neighbor features along edges of the user-item interaction network,it can effectively learn user explicit and implicit preferences and model the diversity of user preferences.Besides,a programming skill learning model combining attention mechanism and long short-term memory network is proposed,which realizes the tracking of users’ real-time programming abilities.Finally,we make recommendations that adapt the users’ programming preferences and programming abilities.Experimental results show that our proposed model outperforms other state-of-the-arts in recommendation performance.(4)For the interpretable programming recommendation problem of Scratch,we study a reinforcement learning-based interpretable recommendation framework.We first design a preference-driven ActorCritic network whose core idea is to match user preferences to states and states to actions by a preference-based state function and reward function,so that the agent can simulate the user preference and eventually reason an interpretable path from the knowledge graph.In addition,a preferencebased action pruning strategy is designed,which reduces the action space size while maintaining the reasoning performance.It improves the efficiency of path reasoning.Then,we design a discriminator network to evaluate the accuracy of recommended projects generated by the agent.The discriminator tries its best to distinguish the projects generated by the agent from the projects sampled from the ground truth,and returns a longterm guidance reward based on the distinguishing result,thus achieving a fast convergence of the reasoning model.Experimental results show that the proposed interpretable recommendation framework not only provides reliable recommendation explanations,but also outperforms other state-ofthe-arts in recommendation performance.
Keywords/Search Tags:Scratch, personalized recommendation technology, programming preference, programming skill, interpretable programming recommendation
PDF Full Text Request
Related items