Adaptive recommendation method and related equipment for online programming teaching

By obtaining learner answer data in online programming teaching, determining the ability similarity maximization function and solving the recommendation strategy, the problem of low efficiency of existing adaptive recommendation strategies is solved, and efficient and accurate recommendation strategy generation is achieved.

CN115985152BActive Publication Date: 2025-03-28ARTIFICIAL INTELLIGENCE RES INST OF HEFEI COMPREHENSIVE NAT SCI CENT (ANHUI ARTIFICIAL INTELLIGENCE LAB)
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211604900.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-14
Publication Date
2025-03-28
Estimated Expiration
2042-12-14

AI Technical Summary

Technical Problem

The adaptive recommendation strategy in existing online programming teaching is inefficient and cannot effectively adapt to the needs of complex deep learning diagnostic models and large amounts of data training. It is especially necessary to retrain when the question bank is updated, resulting in low recommendation efficiency.

Method used

By obtaining the learner's answer data, determining the ability similarity maximization function, reflecting the similarity between the limited answer data and the ability evaluation of the full answer data, and then solving the calculation and obtaining the learner's recommendation strategy. This method uses optimization theory and submodular functions to optimize the generation of recommendation strategies through greedy algorithms and uncertainty measurement algorithms.

Benefits of technology

It improves the efficiency of the adaptive recommendation strategy, can accurately evaluate learners' ability based on a small amount of sample data, and is close to the evaluation accuracy of the full sample data, which enhances the accuracy and practicality of the recommendation strategy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115985152B_ABST
    Figure CN115985152B_ABST
Patent Text Reader

Abstract

The present application discloses an adaptive recommendation method, apparatus, device and storage medium for online programming teaching, wherein the adaptive recommendation method for online programming teaching comprises: obtaining the learner's answer data; based on the answer data, determining the learner's ability similarity maximization function, wherein the ability similarity maximization function reflects that the ability value evaluation obtained based on the learner's limited answer data is closest to the ability value evaluation obtained based on the learner's full answer data; solving and calculating the ability similarity maximization function to obtain the learner's recommendation strategy. The present application belongs to the ability value evaluation of the learner obtained based on the learner's limited answer record, and the ability value evaluation of the learner is closest to the ability value evaluation of the learner's full answer record, that is, only a small amount of sample data is used to obtain an accurate recommendation strategy for the learner, thereby improving the efficiency of the adaptive recommendation strategy.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of artificial intelligence applications, and in particular to an adaptive recommendation method, device, equipment and storage medium for online programming teaching. Background Art

[0002] As more and more jobs require practitioners to have programming skills, online programming platforms have emerged, which collect a wealth of programming questions for learners to practice. However, facing the high threshold of programming teaching guidance, how learners can learn programming independently in the absence of guidance is an important challenge at present.

[0003] The existing technology adopts the teaching mode of adaptive education to improve the efficiency of learners' independent programming learning. Specifically, it provides learners with a small number of test questions to accurately and comprehensively evaluate the learners' abilities, so as to improve their corresponding skill levels in a targeted manner.

[0004] However, the current methods for generating recommendation strategies are mainly divided into traditional heuristic strategies and two-level optimization strategies. However, the adaptability of these two strategies is limited:

[0005] 1) Traditional heuristic recommendation strategies rely on the expert experience related to programming education. In order to design the corresponding recommendation strategy, we have to rely on experts to understand the details and principles of the diagnostic model, which is very inflexible, time-consuming and labor-intensive, and cannot adapt to today's complex deep learning-based diagnostic models;

[0006] 2) The computational complexity of the two-layer optimization strategy is high, and it needs to be trained using a large amount of student data, which consumes a lot of computing resources and lacks the necessary theoretical guarantee. Especially when new questions are added to the question bank, the recommendation strategy needs to be retrained, which has low efficiency and poor practicality. Summary of the invention

[0007] The main purpose of this application is to provide an adaptive recommendation method, device, equipment and storage medium for online programming teaching, aiming to solve the technical problem of low efficiency of adaptive recommendation strategies in the prior art.

[0008] To achieve the above objectives, the present application provides an adaptive recommendation method for online programming teaching, the adaptive recommendation method for online programming teaching comprising:

[0009] Obtain learners’ answer data;

[0010] Based on the answer data, determining a function for maximizing the ability similarity of the learner, wherein the function for maximizing the ability similarity reflects that the ability value evaluation obtained based on the limited answer data of the learner is closest to the ability value evaluation obtained based on the full answer data of the learner;

[0011] The ability similarity maximization function is solved and calculated to obtain the recommendation strategy for the learner.

[0012] Optionally, the step of determining the learner's ability similarity maximization function based on the answer data includes:

[0013] Based on the answer data, determining the learner's question similarity algorithm function, wherein the question similarity algorithm function reflects the similarity between any two questions;

[0014] Based on the question similarity algorithm function, a function for maximizing the learner's ability similarity is determined.

[0015] Optionally, the step of determining the learner's question similarity algorithm function based on the answer data includes:

[0016] Determining the learner's ability value based on the answer data;

[0017] Based on the ability value, calculating the learner's expected gradient for each question in the answer bank;

[0018] Based on the expected gradient, an algorithm function of the learner's question similarity is determined.

[0019] Optionally, the step of solving and calculating the ability similarity maximization function to obtain the recommendation strategy for the learner includes:

[0020] Performing Laplace smoothing on the capability similarity maximization function to obtain a normalized monotone non-decreasing modulus function;

[0021] A greedy algorithm is used on the normalized monotone non-decreasing modular function to obtain a recommendation strategy for the learner.

[0022] Optionally, the step of using a greedy algorithm on the normalized monotone non-decreasing modular function to obtain the learner's recommendation strategy includes:

[0023] Determine the target question set in the answer bank;

[0024] Substituting each question in the target question set into the normalized monotone non-decreasing modular function to obtain the information content of each question;

[0025] The questions in the question set are sorted according to the amount of information, and a preset number of questions with the largest amount of information are determined as the recommended strategies for the learner.

[0026] Optionally, the step of determining a target question set in the answer database includes:

[0027] Get all the question sets in the answer bank;

[0028] Determining a question set for the learner based on the answer data of the learner;

[0029] The learner's question set is removed from the entire question set to obtain a target question set.

