Knowledge tracking method combining difficulty feature and time correlation feature

By combining the problem difficulty and time correlation characteristics, the problem of failure to effectively consider students' knowledge mastery level and time interval in the existing technology is solved, improving the prediction accuracy and providing personalized recommendations.

CN119862275AActive Publication Date: 2025-04-22GUANGDONG UNIV OF TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411933203.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-26
Publication Date
2025-04-22
Estimated Expiration
2044-12-26

AI Technical Summary

Technical Problem

The existing knowledge tracking methods fail to effectively consider the impact of different students' knowledge mastery level and the time interval for answering questions on learning efficiency, resulting in a low prediction accuracy.

Method used

By combining the problem difficulty characteristics and time correlation characteristics, a knowledge tracking model is constructed, the time interval for students to do questions and the time interval for doing questions is calculated, the relevant embedding vectors are initialized, the students' knowledge mastery level is updated, and questions are recommended for students in personalized manner.

Benefits of technology

The accuracy of the model predicts students' answers is improved, the interpretability of learning efficiency calculation is enhanced, and personalized problem difficulty and recommendation solutions are provided.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119862275A_ABST
    Figure CN119862275A_ABST
Patent Text Reader

Abstract

The invention belongs to the technical field of knowledge tracking, and particularly relates to a knowledge tracking method combining difficulty features and time correlation features, which comprises the following specific steps: screening student data, constructing a student answer data set, and preprocessing the student data; constructing a knowledge tracking model for predicting the answering condition of the student and outputting the knowledge mastering level of the student; training a knowledge tracking model; according to the method, the difficulty feature information of question embedding is enhanced through the association weight and question difficulty of the question and each knowledge point, and the personalized question difficulty conforming to the knowledge level of the student is given according to the knowledge mastering level of different students; the question answering performance of the student is obtained through the question answering time of the student, the question answering time interval and the question answering condition, the knowledge acquisition degree of the student is calculated in combination with the personalized question difficulty, and semantic information of the knowledge acquisition degree is enriched.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of knowledge tracing, and in particular to a knowledge tracing method combining difficulty features and time correlation features. Background Art

[0002] Knowledge tracking is to model the students’ understanding of knowledge points based on their historical answer records, so as to track the changes in the students’ mastery of knowledge points (also known as the students’ knowledge mastery level) as they continue to answer questions, and then predict the students’ future answering situation. Knowledge tracking is essentially a supervised sequence prediction problem, that is, given a student’s answers to questions q1, q2…q t , and predict their next answer to question q t+1 result.

[0003] At present, the mainstream algorithms in the field of knowledge tracing include algorithms based on machine learning, algorithms based on deep learning, and algorithms based on dynamic key-value memory networks. The representative knowledge tracing model based on machine learning is the Bayesian Knowledge Tracing (BKT) proposed by Corbett et al., which is used in the Intelligent Tutoring System (ITS); the Deep Knowledge Tracing (DKT) model applied the Recurrent Neural Network (RNN) to the field of knowledge tracing for the first time and achieved good prediction results. When modeling students' learning behavior, the DKT model not only uses the answer performance at the current moment, but also uses the answer performance at historical moments to assist in modeling, thereby predicting students' future answer results; the knowledge tracing model based on dynamic key-value memory networks (Dynamic Key-Value Memory Networks for Knowledge Tracing, DKVMN) uses a static matrix and a dynamic matrix to update the student's knowledge status. This external reading and writing method makes the DKVMN model have better prediction effects than the DKT model using RNN and LSTM. The advantage is particularly obvious when processing large amounts of data, which greatly improves the model's sequence modeling capabilities.

[0004] Generally speaking, there is a close connection between the difficulty of a question and the level of knowledge it reflects. When answering difficult questions, students with a higher level of knowledge are more likely to provide accurate answers than students with a lower level of knowledge. Simple questions will increase students' learning enthusiasm, but their learning efficiency will decrease; while more challenging questions may often improve students' learning efficiency. In addition, from the perspective of question setting, the difficulty of the question is also important. Questions that are too simple or too difficult cannot distinguish the knowledge status of different students.

[0005] During the learning process, the time interval between doing questions on the same knowledge point will have a great impact on the students' knowledge status. As time goes by and with different question-solving experiences, students may forget the knowledge points they have learned before, or have a deeper understanding of a certain knowledge point. At the same time, the length of time students spend on questions will also affect their learning efficiency. Too short a time to do a question means that the question cannot bring more challenges to students, which will reduce learning efficiency; too long a time to do a question may mean that the difficulty of the question exceeds the students' knowledge level, which will also reduce learning efficiency.

[0006] Based on the above, the existing knowledge tracking methods have the following problems:

[0007] 1. The existing technology calculates the impact of question difficulty on students' answers by setting the difficulty level of the question, but it does not take into account the different levels of knowledge mastery among different students and the different difficulty levels of the same question for different students.

[0008] 2. The existing technology updates the students' knowledge mastery level according to the difficulty of the questions and the answer situation, but does not consider the impact of the students' question-solving time and the time interval between questions on the students' knowledge acquisition level and learning efficiency, as well as the impact of the knowledge acquisition level and learning efficiency on the knowledge mastery level.

[0009] Therefore, a knowledge tracking method combining difficulty characteristics and time correlation characteristics is invented. By combining the difficulty characteristics and time correlation characteristics of questions, the students' efficiency and knowledge mastery level are analyzed and processed, and then predicted, so as to improve the accuracy of the model in predicting students' answering situation. Summary of the invention

[0010] To solve the above technical problems, according to one aspect of the present invention, the present invention provides the following technical solutions:

[0011] A knowledge tracking method combining difficulty characteristics and time correlation characteristics includes the following specific steps:

[0012] S1: Screen student data, construct student answer data set, and preprocess student data;

[0013] S2: Build a knowledge tracking model to predict students’ answers and output their knowledge mastery level;

[0014] The specific steps of S2 are as follows:

[0015] S21: Calculate the time taken by students to answer questions and the time interval between answers, and initialize the embedding vectors of the time taken to answer questions, the time interval between answers, the knowledge mastery level, and the answer status;

[0016] S22: Construct question embedding based on question difficulty and calculate personalized question difficulty that matches students’ knowledge level;

[0017] S23: Calculate the knowledge acquisition degree of students after answering questions;

[0018] S24: Calculate learning efficiency and update students’ knowledge mastery level;

[0019] S25: predict the student's answer at time t+1 and determine whether to output the student's knowledge mastery level;

[0020] S3: training knowledge tracking model;

[0021] S4: Apply the model to personalize recommendation questions for students.

[0022] As a preferred solution of the knowledge tracking method combining difficulty characteristics and time correlation characteristics described in the present invention, the specific steps of S1 are as follows:

[0023] S11: Screen student data and sort and organize student answer data;

[0024] S12: Calculate the difficulty of answering questions and the difficulty of knowledge points, and initialize the embedding matrix of question number, knowledge point number and question difficulty.

[0025] As a preferred solution of the knowledge tracking method combining difficulty characteristics and time correlation characteristics described in the present invention, the specific steps of S11 are as follows:

[0026] S111: Obtaining the student's initial answer data, each answer record in the answer data includes the student number, answer status, start time, end time, question number, knowledge point number, knowledge point name, question type, and teacher number information;

