| Natural language understanding is a general term for the method or model that uses machine to understand text automatically.It is an important method to realize the communication between natural language and machine.Subject topics,as a subset of natural language texts,contain a great deal of abstract logic and knowledge content.Therefore,researchers gradually pay attention to the understanding of various subject texts.Topic understanding refers to the use of computer technology to automatically understand the content of the topic,to obtain the key information of the topic,it is the necessary process to realize the automatic solution of the topic,is also an important means of auxiliary subject education.At present,topic understanding has been widely used in Chinese composition,mathematics,geometry,physics and other subject education fields.Not only in the field of subject education but also in the field of computer programming education is in urgent need of a method and technology that can automatically understand students’ programming problems.Students’ programming problems often abstract program algorithms through life examples,which contains a lot of teaching knowledge.Accurately extracting the key information needed to solve programming problems will help inspire learners and provide them with ideas to solve problems.However,due to the abstract and complexity of programming questions,traditional natural language comprehension techniques cannot effectively understand students’ programming questions.This paper summarizes the existing natural language understanding methods,analyzes the particularity of students’ programming problems,and further considers how to accurately understand students’ programming problems in combination with the process of natural language understanding.The main contents of this paper are as follows:1.Use the advantages of neural network to build a joint model to understand students’ programming problems.The understanding of programming problems aims at obtaining the key information in the problems,that is,the knowledge points and algorithms needed to solve the programming problems.Student programming questions have the characteristics of abstract description,many professional terms and strong structure.Therefore,this paper,based on the semantic meaning of programming questions and the part of speech of the words in the questions,takes advantage of deep learning to put forward a method to understand student programming questions based on joint neural network model.Firstly,the part-of-speech tagging is performed on the text of programming questions using Bi-directional Long Short-Term Memory(Bi LSTM).Secondly,a Convolutional Neural Network(CNN)independent of artificial features is used to extract semantic feature information from students’ programming questions.Finally,the part-of-speech tags and semantic features of programming questions are spliced together and decoded by Conditional Random Fields(CRF)to obtain the key information of programming questions and complete the task of understanding programming questions.2.The attention mechanism is introduced into the joint neural network model to improve the accuracy of the model to understand programming problems.When using the joint neural network model to understand programming problems,the complex understanding process leads to the large scale of the joint model,complex structure,and long training time.In this paper,attention mechanism is introduced in part-of-speech tagging and feature extraction in the process of programming topic understanding,so that the model can select the part more relevant to the current information and improve the efficiency of model understanding.In addition,the problem of gradient explosion caused by the large joint model was solved,which improved the model’s ability to process data and further improved the accuracy of the model’s understanding of programming problems.3.Build an experimental system of programming topic retrieval to help students learn programming.After understanding students’ programming questions with the joint neural network model,this paper further builds an experimental system of programming questions retrieval and applies this research to the intelligent education of computer programming.Learners can search programming problems and obtain the key information to solve the problem.The system provides guidance for learners to solve programming problems and improves their programming practice ability.4.Analyze the understanding results of programming questions and evaluate the experimental system of programming question retrieval.In order to verify the effectiveness of the joint neural network model on programming problem understanding results,a comparative experiment was set up to compare with it.The experimental results show that the proposed method can better understand programming problems,and the accuracy,recall and F1 values of 92.92%,85.59% and 88.64% respectively.In addition,in order to verify the practicability of students’ understanding of programming topics,this paper evaluates the retrieval system of programming topics through questionnaire survey.The evaluation results show that most students think the understanding is accurate and helpful to students’ learning of programming.To sum up,this paper first analyzes the characteristics of student programming questions and builds an adaptive model to understand student programming questions.Then,a joint model is established by integrating different neural networks,and attention mechanism is introduced to understand students’ programming problems.Finally,in order to verify the practicability of topic understanding,a programming topic retrieval experiment system is set up,and the effectiveness of using the proposed method to understand programming topics is proved through experiments,and the research results have certain practical value. |