[0030] Optionally, after the step of determining the target question set in the answer database, the method includes:

[0031] Calculate the value of each question in the target question set based on a preset uncertainty measurement algorithm;

[0032] The topics in the topic set are sorted according to the value, and a preset number of topics with the largest value are determined as the screened target topic set.

[0033] The present application also provides an adaptive recommendation device for online programming teaching, the adaptive recommendation device for online programming teaching comprising:

[0034] The acquisition module is used to obtain the learner's answer data;

[0035] A determination module, configured to determine, based on the answer data, a function for maximizing the ability similarity of the learner, wherein the function for maximizing the ability similarity reflects that the ability value evaluation obtained based on the limited answer data of the learner is closest to the ability value evaluation obtained based on the full answer data of the learner;

[0036] The calculation module is used to solve and calculate the ability similarity maximization function to obtain the recommendation strategy for the learner.

[0037] The present application also provides an adaptive recommendation device for online programming teaching, the adaptive recommendation device for online programming teaching comprising: a memory, a processor, and a program stored in the memory for implementing the adaptive recommendation method for online programming teaching,

[0038] The memory is used to store a program for implementing an adaptive recommendation method for online programming teaching;

[0039] The processor is used to execute a program for implementing the adaptive recommendation method for online programming teaching, so as to implement the steps of the adaptive recommendation method for online programming teaching.

[0040] The present application also provides a storage medium, on which is stored a program for implementing an adaptive recommendation method for online programming teaching, and the program for implementing an adaptive recommendation method for online programming teaching is executed by a processor to implement the steps of the adaptive recommendation method for online programming teaching.

[0041] The present application provides an adaptive recommendation method and related equipment for online programming teaching. Compared with the low efficiency of the adaptive recommendation strategy in the prior art, in the present application, the learner's answer data is obtained; based on the answer data, the learner's ability similarity maximization function is determined, wherein the ability similarity maximization function reflects that the ability value evaluation obtained based on the learner's limited answer data is closest to the ability value evaluation obtained based on the learner's full answer data; the ability similarity maximization function is solved and calculated to obtain the learner's recommendation strategy. That is, in the present application, based on the learner's answer data, that is, the learner's limited answer record, the learner's ability value evaluation obtained is closest to the learner's full answer record. That is, only a small amount of sample data is used to obtain the ability evaluation that is closest to a large amount of sample data. The learner's recommendation strategy obtained by this ability evaluation is highly accurate, thereby improving the efficiency of the adaptive recommendation strategy. BRIEF DESCRIPTION OF THE DRAWINGS

[0042] The drawings herein are incorporated into the specification and constitute a part of the specification, illustrate embodiments consistent with the present application, and are used together with the specification to explain the principles of the present application. In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the drawings required for use in the embodiments or the prior art description will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative labor.

[0043] Figure 1 It is a schematic diagram of the device structure of the hardware operating environment involved in the embodiment of the present application;

[0044] Figure 2 This is a flowchart of the first embodiment of the adaptive recommendation method for online programming teaching of this application;

[0045] Figure 3 This is a module diagram of an adaptive recommendation device for online programming teaching in this application;

[0046] Figure 4This is a flow chart of the second embodiment of the adaptive recommendation method for online programming teaching of the present application.

[0047] The realization of the purpose, functional features and advantages of this application will be further explained in conjunction with embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION

[0048] It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0049] like Figure 1 As shown, Figure 1 It is a schematic diagram of the terminal structure of the hardware operating environment involved in the embodiment of the present application.

[0050] The terminal in the embodiment of the present application can be a PC, or it can be a smart phone, a tablet computer, an e-book reader, an MP3 (Moving Picture Experts Group Audio Layer III) player, an MP4 (Moving Picture Experts Group Audio Layer IV) player, a portable computer, or other portable terminal devices with display function.

[0051] like Figure 1 As shown, the terminal may include: a processor 1001, such as a CPU, a network interface 1004, a user interface 1003, a memory 1005, and a communication bus 1002. Among them, the communication bus 1002 is used to realize the connection and communication between these components. The user interface 1003 may include a display screen (Display), an input unit such as a keyboard (Keyboard), and the optional user interface 1003 may also include a standard wired interface and a wireless interface. The network interface 1004 may optionally include a standard wired interface and a wireless interface (such as a WI-FI interface). The memory 1005 may be a high-speed RAM memory, or a stable memory (non-volatile memory), such as a disk memory. The memory 1005 may also be a storage device independent of the aforementioned processor 1001.

[0052] Optionally, the terminal may also include a camera, an RF (Radio Frequency) circuit, a sensor, an audio circuit, a WiFi module, and the like. Among them, sensors include light sensors, motion sensors, and other sensors. Specifically, the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display screen according to the brightness of the ambient light, and the proximity sensor may turn off the display screen and / or backlight when the mobile terminal is moved to the ear. As a type of motion sensor, the gravity acceleration sensor can detect the magnitude of acceleration in each direction (generally three axes), and can detect the magnitude and direction of gravity when stationary. It can be used for applications that identify the posture of the mobile terminal (such as horizontal and vertical screen switching, related games, magnetometer posture calibration), vibration recognition related functions (such as pedometer, tapping), etc.; of course, the mobile terminal may also be equipped with other sensors such as gyroscopes, barometers, hygrometers, thermometers, infrared sensors, etc., which will not be repeated here.

[0053] Those skilled in the art will understand that Figure 1 The terminal structure shown in the figure does not constitute a limitation on the terminal, and may include more or less components than shown in the figure, or combine certain components, or arrange the components differently.

[0054] like Figure 1 As shown, the memory 1005 as a computer storage medium may include an operating device, a network communication module, a user interface module, and an adaptive recommendation program for online programming teaching.

[0055] exist Figure 1 In the terminal shown, the network interface 1004 is mainly used to connect to the background server and communicate data with the background server; the user interface 1003 is mainly used to connect to the client (user end) and communicate data with the client; and the processor 1001 can be used to call the adaptive recommendation program for online programming teaching stored in the memory 1005.

[0056] Reference Figure 2 , the embodiment of the present application provides an adaptive recommendation method for online programming teaching, the adaptive recommendation method for online programming teaching comprising:

[0057] Step S100, obtaining the learner's answer data;