[0027] S112: Classify and sort the information involved in the student answer data. After classification and sorting, the student list, question list and knowledge point list are obtained as follows:

[0028] Student list S = {s1,s2,…,s I},s i∈S represents a student, its value is the student serial number, and I is the number of students;

[0029] Question list Q = {q1,q2,…,q J}, q j ∈Q represents a problem, its value is the problem number; J is the number of problems;

[0030] Knowledge point list K = {k1, k2, ..., k N}, k n ∈K represents a knowledge point, its value is the knowledge point sequence number, and N is the number of knowledge points;

[0031] During the test, the answer record sequence of student si is represented by X i ={(q1,a1),(q2,a2),…,(q T ,a T )}, where (q t ,a t ) is s i The record of the test at time t, q t ∈Q is s i The question answered at time t, a t Yes i At time t, about q t The answer is 0 or 1, 1 means the answer is correct, 0 means the answer is wrong, T is s i The number of answers is s i The start and end time of answering the question are recorded in the answering time series QT i ={(st1,et1),(st2,et2),…,(st T ,et T )}, where (st t ,et t ) is s i Answer q at time t t Start time for answering questions t and the end time of answering questions t .

[0032] As a preferred solution of the knowledge tracking method combining difficulty characteristics and time correlation characteristics described in the present invention, the specific steps of S12 are as follows:

[0033] S121, calculate the difficulty of answering the question, any question q in the question list Q j The difficulty of answering questions is calculated as follows:

[0034] S1211: Statistics of all answers j The number of students who answered correctly q jThe number of students who answered the question j The percentage of the total number of students, then multiply it by the difficulty level of the question C qs , we can get q j The difficulty of answering the question is calculated as follows:

[0035]

[0036] Among them, qs j for q j The difficulty of answering questions To answer q j The number of students To answer q j The total number of students, C qs Set the difficulty level for the questions you want to answer;

[0037] S1212: Repeat S121 to calculate the difficulty of answering all questions in Q, and obtain a question answering difficulty list QS = {qs1, qs2, ..., qs J}, qs j ∈QS means q j Difficulty of answering questions;

[0038] S122, calculate the difficulty of the knowledge point, any knowledge point k in the knowledge point list K n The difficulty is calculated as follows:

[0039] S1221: Count all answers containing k n The total number of students who answered the questions correctly, and then calculate the number of students who answered correctly including k n The percentage of students who have questions about the subject, multiplied by the difficulty level of the knowledge point C kd , we can get k n The difficulty is calculated as follows:

[0040]

[0041] Among them, kd n k n The difficulty of knowledge points, To answer the question containing k n The number of students with the problem For the correct answer, include k n The number of students with the question, C kd The difficulty level of the set knowledge points;

[0042] S1222: Repeat S122 to calculate the knowledge point difficulty of all knowledge points in K, and obtain a knowledge point difficulty list KD = {kd1, kd2, ..., kd N}, kd n ∈KD means kn ∈K’s knowledge point difficulty;

[0043] S123, initialize the embedding matrix of knowledge point number and question number:

[0044] S1231, initialize the knowledge point number embedding matrix KN: embed the knowledge point k n The serial number is represented as a one-hot encoding O(k n )∈R 1×N , set up an embedding matrix K n Mapping into embedding vector

[0045]

[0046] Among them, d k is the dimension of the knowledge point number embedding vector. The embedding vectors of all knowledge point numbers are calculated and then merged into a knowledge point number embedding matrix. Every d in KN kn A row vector of dimension represents a knowledge point;

[0047] S1232, initialize the problem number embedding matrix QN: j The serial number is represented by a one-hot encoding O(q j )∈R 1 ×J , set up an embedding matrix Q j Mapping into embedding vector

[0048]

[0049] Among them, d q is the dimension of the question number embedding vector. The embedding vectors of all question numbers are calculated and then merged into a question number embedding matrix. Each d in QN qn A row vector of dimension represents a problem;

[0050] S124, calculate the problem difficulty and initialize the problem difficulty embedding matrix QD:

[0051] S1241, Calculate the difficulty of the question: First, construct a matrix QK to describe the relationship between the question and the knowledge point. Each row in QK corresponds to a question, and each column in QK corresponds to a knowledge point. j With k n If the knowledge point is related to the question, the value of the jth row and nth column in QK is 1, otherwise it is 0. At the same time, in order to calculate the degree of correlation between each knowledge point and the question, QK is used to calculate qj The weight of association with each knowledge point

[0052]

[0053] Among them, KN is the knowledge point number embedding matrix; QK j,: represents the jth row of QK, used to describe q j The association status with each knowledge point; weight Indicates q j The degree of correlation with each knowledge point; then, consider the difficulty of the question and the difficulty of answering the question and the difficulty of the knowledge points contained in the question, and use q j The weight of association with each knowledge point Weight the knowledge point difficulty KD, and then add the weighted knowledge point difficulty and question answering difficulty to get q j Difficulty of the question qd j , the calculation formula is as follows:

[0054]

[0055] Among them, QS j The jth position in the question answering difficulty list QS indicates that q j The difficulty of answering questions for The transpose of

[0056] S1242, initialization problem You take the embedding matrix QD: j Difficulty qd j Represented as one-hot encoding Set up an embedding matrix C qs Set the difficulty level of the questions in S1211 and change qd j Mapping into embedding vector

[0057]

[0058] Among them, d qd is the dimension of the question difficulty embedding vector. The embedding vectors of all question difficulties are calculated and then merged into a question difficulty embedding matrix Each d in QD qd The row vector of dimension represents the difficulty of a question.

[0059] As a preferred solution of the knowledge tracking method combining difficulty characteristics and time correlation characteristics described in the present invention, the specific steps of S21 are as follows:

[0060] S211, calculate the time taken to answer questions and the time interval between answers:

[0061] S2111: Get student s from the classified data in S11 i The answer record sequence X i ={(q1,a1) , (q2,a2),…,(q T ,a T )} and the answer time series QT i ={(st1,et1) , (st2,et2),…,(st T ,et T )}, and replace s i Answer q t End of question time t Subtract the time you started doing the question t , get i Answer q t The time it takes to do the question is aq t , the calculation formula is as follows:

[0062] aq t =et t -st t

[0063] S2112: Calculate X i The time required to solve all the problems in the test is s i AQ time list i ={aq1,aq2,…,aq T}, where aq t ∈AQ i Indicates i Answer q t The time taken to do the questions;

[0064] S2113: For s i Answer any question q t , according to q calculated in S122 t The weight of association with each knowledge point Get with q t The knowledge point k with the highest degree of association t , in s i Answer q t The answer record before (i.e. {(q1,a1),(q2,a2),…,(q t-1 ,a t-1 )}) Search with k t The highest correlation with q t The question q′ with the shortest time interval to finish the question t , will s i Answer q tEnd of question time t Subtract the answer q′ t The end time of the test is et′ t , get i Answer q t The time interval between questions bq t , if q′ t If it does not exist, then bq t =0, the calculation formula is as follows:

[0065]

[0066] S2114: Calculate X i The time intervals for all questions in the question list BQ are obtained i ={bq1,bq2,…,bq T}, where bq t ∈BQ i Indicates i Answer q t The time interval between questions;