[0058] Step S200, determining a function maximizing the ability similarity of the learner based on the answer data, wherein the function maximizing the ability similarity reflects that the ability value evaluation obtained based on the limited answer data of the learner is closest to the ability value evaluation obtained based on the full answer data of the learner;

[0059] Step S300, solving and calculating the ability similarity maximization function to obtain the recommendation strategy for the learner.

[0060] In this embodiment, the specific application scenario may be:

[0061] The existing technology uses an adaptive education teaching model to improve the efficiency of learners' autonomous programming learning. Specifically, it provides learners with a small number of test questions to accurately and comprehensively evaluate their abilities, so as to improve their corresponding skill levels in a targeted manner. The computational complexity of the double-layer optimization strategy is high, and it needs to be trained using a large amount of student data. It consumes a lot of computing resources and the method lacks the necessary theoretical guarantee. In particular, when new questions are added to the question bank, the recommendation strategy needs to be retrained, and the recommendation efficiency is low, resulting in poor practicality.

[0062] The specific steps are as follows:

[0063] Step S100, obtaining the learner's answer data;

[0064] In this embodiment, the adaptive recommendation method for online programming teaching is applied to an adaptive recommendation device for online programming teaching.

[0065] In this embodiment, the learner is usually a learner on an online learning platform. The online programming platform collects a wealth of programming questions for learners to practice various questions. Learners can also be users, netizens, etc., which are not specifically limited here. The learner's answer data is the relevant data of the questions that the learner has answered historically on the online learning platform. The learner's answer data can be divided into the following two categories: one is data used to describe various attributes of learners and questions, including but not limited to learners' basic information, question ID, knowledge points involved in the questions, etc. The other is data used to describe the learner's answering behavior, including but not limited to the time of answering, the question ID of the answer, the answer result (correct or wrong), etc.

[0066] In this embodiment, the original learner data is further screened. According to the target learners and the learning scope of this study, the data that meets the standards is retained, and the data that does not meet the standards is discarded. Specifically, the data is screened according to the learning scope and the target learner group. For example, if an online programming learning course is organized for primary and secondary school students, only those programming questions that can be solved by the primary algorithm are retained according to the knowledge points involved. In the process, all the records of the learner i who has answered can be represented as a tuple set D i ={(q,a)}, q refers to the question ID. If a is 1, it means that the question q is answered correctly, and if a is 0, it means the answer is wrong.

[0067] In this embodiment, further, the difficulty and discrimination information in the data describing the learner's answering behavior needs to be estimated and calibrated in advance on the above-mentioned learner answering data using a diagnostic model, and at the same time, programming resources that meet the standards are retained, and those that do not meet the standards are discarded.

[0068] In this embodiment, the device may obtain the learner's answer data by extracting the learner's answer data from a platform database containing user answer records, or by the learner uploading the answer data to the device.

[0069] Step S200, determining a function maximizing the ability similarity of the learner based on the answer data, wherein the function maximizing the ability similarity reflects that the ability value evaluation obtained based on the limited answer data of the learner is closest to the ability value evaluation obtained based on the full answer data of the learner;

[0070] In this embodiment, the device determines the learner's ability similarity maximization function based on the answer data, wherein the ability similarity maximization function reflects that the ability assessment of the learner's limited answer record is closest to the ability assessment of the learner's full answer record. Specifically, the learner's ability is evaluated using a given cognitive diagnosis model and the learner's currently available historical answer data to determine the ability that best matches the historical answer data. The limited answer record can achieve the same evaluation accuracy as the full answer record. Since learners generally cannot answer all the questions in the question bank, it is unavailable. To this end, the present invention designs a new programming question recommendation strategy based on optimization theory, which can select a valuable set of questions: using the optimization theory and the core set idea, the gradient obtained on the selected learner's answer record can approximate the full gradient on the full answer record, so that the ability estimate obtained by a small number of questions (such as selecting T questions) selected by the adaptive strategy can be guaranteed to be consistent with the ability estimate obtained by the student after answering all the questions in the question bank, that is, solving the following optimization problem:

[0071]

[0072] Among them, S represents the learner's answer record, V represents the full answer record (i.e. the learner's answer record after answering the question bank), γ j is the weight of the gradient of the sample in S, T represents the number of questions, i and j represent any two questions in the answer bank, θ represents the learner's ability value, and f is an arbitrary loss function based on the diagnostic model. The above optimization goal is to make the selected S make the sum of the gradients of S and V as close as possible in the entire ability space Θ (worst case).

[0073] Specifically, the step S200 includes the following steps S210-S220:

[0074] Step S210, determining the learner's question similarity algorithm function based on the question answering data, wherein the question similarity algorithm function reflects the similarity between any two questions;

[0075] In this embodiment, the device determines the learner's question similarity algorithm function based on the answer data, wherein the question similarity algorithm function reflects the similarity between any two questions. Specifically, the formula of the question similarity algorithm function is as follows:

[0076]

[0077] Among them, i and j are any two questions in the answer bank. d represents the maximum gradient difference, represents the learner's ability value, a represents the gradient label of the question, E represents the expected gradient, Represents the learner's ability value estimated in round t.

[0078] Specifically, the step S210 includes the following steps S211-S213:

[0079] Step S211, determining the ability value of the learner based on the answer data;

[0080] In this embodiment, the device determines the ability value of the learner based on the answer data, wherein the device optimizes the entire ability parameter space Θ using a given cognitive diagnosis model and the learner's historical answer data V, trying to find the ability θ* that best fits the historical answer data:

[0081]

[0082] Where f is an arbitrary loss function based on the diagnostic model, V = {(q1,a1),…,(q n ,a n )} is the answer record of a learner on all the questions in the question bank, including the answered question q and whether the answer is correct or not a (correct is 1, otherwise it is 0). The full gradient is calculated using the gradient descent method to optimize the above problem, that is, the gradient and

[0083] Step S212, based on the ability value, calculating the learner's expected gradient for each question in the answer bank;

[0084] In this embodiment, the device calculates the learner's expected gradient for each question in the answer library based on the ability value. Specifically, the expected gradient difference is calculated to replace the original gradient difference calculation formula. Thus, in the absence of the student's actual answer results, the average gradient difference can be calculated using the current model output to approximate it, that is, the gradient of the unanswered questions under the ability value is simulated by the learner's ability value to obtain a gradient label. For example, the learner's answer data is A and B, and the ability value X is obtained. The device predicts and calculates the probability of the learner answering question C under the ability value X as 60% correct and 40% wrong, that is, 60% correct and 40% wrong are the gradient labels of the learner for answering question C.

[0085] Step S213: determining the learner's question similarity algorithm function based on the expected gradient.

[0086] In this embodiment, the device determines the learner's question similarity algorithm function based on the expected gradient. Specifically, the final similarity calculation formula for any two programming questions i and j is for:

[0087]

[0088] in, Represents the similarity between any two programming problems i and j.

[0089] Step S220: determining a function for maximizing the learner's ability similarity based on the question similarity algorithm function.

[0090] In this embodiment, the device determines the learner's ability similarity maximization function based on the question similarity algorithm function. Specifically, first define a mapping function h from the set V (all answer records) to S (learner's answer records): h(i)=j∈S, map any element in V to an element in S, and transform the original optimization problem according to the triangle inequality to optimize the upper bound of the gradient error (i.e., the ability similarity maximization function). The specific formula is as follows:

[0091]

[0092] Step S300, solving and calculating the ability similarity maximization function to obtain the recommendation strategy for the learner.

[0093] In this embodiment, the device solves and calculates the ability similarity maximization function to obtain the recommendation strategy of the learner, wherein the recommendation strategy of the learner can specifically be the next recommended test question or the next group of recommended test questions. The solution calculation specifically uses a submodular function to find an approximate solution to the optimization problem. This embodiment uses a small amount of sample data to obtain the ability assessment that is closest to a large amount of sample data. The recommendation strategy of the learner obtained by this ability assessment is highly accurate, thereby improving the efficiency of the adaptive recommendation strategy.

[0094] Specifically, the step S300 includes the following steps S310-S320:

[0095] Step S310, performing Laplace smoothing on the capability similarity maximization function to obtain a normalized monotone non-decreasing modulus function;

[0096] In this embodiment, the device performs Laplace smoothing on the capability similarity maximization function to obtain a normalized monotone non-decreasing modulus function. Specifically, define G(S)=∑ i∈V max j∈S w(i,j) and perform Laplace smoothing on it to obtain the ideal normalized monotone non-decreasing modulo function F(S) = G(S∪{s′})-G({s′}), where s′ is the introduced pseudo sample and G(S∪{s′} represents the smoothed target.

[0097] Step S320: Using a greedy algorithm on the normalized monotone non-decreasing modular function to obtain a recommendation strategy for the learner.

[0098] In this embodiment, the normalized monotone non-decreasing modular function of the device adopts a greedy algorithm to obtain the recommendation strategy of the learner. Specifically, a simple greedy algorithm based on F(S) is used to select the most valuable questions, that is, starting from the empty set (the first round), each round selects the most valuable questions from the entire candidate question bank V (excluding the questions S that have been answered) t-1 ) and choose one that makes F(S t-1 ∪{q})-F(S t-1 )The biggest question.

[0099] Specifically, the step S320 includes the following steps S321-S323:

[0100] Step S321, determining a target question set in the answer database;

[0101] In this embodiment, the device determines a target question set in a question bank, wherein the question bank is a test question bank on an online learning platform, including all test questions, and the target question set is a range of questions for selecting a recommended strategy for the learner.

[0102] Specifically, the step S321 includes the following steps S3211-S3213:

[0103] Step S3211, obtaining all question sets in the answer bank;

[0104] In this embodiment, the device obtains all question sets in the answer bank, wherein the device obtains all question sets in the answer bank by extracting the all question sets from a platform database containing all question sets, or by the platform developer uploading answer data to the device.

[0105] Step S3212, determining the learner's question set based on the learner's answer data;

[0106] In this embodiment, the device determines the learner's question set based on the learner's answer data. Specifically, the device determines the learner's question set according to attributes such as question ID in the answer data.

[0107] Step S3213, removing the learner's question set from the entire question set to obtain a target question set.

[0108] In this embodiment, since the target question set needs to be selected from the question set excluding the questions answered by the learner, the recommendation strategy for the learner is selected.

[0109] After the step S321 of determining the target question set in the question answer bank, the method includes the following steps A100-A200:

[0110] Step A100, calculating the value of each question in the target question set based on a preset uncertainty measurement algorithm;

[0111] In this embodiment, the device calculates the value of each question in the target question set based on a preset uncertainty measurement algorithm. The specific measurement function Q of the gradient information amount is θ (q) Use the entropy calculation formula:

[0112]

[0113] Among them, q represents a specific test question, a represents the corresponding answer result (correct or wrong), p θ Represents the ability value of the learner.

[0114] Step A200, sorting the topics in the topic set according to the value, and determining a preset number of topics with the largest value as the screened target topic set.

[0115] In this embodiment, the device sorts the questions in the question set according to the value, and determines the preset number of questions with the largest value as the target question set after screening. Specifically, in order to improve the recommendation effect and the learner's learning efficiency, the target question set is often in the entire question bank V, resulting in a large final complexity. In order to reduce the computational complexity, the information amount of each candidate question is calculated based on the uncertainty measurement method, and the M1 questions with the largest value are selected to calculate the next modulus function score F(S t-t ∪{q})-F(S t-1 ), select the final question q for the learner to answer, where |M1|<<|V|, thereby reducing the computational complexity of the device.

[0116] Step S322, substituting each question in the target question set into the normalized monotone non-decreasing modular function to obtain the information content of each question;

[0117] In this embodiment, the device substitutes each question in the target question set into the normalized monotone non-decreasing modular function to obtain the information content of each question. Specifically, the most valuable question is selected using a greedy algorithm based on F(S), that is, starting from the empty set (the first round), each round selects the most valuable question from the entire candidate question bank V (excluding the questions S that have been answered). t-1 ) and choose one that makes F(S t-1 ∪{q})-F(S t-1 )The biggest question:

[0118]

[0119] Among them, S t-1 represents the questions recommended for the student in the previous t-1 rounds, q t Indicates the question selected by the student in the current round t. Then the device saves the new answer record S t =S t-1 ∪{(q,a)}. The simple greedy algorithm of the ability similarity maximization function is an approximate optimal solution under the approximate bound of (1-1 / e), and the ability similarity maximization function can identify representative samples from massive data, so representative test questions in the questions can be selected for learners to answer.