[0067] S212, initialize the embedding vector of the time spent on solving the problem and the embedding vector of the time interval between solving the problem:

[0068] S2121: will s i Answer q t The time it takes to do the question is aq t Represented as a one-hot encoding O(aq t )∈R 1×T , set up an embedding matrix Aq t Mapping to embedding vector d aq is the dimension of the embedding vector when doing the problem:

[0069]

[0070] S2122: Calculate X i The time embedding vectors of all questions in the problem are combined into the time embedding matrix

[0071] S2123: will s i Answer q t The time interval between questions bq t Represented as one-hot encoding O(bq t )∈R 1×T , set up an embedding matrix bq t Mapping to embedding vector d bq is the dimension of the embedding vector of the time interval between questions:

[0072]

[0073] S2124: Calculate X i The time interval embedding vectors of all questions in the question are merged into the time interval embedding matrix

[0074] S213, initialize the embedding vector of knowledge mastery level and answer status:

[0075] S2131: Create vector Used to indicate s i The level of knowledge mastered at time t, d h yes Dimensions;

[0076] S2132: For s i Answer q t The answer situation of t , a t Mapping into embedding vector d a is the dimension of the embedding vector of the answer, When the element is 1, it means the answer is correct, and when the element is 0, it means the answer is wrong.

[0077] As a preferred solution of the knowledge tracking method combining difficulty characteristics and time correlation characteristics described in the present invention, the specific steps of S22 are as follows:

[0078] S221, build question embedding based on question difficulty: for s i The answer record at time t (q t ,a t ), using the problem difficulty embedding matrix QD described in S123 to strengthen the problem q t The information representation, combined with q t Embedded question number The association weight between questions and knowledge points and question difficulty embedding Output q through the multi-layer perceptron t Embedded in the title The calculation is as follows:

[0079]

[0080] in, is a matrix concatenation operation, is the weight matrix, is the bias term;

[0081] S222, calculate the difficulty of personalized questions that match the student's knowledge level: at time t, input s i In answering q t Previous knowledge level To the personalized question difficulty calculation module, use q t Embedded in the title and Calculate the output q t For i Difficulty of personalized questions d sq It's SQ t The dimensions are calculated as follows:

[0082]

[0083] in, Yes i Answer q t The previous knowledge level, tanh is a nonlinear activation function, σ is the sigmoid activation function, is the weight matrix, is the bias term, To calculate q t For i The feature representation of personalized question difficulty, To calculate q t For i The weight information of the difficulty of personalized questions.

[0084] As a preferred solution of the knowledge tracking method combining difficulty characteristics and time correlation characteristics described in the present invention, the specific steps of S23 are as follows:

[0085] S231: Series i Answer q t Embedding vector for time spent on problem solving Embedding vector of time interval between questions and the answer embedding vector Used to indicate s i Performance of the questions The calculation is as follows:

[0086]

[0087] S232: Personalize the difficulty of questions Input to the knowledge acquisition degree calculation module, combined with and Calculate the output i The degree of knowledge acquisition The calculation is as follows:

[0088]

[0089] in, is the weight matrix, is the bias term, For extracting i The characteristic representation of the degree of knowledge acquisition is To calculate s i The weight information of the degree of knowledge acquisition.

[0090] As a preferred solution of the knowledge tracking method combining difficulty characteristics and time correlation characteristics described in the present invention, the specific steps of S24 are as follows:

[0091] S241: Design a learning efficiency calculation module, through students i The learning efficiency is calculated based on the answering situation and the time spent on the questions. i In answering question q t When answering correctly, they think that answering incorrectly is more efficient, and taking a moderate amount of time to answer the questions is more efficient than taking too long or too short a time to answer the questions. t The calculation is as follows:

[0092]

[0093] Among them, a is a hyperparameter, σ is the sigmoid activation function, a t Answer questions for students t The answer situation of aq t are students i Answer q t When doing the questions, All students answered q t The average time taken to complete the test;

[0094] S242: Design a knowledge mastery level update module to input the knowledge acquisition level and knowledge level Go to the knowledge mastery level update module and change l t As a weight, and Perform weighted addition and output the updated knowledge mastery level The calculation method for knowledge mastery level update is as follows:

[0095]

[0096] in, For i Answer q t Previous knowledge level, Fori Answer q t The subsequent level of knowledge mastery.

[0097] As a preferred solution of the knowledge tracking method combining difficulty characteristics and time correlation characteristics described in the present invention, the specific steps of S25 are as follows:

[0098] S251: For i At the time t+1, the knowledge mastery level, combined with q t+1 Embedded in the title You can get i Answer q t+1 Prediction of answering situation y t+1 , calculated as follows:

[0099]

[0100] Among them, y t+1 For the predicted i Answer q t+1 The correct probability is when y t+1 When ≥β, it is considered that s i Answer correctly, when y t+1 <β, it is considered that s i The answer is wrong, and β is a manually set threshold;

[0101] S252: If t+1≤T, jump to S22 to continue processing the answer record (q t+1 ,a t+1 ); otherwise, output s i Knowledge level

[0102] As a preferred solution of the knowledge tracking method combining difficulty characteristics and time correlation characteristics described in the present invention, the specific steps of S3 are as follows:

[0103] S31: Divide the student answer data set into a training set and a test set according to a certain ratio, initialize the training parameters and model hyperparameters, and input the data of the training set into the knowledge tracking model for training;

[0104] S32: Use the cross entropy loss function to calculate the student's actual answer situation a t and the predicted value y t The loss value L between is calculated as follows:

[0105]

[0106] Among them, θ represents all trainable parameters and embeddings in the model, λ θTo regularize the hyperparameters, the training ends when the accuracy and loss value of the model tend to be stable. After the training, the model is tested using the test set to confirm the actual prediction ability of the model;

[0107] The specific steps of S4 are as follows:

[0108] S41: After the model training is completed, a student's answer sequence is input into the model, and after being processed by the model, the student's knowledge mastery level is output;

[0109] S42: For knowledge points where students have a weak grasp, questions that have not been answered by students and that contain knowledge points where students have a weak grasp are selected from the question list to form a question sequence and recommended to students for answering. When students answer the recommended question sequence, the model also predicts the students' answers and updates the students' knowledge mastery level.

[0110] Compared with existing technologies:

[0111] The present invention enhances the difficulty feature information embedded in the questions through the association weights between the questions and each knowledge point and the difficulty of the questions, and provides personalized question difficulty that matches the knowledge level of the students according to their knowledge mastery levels; obtains the students' answering performance through the time they take to answer the questions, the time interval between answering the questions and the answering situation, and then calculates the students' knowledge acquisition degree in combination with the personalized question difficulty, thereby enriching the semantic information of the knowledge acquisition degree; analyzes the students' learning efficiency based on the answering situation and the time they take to answer the questions, thereby enhancing the interpretability of the learning efficiency calculation. BRIEF DESCRIPTION OF THE DRAWINGS

[0112] Figure 1 It is a schematic diagram of the process of the present invention;

[0113] Figure 2 It is a schematic diagram of the structure of the model of the present invention;