[0120] Step S323, sorting the questions in the question set according to the amount of information, and determining a preset number of questions with the largest amount of information as the recommended strategy for the learner.

[0121] In this embodiment, the device sorts the questions in the question set according to the amount of information, and determines a preset number of questions with the largest amount of information as the recommended strategy for the learner, wherein the questions with the largest amount of information are the programming questions that are most suitable for the current learner. For example, the device obtains questions A, B, C, and D with information amount from large to small, and the preset number is 3, then questions A, B, and C are selected as the recommended strategy for the learner. This embodiment uses a small amount of sample data to obtain the ability assessment that is closest to a large amount of sample data. The recommended strategy for the learner obtained by this ability assessment is highly accurate, thereby improving the efficiency of the adaptive recommendation strategy.

[0122] The present application provides an adaptive recommendation method for online programming teaching. Compared with the low efficiency of the adaptive recommendation strategy in the prior art, in the present application, the learner's answer data is obtained; based on the answer data, the learner's ability similarity maximization function is determined, wherein the ability similarity maximization function reflects that the ability value evaluation obtained based on the learner's limited answer data is closest to the ability value evaluation obtained based on the learner's full answer data; the ability similarity maximization function is solved and calculated to obtain the learner's recommendation strategy. That is, in the present application, based on the learner's answer data, that is, the learner's limited answer record, the learner's ability value evaluation obtained is closest to the learner's full answer record. That is, only a small amount of sample data is used to obtain the ability evaluation that is closest to a large amount of sample data. The learner's recommendation strategy obtained by this ability evaluation is highly accurate, thereby improving the efficiency of the adaptive recommendation strategy.

[0123] It should be noted that in the above steps S210 and S211-S213, the expected gradient is used to obtain Theoretical and performance analysis: Through relevant theoretical analysis, it is found that the above modified The greedy selection algorithm actually searches for a subset S so that its expected gradient is as close as possible to the gradient on V, which is equivalent to solving the following optimization problem:

[0124]

[0125] At the same time, assuming that f is a strongly convex function of parameter α, when the expected gradient difference between S and V is ∈, and the learning rate is 1 / α, the upper bound of the expected error of the ability estimation on S and V satisfies the following formula,

[0126]

[0127] where p θ is the prediction result when the diagnostic model parameter is θ, D is the maximum norm of the estimation error, and σ is the upper bound of the gradient. It can be found that when the ability estimate θt and the estimated result θ on V * When there are closer or identical predictions,

[0128] A smaller value means that the upper bound of the expected error will be tighter, which is more conducive to accurately assessing students' abilities.

[0129] Based on the above-mentioned first embodiment, the present application also provides another embodiment. Figure 4 , the adaptive recommendation method for online programming teaching includes:

[0130] Step S101, obtaining learners' answer data and programming question-related information and features on the online programming platform, and screening them;

[0131] In this embodiment, the device obtains learner answer data and programming question related information and features on the online programming platform, and filters them. Specifically, the data required by the embodiment of the present invention can be divided into the following two categories: one is data used to describe various attributes of learners and test questions, including but not limited to basic information of users, question ID, knowledge points involved in the questions, etc. The other is data used to describe the learner's answering behavior, including but not limited to the time of answering, the question ID answered, the answer result (correct or wrong), etc. Next, the original learner data is filtered based on pre-set filtering criteria. In the embodiment of the present invention, the data is filtered according to the learning scope and the target learner group. For example, if an online programming learning course is organized for primary and secondary school students, only those programming questions that can be solved by primary algorithms are retained according to the knowledge points involved. In the process, all answered records of learner i can be represented as a tuple set D i ={(q,a)}, q refers to the question ID. If a is 1, it means that the question q is answered correctly, and if a is 0, it means the answer is wrong.

[0132] Step S102, based on the characteristics of programming learning, the recommendation strategy generation process in the adaptive recommendation is defined as an optimization problem;

[0133] In this embodiment, the device defines the recommendation strategy generation process in the adaptive recommendation as an optimization problem according to the characteristics of programming learning, and refers to step S210 of the first embodiment, which will not be repeatedly summarized here.

[0134] Step S103, converting and scaling the original NP-hard optimization problem (which cannot be solved in a finite time) to optimize the upper bound of the gradient error;

[0135] In this embodiment, the device converts and scales the original NP-hard optimization problem (which cannot be solved in a finite time) to optimize the upper bound of the gradient error. Specifically, since the above problem is an NP-hard problem and needs to consider the entire capability parameter space, it cannot be solved in a finite time, so it is converted and scaled. Define a mapping function h from the set V to S: h(i) = j∈S, map any element in V to an element in S, and according to the triangle inequality, it can be obtained:

[0136]

[0137] When the mapping function h maps each element in V to the point in S that is closest to its gradient, the right side of the above inequality achieves the minimum value, so the upper bound of the gradient difference can be further constrained: Next, we define a similarity measurement function w(i,j) to measure the gradient similarity between two data / answer records i and j: in

[0138]

[0139] Step S104, using a simple greedy algorithm based on a submodular function to find an approximate solution to the optimization problem, and designing a recommendation strategy based on the characteristics of programming learning;

[0140] In this embodiment, a simple greedy algorithm based on a submodular function is used to obtain an approximate solution to the optimization problem, and a recommendation strategy is designed according to the characteristics of programming learning. Specifically, refer to step S310 of the first embodiment, which will not be repeated here.

[0141] Step S105, reducing the computational complexity of the submodular function and the number of candidate questions to optimize the recommendation efficiency.

[0142] In this embodiment, the device reduces the high computational complexity of the submodular function and the number of candidate questions to optimize the recommendation efficiency. Specifically, it includes two aspects: 1) the high computational complexity of the submodular function; 2) the large number of candidate questions leads to high retrieval and recommendation complexity. To this end, the present invention example optimizes them respectively:

[0143] 1) Although the above selection strategy based on submodular functions can solve NP-hard problems, the calculation of F(S) is:

[0144]

[0145] It is necessary to find the maximum gradient distance in the entire ability parameter space, which is too complex. Therefore, the example of the present invention utilizes the versatility of the learner to dig out the most likely ability parameters to reduce the size of the ability parameter space. For example, a programming problem can be solved by multiple algorithm methods such as dynamic programming, breadth-first search, and brute force search at the same time. The different methods used determine that the learner may have a variety of different potential abilities, and this set of possible abilities replaces the entire ability space Θ. Specifically, the latest multifaceted parameter estimation method in the field of adaptive testing is used here, that is, the optimization function of θ is modified in each round t, and m ability estimates are generated:

[0146]

[0147] Just add the diversity regularization term ψ(θ) to the commonly used loss function. The specific calculation formula is:

[0148]

[0149] in,

[0150]

[0151]

[0152] is defined by the student's previous answer record S t The loss function of the ability estimation on is used to ensure the accuracy of the estimation. λ is the coefficient weight of the regularization term that controls the diversity. Therefore, the original similarity calculation formula w(ij) is modified to Reduce computational complexity:

[0153]

[0154] At the same time, the mean of the m capability estimates is used as the new estimator to improve accuracy and robustness, that is:

[0155] This can further make the upper bound of the expected error in the S104 theoretical analysis smaller and the capability estimation more accurate.

[0156] 2) Divide the test question recommendation into two stages to improve the test question retrieval complexity and computational efficiency. Specifically, when the online programming platform uses the submodular function formula as follows:

[0157]

[0158] When choosing a topic, the amount of calculation is mainly concentrated in G(S) = ∑ i∈V max j∈SOn the other hand, in order to improve the recommendation effect and learner learning efficiency, the programming platform often uses the candidate question set in the entire question bank V, resulting in a final complexity of O(|V| 2 m), which is not feasible in real recommendation scenarios, especially when the candidate question bank V is too large. In order to reduce the computational complexity and improve the efficiency of question retrieval, the example of the present invention performs two-stage screening of candidate questions: in each round, the information content of each candidate question is first calculated based on the uncertainty measurement method, and then M1 questions with the largest information content are selected |M1|<<|V| to calculate the modulus function score F(S t-1 ∪{q})-F(S t-1 ), select the final question q for the learner to answer. The specific measurement function of the gradient value Q θ (q) Use the entropy calculation formula:

[0159]

[0160] On the other hand, the second stage calculates F(S t-1 ∪{q})-F(S t-1 ), calculate G(S)=∑ i∈ V max j∈S w(i,j), the calculation is also huge. The goal of G(S) is to measure the similarity between the subset S and the question bank V. To reduce the computational complexity, M2 questions are randomly sampled from V to form U and the similarity is calculated with S, that is, G(S) = ∑ i∈U max j∈s w(i,j), and |M2|<<|V|.

[0161] Therefore, the final improved computational complexity is O(|V|+|M1||M2|m), which improves the efficiency of test question recommendation.

[0162] In this embodiment, the device applies a recommendation strategy generation method based on optimization theory and submodular functions to adaptive recommendations on an online programming education platform, which is used to automatically select test questions suitable for learners during the learning process, thereby improving the accuracy of evaluation and the efficiency of programming learning. Among them, the learner's data is the answer data from the online education platform, and the data can be divided into data describing the attributes of learners and test questions and data describing the learner's answering behavior. Then, the data will be screened based on the learning scope and the target learner group. According to the characteristics of programming learning, the recommendation strategy generation process is defined as an optimization problem, which will be transformed and scaled to optimize the upper bound of the gradient error. Then, a simple greedy algorithm based on the submodular function is used to find an approximate solution to the optimization problem, so as to design a recommendation strategy for programming test questions. Finally, in order to reduce the high computational complexity of the submodular function and the number of candidate questions, the recommendation process is further divided into two stages to improve the recommendation efficiency.

[0163] The present application also provides an adaptive recommendation device for online programming teaching, the adaptive recommendation device for online programming teaching comprising:

[0164] An acquisition module 10 is used to acquire the learner's answer data;

[0165] A determination module 20, configured to determine a capability similarity maximization function of the learner based on the answer data, wherein the capability similarity maximization function reflects that the capability value evaluation obtained based on the limited answer data of the learner is closest to the capability value evaluation obtained based on the full answer data of the learner;

[0166] The calculation module 30 is used to solve and calculate the ability similarity maximization function to obtain the recommendation strategy for the learner.

[0167] Optionally, the determining module 20 includes:

[0168] A question similarity function determination module, used to determine the learner's question similarity algorithm function based on the question answering data, wherein the question similarity algorithm function reflects the similarity between any two questions;

[0169] The ability similarity maximization function determination module is used to determine the learner's ability similarity maximization function based on the question similarity algorithm function.

[0170] Optionally, the topic similarity function determination module includes:

[0171] An ability value evaluation module, used to determine the ability value of the learner based on the answer data;

[0172] An expected gradient calculation module, used to calculate the learner's expected gradient for each question in the answer bank based on the ability value;

[0173] The topic similarity algorithm function determination module is used to determine the topic similarity algorithm function of the learner based on the expected gradient.

[0174] Optionally, the calculation module 30 includes:

[0175] A smoothing processing module, used for performing Laplace smoothing on the capability similarity maximization function to obtain a normalized monotone non-decreasing modulus function;

[0176] The greedy algorithm calculation module is used to apply the greedy algorithm to the normalized monotone non-decreasing modular function to obtain the recommendation strategy of the learner.

[0177] Optionally, the greedy algorithm calculation module includes:

[0178] A question set determination module, used to determine a target question set in the question answer bank;

[0179] An information content determination module, used for substituting each question in the target question set into the normalized monotone non-decreasing modular function to obtain the information content of each question;

[0180] The recommendation strategy determination module is used to sort the questions in the question set according to the amount of information, and determine a preset number of questions with the largest amount of information as the recommendation strategy for the learner.

[0181] Optionally, the topic set determination module includes:

[0182] The question bank acquisition module is used to obtain all question sets in the question bank;

[0183] A learner question set determination module, used to determine the learner's question set based on the learner's answer data;

[0184] The target question set determination module is used to remove the learner's question set from the entire question set to obtain a target question set.

[0185] Optionally, the adaptive recommendation device for online programming teaching further includes:

[0186] A value calculation module, used to calculate the value of each question in the target question set based on a preset uncertainty measurement algorithm;

[0187] The screening module is used to sort the topics in the topic set according to the value, and determine a preset number of topics with the largest value as the screened target topic set.