[0114] Figure 3 This is a schematic diagram of the structure of the personalized question difficulty calculation module of the present invention;

[0115] Figure 4 This is a schematic diagram of the structure of the knowledge acquisition degree calculation module of the present invention;

[0116] Figure 5 It is a structural schematic diagram of the learning efficiency calculation module and the knowledge mastering level updating module of the present invention. DETAILED DESCRIPTION

[0117] In order to make the objectives, technical solutions and advantages of the present invention more clear, the embodiments of the present invention will be further described in detail below with reference to the accompanying drawings.

[0118] The present invention provides a knowledge tracking method that combines difficulty features and time correlation features. Figure 1-Figure 5 , including the following specific steps:

[0119] S1: Screen student data, construct student answer data set, and preprocess student data;

[0120] Among them: The specific steps of S1 are as follows:

[0121] S11: Screen student data and sort and organize student answer data;

[0122] Among them: The specific steps of S11 are as follows:

[0123] S111: Obtain the student's initial answer data, where each answer record in the answer data contains the student number, answer status, start time, end time, question number, knowledge point number, knowledge point name, question type, and teacher number information; the specific method is: obtain the student number, question number, answer status, knowledge point number, start time, and end time from the student's initial answer data, and delete the student answer records whose number of answering students is less than 2 and whose knowledge point number is empty;

[0124] S112: Classify and sort the information involved in the student answer data. After classification and sorting, the student list, question list and knowledge point list are obtained as follows:

[0125] Student list S = {s1,s2,…,s I},s i ∈S represents a student, its value is the student serial number, and I is the number of students;

[0126] Question list Q = {q1,q2,…,q J}, q j ∈Q represents a problem, its value is the problem number; J is the number of problems;

[0127] Knowledge point list K = {k1, k2, ..., k N}, k n ∈K represents a knowledge point, its value is the knowledge point sequence number, and N is the number of knowledge points;

[0128] During the test, students i The answer record sequence is represented as X i ={(q1,a1) , (q2,a2),…,(q T ,a T )}, where (q t ,a t ) is s i The record of the test at time t, q t ∈Q is s i The question answered at time t, at Yes i At time t, about q t The answer is 0 or 1, 1 means the answer is correct, 0 means the answer is wrong, T is s i The number of answers is s i The start and end time of answering the question are recorded in the answering time series QT i ={(st1,et1) , (st2,et2),…,(st T ,et T )}, where (st t ,et t ) is s i Answer q at time t t Start time for answering questions t and the end time of answering questions t ;

[0129] S12: Calculate the difficulty of answering questions and the difficulty of knowledge points, and initialize the embedding matrix of question numbers, knowledge point numbers, and question difficulty;

[0130] Wherein: the specific steps of S12 are as follows:

[0131] S121, calculate the difficulty of answering the question, any question q in the question list Q j The difficulty of answering questions is calculated as follows:

[0132] S1211: Statistics of all answers j The number of students who answered correctly q j The number of students who answered the question j The percentage of the total number of students, then multiply it by the difficulty level of the question C qs , we can get q j The difficulty of answering the question is calculated as follows:

[0133]

[0134] Among them, qs j for q j The difficulty of answering questions To answer q j The number of students To answer q j The total number of students, C qs Set the difficulty level for the questions you want to answer;

[0135] S1212: Repeat S121 to calculate the difficulty of answering all questions in Q, and obtain a question answering difficulty list QS = {qs1, qs2, ..., qs J}, qsj ∈QS means q j Difficulty of answering questions;

[0136] S122, calculate the difficulty of the knowledge point, any knowledge point k in the knowledge point list K n The difficulty is calculated as follows:

[0137] S1221: Count all answers containing k n The total number of students who answered the questions correctly, and then calculate the number of students who answered correctly including k n The percentage of students who have questions about the subject, multiplied by the difficulty level of the knowledge point C kd , we can get k n The difficulty is calculated as follows:

[0138]

[0139] Among them, kd n k n The difficulty of knowledge points, To answer the question containing k n The number of students with the problem For the correct answer, include k n The number of students with the question, C kd The difficulty level of the set knowledge points;

[0140] S1222: Repeat S122 to calculate the knowledge point difficulty of all knowledge points in K, and obtain a knowledge point difficulty list KD = {kd1, kd2, ..., kd N}, kd n ∈KD means k n ∈K’s knowledge point difficulty;

[0141] S123, initialize the embedding matrix of knowledge point number and question number:

[0142] S1231, initialize the knowledge point number embedding matrix KN: embed the knowledge point k n The serial number is represented as a one-hot encoding O(k n )∈R 1×N , set up an embedding matrix K n Mapping into embedding vector

[0143]

[0144] Among them, d k is the dimension of the knowledge point number embedding vector. The embedding vectors of all knowledge point numbers are calculated and then merged into a knowledge point number embedding matrix. Every d in KNkn A row vector of dimension represents a knowledge point;

[0145] S1232, initialize the problem number embedding matrix QN: j The serial number is represented by a one-hot encoding O(q j )∈R 1 ×J , set up an embedding matrix Q j Mapping into embedding vector

[0146]

[0147] Among them, d q is the dimension of the question number embedding vector. The embedding vectors of all question numbers are calculated and then merged into a question number embedding matrix. Each d in QN qn A row vector of dimension represents a problem;

[0148] S124, calculating the problem difficulty, initializing the problem difficulty embedding matrix QD. The present invention designs a method for calculating the problem difficulty, by weighting the knowledge point difficulty by adding the association weights between the problem and each knowledge point, and then combining the problem answering difficulty with the problem difficulty to obtain the problem difficulty combined with the knowledge point difficulty. The specific steps are as follows:

[0149] S1241, Calculate the difficulty of the question: First, construct a matrix QK to describe the relationship between the question and the knowledge point. Each row in QK corresponds to a question, and each column in QK corresponds to a knowledge point. j With k n If the knowledge point is related to the question, the value of the jth row and nth column in QK is 1, otherwise it is 0. At the same time, in order to calculate the degree of correlation between each knowledge point and the question, QK is used to calculate q j The weight of association with each knowledge point

[0150]

[0151] Among them, KN is the knowledge point number embedding matrix; QK j,: represents the jth row of QK, used to describe q j The association status with each knowledge point; weight Indicates q j The degree of correlation with each knowledge point; then, consider the difficulty of the question and the difficulty of answering the question and the difficulty of the knowledge points contained in the question, and use q j The weight of association with each knowledge point Weight the knowledge point difficulty KD, and then add the weighted knowledge point difficulty and question answering difficulty to get q jDifficulty of the question qd j , the calculation formula is as follows:

[0152]

[0153] Among them, QS j The jth position in the question answering difficulty list QS indicates that q j The difficulty of answering questions for The transpose of

[0154] S1242, initialization problem You take the embedding matrix QD: j Difficulty qd j Represented as one-hot encoding Set up an embedding matrix C qs Set the difficulty level of the questions in S1211 and change qd j Mapping into embedding vector

[0155]

[0156] Among them, d qd is the dimension of the question difficulty embedding vector. The embedding vectors of all question difficulties are calculated and then merged into a question difficulty embedding matrix Each d in QD qd The row vector of dimension represents the difficulty of a problem;

[0157] This step includes but is not limited to the following embodiments:

[0158] Get the students' initial answer data, classify and sort the data to get the student list S = {s1, s2, ..., s I}、Question list Q={q1,q2,…,q J} and the knowledge point list K = {k1, k2, ..., k N}, record student i The answer record sequence X i ={(q1,a1),(q2,a2),…,(q T ,a T )} and the answer time series QT i ={(st1,et1),(st2,et2),…,(st T ,et t )}; Set the difficulty level of the question to C qs =100, calculate the difficulty of answering all questions to get the question answering difficulty list QS; set the knowledge point difficulty level C kd=100, calculate the difficulty of all knowledge points to get the knowledge point difficulty list KD; initialize the embedding matrix of knowledge point number, question number and question difficulty to get the knowledge point number embedding matrix Question number embedding matrix and the problem difficulty embedding matrix

[0159] S2: Construct a knowledge tracking model to predict students' answers and output their knowledge mastery level. The present invention constructs a knowledge tracking model that combines difficulty characteristics and time correlation characteristics. The model structure is as follows: Figure 2 As shown;

[0160] The specific steps of S2 are as follows:

[0161] S21: Calculate the time taken by students to do questions and the time interval between doing questions, and initialize the embedding vectors of the time taken to do questions, the time interval between doing questions, the knowledge mastery level, and the answering situation; the present invention designs a method for extracting the correlation features of the time taken by students to do questions, calculates the time taken by students to do questions and the time interval between doing questions, and obtains the correlation features of the time taken by students to do questions, and these features include the embedding vectors of the time taken to do questions, the time interval between doing questions, the knowledge mastery level, and the answering situation, which are used for the subsequent operations of the model;

[0162] Among them: The specific steps of S21 are as follows:

[0163] S211, calculate the time taken to answer questions and the time interval between answers:

[0164] S2111: Get student s from the classified data in S11 i The answer record sequence X i ={(q1,a1),(q2,a2),…,(q T ,a T )} and the answer time series QT i ={(st1,et1),(st2,et2),…,(st T ,et T )}, and replace s i Answer q t End of question time t Subtract the time you started doing the question t , get i Answer q t The time it takes to do the question is aq t , the calculation formula is as follows:

[0165] aq t =et t -st t

[0166] S2112: Calculate Xi The time required to solve all the problems in the test is s i AQ time list i ={aq1,aq2,…,aq T}, where aq t ∈AQ i Indicates i Answer q t The time taken to do the questions;

[0167] S2113: For s i Answer any question q t , according to q calculated in S122 t The weight of association with each knowledge point Get with q t The knowledge point k with the highest degree of association t , in s i Answer q t The answer record before (i.e. {(q1,a1),(q2,a2),…,(q t-1 ,a t-1 )}) Search with k t The highest correlation with q t The question q′ with the shortest time interval to finish the question t , will s i Answer q t End of question time t Subtract the answer q′ t The end time of the test is et′ t , get i Answer q t The time interval between questions bq t , if q′ t If it does not exist, then bq t =0, the calculation formula is as follows:

[0168]

[0169] S2114: Calculate X i The time intervals for all questions in the question list BQ are obtained i ={bq1,bq2,…,bq T}, where bq t ∈BQ i Indicates i Answer q t The time interval between questions;

[0170] S212, initialize the embedding vector of the time spent on solving the problem and the embedding vector of the time interval between solving the problem:

[0171] S2121: will si Answer q t The time it takes to do the question is aq t Represented as a one-hot encoding O(aq t )∈R 1×T , set up an embedding matrix Aq t Mapping to embedding vector d aq is the dimension of the embedding vector when doing the problem:

[0172]

[0173] S2122: Calculate X i The time embedding vectors of all questions in the problem are combined into the time embedding matrix

[0174] S2123: will s i Answer q t The time interval between questions bq t Represented as one-hot encoding O(bq t )∈R 1×T , set up an embedding matrix bq t Mapping to embedding vector d bq is the dimension of the embedding vector of the time interval between questions:

[0175]

[0176] S2124: Calculate X i The time interval embedding vectors of all questions in the question are merged into the time interval embedding matrix

[0177] S213, initialize the embedding vector of knowledge mastery level and answer status:

[0178] S2131: Create vector Used to indicate s i The level of knowledge mastered at time t, d h yes Dimensions;

[0179] S2132: For s i Answer q t The answer situation of t , a t Mapping into embedding vector d a is the dimension of the answer embedding vector, When the element is 1, it means the answer is correct, and when the element is 0, it means the answer is wrong;

[0180] S22: Constructing a question embedding based on the difficulty of the question, and calculating the difficulty of the personalized question that matches the student's knowledge mastery level; considering that different students have different knowledge mastery levels, the difficulty of the same question for different students is also different; the present invention constructs a personalized question difficulty calculation module that matches the student's knowledge mastery level, which is used to calculate q t For i Difficulty of personalized questions;

[0181] Wherein: The specific steps of S22 are as follows:

[0182] S221, build question embedding based on question difficulty: for s i The answer record at time t (q t ,a t ), using the problem difficulty embedding matrix QD described in S123 to strengthen the problem q t The information representation, combined with q t Embedded question number The association weight between questions and knowledge points and question difficulty embedding Output q through a multi-layer perceptron (MLP) t Title embedding The calculation is as follows:

[0183]

[0184] in, is a matrix concatenation operation, is the weight matrix, is the bias term;

[0185] S222, calculate the difficulty of personalized questions that match the student's knowledge level: at time t, input s i In answering q t Previous knowledge level To the personalized question difficulty calculation module, use q t Title embedding and Calculate the output q t For i Difficulty of personalized questions d sq It's SQ t The dimensions are calculated as follows:

[0186]

[0187] in, Yes i Answer q tThe previous knowledge level, tanh is a nonlinear activation function, σ is the sigmoid activation function, is the weight matrix, is the bias term, To calculate q t For i The feature representation of personalized question difficulty, To calculate q t For i The weight information of the difficulty of personalized questions;

[0188] Among them: Tanh activation function is a commonly used activation function in neural networks, and the calculation formula is:

[0189]

[0190] In deep learning, the tanh activation function is often used in hidden layers because its output is zero-centered, which helps with data processing and network training;

[0191] The sigmoid activation function is widely used in neural networks, especially in binary classification problems. Since its output can be viewed as a probability, it is very useful in the output layer for converting the predictions of the neural network into a probability distribution. In addition, the smoothness of the sigmoid function provides a continuous gradient during the gradient descent optimization process, which is beneficial for model training. The calculation formula is:

[0192]

[0193] S23: Calculate the knowledge acquisition degree of the students after answering the questions; the present invention constructs a knowledge acquisition degree calculation module for calculating s i Answer q t The degree of knowledge acquisition after using s i Q t The degree of knowledge acquisition of students in answering questions is calculated based on the difficulty of personalized questions, the time taken to answer questions, the time interval between questions and the answering situation; the structure of the knowledge acquisition degree calculation module is as follows Figure 4 As shown;

[0194] Wherein: the specific steps of S23 are as follows:

[0195] S231: Series i Answer q t Embedding vector for time spent on problem solving Embedding vector of time interval between questions and the answer embedding vector Used to indicate s i Answer performance The calculation is as follows:

[0196]

[0197] S232: Personalize the difficulty of questions Input to the knowledge acquisition degree calculation module, combined with and Calculate the output i The degree of knowledge acquisition The calculation is as follows:

[0198]

[0199] in, is the weight matrix, is the bias term, For extracting i The characteristic representation of the degree of knowledge acquisition is To calculate s i The weight information of the degree of knowledge acquisition;

[0200] S24: Calculate learning efficiency and update students' knowledge mastery level; the present invention designs a learning efficiency calculation module and a knowledge mastery level update module for calculating learning efficiency and updating students' knowledge mastery level. The structure diagram is as follows: Figure 5 As shown;

[0201] Wherein: The specific steps of S24 are as follows:

[0202] S241: Design a learning efficiency calculation module, through students i The learning efficiency is calculated based on the answering situation and the time spent on the questions. i In answering question q t When answering correctly, they think that answering incorrectly is more efficient, and taking a moderate amount of time to answer the questions is more efficient than taking too long or too short a time to answer the questions. t The calculation is as follows:

[0203]

[0204] Among them, a is a hyperparameter, σ is the sigmoid activation function, a t Answer questions for students t The answer situation of aq t are students i Answer q t When doing the questions, All students answered q t The average time taken to complete the test;

[0205] S242: Design a knowledge mastery level update module to input the knowledge acquisition level and knowledge level Go to the knowledge mastery level update module and change l t As a weight, and Perform weighted addition and output the updated knowledge mastery level The calculation method for knowledge mastery level update is as follows:

[0206]

[0207] in, For i Answer q t Previous knowledge level, For i Answer q t The level of knowledge acquired after

[0208] S25: predict the student's answer at time t+1 and determine whether to output the student's knowledge mastery level;

[0209] Wherein: The specific steps of S25 are as follows:

[0210] S251: For i At time t+1 (i.e. answer q t+1 The knowledge level of the previous t+1 Title embedding You can get i Answer q t+1 Prediction of answering situation y t+1 , calculated as follows:

[0211]

[0212] Among them, y t+1 For the predicted i Answer q t+1 The correct probability is when y t+1 When ≥β, it is considered that s i Answer correctly, when y t+1 <β, it is considered that s i The answer is wrong, and β is a manually set threshold;

[0213] S252: If t+1≤T, jump to S22 to continue processing the answer record (q t+1 ,a t+1 ); otherwise, output s i Knowledge level

[0214] This step includes but is not limited to the following embodiments:

[0215] Get studentsi The answer record sequence X i ={(q1,a1) , (q2,a2),…,(q T ,a T )} and the answer time series QT i ={(st1,et1) , (st2,et2),…,(st T ,et T )}, calculate the time taken to answer the questions and the time interval between questions, and get the time list AQ for answering the questions i ={aq1,aq2,…,aq T} and the time interval list BQ i ={bq1,bq2,…,bq T}, respectively construct the embedding vector of the time spent on the question and the embedding vector of the time interval between the questions; create vector Indicates i The level of knowledge mastered at time t, at time t = 1, s i The knowledge level of Input the question record (q1, a1) into the knowledge tracking model and embed it into the question number of q1 The weight of the knowledge points contained in the question and question difficulty embedding Output the title embedding of q1 through a multi-layer perceptron (MLP) Combined with the topic embedding of q1 and i The level of knowledge before answering Q1 Calculate q1 to s i Difficulty of personalized questions Series i Embedding vector for answering Q1 Embedding vector of time interval between questions and the answer embedding vector Get i Answer performance Combine q1 with s i Difficulty of personalized questions and answering performance Calculate s i The degree of knowledge acquisition Will s i The answer situation of t and time spent on the questions t Enter the learning efficiency calculation module, set the hyperparameter a=0.5, and calculate s i The learning efficiency l1 when answering q1, using l1 as the weight, affects the degree of knowledge acquisition and knowledge level Perform weighted addition to obtain the updated knowledge mastery level Combined with q2 topic embedding and Calculate i The prediction y2 of answering question q2 is set with a threshold of β = 0.5. When y2 ≥ β, it is considered that s i If q2 is correct, when y2<β, then s i Wrong answer q2; then repeat the above steps to continue processing the answer record (q2, a2) until X i After all the answer records in are processed, output s i Knowledge level

[0216] S3: training knowledge tracking model;

[0217] Among them: The specific steps of S3 are as follows:

[0218] S31: Divide the student answer data set into a training set and a test set according to a certain ratio, initialize the training parameters and model hyperparameters, and input the data of the training set into the knowledge tracking model for training;

[0219] S32: Use the cross entropy loss function to calculate the student's actual answer situation a t and the predicted value y t The loss value L between is calculated as follows:

[0220]

[0221] Among them, θ represents all trainable parameters and embeddings in the model, λ θ To regularize the hyperparameters, the training ends when the accuracy and loss value of the model tend to be stable. After the training, the model is tested using the test set to confirm the actual prediction ability of the model;

[0222] This step includes but is not limited to the following embodiments:

[0223] The student answer data set is divided into a training set and a test set in a ratio of 8:2. The training batch size is set to batch_size = 32, the training batch epoch is set to 200, the training learning rate is set to 0.002, the weight decay is set to 0.0001, and the dimension of the embedding vector is set to d kn ,d qn ,d qd ,d h ,d sq ,d a ,d aq ,d bqis 128; the data of the training set is input into the knowledge tracking model for training. After each batch of training, the loss value and accuracy are calculated. When the accuracy and loss value of the model tend to be stable, the training ends; after the training, the model is tested with the test set to confirm the actual prediction ability of the model;

[0224] S4: Apply the model to recommend personalized questions for students;

[0225] Among them: The specific steps of S4 are as follows:

[0226] S41: After the model training is completed, a student's answer sequence is input into the model, and after being processed by the model, the student's knowledge mastery level is output;

[0227] S42: For knowledge points where students have a weak grasp, questions that have not been answered by students and that contain knowledge points where students have a weak grasp are selected from the question list to form a question sequence and recommended to students for answering. When students answer the recommended question sequence, the model also predicts the students' answers and updates the students' knowledge mastery level.

[0228] Based on the above, the present invention designs a knowledge tracking model that combines difficulty characteristics and time correlation characteristics, wherein a personalized problem difficulty calculation module for students is designed, which enriches the difficulty feature information embedded in the question through the association weights between the question and each knowledge point and the problem difficulty, and gives personalized problem difficulty that matches the student's knowledge mastery level according to the knowledge mastery level of different students; a knowledge acquisition degree calculation module is designed, which uses the student's question-solving time, question-solving time interval and answering situation to obtain the student's answering performance, and then calculates the student's knowledge acquisition degree in combination with the personalized problem difficulty, thereby enriching the semantic information of the knowledge acquisition degree; a learning efficiency calculation module is designed, which subtracts the student's question-solving time from the average question-solving time, and then passes the result with the student's answering situation through a learning efficiency calculation function, analyzes the student's learning efficiency from the answering situation and the question-solving time, thereby enhancing the interpretability of the learning efficiency calculation.

[0229] Although the present invention has been described above with reference to the embodiments, various modifications may be made thereto and parts thereof may be replaced by equivalents without departing from the scope of the present invention. In particular, as long as there is no structural conflict, the various features in the embodiments disclosed in the present invention may be used in combination with each other in any manner, and the fact that these combinations are not exhaustively described in this specification is only for the sake of omitting space and saving resources. Therefore, the present invention is not limited to the specific embodiments disclosed herein, but includes all technical solutions falling within the scope of the claims.

Claims

1. A knowledge tracking method combining difficulty features and time correlation features, characterized in that: The specific steps are as follows: S1: Screen student data, construct student answer data set, and preprocess student data; S2: Build a knowledge tracking model to predict students’ answers and output their knowledge mastery level; The specific steps of S2 are as follows: S21: Calculate the time taken by students to answer questions and the time interval between answers, and initialize the embedding vectors of the time taken to answer questions, the time interval between answers, the knowledge mastery level, and the answer status; S22: Construct question embedding based on question difficulty and calculate personalized question difficulty that matches students’ knowledge level; S23: Calculate the knowledge acquisition degree of students after answering questions; S24: Calculate learning efficiency and update students’ knowledge mastery level; S25: predict the student's answer at time t+1 and determine whether to output the student's knowledge mastery level; S3: training knowledge tracking model; S4: Apply the model to personalize recommendation questions for students.

2. A knowledge tracking method combining difficulty characteristics and time correlation characteristics according to claim 1, characterized in that: The specific steps of S1 are as follows: S11: Screen student data and sort and organize student answer data; S12: Calculate the difficulty of answering questions and the difficulty of knowledge points, and initialize the embedding matrix of question number, knowledge point number and question difficulty.

3. The knowledge tracking method combining difficulty feature and time correlation feature according to claim 2, characterized in that: The specific steps of S11 are as follows: S111: Obtaining student initial answer data, each answer record in the answer data includes student serial number, answer status, start time, end time, question serial number, knowledge point serial number, knowledge point name, question type, and teacher serial number information; S112: Classify and sort the information involved in the student answer data. After classification and sorting, the student list, question list and knowledge point list are obtained as follows: Student list S = {s1, s2, ..., sI}, s i ∈S represents a student, its value is the student serial number, and I is the number of students; Question list Q = {q1,q2,…,q J }, q j ∈Q represents a problem, its value is the problem number; J is the number of problems; Knowledge point list K = {k1, k2, ..., k N }, k n ∈K represents a knowledge point, its value is the knowledge point sequence number, and N is the number of knowledge points; During the test, students i The answer record sequence is represented as X i ={(q1,a1),(q2,a2),…,(q T ,a T )}, where (q t ,a t ) is s i The record of the test at time t, q t ∈Q is s i The question answered at time t, a t Yes i At time t, about q t The answer is 0 or 1, 1 means the answer is correct, 0 means the answer is wrong, T is s i The number of answers is s i The start and end time of answering the question are recorded in the answering time series QT i ={(st1,et1),(st2,et2),…,(st T ,et T )}, where (st t ,et t ) is s i Answer q at time t t Start time for answering questions t and the end time of answering questions t .

4. The knowledge tracking method combining difficulty feature and time correlation feature according to claim 3, characterized in that: The specific steps of S12 are as follows: S121, calculate the difficulty of answering the question, any question q in the question list Q j The difficulty of answering questions is calculated as follows: S1211: Statistics of all answers j The number of students who answered correctly q j The number of students who answered the question j The percentage of the total number of students, then multiply it by the difficulty level of the question c qs , we can get q j The difficulty of answering the question is calculated as follows: Among them, qs j Q j The difficulty of answering questions To answer q j The number of students To answer q j The total number of students, C qs Set the difficulty level for the questions you want to answer; S1212: Repeat S121 to calculate the difficulty of answering all questions in Q, and obtain a question answering difficulty list QS = {qs1, qs2, ..., qs J }, qs j ∈QS means q j Difficulty of answering questions; S122, calculate the difficulty of the knowledge point, any knowledge point k in the knowledge point list K n The difficulty is calculated as follows: S1221: Count all answers containing k n The total number of students who answered the questions correctly, and then calculate the number of students who answered correctly including k n The percentage of students who have questions about the subject, multiplied by the difficulty level of the knowledge point C kd , we can get k n The difficulty is calculated as follows: Among them, kd n k n The difficulty of knowledge points, To answer the question containing k n The number of students with the problem For the correct answer, include k n The number of students with the question, C kd The difficulty level of the knowledge point set; S1222: Repeat S122 to calculate the knowledge point difficulty of all knowledge points in K, and obtain a knowledge point difficulty list KD = {kd1, kd2, ..., kd N }, kd n ∈KD means k n ∈K’s knowledge point difficulty; S123, initialize the embedding matrix of knowledge point number and question number: S1231, initialize the knowledge point number embedding matrix KN: embed the knowledge point k n The serial number is represented as a one-hot encoding O(k n )∈R 1×N , set up an embedding matrix K n Mapping to embedding vector Among them, d k is the dimension of the knowledge point number embedding vector. The embedding vectors of all knowledge point numbers are calculated and then merged into a knowledge point number embedding matrix. Every d in KN kn A row vector of dimension represents a knowledge point; S1232, initialize the problem number embedding matrix QN: j The serial number is represented by a one-hot encoding O(q j )∈R 1×J , set up an embedding matrix Q j Mapping to embedding vector Among them, d q is the dimension of the question number embedding vector. The embedding vectors of all question numbers are calculated and then merged into a question number embedding matrix. Each d in QN qn A row vector of dimension represents a problem; S124, calculate the problem difficulty and initialize the problem difficulty embedding matrix QD: S1241, Calculate the difficulty of the question: First, construct a matrix QK to describe the relationship between the question and the knowledge point. Each row in QK corresponds to a question, and each column in QK corresponds to a knowledge point. j With k n If the knowledge point is related to the question, the value of the jth row and nth column in QK is 1, otherwise it is 0. At the same time, in order to calculate the degree of correlation between each knowledge point and the question, QK is used to calculate q j The weight of association with each knowledge point Among them, KN is the knowledge point number embedding matrix; QK j,: represents the jth row of QK, used to describe q j The association status with each knowledge point; weight Indicates q j The degree of correlation with each knowledge point; then, consider the difficulty of the question and the difficulty of answering the question and the difficulty of the knowledge points contained in the question, and use q j The weight of association with each knowledge point Weight the knowledge point difficulty KD, and then add the weighted knowledge point difficulty and question answering difficulty to get q j Difficulty of the question qd j , the calculation formula is as follows: Among them, QS j The jth position in the question answering difficulty list QS indicates that q j The difficulty of answering questions for The transpose of S1242, initialization problem You take the embedding matrix QD: j Difficulty qd j Represented as one-hot encoding Set up an embedding matrix C qs Set the difficulty level of the questions in S1211 and change qd j Mapping to embedding vector Among them, d qd is the dimension of the question difficulty embedding vector. The embedding vectors of all question difficulties are calculated and then merged into a question difficulty embedding matrix Each d in QD qd The row vector of dimension represents the difficulty of a question.

5. The knowledge tracking method combining difficulty feature and time correlation feature according to claim 1, characterized in that: The specific steps of S21 are as follows: S211, calculate the time taken to answer questions and the time interval between answers: S2111: Get student s from the classified data in S11 i The answer record sequence X i ={(q1,a1),(q2,a2),…,(q T ,a T )} and the answer time series QT i ={(st1,et1),(st2,et2),…,(st T ,et T )}, and replace s i Answer q t End of question time t Subtract the time you started doing the question t , get i Answer q t The time it takes to do the question is aq t , the calculation formula is as follows: water t =and t -st t S2112: Calculate X i The time required to solve all the problems in the test is s i AQ time list i ={aq1,aq2,…,aq T }, where aq t ∈AQ i Indicates i Answer q t The time taken to do the questions; S2113: For s i Answer any question q t , according to q calculated in S122 t The weight of association with each knowledge point Get with q t The knowledge point k with the highest degree of association t , in s i Answer q t The answer record before (i.e. {(q1,a1),(q2,a2),…,(q t-1 ,a t-1 )}) Search with k t The highest correlation with q t The question q′ with the shortest time interval to finish the question t , will s i Answer q t End of question time t Subtract the answer q′ t The end time of the test is et′ t , get i Answer q t The time interval between questions bq t , if q′ t If it does not exist, then bq t =0, the calculation formula is as follows: S2114: Calculate X i The time intervals for all questions in the question list BQ are obtained i ={bq1,bq2,…,bq T }, where bq t ∈BQ i Indicates i Answer q t The time interval between questions; S212, initialize the embedding vector of the time spent on solving the problem and the embedding vector of the time interval between solving the problem: S2121: will s i Answer q t The time it takes to do the question is aq t Represented as one-hot encoding O(aq t )∈R 1×T , set up an embedding matrix Aq t Mapping to embedding vector d aq is the dimension of the embedding vector when doing the problem: S2122: Calculate X i The time embedding vectors of all questions in the problem are combined into the time embedding matrix S2123: will s i Answer q t The time interval between questions bq t Represented as one-hot encoding O(bq t )∈R 1×T , set up an embedding matrix bq t Mapping to embedding vector d bq is the dimension of the embedding vector of the time interval between questions: S2124: Calculate X i The time interval embedding vectors of all questions in the question are merged into the time interval embedding matrix S213, initialize the embedding vector of knowledge mastery level and answer status: S2131: Create vector Used to indicate s i The level of knowledge mastered at time t, d h yes Dimensions; S2132: For s i Answer q t The answer situation of t , a t Mapping to embedding vector d a is the dimension of the embedding vector of the answer, When the element is 1, it means the answer is correct, and when the element is 0, it means the answer is wrong.

6. A knowledge tracking method combining difficulty characteristics and time correlation characteristics according to claim 5, characterized in that: The specific steps of S22 are as follows: S221, build question embedding based on question difficulty: for s i The answer record at time t (q t ,a t ), using the problem difficulty embedding matrix QD described in S123 to strengthen the problem q t The information representation, combined with q t Embedded question number The association weight between questions and knowledge points and question difficulty embedding Output q through the multi-layer perceptron t Title embedding The calculation is as follows: in, is a matrix concatenation operation, is the weight matrix, is the bias term; S222, calculate the difficulty of personalized questions that match the student's knowledge level: at time t, input s i In answering q t Previous knowledge level To the personalized question difficulty calculation module, use q t Title embedding and Calculate the output q t For i Difficulty of personalized questions d sq It's SQ t The dimensions are calculated as follows: in, Yes i Answer q t The previous knowledge level, tanh is a nonlinear activation function, σ is the sigmoid activation function, is the weight matrix, is the bias term, To calculate q t For i The feature representation of personalized question difficulty, To calculate q t For i The weight information of the difficulty of personalized questions.

7. A knowledge tracking method combining difficulty characteristics and time correlation characteristics according to claim 6, characterized in that: The specific steps of S23 are as follows: S231: Series i Answer q t Embedding vector for time spent on problem solving Embedding vector of time interval between questions and the answer embedding vector Used to indicate s i Performance of the questions The calculation is as follows: S232: Personalize the difficulty of questions Input to the knowledge acquisition degree calculation module, combined with and Calculate the output i The degree of knowledge acquisition The calculation is as follows: in, is the weight matrix, is the bias term, For extracting i The characteristic representation of the degree of knowledge acquisition is To calculate s i The weight information of the degree of knowledge acquisition.

8. The knowledge tracking method combining difficulty feature and time correlation feature according to claim 7, characterized in that: The specific steps of S24 are as follows: S241: Design a learning efficiency calculation module, through students i The learning efficiency is calculated based on the answering situation and the time spent on the questions. i In answering question q t When answering correctly, they think that answering incorrectly is more efficient, and taking a moderate amount of time to answer the questions is more efficient than taking too long or too short a time to answer the questions. t The calculation is as follows: Among them, a is a hyperparameter, σ is the sigmoid activation function, a t Answer questions for students t The answer situation of aq t are students i Answer q t When doing the questions, All students answered q t The average time taken to complete the test; S242: Design a knowledge mastery level update module to input the knowledge acquisition level and knowledge level Go to the knowledge mastery level update module and change l t As a weight, and Perform weighted addition and output the updated knowledge mastery level The calculation method for knowledge mastery level update is as follows: in, For i Answer q t Previous knowledge level, For i Answer q t The subsequent level of knowledge mastery.

9. The knowledge tracking method combining difficulty feature and time correlation feature according to claim 8, characterized in that: The specific steps of S25 are as follows: S251: For i At the time t+1, the knowledge mastery level, combined with q t+1 Title embedding You can get i Answer q t+1 Prediction of answering situation y t+1 , calculated as follows: Among them, y t+1 For the predicted i Answer q t+1 The correct probability is when y t+1 When ≥β, it is considered that s i Answer correctly, when y t+1 <β, it is considered that s i The answer is wrong, and β is a manually set threshold; S252: If t+1≤T, jump to S22 to continue processing the answer record (q t+1 ,a t+1 ); otherwise, output s i Knowledge level 10. The knowledge tracking method combining difficulty feature and time correlation feature according to claim 1, characterized in that: The specific steps of S3 are as follows: S31: Divide the student answer data set into a training set and a test set according to a certain ratio, initialize the training parameters and model hyperparameters, and input the data of the training set into the knowledge tracking model for training; S32: Use the cross entropy loss function to calculate the student's actual answer situation a t and the predicted value y t The loss value L between is calculated as follows: Among them, θ represents all trainable parameters and embeddings in the model, λ θ To regularize the hyperparameters, the training ends when the accuracy and loss value of the model tend to be stable. After the training, the model is tested using the test set to confirm the actual prediction ability of the model; The specific steps of S4 are as follows: S41: After the model training is completed, a student's answer sequence is input into the model, and after being processed by the model, the student's knowledge mastery level is output; S42: For knowledge points that students have a weak grasp of, questions that have not been answered by students and that contain knowledge points that students have a weak grasp of are selected from the question list to form a question sequence and recommended to students for answering. When students answer the recommended question sequence, the model also predicts the students' answers and updates the students' knowledge mastery level.

Citation Information

Patent Citations

  • Comprehensive knowledge tracking method for enhancing difficulty of test questions

    CN115795015A

  • Deep knowledge tracing with transformers

    US20210390873A1