[0188] The specific implementation of the adaptive recommendation device for online programming teaching in the present application is basically the same as the above-mentioned embodiments of the adaptive recommendation method for online programming teaching, and will not be repeated here.

[0189] Reference Figure 1 , Figure 1 It is a schematic diagram of the terminal structure of the hardware operating environment involved in the embodiment of the present application.

[0190] like Figure 1 As shown, the terminal may include: a processor 1001, such as a CPU, a network interface 1004, a user interface 1003, a memory 1005, and a communication bus 1002. Among them, the communication bus 1002 is used to realize the connection and communication between these components. The user interface 1003 may include a display screen (Display), an input unit such as a keyboard (Keyboard), and the optional user interface 1003 may also include a standard wired interface and a wireless interface. The network interface 1004 may optionally include a standard wired interface and a wireless interface (such as a WI-FI interface). The memory 1005 may be a high-speed RAM memory, or a stable memory (non-volatile memory), such as a disk memory. The memory 1005 may also be a storage device independent of the aforementioned processor 1001.

[0191] Optionally, the adaptive recommendation device for online programming teaching may also include a rectangular user interface, a network interface, a camera, an RF (Radio Frequency) circuit, a sensor, an audio circuit, a WiFi module, etc. The rectangular user interface may include a display screen (Display), an input submodule such as a keyboard (Keyboard), and the optional rectangular user interface may also include a standard wired interface and a wireless interface. The network interface may optionally include a standard wired interface and a wireless interface (such as a WI-FI interface).

[0192] Those skilled in the art will understand that Figure 1 The structure of the adaptive recommendation device for online programming teaching shown in the figure does not constitute a limitation of the adaptive recommendation device for online programming teaching, and may include more or less components than shown in the figure, or combine certain components, or arrange the components differently.

[0193] like Figure 1As shown, the memory 1005 as a storage medium may include an operating system, a network communication module, and an adaptive recommendation program for online programming teaching. The operating system is a program that manages and controls the hardware and software resources of the adaptive recommendation device for online programming teaching, and supports the operation of the adaptive recommendation program for online programming teaching and other software and / or programs. The network communication module is used to realize the communication between the components inside the memory 1005, and to communicate with other hardware and software in the adaptive recommendation system for online programming teaching.

[0194] exist Figure 1 In the adaptive recommendation device for online programming teaching shown, the processor 1001 is used to execute the adaptive recommendation program for online programming teaching stored in the memory 1005 to implement the steps of any of the adaptive recommendation methods for online programming teaching described above.

[0195] The specific implementation of the adaptive recommendation device for online programming teaching in the present application is basically the same as the above-mentioned embodiments of the adaptive recommendation method for online programming teaching, and will not be repeated here.

[0196] The present application also provides a storage medium, on which is stored a program for implementing an adaptive recommendation method for online programming teaching, and the program for implementing an adaptive recommendation method for online programming teaching is executed by a processor to implement the adaptive recommendation method for online programming teaching as described below:

[0197] Obtain learners’ answer data;

[0198] Based on the answer data, determining a function for maximizing the ability similarity of the learner, wherein the function for maximizing the ability similarity reflects that the ability value evaluation obtained based on the limited answer data of the learner is closest to the ability value evaluation obtained based on the full answer data of the learner;

[0199] The ability similarity maximization function is solved and calculated to obtain the recommendation strategy for the learner.

[0200] Optionally, the step of determining the learner's ability similarity maximization function based on the answer data includes:

[0201] Based on the answer data, determining the learner's question similarity algorithm function, wherein the question similarity algorithm function reflects the similarity between any two questions;

[0202] Based on the question similarity algorithm function, a function for maximizing the learner's ability similarity is determined.

[0203] Optionally, the step of determining the learner's question similarity algorithm function based on the answer data includes:

[0204] Determining the learner's ability value based on the answer data;

[0205] Based on the ability value, calculating the learner's expected gradient for each question in the answer bank;

[0206] Based on the expected gradient, an algorithm function of the learner's question similarity is determined.

[0207] Optionally, the step of solving and calculating the ability similarity maximization function to obtain the recommendation strategy for the learner includes:

[0208] Performing Laplace smoothing on the capability similarity maximization function to obtain a normalized monotone non-decreasing modulus function;

[0209] A greedy algorithm is used on the normalized monotone non-decreasing modular function to obtain a recommendation strategy for the learner.

[0210] Optionally, the step of using a greedy algorithm on the normalized monotone non-decreasing modular function to obtain the learner's recommendation strategy includes:

[0211] Determine the target question set in the answer bank;

[0212] Substituting each question in the target question set into the normalized monotone non-decreasing modular function to obtain the information content of each question;

[0213] The questions in the question set are sorted according to the amount of information, and a preset number of questions with the largest amount of information are determined as the recommended strategies for the learner.

[0214] Optionally, the step of determining a target question set in the answer database includes:

[0215] Get all the question sets in the answer bank;

[0216] Determining a question set for the learner based on the answer data of the learner;

[0217] The learner's question set is removed from the entire question set to obtain a target question set.

[0218] Optionally, after the step of determining the target question set in the answer database, the method includes:

[0219] Calculate the value of each question in the target question set based on a preset uncertainty measurement algorithm;

[0220] The topics in the topic set are sorted according to the value, and a preset number of topics with the largest value are determined as the screened target topic set.

[0221] The specific implementation methods of the storage medium of the present application are basically the same as the above-mentioned embodiments of the adaptive recommendation method for online programming teaching, and will not be repeated here.

[0222] The present application also provides a computer program product, including a computer program, which implements the steps of the above-mentioned adaptive recommendation method for online programming teaching when executed by a processor.

[0223] The specific implementation of the computer program product of the present application is basically the same as the above-mentioned embodiments of the adaptive recommendation method for online programming teaching, and will not be repeated here.

[0224] It should be noted that, in this article, the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the sentence "comprises a ..." does not exclude the existence of other identical elements in the process, method, article or device including the element.

[0225] The serial numbers of the above-mentioned embodiments of the present application are for description only and do not represent the advantages or disadvantages of the embodiments.

[0226] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present application is essentially or the part that contributes to the prior art can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) as described above, and includes a number of instructions for a terminal device (which can be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in each embodiment of the present application.

[0227] The above are only preferred embodiments of the present application, and are not intended to limit the patent scope of the present application. Any equivalent structure or equivalent process transformation made using the contents of the present application specification and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present application.

Claims

1. An adaptive recommendation method for online programming teaching, characterized in that: The adaptive recommendation method for online programming teaching includes: Obtain learners’ answer data; Based on the answer data, determining a function for maximizing the ability similarity of the learner, wherein the function for maximizing the ability similarity reflects that the ability value evaluation obtained based on the limited answer data of the learner is closest to the ability value evaluation obtained based on the full answer data of the learner; The step of determining the learner's ability similarity maximization function based on the answer data includes: Based on the answer data, determining the learner's question similarity algorithm function, wherein the question similarity algorithm function reflects the similarity between any two questions; Based on the question similarity algorithm function, determining the learner's ability similarity maximization function; The step of determining the learner's question similarity algorithm function based on the answer data includes: Based on the answer data, the learner's ability value is determined, wherein the ability value is calculated as follows: in, Represents the learner ability value of the full answer data, Represents the learner's ability value of limited answer data, is an arbitrary loss function based on the diagnostic model, is the learner's answer data in the question bank, represents the capability parameter space, Represents any question in the answer bank; Based on the ability value, calculating the expected gradient of the learner for each question in the answer bank, wherein the expected gradient represents the gradient of the simulated simulation for the unanswered questions under the ability value of the learner; Based on the expected gradient, determine the learner's question similarity algorithm function, wherein the question similarity algorithm function is calculated as follows: in, Represents any two topics and Similarity, d represents the maximum gradient difference, E represents the expected gradient, represents the learner ability value estimated in round t, and a represents the gradient label of the question; The ability similarity maximization function is solved and calculated to obtain the recommendation strategy for the learner, wherein the ability similarity maximization function is solved and calculated as follows: Among them, S represents the learner's answer record, and V represents the full answer record. yes The weight of the gradient of the sample in, T represents the number of questions, , Represents any two questions in the answer bank. Represents the learner's ability value, is an arbitrary loss function based on the diagnostic model.

2. The adaptive recommendation method for online programming teaching according to claim 1, characterized in that: The step of solving and calculating the ability similarity maximization function to obtain the recommendation strategy for the learner includes: Performing Laplace smoothing on the capability similarity maximization function to obtain a normalized monotone non-decreasing modulus function; A greedy algorithm is used on the normalized monotone non-decreasing modular function to obtain a recommendation strategy for the learner.

3. The adaptive recommendation method for online programming teaching according to claim 2, characterized in that: The step of using a greedy algorithm on the normalized monotone non-decreasing modular function to obtain the learner's recommendation strategy includes: Determine the target question set in the answer bank; Substituting each question in the target question set into the normalized monotone non-decreasing modular function to obtain the information content of each question; The questions in the target question set are sorted according to the amount of information, and a preset number of questions with the largest amount of information are determined as the recommended strategies for the learner.

4. The adaptive recommendation method for online programming teaching according to claim 3, characterized in that: The step of determining the target question set in the answer database includes: Get all the question sets in the answer bank; Determining a question set for the learner based on the answer data of the learner; The learner's question set is removed from the entire question set to obtain a target question set.

5. The adaptive recommendation method for online programming teaching according to claim 3, characterized in that: After the step of determining the target question set in the answer database, the method includes: Calculate the value of each question in the target question set based on a preset uncertainty measurement algorithm; The topics in the target topic set are sorted according to the value, and a preset number of topics with the largest value are determined as the screened target topic set.

6. An adaptive recommendation device for online programming teaching, characterized in that: The adaptive recommendation device for online programming teaching includes: The acquisition module is used to obtain the learner's answer data; A determination module, configured to determine, based on the answer data, a function for maximizing the ability similarity of the learner, wherein the function for maximizing the ability similarity reflects that the ability value evaluation obtained based on the limited answer data of the learner is closest to the ability value evaluation obtained based on the full answer data of the learner; The determining module comprises: A question similarity function determination module, used to determine the learner's question similarity algorithm function based on the question answering data, wherein the question similarity algorithm function reflects the similarity between any two questions; An ability similarity maximization function determination module, used to determine the learner's ability similarity maximization function based on the question similarity algorithm function; The topic similarity function determination module includes: The capability value evaluation module is used to determine the capability value of the learner based on the answer data, wherein the capability value is calculated as follows: in, Represents the learner ability value of the full answer data, Represents the learner's ability value of limited answer data, is an arbitrary loss function based on the diagnostic model, is the learner's answer data in the question bank, represents the capability parameter space, Represents any question in the answer bank; An expected gradient calculation module, used to calculate the expected gradient of the learner for each question in the answer bank based on the ability value, wherein the expected gradient represents the gradient of the simulated problem that has not been solved under the ability value of the learner; The topic similarity algorithm function determination module is used to determine the topic similarity algorithm function of the learner based on the expected gradient, wherein the topic similarity algorithm function is calculated as follows: in, Represents any two topics and Similarity, d represents the maximum gradient difference, E represents the expected gradient, represents the learner ability value estimated in round t, and a represents the gradient label of the question; A calculation module is used to solve and calculate the ability similarity maximization function to obtain the recommendation strategy for the learner, wherein the solution calculation of the ability similarity maximization function is as follows: Among them, S represents the learner's answer record, and V represents the full answer record. yes The weight of the gradient of the sample in, T represents the number of questions, , Represents any two questions in the answer bank. Represents the learner's ability value, is an arbitrary loss function based on the diagnostic model.

7. An adaptive recommendation device for online programming teaching, characterized in that: The adaptive recommendation device for online programming teaching includes: a memory, a processor, and a program stored in the memory for implementing an adaptive recommendation method for online programming teaching. The memory is used to store a program for implementing the adaptive recommendation method for online programming teaching; The processor is used to execute a program for implementing the adaptive recommendation method for online programming teaching, so as to implement the steps of the adaptive recommendation method for online programming teaching as claimed in any one of claims 1 to 5.

8. A storage medium, characterized in that: The storage medium stores a program for implementing an adaptive recommendation method for online programming teaching, and the program for implementing an adaptive recommendation method for online programming teaching is executed by a processor to implement the steps of the adaptive recommendation method for online programming teaching as described in any one of claims 1 to 5.

Citation Information

Patent Citations

  • Model-independent adaptive test method

    CN112330509A