KR102659336B1 - Method, program, and device for quantifying correlation between units - Google Patents

Method, program, and device for quantifying correlation between units Download PDF

Info

Publication number
KR102659336B1
KR102659336B1 KR1020230075514A KR20230075514A KR102659336B1 KR 102659336 B1 KR102659336 B1 KR 102659336B1 KR 1020230075514 A KR1020230075514 A KR 1020230075514A KR 20230075514 A KR20230075514 A KR 20230075514A KR 102659336 B1 KR102659336 B1 KR 102659336B1
Authority
KR
South Korea
Prior art keywords
unit
groups
problem groups
processor
present disclosure
Prior art date
Application number
KR1020230075514A
Other languages
Korean (ko)
Inventor
이민재
남진우
Original Assignee
주식회사 튜링
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 튜링 filed Critical 주식회사 튜링
Priority to KR1020230075514A priority Critical patent/KR102659336B1/en
Application granted granted Critical
Publication of KR102659336B1 publication Critical patent/KR102659336B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/20Education
    • G06Q50/205Education administration or guidance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Educational Technology (AREA)
  • Mathematical Optimization (AREA)
  • General Health & Medical Sciences (AREA)
  • Pure & Applied Mathematics (AREA)
  • Educational Administration (AREA)
  • Computational Mathematics (AREA)
  • Primary Health Care (AREA)
  • Operations Research (AREA)
  • Mathematical Analysis (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Algebra (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Development Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Quality & Reliability (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

본 개시의 몇몇 실시예에 의하면 단원 간 연관성을 수치화하는 방법이 개시된다. 상기 방법은: 제1 단원의 문제 그룹들 일부에 대응하는 제2 단원 문제 그룹들 각각에 대한 정답률 예측 단계; 상기 제2 단원의 문제 그룹들 각각에 대한 예측 정답률의 평균값을 산출하는 단계; 상기 평균값을 상기 제1 단원에 대한 상기 제2 단원의 상관값으로 정의하는 단계; 및 세로축 상의 제1 단원과 가로축 상의 제2 단원이 교차하는 지점에 상기 상관값을 대응하는 단계;를 포함한다.According to some embodiments of the present disclosure, a method for quantifying the relationship between units is disclosed. The method includes: predicting a correct answer rate for each of the second unit problem groups corresponding to some of the first unit problem groups; calculating the average value of the predicted correct rate for each problem group of the second unit; defining the average value as a correlation value of the second unit with respect to the first unit; and corresponding the correlation value to a point where the first unit on the vertical axis and the second unit on the horizontal axis intersect.

Description

단원 간 연관성을 수치화하는 방법, 프로그램, 및 장치{METHOD, PROGRAM, AND DEVICE FOR QUANTIFYING CORRELATION BETWEEN UNITS}{METHOD, PROGRAM, AND DEVICE FOR QUANTIFYING CORRELATION BETWEEN UNITS}

본 발명은 단원 간 연관성을 수치화하는 방법에 관한 것으로, 구체적으로 단원 간의 연관성을 수치화하여 정답을 맞힐 확률을 예측하는 능력을 향상하는 방법, 프로그램, 및 장치에 관한 것이다. The present invention relates to a method for quantifying the correlation between units, and more specifically, to a method, program, and device for improving the ability to predict the probability of correct answer by quantifying the correlation between units.

통상적으로, 교육 제공 방법은, 학원이나 방문 등을 통한 오프라인 교육 또는 이러닝(E-learning)과 같은 ICT(Information and Communication Technology)를 활용하여 학습할 수 있는 온라인 교육으로 나눌 수 있다. 이러한 교육 방법들은, 다수의 학습자(또는 사용자)에게 제공되기 위해 일반적으로 평균 학습자의 수준에 맞춰진 학습자료와 학습 서비스를 제공한다.Typically, methods of providing education can be divided into offline education through academies or visits, or online education that can be learned using ICT (Information and Communication Technology) such as e-learning. These educational methods generally provide learning materials and learning services tailored to the average learner's level in order to serve a large number of learners (or users).

예를 들어, 학원 교육의 경우, 개개인의 학업 수준과는 상관없이 다수의 학습자들을 대상으로 하여 동일한 교육 내용을 제공하는 경우가 대부분이기 때문에, 개개인의 학업수준 또는 각 학교별로 출제되는 시험의 경향이나 난이도 수준에 맞는 학습을 제공받기 어렵다.For example, in the case of academy education, in most cases, the same educational content is provided to a large number of learners regardless of each individual's academic level, so the individual's academic level or the tendency of tests administered by each school It is difficult to receive learning that matches the level of difficulty.

또한, 오프라인 교육의 경우에는 학습자(또는 사용자)가 학습 서비스를 제공받기 위해서는 학원으로 이동해야 하기 때문에, 그에 따른 상당한 시간과 노력이 소요된다.Additionally, in the case of offline education, learners (or users) must travel to an academy to receive learning services, which requires considerable time and effort.

근래에 들어, ICT의 발달로 인해 오프라인 교육의 문제점을 해결할 수 있는 온라인 교육의 제공이 보편화되었다. 이러닝(E-learning)은, 학습자(또는 사용자)가 학습자 단말기를 통해 원하는 시간과 장소에서 학습할 수 있으며, 학습내용에 대한 예상문제를 풀어볼 수 있는 환경을 제공한다.In recent years, due to the development of ICT, the provision of online education that can solve the problems of offline education has become common. E-learning provides an environment in which learners (or users) can learn at the desired time and place through the learner's terminal and solve expected problems about the learning content.

또한, 학습자가 학습방법과 학습진도에 대해 결정할 수 있기 때문에, 시간과 장소에 구애되지 않고, 수준별 학습이 가능하다.Additionally, because the learner can decide on the learning method and learning progress, learning by level is possible regardless of time and place.

다만, 성향 또는 개인별 취약점에 맞춘 학습자료 및 학습 서비스 제공하는 것에는 한계가 있다. 국가 규모 학업성취도 평가에서도 보이듯이, 각 학교마다 학생들의 평균 학업수준이 다르며, 학교별로 출제되는 시험문제의 난이도와 유형이 다르다.However, there are limitations in providing learning materials and learning services tailored to tendencies or individual vulnerabilities. As can be seen in the national academic achievement evaluation, the average academic level of students at each school is different, and the difficulty and type of test questions for each school are different.

교사는 학생들의 평균 학업수준 및 환경 그리고, 동료 교사들의 성향을 고려하여 시험문제를 출제하기 때문에, 각 학교의 기출문제는 그 학교만의 고유한 성향을 갖게 된다.Because teachers write test questions taking into account the students' average academic level and environment, as well as the tendencies of their fellow teachers, each school's past questions have their own unique tendencies.

따라서, 이와 같이 각 학교별 시험문제 출제 성향이 모두 다르기 때문에, 각 학교별로 출제되는 시험의 난이도 또는 출제 유형에 맞는 예상문제나 학습 서비스를 제공하기 어렵다. 또한, 학습자들 각각이 가지고 있는 취약점이 각기 다르기 때문에, 기존의 온라인 교육을 통해서는 학습 효율을 개선시키는데 어려움이 있다.Therefore, because each school's propensity to present test questions is different, it is difficult to provide expected questions or learning services tailored to the difficulty level or type of test questions presented by each school. Additionally, because each learner has different vulnerabilities, it is difficult to improve learning efficiency through existing online education.

따라서, 기존 교육 제공 방법들의 문제점들을 극복하고, 학습자의 학습 효율을 향상시킬 수 있는 사용자 맞춤형 문제를 제공할 필요성이 있고, 맞춤형 문제를 제공하기 위해 사용자가 정답을 맞힐 확률을 산출하는 기술을 개발할 필요성이 절실한 실정이다.Therefore, there is a need to overcome the problems of existing education provision methods and provide user-customized problems that can improve the learning efficiency of learners, and there is a need to develop technology to calculate the probability of the user getting the correct answer in order to provide customized problems. This is a desperate situation.

한편, 수학의 경우 타 과목에 비해 단원끼리 내용 상 관련되는 경우가 많고 특정 단원에 대하여 학습이 불충분하면 타 단원에 대해서도 학습이 어려워지거나 문제풀이에 어려움을 겪는 특성을 가진다. 이처럼 수학과 같이 단원 간 관련성이 높은 과목의 경우에는 단원 간의 특성을 고려하면 정답률 예측력을 향상할 수 있음에도 불구하고 아직까지 이에 대한 연구개발 현황이나 문헌을 찾기 어려운 실정이다. Meanwhile, in the case of mathematics, compared to other subjects, units are often related in terms of content, and if learning for a specific unit is insufficient, learning for other units becomes difficult or problems are difficult to solve. In the case of subjects such as mathematics, where there is a high correlation between units, the prediction power of the correct answer rate can be improved by considering the characteristics of each unit, but it is still difficult to find research and development status or literature on this.

대한민국 특허등록 제10-2245286호 (2021.04.21 등록)Republic of Korea Patent Registration No. 10-2245286 (registered on April 21, 2021)

본 발명은 상기 문제점을 해결하기 위하여 안출된 것으로, 본 발명의 목적은 단원 간 연관성을 수치화하고 시각화하는 방법, 프로그램, 및 장치를 제공하는 것이다. The present invention was created to solve the above problems, and the purpose of the present invention is to provide a method, program, and device for quantifying and visualizing the relationship between units.

본 발명을 통해 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The technical problems to be achieved through the present invention are not limited to the technical problems mentioned above, and other technical problems not mentioned can be clearly understood by those skilled in the art from the description below. It could be.

본 개시의 몇몇 실시예에 의한 단원 간 연관성을 수치화하는 방법은: 제1 단원의 문제 그룹들 일부에 대응하는 제2 단원 문제 그룹들 각각에 대한 정답률 예측 단계; 상기 제2 단원의 문제 그룹들 각각에 대한 예측 정답률의 평균값을 산출하는 단계; 상기 평균값을 상기 제1 단원에 대한 상기 제2 단원의 상관값으로 정의하는 단계; 및 세로축 상의 제1 단원과 가로축 상의 제2 단원이 교차하는 지점에 상기 상관값을 대응하는 단계;를 포함할 수 있다.A method of quantifying the inter-unit correlation according to some embodiments of the present disclosure includes: predicting the percentage of correct answers for each of the second unit problem groups corresponding to some of the first unit problem groups; calculating the average value of the predicted correct rate for each problem group of the second unit; defining the average value as a correlation value of the second unit with respect to the first unit; and corresponding the correlation value to a point where the first unit on the vertical axis and the second unit on the horizontal axis intersect.

본 개시의 몇몇 실시예에 따르면, 상기 정답률 예측 단계는, 상기 장치의 저장부에 저장된 상기 제1 단원의 문제 그룹들 중 제1 특징에 해당하는 문제 그룹들을 선별하는 단계; 제1 단원에서 선별된 문제 그룹들을 표본으로 하여 문제 그룹을 n번 추출하는 단계; 및 추출된 제1 단원의 문제 그룹 세트에 대응하는 제2 단원 문제 그룹들 각각에 대하여 예측 정답률을 산출하는 단계;를 포함할 수 있다. According to some embodiments of the present disclosure, the step of predicting the correct answer rate may include selecting problem groups corresponding to a first characteristic among problem groups of the first unit stored in the storage of the device; Extracting problem groups n times using the problem groups selected in the first unit as samples; and calculating a predicted correct answer rate for each of the second unit problem groups corresponding to the extracted first unit problem group set.

본 개시의 몇몇 실시예에 따르면, 상기 선별하는 단계는 상기 장치의 저장부에 저장된 문제 그룹들의 난이도를 확인하는 단계를 포함하고, 상기 제1 특징은 제1 난이도 구간일 수 있다.According to some embodiments of the present disclosure, the selecting step includes checking the difficulty level of problem groups stored in the storage unit of the device, and the first feature may be a first difficulty section.

본 개시의 몇몇 실시예에 따르면, 상기 추출은 복원추출일 수 있다.According to some embodiments of the present disclosure, the extraction may be restoration extraction.

본 개시의 몇몇 실시예에 따르면, 상기 예측 정답률을 산출하는 단계는, 추출된 제1 단원의 문제 그룹 세트를 제1 시퀀스로 정의하는 단계; 및 상기 제1 시퀀스를 히스토리로 하여 상기 제2 단원의 각 문제 그룹들에 대한 예측 정답률을 산출하는 단계;를 포함할 수 있다.According to some embodiments of the present disclosure, calculating the predicted correct rate includes defining the extracted problem group set of the first unit as a first sequence; and calculating a predicted correct answer rate for each problem group of the second unit using the first sequence as history.

본 개시의 몇몇 실시예에 따르면, 상기 예측 정답률은 지식 추적 모델을 이용하여 산출될 수 있다.According to some embodiments of the present disclosure, the predicted correct rate may be calculated using a knowledge tracking model.

본 개시의 몇몇 실시예에 따르면, 상기 지식 추적 모델을 학습하는 단계를 더 포함하고, 상기 지식 추적 모델을 학습하는 단계는, 추출된 문제 그룹 세트를 인풋 시퀀스로 정의하는 단계; 상기 인풋 시퀀스 내에 포함된 문제 그룹들 서로에 대한 관련도를 수치화하여 어텐션 정보들을 포함하는 어텐션 정보 셋을 산출하는 단계; 상기 어텐션 정보 셋에 대해 가이드 마스킹을 적용하는 단계; 및 상기 가이드 마스킹이 적용된 상기 어텐션 정보 셋을 사용하여 상기 지식 추적 모델을 학습하는 단계를 포함할 수 있다.According to some embodiments of the present disclosure, it further includes learning the knowledge tracking model, wherein the learning the knowledge tracking model includes defining an extracted problem group set as an input sequence; Calculating an attention information set including attention information by quantifying the degree of relationship between problem groups included in the input sequence; Applying guide masking to the attention information set; And it may include learning the knowledge tracking model using the attention information set to which the guide masking is applied.

본 개시의 몇몇 실시예에 따르면, 상기 가이드 마스킹은, 상기 장치의 저장부에 저장된 단원 간의 기 설정된 연관성, 상기 문제 그룹들에 대한 정보, 및/또는 상기 문제 그룹들에 대한 학습 기록 중 적어도 하나에 기초하여 설정될 수 있다.According to some embodiments of the present disclosure, the guide masking is performed based on at least one of a preset association between units stored in the storage of the device, information about the problem groups, and/or learning records about the problem groups. It can be set based on

본 개시의 몇몇 실시예에 따른 컴퓨터 판독가능 저장 매체 저장된 컴퓨터 프로그램은 장치의 프로세서에서 실행되는 경우, 장치의 프로세서에 의해 단원 간 연관성을 수치화하는 단계들을 수행하며, 상기 단계들은: 제1 단원의 문제 그룹들 일부에 대응하는 제2 단원 문제 그룹들 각각에 대한 정답률 예측 단계; 상기 제2 단원의 문제 그룹들 각각에 대한 예측 정답률의 평균값을 산출하는 단계; 상기 평균값을 상기 제1 단원에 대한 상기 제2 단원의 상관값으로 정의하는 단계; 및 세로축 상의 제1 단원과 가로축 상의 제2 단원이 교차하는 지점에 상기 상관값을 대응하는 단계;를 포함할 수 있다.A computer program stored in a computer-readable storage medium according to some embodiments of the present disclosure, when executed on a processor of a device, performs steps of quantifying the relationship between units by the processor of the device, the steps comprising: Problem of the first unit Predicting the percentage of correct answers for each of the second unit problem groups corresponding to some of the groups; calculating the average value of the predicted correct rate for each problem group of the second unit; defining the average value as a correlation value of the second unit with respect to the first unit; and corresponding the correlation value to a point where the first unit on the vertical axis and the second unit on the horizontal axis intersect.

본 개시의 몇몇 실시예에 따르면, 상기 정답률 예측 단계는, 상기 장치의 저장부에 저장된 상기 제1 단원의 문제 그룹들 중 제1 특징에 해당하는 문제 그룹들을 선별하는 단계; 제1 단원에서 선별된 문제 그룹들을 표본으로 하여 문제 그룹을 n번 추출하는 단계; 및 추출된 제1 단원의 문제 그룹 세트에 대응하는 제2 단원 문제 그룹들 각각에 대하여 예측 정답률을 산출하는 단계;를 포함할 수 있다.According to some embodiments of the present disclosure, the step of predicting the correct answer rate may include selecting problem groups corresponding to a first characteristic among problem groups of the first unit stored in the storage of the device; Extracting problem groups n times using the problem groups selected in the first unit as samples; and calculating a predicted correct answer rate for each of the second unit problem groups corresponding to the extracted first unit problem group set.

본 개시의 몇몇 실시예에 따르면, 상기 선별하는 단계는 상기 장치의 저장부에 저장된 문제 그룹들의 난이도를 확인하는 단계를 포함하고, 상기 제1 특징은 제1 난이도 구간일 수 있다.According to some embodiments of the present disclosure, the selecting step includes checking the difficulty level of problem groups stored in the storage unit of the device, and the first feature may be a first difficulty section.

본 개시의 몇몇 실시예에 따르면, 상기 추출은 복원추출일 수 있다.According to some embodiments of the present disclosure, the extraction may be restoration extraction.

본 개시의 몇몇 실시예에 따르면, 상기 예측 정답률을 산출하는 단계는, 추출된 제1 단원의 문제 그룹 세트를 제1 시퀀스로 정의하는 단계; 및 상기 제1 시퀀스를 히스토리로 하여 상기 제2 단원의 각 문제 그룹들에 대한 예측 정답률을 산출하는 단계;를 포함할 수 있다.According to some embodiments of the present disclosure, calculating the predicted correct rate includes defining the extracted problem group set of the first unit as a first sequence; and calculating a predicted correct answer rate for each problem group of the second unit using the first sequence as history.

본 개시의 몇몇 실시예에 따르면, 상기 예측 정답률은 지식 추적 모델을 이용하여 산출될 수 있다.According to some embodiments of the present disclosure, the predicted correct rate may be calculated using a knowledge tracking model.

본 개시의 몇몇 실시예에 따른 단원 간 연관성을 수치화하는 장치는: 적어도 하나의 프로그램 명령이 저장된 저장부; 및 상기 적어도 하나의 프로그램 명령을 수행하는 프로세서;를 포함하고, 상기 프로세서는, 제1 단원의 문제 그룹들 일부에 대응하는 제2 단원 문제 그룹들 각각에 대한 정답률을 예측하고, 상기 제2 단원의 문제 그룹들 각각에 대한 예측 정답률의 평균값을 산출하고, 상기 평균값을 상기 제1 단원에 대한 상기 제2 단원의 상관값으로 정의하고, 세로축 상의 제1 단원과 가로축 상의 제2 단원이 교차하는 지점에 상기 상관값을 대응할 수 있다.An apparatus for quantifying the relationship between units according to some embodiments of the present disclosure includes: a storage unit storing at least one program command; and a processor for executing the at least one program command, wherein the processor predicts a correct answer rate for each of the second unit problem groups corresponding to some of the first unit problem groups, and The average value of the predicted correct rate for each problem group is calculated, the average value is defined as the correlation value of the second unit with respect to the first unit, and the average value is defined as the correlation value of the second unit with respect to the first unit, and is located at the point where the first unit on the vertical axis and the second unit on the horizontal axis intersect. The above correlation value can be corresponded.

본 개시의 몇몇 실시예에 따르면, 상기 정답률 예측하도록 실행됨에 있어, 상기 장치의 저장부에 저장된 상기 제1 단원의 문제 그룹들 중 제1 특징에 해당하는 문제 그룹들을 선별하고, 제1 단원에서 선별된 문제 그룹들을 표본으로 하여 문제 그룹을 n번 추출하고, 추출된 제1 단원의 문제 그룹 세트에 대응하는 제2 단원 문제 그룹들 각각에 대하여 예측 정답률을 산출할 수 있다.According to some embodiments of the present disclosure, in predicting the correct rate, problem groups corresponding to the first feature are selected from among the problem groups of the first unit stored in the storage of the device, and selected in the first unit. Using the selected problem groups as samples, problem groups can be extracted n times, and the predicted correct answer rate can be calculated for each of the second unit problem groups corresponding to the extracted first unit problem group set.

본 개시의 몇몇 실시예에 따르면, 상기 문제 그룹들을 선별하도록 실행됨에 있어, 상기 장치의 저장부에 저장된 문제 그룹들의 난이도를 확인하고, 상기 제1 특징은 제1 난이도 구간일 수 있다.According to some embodiments of the present disclosure, when selecting the problem groups, the difficulty level of the problem groups stored in the storage unit of the device is checked, and the first feature may be a first difficulty section.

본 개시의 몇몇 실시예에 따르면, 상기 추출은 복원추출일 수 있다.According to some embodiments of the present disclosure, the extraction may be restoration extraction.

본 개시의 몇몇 실시예에 따르면, 상기 예측 정답률을 산출하도록 실행됨에 있어, 추출된 제1 단원의 문제 그룹 세트를 제1 시퀀스로 정의하고, 상기 제1 시퀀스를 히스토리로 하여 상기 제2 단원의 각 문제 그룹들에 대한 예측 정답률을 산출할 수 있다.According to some embodiments of the present disclosure, in calculating the predicted correct rate, the extracted problem group set of the first unit is defined as a first sequence, and each of the second unit is defined using the first sequence as a history. The predicted correct rate for problem groups can be calculated.

본 개시의 몇몇 실시예에 따르면, 상기 예측 정답률은 지식 추적 모델을 이용하여 산출될 수 있다.According to some embodiments of the present disclosure, the predicted correct rate may be calculated using a knowledge tracking model.

본 개시의 실시예들에 의하면, 단원 간 연관성을 수치화하고, 시각화함으로써, 단원 간의 연관성을 직관적으로 확인할 수 있다. 또한, 단원 간의 연관성에 기반하여 지식추적모델의 예측력을 향상시킬 수 있다.According to embodiments of the present disclosure, the correlation between units can be intuitively confirmed by quantifying and visualizing the correlation between units. Additionally, the predictive power of the knowledge tracking model can be improved based on the correlation between units.

본 개시를 통해 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects that can be obtained through the present disclosure are not limited to the effects mentioned above, and other effects not mentioned can be clearly understood by those skilled in the art from the description below. will be.

본 개시의 다양한 실시예들이 도면들을 참조로 설명되며, 여기서 유사한 참조 번호들은 총괄적으로 유사한 구성요소들을 지칭하는데 이용된다. 이하의 실시예에서, 설명 목적을 위해, 다수의 특정 세부사항들이 하나 이상의 실시예들의 총체적 이해를 제공하기 위해 제시된다. 그러나, 그러한 실시예(들)가 이러한 구체적인 세부사항들 없이 실시될 수 있음은 명백할 것이다.
도 1은 본 개시의 몇몇 실시예에 따른 단원 간 연관성을 수치화하고 이를 시각화하는 장치를 설명하기 위한 블록도이다.
도 2는 본 개시의 몇몇 실시예에 따라 단원 간 연관성을 수치화하고, 수치화된 값을 이용하여 단원 간 연관성을 시각화하는 방법의 일례를 설명하기 위한 흐름도이다.
도 3은 도 2의 정답률을 예측하는 방법의 일례를 설명하기 위한 도면이다.
도 4는 본 개시의 몇몇 실시예에 따라 정답률을 예측하고, 예측 정답률의 평균값을 산출하는 방법의 일례를 설명하기 위한 도면이다.
도 5는 본 개시의 몇몇 실시예에 따라 단원 간 연관성을 시각화한 일례를 설명하기 위한 도면이다.
도 6은 본 개시의 몇몇 실시예에 따른 지식 추적 모델을 학습하는 단계를 설명하기 위한 흐름도이다.
도 7은 도 6의 지식 추적 모델을 학습하는 방법의 일례를 설명하기 위한 도면이다.
도 8은 본 개시의 몇몇 실시예에 따른 가이드 마스킹의 일 예를 나타내는 도면이다.
Various embodiments of the present disclosure are described with reference to the drawings, where like reference numerals are used to collectively refer to like elements. In the following examples, for purposes of explanation, numerous specific details are set forth to provide a thorough understanding of one or more embodiments. However, it will be clear that such embodiment(s) may be practiced without these specific details.
1 is a block diagram illustrating a device for quantifying and visualizing the relationship between units according to some embodiments of the present disclosure.
FIG. 2 is a flowchart illustrating an example of a method of quantifying the correlation between units and visualizing the correlation between units using the numerical values, according to some embodiments of the present disclosure.
Figure 3 is a diagram for explaining an example of a method for predicting the percentage of correct answers in Figure 2.
FIG. 4 is a diagram illustrating an example of a method for predicting a correct rate and calculating an average value of the predicted correct rate according to some embodiments of the present disclosure.
FIG. 5 is a diagram illustrating an example of visualizing the relationship between units according to some embodiments of the present disclosure.
Figure 6 is a flowchart illustrating the steps of learning a knowledge tracking model according to some embodiments of the present disclosure.
FIG. 7 is a diagram illustrating an example of a method for learning the knowledge tracking model of FIG. 6.
FIG. 8 is a diagram illustrating an example of guide masking according to some embodiments of the present disclosure.

이하에서는 도면을 참조하여 본 개시에 따른 장치 및 장치의 제어 방법의 다양한 실시예(들)를 상세하게 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. Hereinafter, various embodiment(s) of the device and the control method of the device according to the present disclosure will be described in detail with reference to the drawings. However, regardless of the reference numerals, identical or similar components are assigned the same reference numbers and overlapping The explanation will be omitted.

본 개시의 목적 및 효과, 그리고 그것들을 달성하기 위한 기술적 구성들은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 본 개시의 하나 이상의 실시예들을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 개시의 적어도 하나의 실시예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. The purpose and effects of the present disclosure, and technical configurations for achieving them, will become clear by referring to the embodiments described in detail below along with the accompanying drawings. In describing one or more embodiments of the present disclosure, if it is determined that a detailed description of related known technology may obscure the gist of at least one embodiment of the present disclosure, the detailed description will be omitted.

본 개시의 용어들은 본 개시에서의 기능을 고려하여 정의된 용어들로써 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 또한, 첨부된 도면은 본 개시의 하나 이상의 실시예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 개시의 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.The terms in this disclosure are terms defined in consideration of the functions in this disclosure, and may vary depending on the intention or custom of the user or operator. In addition, the attached drawings are only intended to facilitate understanding of one or more embodiments of the present disclosure, and the technical idea of the present disclosure is not limited by the attached drawings, and all changes included in the spirit and technical scope of the present disclosure are not limited. , should be understood to include equivalents or substitutes.

이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 본 개시의 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. The suffixes “module” and “part” for components used in the following description are given or used interchangeably only considering the ease of preparation of the present disclosure, and do not have distinct meanings or roles in themselves.

제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 따라서, 이하에서 언급되는 제1 구성요소는 본 개시의 기술적 사상 내에서 제2 구성 요소가 될 수도 있다. Terms containing ordinal numbers, such as first, second, etc., may be used to describe various components, but the components are not limited by the terms. The above terms are used only for the purpose of distinguishing one component from another. Accordingly, the first component mentioned below may also be the second component within the technical spirit of the present disclosure.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 즉, 달리 특정되지 않거나 단수 형태를 지시하는 것으로 문맥상 명확하지 않은 경우, 본 개시와 청구범위에서 단수는 일반적으로 "하나 또는 그 이상"을 의미하는 것으로 해석되어야 한다. Singular expressions include plural expressions unless the context clearly dictates otherwise. That is, unless otherwise specified or clear from context to indicate a singular form, the singular in this disclosure and claims should generally be construed to mean “one or more.”

본 개시에서, "포함하는", "포함한다" 또는 "가지다" 등의 용어는 본 개시상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In the present disclosure, terms such as “comprising,” “includes,” or “have” are intended to indicate the presence of features, numbers, steps, operations, components, parts, or combinations thereof described in the present disclosure. It should be understood that this does not exclude in advance the presence or addition of one or more other features, numbers, steps, operations, components, parts, or combinations thereof.

본 개시에서 "또는"이라는 용어는 배타적 의미의 "또는"이 아니라 내포적 의미의 "또는"으로 이해되어야 한다. 즉, 달리 특정되지 않거나 문맥상 명확하지 않은 경우에, "X는 A 또는 B를 이용한다"는 자연적인 내포적 치환 중 하나를 의미하는 것으로 의도된다. 즉, X가 A를 이용하거나; X가 B를 이용하거나; 또는 X가 A 및 B 모두를 이용하는 경우, "X는 A 또는 B를 이용한다"가 이들 경우들 어느 것으로도 적용될 수 있다. 또한, 본 개시에 사용된 "및/또는"이라는 용어는 열거된 관련 아이템들 중 하나 이상의 아이템의 가능한 모든 조합을 지칭하고 포함하는 것으로 이해되어야 한다. In the present disclosure, the term “or” should be understood not as “or” in the exclusive sense but as “or” in the connotative sense. That is, unless otherwise specified or clear from context, “X utilizes A or B” is intended to mean one of the natural implicit substitutions. That is, either X uses A; Either X uses B; Or, if X uses both A and B, “X uses A or B” can apply to either of these cases. Additionally, the term “and/or” as used in this disclosure should be understood to refer to and include all possible combinations of one or more of the related listed items.

본 개시에서 사용되는 용어 "정보" 및 "데이터"는 서로 상호 교환 가능하도록 사용될 수 있다. As used in this disclosure, the terms “information” and “data” may be used interchangeably.

다른 정의가 없다면, 본 개시에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 개시의 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 특별히 정의되어 있지 않는 한 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used in this disclosure may be used with meanings that can be commonly understood by those skilled in the art. Additionally, terms defined in commonly used dictionaries are not overly interpreted unless specifically defined.

그러나 본 개시는 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있다. 단지 본 개시의 몇몇 실시예들은 본 개시의 기술분야에서 통상의 지식을 가진 자에게 본 개시의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 개시는 청구항의 범주에 의해 정의될 뿐이다. 그러므로 그 정의는 본 개시 전반에 걸친 내용을 토대로 내려져야 할 것이다.However, the present disclosure is not limited to the embodiments disclosed below and may be implemented in various different forms. Only some embodiments of the present disclosure are provided to fully inform those skilled in the art of the present disclosure of the scope of the present disclosure, and the present disclosure is only defined by the scope of the claims. Therefore, the definition should be made based on the content throughout this disclosure.

본 개시의 장치의 프로세서는 서로 다른 단원 간의 연관성을 수치화할 수 있고, 수치화된 값을 이용하여 문제의 정답률 예측력을 향상시킬 수 있다. 이하에서는 도 1 내지 도 5를 참조하여 서로 다른 단원 간의 연관성을 산출하여 이를 시각화하는 방법을 이하 설명한다.The processor of the device of the present disclosure can quantify the correlation between different units, and use the quantified values to improve the ability to predict the percentage of correct answers to a problem. Hereinafter, a method of calculating and visualizing the correlation between different units will be described with reference to FIGS. 1 to 5.

도 1은 본 개시의 몇몇 실시예에 따른 단원 간 연관성을 수치화하고 이를 시각화하는 장치를 설명하기 위한 블록도이다.1 is a block diagram illustrating a device for quantifying and visualizing the relationship between units according to some embodiments of the present disclosure.

도 1을 참조하면, 단원 간 연관성을 수치화하고 이를 시각화하는 장치(100)는 저장부(110), 프로세서(120), 및 통신부(130)를 포함할 수 있다. 도 1에 도시된 구성요소들은 장치(100)를 구현하는데 있어서 필수적인 것은 아니어서, 본 개시에서 설명되는 장치(100)는 위에서 열거된 구성요소들 보다 많거나, 또는 적은 구성요소들을 가질 수 있다. Referring to FIG. 1, the device 100 that quantifies the relationship between units and visualizes it may include a storage unit 110, a processor 120, and a communication unit 130. The components shown in FIG. 1 are not essential for implementing the device 100, so the device 100 described in this disclosure may have more or less components than those listed above.

본 개시의 장치(100)의 각 구성요소는 실제 구현되는 장치(100)의 사양에 따라 통합, 추가, 또는 생략될 수 있다. 즉, 필요에 따라, 2 이상의 구성요소가 하나의 구성요소로 합쳐지거나 하나의 구성요소가 2 이상의 구성요소로 세분화될 수 있다. 또한, 각 블록에서 수행하는 기능은 본 개시의 실시예를 설명하기 위한 것이며, 그 구체적인 동작이나 장치는 본 발명의 권리범위를 제한하지 아니한다.Each component of the device 100 of the present disclosure may be integrated, added, or omitted depending on the specifications of the device 100 that is actually implemented. That is, as needed, two or more components may be combined into one component or one component may be subdivided into two or more components. In addition, the functions performed by each block are for explaining the embodiments of the present disclosure, and the specific operations or devices do not limit the scope of the present invention.

본 개시에서 설명되는 장치(100)는 데이터(data), 콘텐츠(content), 서비스(service) 및 애플리케이션(application) 등을 송신 및 수신 중 적어도 하나 이상을 수행하는 모든 디바이스를 포함할 수 있다. The device 100 described in this disclosure may include all devices that perform at least one of transmitting and receiving data, content, services, and applications.

본 개시의 장치(100)는 유/무선 네트워크(wire/wireless network)를 통하여 다른 장치, 외부 서버(external server) 등과 페어링 또는 연결(pairing or connecting) 가능하며, 이를 통해 소정 데이터를 송/수신할 수 있다. 이 경우, 장치(100)를 통해 송/수신되는 데이터는 송/수신 전에 변환(converting)될 수 있다. The device 100 of the present disclosure is capable of pairing or connecting to other devices, external servers, etc. through a wired/wireless network, and can transmit/receive predetermined data through this. You can. In this case, data transmitted/received through the device 100 may be converted before transmission/reception.

본 개시의 장치(100)에는 예를 들어, 서버(server), PC(Personal Computer), 마이크로프로세서, 메인프레임 컴퓨터, 디지털 프로세서, 디바이스 제어기 등과 같은 고정형 디바이스(standing device) 스마트 폰(Smart Phone), 태블릿 PC(Tablet PC), 노트북(Notebook) 등과 같은 모바일 디바이스(mobile device or handheld device)가 모두 포함될 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. The device 100 of the present disclosure includes, for example, a standing device such as a server, a personal computer (PC), a microprocessor, a mainframe computer, a digital processor, a device controller, a smart phone, All mobile devices (mobile devices or handheld devices) such as tablet PCs, laptops, etc. may be included. However, the present disclosure is not limited to this.

본 개시에서, "서버"라 함은, 다양한 종류의 사용자 단말기 즉, 클라이언트(client)로 데이터를 공급 또는 그로부터 데이터를 수신하는 장치 혹은 시스템을 의미한다. 서버로 예컨대, 웹 페이지(web page), 웹 컨텐트 또는 웹 서비스(web content or web service)를 제공하는 웹 서버(Web server)나 포털 서버(portal server), 광고 데이터(advertising data)를 제공하는 광고 서버(advertising server), 컨텐트를 제공하는 컨텐트 서버(content server), SNS(Social Network Service)를 제공하는 SNS 서버, 제조업체(manufacturer)에서 제공하는 서비스 서버(service server), VoD(Video on Demand)나 스트리밍(streaminng) 서비스 제공을 위한 MVPD(Multichannel Video Programming Distributor), 유료 서비스(pay service) 등을 제공하는 서비스 서버 등이 포함될 수 있다.In this disclosure, “server” refers to a device or system that supplies data to or receives data from various types of user terminals, that is, clients. A server, for example, a web server or portal server that provides web pages, web content or web services, or an advertisement that provides advertising data. Advertising server, content server providing content, SNS server providing SNS (Social Network Service), service server provided by the manufacturer, VoD (Video on Demand) or It may include an MVPD (Multichannel Video Programming Distributor) for providing streaming services, a service server for providing paid services, etc.

본 개시에서 장치(100)로 명명하는 경우, 그 의미는 문맥에 따라 서버를 의미하나, 고정형 디바이스 또는 모바일 디바이스를 의미할 수도 있고 특별히 언급하지 않는다면 모두 포함하는 의미로 사용될 수도 있다. In the present disclosure, when the name device 100 is used, it means a server depending on the context, but may also mean a fixed device or a mobile device, and may be used to include all of them unless specifically mentioned.

저장부(110)는, 장치(100)의 다양한 기능을 지원하는 데이터를 저장할 수 있다. 저장부(110)는 장치(100)에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 장치(100)의 동작을 위한 데이터들, 명령어들, 적어도 하나의 프로그램 명령을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는, 무선 통신을 통해 외부 서버로부터 다운될 수 있다. 또한, 이러한 응용 프로그램 중 적어도 일부는, 장치(100)의 기본적인 기능을 위하여 출고 당시부터 장치(100) 상에 존재할 수도 있다. 한편, 응용 프로그램은, 저장부(110)에 저장되고, 장치(100) 상에 설치되어 프로세서(120)에 의하여 장치(100)의 동작(또는 기능)을 수행하도록 구동될 수 있다. The storage unit 110 may store data supporting various functions of the device 100. The storage unit 110 may store a plurality of application programs (application programs or applications) running on the device 100, data for operation of the device 100, commands, and at least one program command. . At least some of these applications can be downloaded from an external server through wireless communication. Additionally, at least some of these application programs may exist on the device 100 from the time of shipment for the basic functions of the device 100. Meanwhile, the application program may be stored in the storage unit 110, installed on the device 100, and driven by the processor 120 to perform the operation (or function) of the device 100.

저장부(110)는 프로세서(120)에서 생성하거나 결정한 임의의 형태의 정보 및 통신부(130)를 통해 수신한 임의의 형태의 정보를 저장할 수 있다. The storage unit 110 may store any type of information generated or determined by the processor 120 and any type of information received through the communication unit 130.

저장부(110)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), SSD 타입(Solid State Disk type), SDD 타입(Silicon Disk Drive type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(random access memory; RAM), SRAM(static random access memory), 롬(read-only memory; ROM), EEPROM(electrically erasable programmable read-only memory), PROM(programmable read-only memory), 자기 메모리, 자기 디스크 및 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 장치(100)는 인터넷(internet) 상에서 저장부(110)의 저장 기능을 수행하는 웹 스토리지(web storage)와 관련되어 동작될 수도 있다. The storage unit 110 has a flash memory type, a hard disk type, a Solid State Disk type, an SDD type (Silicon Disk Drive type), and a multimedia card micro type. type), card-type memory (e.g. SD or XD memory, etc.), random access memory (RAM), static random access memory (SRAM), read-only memory (ROM), EEPROM (electrically erasable programmable memory) It may include at least one type of storage medium among read-only memory (PROM), programmable read-only memory (PROM), magnetic memory, magnetic disk, and optical disk. The device 100 may be operated in connection with web storage that performs the storage function of the storage unit 110 on the Internet.

본 개시에서 저장부(110)는 복수의 문제들을 저장하고 있을 수 있다. 본 개시의 몇몇 실시예에 따르면, 저장부(110)에 포함된 모든 문제들은 일정 기준에 따라 그룹화될 수 있고, 이에 따라 형성된 문제 그룹들이 저장부(110)에 저장될 수 있다. 따라서, 문제 그룹들 각각은 적어도 하나의 문제를 포함할 수 있다.In the present disclosure, the storage unit 110 may store a plurality of problems. According to some embodiments of the present disclosure, all problems included in the storage unit 110 may be grouped according to certain criteria, and problem groups formed accordingly may be stored in the storage unit 110. Accordingly, each of the problem groups may include at least one problem.

여기서, 복수의 문제들 각각에는 난이도 값이 할당되어 있을 수 있다. 그리고, 복수의 문제들 각각이 복수의 단원 중 어느 단원에 해당하는 문제인지도 복수의 문제들 각각에 할당되어 있을 수 있다. 따라서, 문제 그룹은 단원 및 난이도 값에 따라 그룹화될 수 있다. 즉, 하나의 문제 그룹은 동일한 단원에 포함된 문제들 중 실질적으로 동일한 난이도를 가진 문제들을 포함할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. Here, a difficulty value may be assigned to each of the plurality of problems. Additionally, which unit of the plurality of problems each problem corresponds to may be assigned to each of the plurality of problems. Accordingly, problem groups can be grouped according to unit and difficulty value. In other words, one problem group may include problems with substantially the same level of difficulty among problems included in the same unit. However, the present disclosure is not limited to this.

본 개시에서 문제 그룹에 포함된 문제들은 초등학교, 중학교 및 고등학교 등의 교과목 중 하나와 관련된 문제일 수 있다. 예를 들어, 문제는 초등 수학 문제, 중등 수학 문제, 고등 수학 문제, 초등 국어 문제, 중등 국어 문제 등을 포함할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. Problems included in the problem group in this disclosure may be problems related to one of the subjects such as elementary school, middle school, and high school. For example, problems may include elementary math problems, middle school math problems, high school math problems, elementary Korean language problems, middle school Korean language problems, etc. However, the present disclosure is not limited to this.

본 개시에서 단원은 하나의 주제나 내용을 중심으로 묶인 학습 단위를 의미할 수 있다. 예를 들어, 문제가 고등 수학 문제인 경우, 단원은 다항식의 덧셈, 뺄셈, 곱셈, 나눗셈을 배우는 제1 단원, 다항식과 항등식을 배우는 제2 단원 등으로 구성될 수 있다. 다만, 이는 예시적인 것으로, 본 개시는 이에 한정되는 것은 아니다. 본 개시에서, 제1 단원 및 제2 단원 각각은 위와 같이 특정 단원을 의미하는 것에 한정되는 것이 아니라 전체 단원 중에서 임의의 서로 다른 두 개의 단원을 나타내는 용어로 사용될 수 있다.In the present disclosure, a unit may refer to a learning unit centered around one topic or content. For example, if the problem is an advanced math problem, the unit may consist of a first unit learning addition, subtraction, multiplication, and division of polynomials, a second unit learning polynomials and identities, etc. However, this is an example, and the present disclosure is not limited thereto. In the present disclosure, each of the first unit and the second unit is not limited to meaning a specific unit as above, but may be used as a term to represent any two different units among all units.

본 개시에서 문제 그룹에 할당된 난이도 값은 고정된 값으로, 복수의 문제 그룹들이 저장부(110)에 저장될 때 복수의 문제 그룹들 각각에 할당되어 복수의 문제 그룹들과 같이 저장될 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. In the present disclosure, the difficulty value assigned to a problem group is a fixed value, and when a plurality of problem groups are stored in the storage unit 110, it may be assigned to each of the plurality of problem groups and stored together with the plurality of problem groups. . However, the present disclosure is not limited to this.

본 개시의 몇몇 실시예에 따르면, 복수의 문제 그룹들은 다양한 프로그램 언어(예를 들어, html 등)로 저장되어 있을 수 있다. 본 개시와 같이 프로그램 언어로 복수의 문제 그룹들이 저장되어 있는 경우, 사용자 단말기의 디스플레이부의 크기가 변하면 그에 따라 1줄에 들어가는 텍스트의 수가 조절될 수 있다. According to some embodiments of the present disclosure, a plurality of problem groups may be stored in various program languages (eg, HTML, etc.). When a plurality of problem groups are stored in a program language as in the present disclosure, when the size of the display unit of the user terminal changes, the number of texts contained in one line can be adjusted accordingly.

본 개시에서 문제 그룹의 난이도 값은 기 설정된 서버로부터 제공된 데이터 셋을 분석하여 산출된 값일 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. 기 설정된 서버는 기 설정된 기관의 서버일 수도 있고, 기 설정된 기관과 다른 교육 플랫폼의 서버일 수도 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. In the present disclosure, the difficulty value of a problem group may be a value calculated by analyzing a data set provided from a preset server. However, the present disclosure is not limited to this. The preset server may be a server of a preset institution, or may be a server of an education platform different from the preset institution. However, the present disclosure is not limited to this.

학생들은 자신이 사용 중인 교육 플랫폼에 자신이 시험에서 적은 정답을 입력할 수 있다. 따라서, 교육 플랫폼의 서버는 각 문제 별 정답률을 저장부(110)에 저장하고 있을 수 있고, 기 설정된 기관에서 제공한 문제의 난이도 값을 산출하기 위해서는 복수의 문제 각각의 정답률이 필요하기 때문에 기 설정된 서버는 교육 플랫폼 서버라고 보는 것이 적합하다. Students can enter the correct answers they wrote on the test into the education platform they are using. Therefore, the server of the education platform may store the correct answer rate for each problem in the storage unit 110, and since the correct answer rate for each of a plurality of problems is required to calculate the difficulty value of the problem provided by the preset institution, the preset correct answer rate for each problem may be stored in the storage unit 110. It is appropriate to think of the server as an education platform server.

데이터 셋은 복수의 문제, 복수의 문제 각각의 배점, 복수의 문제의 문제 타입, 복수의 문제 각각의 정답률, 복수의 문제를 풀이한 복수의 사용자들의 등급 별 원점수, 복수의 문제를 풀이한 복수의 사용자들의 등급 별 표준 점수, 복수의 문제를 풀이한 복수의 사용자들의 등급 별 누적 비율, 복수의 문제를 풀이한 복수의 사용자들의 점수의 평균 값 및 복수의 문제를 풀이한 복수의 사용자들의 점수의 표준 편차를 포함할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. The data set includes multiple problems, points allocated to each of multiple problems, problem type of multiple problems, percentage of correct answers to each of multiple problems, raw scores by grade of multiple users who solved multiple problems, and multiple users who solved multiple problems. Standard scores for each level of users, cumulative ratio for each level of multiple users who solved multiple problems, average score of multiple users who solved multiple problems, and standard score of multiple users who solved multiple problems May contain deviations. However, the present disclosure is not limited to this.

프로세서(120)는 응용 프로그램과 관련된 동작 외에도 통상적으로 장치(100)의 전반적인 동작을 제어할 수 있다. 프로세서(120)는 장치(100)의 구성요소들을 통해 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나 저장부(110)에 저장된 응용 프로그램을 구동함으로써, 적절한 정보 또는 기능을 제공 또는 처리할 수 있다. The processor 120 may typically control the overall operation of the device 100 in addition to operations related to application programs. The processor 120 can provide or process appropriate information or functions by processing signals, data, information, etc. input or output through the components of the device 100 or by running an application program stored in the storage unit 110. there is.

프로세서(120)는 저장부(110)에 저장된 응용 프로그램을 구동하기 위하여 장치(100)의 구성요소들 중 적어도 일부를 제어할 수 있다. 나아가, 프로세서(120)는 응용 프로그램의 구동을 위하여 장치(100)에 포함된 구성요소들 중 적어도 둘 이상을 서로 조합하여 동작시킬 수 있다.The processor 120 may control at least some of the components of the device 100 to run an application program stored in the storage unit 110. Furthermore, the processor 120 may operate in combination with at least two or more of the components included in the device 100 to run an application program.

프로세서(120)는 하나 이상의 코어로 구성될 수 있으며, 다양한 상용 프로세서들 중 임의의 프로세서일 수 있다. 예를 들어, 프로세서(120)는 장치의 중앙 처리 장치(CPU: Central Processing Unit), 범용 그래픽 처리 장치 (GPUGP: General Purpose Graphics Processing Unit), 텐서 처리 장치(TPU: Tensor Processing Unit) 등을 포함할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. The processor 120 may consist of one or more cores and may be any of a variety of commercial processors. For example, the processor 120 may include a central processing unit (CPU), a general purpose graphics processing unit (GPUGP), a tensor processing unit (TPU), etc. You can. However, the present disclosure is not limited to this.

본 개시의 프로세서(120)는 듀얼 프로세서 또는 기타 멀티프로세서 아키텍처로 구성될 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. The processor 120 of the present disclosure may be configured with a dual processor or other multiprocessor architecture. However, the present disclosure is not limited to this.

프로세서(120)는 단원 간 연관성을 수치화할 수 있다. 구체적으로, 프로세서(120)는 저장부(110)에 저장된 문제들 중 제1 단원의 문제 그룹들 일부에 대응하는 제2 단원 문제 그룹들 각각에 대한 정답률을 예측하고, 제2 단원의 문제 그룹들 각각에 대한 예측 정답률의 평균값을 산출할 수 있다. 프로세서(120)는 상기 평균값을 제1 단원에 대한 제2 단원의 상관값으로 정의하여 단원 간 연관성을 수치화할 수 있다. 프로세서(120)가 예측 정답률을 산출할 때, 프로세서(120)는 지식 추적 모델을 이용하여 예측 정답률을 산출할 수 있다.The processor 120 can quantify the correlation between units. Specifically, the processor 120 predicts the correct answer rate for each of the second unit problem groups corresponding to some of the first unit problem groups among the problems stored in the storage unit 110, and the second unit problem groups The average value of the predicted correct rate for each can be calculated. The processor 120 may quantify the correlation between units by defining the average value as a correlation value of the second unit with respect to the first unit. When the processor 120 calculates the predicted correct rate, the processor 120 may calculate the predicted correct rate using a knowledge tracking model.

본 개시에서 단원 간 연관성은 서로 다른 두 개의 단원끼리의 상관도를 의미할 수 있다. 예를 들어, 제1 단원 및 제2 단원 간의 수치화된 연관성 값이 큰 경우는 제1 단원의 정답률과 제2 단원의 정답률이 상관관계가 높을(즉, 비례할) 것을 기대할 수 있으며, 제1 단원 및 제2 단원 간의 수치화된 연관성 값이 작은 경우는 제1 단원의 정답률과 제2 단원의 정답률 사이의 상관관계가 낮을 것을 기대할 수 있다. 다만, 본 발명은 이에 한정되는 것은 아니다.In the present disclosure, the correlation between units may mean the degree of correlation between two different units. For example, if the quantified correlation value between the first unit and the second unit is large, it can be expected that the percentage of correct answers in the first unit and the percentage of correct answers in the second unit will be highly correlated (i.e., proportional), and the When the quantified correlation value between the first unit and the second unit is small, the correlation between the correct answer rate of the first unit and the correct answer rate of the second unit can be expected to be low. However, the present invention is not limited to this.

통신부(130)는 장치(100)와 유선/무선 통신 시스템 사이, 장치(100)와 다른 장치 사이 또는 장치(100)와 외부 서버 사이의 유선/무선 통신을 가능하게 하는 하나 이상의 모듈을 포함할 수 있다. 또한, 통신부(130)는 장치(100)를 하나 이상의 네트워크에 연결하는 하나 이상의 모듈을 포함할 수 있다. The communication unit 130 may include one or more modules that enable wired/wireless communication between the device 100 and a wired/wireless communication system, between the device 100 and another device, or between the device 100 and an external server. there is. Additionally, the communication unit 130 may include one or more modules that connect the device 100 to one or more networks.

통신부(130)는 유선/무선 인터넷 접속을 위한 모듈을 말하는 것으로 장치(100)에 내장되거나 외장될 수 있다. 통신부(130)는 유선/무선 신호를 송수신하도록 이루어질 수 있다. The communication unit 130 refers to a module for wired/wireless Internet access and may be built into or external to the device 100. The communication unit 130 may be configured to transmit and receive wired/wireless signals.

통신부(130)는 이동통신을 위한 기술표준들 또는 통신방식(예를 들어, GSM(Global System for Mobile communication), CDMA(Code Division Multi Access), CDMA2000(Code Division Multi Access 2000), EV-DO(Enhanced Voice-Data Optimized or Enhanced Voice-Data Only), WCDMA(Wideband CDMA), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced) 등)에 따라 구축된 이동 통신망 상에서 기지국, 외부의 단말 및 서버 중 적어도 하나와 무선 신호를 송수신할 수 있다. The communication unit 130 uses technical standards or communication methods for mobile communication (e.g., Global System for Mobile communication (GSM), Code Division Multi Access (CDMA), Code Division Multi Access 2000 (CDMA2000), and EV-DO ( Enhanced Voice-Data Optimized or Enhanced Voice-Data Only), Wideband CDMA (WCDMA), High Speed Downlink Packet Access (HSDPA), High Speed Uplink Packet Access (HSUPA), Long Term Evolution (LTE), Long Term (LTE-A) It is possible to transmit and receive wireless signals with at least one of a base station, an external terminal, and a server on a mobile communication network built according to (Evolution-Advanced), etc.).

무선 인터넷 기술로는, 예를 들어 WLAN(Wireless LAN), Wi-Fi(Wireless-Fidelity), Wi-Fi(Wireless Fidelity) Direct, DLNA(Digital Living Network Alliance), WiBro(Wireless Broadband), WiMAX(World Interoperability for Microwave Access), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced) 등이 있을 수 있다. 다만, 상기에서 나열되지 않은 인터넷 기술까지 포함한 범위에서 적어도 하나의 무선 인터넷 기술에 따라 통신부(130)는 데이터를 송수신할 수 있다. Wireless Internet technologies include, for example, WLAN (Wireless LAN), Wi-Fi (Wireless-Fidelity), Wi-Fi (Wireless Fidelity) Direct, DLNA (Digital Living Network Alliance), WiBro (Wireless Broadband), and WiMAX (Worldwide). There may be Interoperability for Microwave Access), High Speed Downlink Packet Access (HSDPA), High Speed Uplink Packet Access (HSUPA), Long Term Evolution (LTE), and Long Term Evolution-Advanced (LTE-A). However, the communication unit 130 can transmit and receive data according to at least one wireless Internet technology, including Internet technologies not listed above.

더불어, 통신부(130)는 근거리 통신(Short range communication)을 통해 신호를 송수신하도록 이루어질 수도 있다. 통신부(130)는 블루투스(Bluetooth??), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association; IrDA), UWB(Ultra-Wideband), ZigBee, NFC(Near Field Communication), Wi-Fi(Wireless-Fidelity), Wi-Fi Direct, Wireless USB(Wireless Universal Serial Bus) 기술 중 적어도 하나를 이용하여 근거리 통신을 수행할 수 있다. 통신부(130)는 근거리 통신망(Wireless Area Networks)을 통해 무선 통신을 지원할 수 있다. 근거리 무선 통신망은 근거리 무선 개인 통신망(Wireless Personal Area Networks)일 수 있다.In addition, the communication unit 130 may be configured to transmit and receive signals through short range communication. The communication unit 130 includes Bluetooth (Bluetooth??), RFID (Radio Frequency Identification), Infrared Data Association (IrDA), UWB (Ultra-Wideband), ZigBee, NFC (Near Field Communication), and Wi-Fi (Wireless). -Fidelity), Wi-Fi Direct, and Wireless USB (Wireless Universal Serial Bus) technologies can be used to perform short-distance communication. The communication unit 130 may support wireless communication through wireless area networks. Local area wireless networks may be wireless personal area networks.

본 개시의 몇몇 실시예에 따른 장치(100)는 통신부(130)를 통해 테스트 장치와 유/무선 네트워크가 연결될 수 있다. 여기서, "유/무선 네트워크"라 함은, 장치(100)와 테스트 장치 사이에서 페어링 또는/및 데이터 송수신을 위해 다양한 통신 규격 내지 프로토콜을 지원하는 통신 네트워크를 통칭한다. 이러한 유/무선 네트워크는, 규격에 의해 현재 또는 향후 지원될 통신 네트워크를 모두 포함하며, 그를 위한 하나 또는 그 이상의 통신 프로토콜들을 모두 지원 가능하다. The device 100 according to some embodiments of the present disclosure may be connected to a test device and a wired/wireless network through the communication unit 130. Here, “wired/wireless network” collectively refers to a communication network that supports various communication standards or protocols for pairing or/and data transmission/reception between the device 100 and the test device. These wired/wireless networks include all communication networks that are currently or will be supported in the future according to the standard, and can support one or more communication protocols for them.

본 개시에서 장치(100)는 통신부(130)를 통해 사용자 단말기와 통신이 연결될 수 있다. 여기서, 사용자 단말기는 장치(100)의 저장부(110)에 저장된 복수의 문제를 풀어 학습을 수행하는 학생의 단말기를 의미할 수 있고, 사용자 단말기는 휴대폰, 스마트 폰(smart phone), 태블릿 PC(tablet PC), 울트라북(ultrabook) 등과 같은 이동 단말기(mobile device)일 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. In the present disclosure, the device 100 may be connected to a user terminal for communication through the communication unit 130. Here, the user terminal may refer to a student terminal that performs learning by solving a plurality of problems stored in the storage unit 110 of the device 100, and the user terminal may be a mobile phone, smart phone, or tablet PC ( It may be a mobile device such as a tablet PC, ultrabook, etc. However, the present disclosure is not limited to this.

본 개시에서 장치(100)의 프로세서(120)는 제1 단원의 문제 그룹들 일부에 대응하는 제2 단원 문제들 각각에 대한 정답률을 예측할 때 필요한 정보를 저장부(110)에서 확인할 수 있다. 이때, 필요한 정보는 문제 그룹에 대한 정보, 사용자의 학습 기록 등을 의미할 수 있다. 문제 그룹에 대한 정보는 문제 그룹마다의 고유값인 문제 번호 ID, 난이도 값 등을 포함할 수 있고, 사용자의 학습 기록은 사용자가 푼 문제 그룹의 고유값인 문제 번호 ID, 사용자가 문제를 푼 시점, 사용자의 문제에 대한 정오답 여부 등을 포함할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. In the present disclosure, the processor 120 of the device 100 may check the storage unit 110 for information necessary for predicting the correct answer rate for each of the second unit problems corresponding to some of the problem groups of the first unit. At this time, the necessary information may mean information about the problem group, the user's learning record, etc. Information about the problem group may include problem number ID, difficulty value, etc., which are unique values for each problem group, and the user's learning record may include problem number ID, which is a unique value of the problem group solved by the user, and the time when the user solved the problem. , may include whether or not there is an incorrect answer to the user's problem. However, the present disclosure is not limited to this.

한편, 본 개시의 몇몇 실시예에 따르면, 프로세서(120)는 저장부(110)에 저장된 복수의 단원 간 연관성을 수치화하고, 이를 시각화할 수 있다. 이때, 프로세서(120)는 단원 간 연관성을 수치화한 상관값을 산출하고, 상기 상관값에 기초하여 단원 간 연관성을 히트맵 형식으로 표현할 수 있다. 히트맵(heat map)은 열을 뜻하는 히트(heat)와 지도를 뜻하는 맵(map)을 결합시킨 단어로, 색상으로 표현할 수 있는 다양한 정보를 일정한 이미지 위에 열분포 형태의 비주얼한 그래픽으로 출력하는 것을 의미한다. 이는 도 2 내지 도 5를 참조하여 자세히 설명한다. Meanwhile, according to some embodiments of the present disclosure, the processor 120 may quantify the correlation between a plurality of units stored in the storage unit 110 and visualize it. At this time, the processor 120 may calculate a correlation value that quantifies the correlation between units, and express the correlation between units in a heatmap format based on the correlation value. Heat map is a word that combines heat, which means heat, and map, which means map. It displays various information that can be expressed in color as a visual graphic in the form of heat distribution on a certain image. means that This is explained in detail with reference to FIGS. 2 to 5.

도 2는 본 개시의 몇몇 실시예에 따라 단원 간 연관성을 수치화하고, 수치화된 값을 이용하여 단원 간 연관성을 시각화하는 방법의 일례를 설명하기 위한 흐름도이다. 도 3은 도 2의 정답률을 예측하는 방법의 일례를 설명하기 위한 도면이다. 도 4는 본 개시의 몇몇 실시예에 따라 정답률을 예측하고, 예측 정답률의 평균값을 산출하는 방법의 일례를 설명하기 위한 도면이다.FIG. 2 is a flowchart illustrating an example of a method of quantifying the correlation between units and visualizing the correlation between units using the numerical values, according to some embodiments of the present disclosure. Figure 3 is a diagram for explaining an example of a method for predicting the percentage of correct answers in Figure 2. FIG. 4 is a diagram illustrating an example of a method for predicting a correct rate and calculating an average value of the predicted correct rate according to some embodiments of the present disclosure.

도 2를 참조하면, 프로세서(120)는 단원 간 연관성을 수치화하고, 수치화된 값을 이용하여 단원 간 연관성을 시각화할 수 있다.Referring to FIG. 2, the processor 120 can quantify the correlation between units and visualize the correlation between units using the numerical value.

S201 단계에서, 프로세서(120)는 저장부(110)에 저장된 문제 그룹들 중 제1 단원의 문제 그룹들 일부에 대응하는 제2 단원의 문제 그룹들 각각에 대한 정답률을 예측할 수 있다. 제1 단원의 문제 그룹들 일부에 대응하는 제2 단원의 문제 그룹들 각각에 대한 예측 정답률을 산출하는 단계는 아래에 설명하는 바와 같을 수 있다.In step S201, the processor 120 may predict a correct answer rate for each of the problem groups of the second unit corresponding to some of the problem groups of the first unit among the problem groups stored in the storage unit 110. The step of calculating the predicted correct rate for each of the problem groups of the second unit that corresponds to some of the problem groups of the first unit may be as described below.

도 3 및 도 4를 더 참조하면, S301 단계에서, 프로세서(120)는 저장부(110)에 저장된 제1 단원의 문제 그룹들 중 제1 특징에 해당하는 문제 그룹들을 선별할 수 있다. 이때, 상기 제1 특징은 제1 난이도 구간일 수 있다. 구체적으로, 프로세서(120)는 저장부(110)에 저장된 문제 그룹들의 난이도를 확인할 수 있다. 이후, 프로세서(120)는 제1 단원에서 제1 난이도 구간에 해당하는 문제 그룹들을 선별할 수 있다. Referring further to FIGS. 3 and 4 , in step S301, the processor 120 may select problem groups corresponding to the first characteristic among problem groups of the first unit stored in the storage unit 110. At this time, the first feature may be a first difficulty section. Specifically, the processor 120 may check the difficulty level of problem groups stored in the storage unit 110. Thereafter, the processor 120 may select problem groups corresponding to the first difficulty level in the first unit.

이때, 제1 난이도 구간은 문제 그룹에 할당된 난이도 값이 기 설정된 제1 값(x1)보다 크고 기 설정된 제2 값(x2)보다 작은 구간일 수 있다. 본 개시의 몇몇 실시예에 따르면, 제1 난이도 구간은 중간값에 해당하는 난이도 값을 포함하는 구간일 수 있다. At this time, the first difficulty section may be a section in which the difficulty value assigned to the problem group is greater than the preset first value (x1) and less than the preset second value (x2). According to some embodiments of the present disclosure, the first difficulty section may be a section including a difficulty value corresponding to a median value.

제1 난이도 구간이 중간값이 아닌 양극단의 값을 포함하는 경우, 제2 단원의 문제 그룹들 각각에 대한 예측 정답률의 신뢰성이 저하될 수 있다. 제1 단원에서 난이도 값이 낮은 문제 그룹들의 경우, 비교적 높은 정답률이 산출될 것이고, 난이도 값이 높은 문제 그룹들의 경우, 비교적 낮은 정답률이 산출될 것이므로, 예측 정답률을 산출할 때, 단원 간의 연관성 외에 난이도라는 추가 변수가 생길 수 있다. 따라서, 신뢰성을 확보하기 위해 제1 난이도 구간은 중간값에 해당하는 난이도 값을 포함하는 구간일 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다.If the first difficulty section includes extreme values rather than the middle value, the reliability of the predicted correct answer rate for each of the problem groups in the second unit may decrease. In the first unit, for problem groups with low difficulty values, a relatively high correct rate will be calculated, and for problem groups with high difficulty values, a relatively low correct rate will be calculated. Therefore, when calculating the predicted correct rate, in addition to the correlation between units, the difficulty level will be calculated. There may be an additional variable called . Therefore, to ensure reliability, the first difficulty section may be a section containing a difficulty value corresponding to the median value. However, the present disclosure is not limited to this.

예를 들어, 도 4를 참조하면, 저장부(110)에 저장된 문제 그룹들의 난이도 값의 범위가 0 내지 900인 경우, 제1 난이도 구간은 난이도 값이 400(예컨대, x1)보다 크고, 500(예컨대, x2)보다 작은 구간일 수 있다. 즉, 제1 난이도 구간은 중간값인 450을 포함하는 구간일 수 있다. 25번 문제 그룹의 난이도 값은 422, 26번 문제 그룹의 난이도 값은 176, 27번 문제 그룹의 난이도 값은 483, 28번 문제 그룹의 난이도 값은 563, 29번 문제 그룹의 난이도 값은 277일 수 있다. 따라서, 제1 단원의 전체 문제 그룹들 중 난이도 값이 제1 난이도 구간에 포함되는 25번 문제 그룹 및 27번 문제 그룹이 선별될 수 있다. 다만, 이는 예시적인 것이므로 본 개시는 이에 한정되는 것은 아니다.For example, referring to FIG. 4, when the range of difficulty values of problem groups stored in the storage unit 110 is 0 to 900, the first difficulty section has a difficulty value greater than 400 (e.g., x1) and 500 ( For example, it may be a section smaller than x2). That is, the first difficulty section may be a section including 450, which is the median value. The difficulty value of problem group 25 is 422, the difficulty value of problem group 26 is 176, the difficulty value of problem group 27 is 483, the difficulty value of problem group 28 is 563, and the difficulty value of problem group 29 is 277. You can. Accordingly, among all problem groups in the first unit, problem groups No. 25 and problem group No. 27, whose difficulty values are included in the first difficulty range, may be selected. However, since this is an example, the present disclosure is not limited thereto.

S303 단계에서, 프로세서(120)는 제1 단원에서 선별된 문제 그룹들을 표본으로 하여 문제 그룹을 n번(단, n은 1 이상의 자연수) 추출할 수 있다. 즉, 프로세서(120)는 제1 단원에서 제1 난이도 구간에 해당하는 문제 그룹들을 표본으로 하여 문제 그룹을 n번 추출할 수 있다. 이때, 추출은 복원 추출일 수 있다. 따라서, 이미 추출된 문제 그룹이 중복하여 추출될 수 있다. 이와 달리, 비복원 추출에 의하는 경우, 추출 횟수는 선별된 문제 그룹들의 개수로 제한된다. 즉, 선별된 문제 그룹들의 개수가 추출 횟수인 n번보다 작은 경우, 비복원 추출로는 추출 횟수를 만족시킬 수 없다. 프로세서(120)가 복원 추출로 n번 추출함으로써, 선별된 문제 그룹들의 개수에 무관하게 추출 횟수를 만족시킬 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다.In step S303, the processor 120 may extract problem groups n times (where n is a natural number of 1 or more) using the problem groups selected in the first unit as samples. That is, the processor 120 may extract problem groups n times using problem groups corresponding to the first difficulty level in the first unit as samples. At this time, the extraction may be restoration extraction. Therefore, already extracted problem groups may be extracted repeatedly. In contrast, in the case of non-restored extraction, the number of extractions is limited to the number of selected problem groups. In other words, if the number of selected problem groups is less than n, which is the number of extractions, the number of extractions cannot be satisfied with non-restorative extraction. By extracting n times with restoration extraction, the processor 120 can satisfy the number of extractions regardless of the number of selected problem groups. However, the present disclosure is not limited to this.

예를 들어, 다시 도 4를 참조하면, 프로세서(120)는 제1 단원에서 선별된 25번 문제 그룹 및 27번 문제 그룹을 복원 추출로 5번 추출할 수 있다. 이에 따라, 25번-27번-27번-25번-27번 문제 그룹이 순서대로 추출될 수 있다. 다만, 복원 추출의 횟수 5번과 추출 순서는 예시적인 것으로 본 개시는 이에 한정되는 것은 아니다.For example, referring again to FIG. 4, the processor 120 may extract problem group No. 25 and problem group No. 27 selected in the first unit five times through restoration extraction. Accordingly, problem groups 25-27-27-25-27 can be extracted in order. However, the number of restoration extractions (5) and the extraction order are illustrative, and the present disclosure is not limited thereto.

S305 단계에서, 프로세서(120)는 추출된 제1 단원의 문제 그룹 세트에 대응하는 제2 단원의 문제 그룹들 각각에 대하여 예측 정답률을 산출할 수 있다. 프로세서(120)는 추출된 제1 단원의 문제 그룹 세트를 제1 시퀀스로 정의할 수 있다. 제1 시퀀스는 추출된 제1 단원의 문제 그룹 세트에 대한 학습 기록을 의미할 수 있다. 이때, 학습 기록은 해당 문제 그룹에 관한 기록 일체 및 해당 문제 그룹을 푼 사용자에 관한 기록 일체를 의미할 수 있다. 예를 들면, 학습 기록은 사용자가 푼 문제 그룹의 고유값인 문제 번호 ID, 사용자가 문제 그룹을 푼 순서, 사용자가 문제를 푼 시점, 사용자의 문제에 대한 정오답 여부 등을 포함할 수 있다.In step S305, the processor 120 may calculate a predicted correct answer rate for each of the problem groups of the second unit corresponding to the extracted problem group set of the first unit. The processor 120 may define the extracted problem group set of the first unit as the first sequence. The first sequence may refer to a learning record for the extracted problem group set of the first unit. At this time, the learning record may mean all records related to the problem group and all records related to the user who solved the problem group. For example, the learning record may include a problem number ID, which is a unique value of the problem group solved by the user, the order in which the user solved the problem group, the time when the user solved the problem, whether the user gave an incorrect answer to the problem, etc.

프로세서(120)는 제1 시퀀스를 히스토리로 하여 제2 단원의 각 문제 그룹들에 대한 예측 정답률을 산출할 수 있다. 제1 시퀀스를 히스토리로 한다는 의미는 저장부(110)에 저장된 사용자들의 학습 기록에 기초하여 임의로 가상의 학습 기록을 생성한다는 의미일 수 있다. 즉, 프로세서(120)는 선별된 제1 단원의 문제 그룹들에 대한 가상의 학습 기록을 생성하여 제2 단원의 문제 그룹 전체에 대한 예측 정답률을 산출할 수 있다.The processor 120 may calculate the predicted correct answer rate for each problem group in the second unit using the first sequence as history. Using the first sequence as history may mean randomly generating a virtual learning record based on the users' learning records stored in the storage unit 110. That is, the processor 120 may generate a virtual learning record for the selected problem groups of the first unit and calculate the predicted correct answer rate for all problem groups of the second unit.

본 개시의 몇몇 실시예에 따르면, 프로세서(120)는 제1 시퀀스의 제1 단원의 문제 그룹 세트를 전부 맞힌 경우를 가정하고 제2 단원의 각 문제 그룹들에 대한 예측 정답률을 산출할 수 있다. 다른 실시예에 따르면, 프로세서(120)는 제1 시퀀스의 제1 단원의 문제 그룹 세트를 전부 틀린 경우를 가정하고 제2 단원의 각 문제 그룹들에 대한 예측 정답률(또는 오답률)을 산출할 수 있다. According to some embodiments of the present disclosure, the processor 120 may calculate a predicted correct answer rate for each problem group of the second unit assuming that all problem group sets of the first unit of the first sequence are correct. According to another embodiment, the processor 120 may calculate the predicted correct answer rate (or incorrect answer rate) for each problem group of the second unit, assuming that all problem group sets of the first unit of the first sequence are incorrect. .

제1 시퀀스의 제1 단원의 문제 그룹 세트를 일부만 맞히거나 일부 틀린 경우에는 제1 단원이 제2 단원에 미치는 영향도가 뚜렷하지 않게 도출될 수 있다. 제1 시퀀스의 제1 단원의 문제 그룹 세트를 전부 맞히거나 전부 틀린 경우여야 제1 단원이 제2 단원에 미치는 영향도가 뚜렷하게 도출되어 제1 단원과 제2 단원 간의 연관성의 신뢰도가 향상될 수 있다. 즉, 선별된 제1 단원의 문제 그룹들에 대한 가상의 학습 기록을 생성할 때, 제1 시퀀스의 제1 단원의 문제 그룹 세트를 전부 맞힌 경우를 가정하는 것이 바람직하다. 다만, 본 개시는 이에 한정되는 것은 아니며, 프로세서(120)는 제1 단원과 제2 단원 사이의 연관성을 도출해내는 조건을 만족하는 가상의 학습 기록을 생성할 수 있다. 예를 들어, 제1 시퀀스의 제1 단원의 문제 그룹 세트를 일부만 맞히거나 일부 틀린 경우를 가정하고 예측 정답률을 산출할 수 있다. 다만, 이하에서는 제1 시퀀스의 제1 단원의 문제 그룹 세트를 전부 맞힌 경우를 가정하고 설명한다.If only part of the problem group set of the first unit of the first sequence is correct or partially incorrect, the degree of influence of the first unit on the second unit may not be clearly derived. Only when the problem group set of the first unit of the first sequence is all correct or all incorrect can the degree of influence of the first unit on the second unit be clearly derived, thereby improving the reliability of the relationship between the first unit and the second unit. . In other words, when creating a virtual learning record for the selected problem groups of the first unit, it is desirable to assume that all problem group sets of the first unit of the first sequence are correct. However, the present disclosure is not limited to this, and the processor 120 may generate a virtual learning record that satisfies the conditions for deriving the relationship between the first unit and the second unit. For example, the predicted correct rate can be calculated assuming that the problem group set of the first unit of the first sequence is partially correct or partially incorrect. However, the following description will be made assuming that all problem group sets of the first unit of the first sequence are answered correctly.

예를 들어, 도 4를 다시 참조하면, 프로세서(120)는 추출된 제1 단원의 문제 그룹 세트인 25번-27번-27번-25번-27번을 제1 시퀀스로 정의할 수 있다. 프로세서(120)는 제1 시퀀스의 25번-27번-27번-25번-27번을 전부 맞힌 경우를 가정하고 제2 단원의 각 문제 그룹들에 대한 예측 정답률을 산출할 수 있다. 이때, 제2 단원에 포함된 전체 문제 그룹들인 72번 내지 76번 문제 그룹들 각각에 대한 예측 정답률이 산출될 수 있다. 예를 들어, 72번 문제 그룹에 대한 예측 정답률은 약 0.622, 73번 문제 그룹에 대한 예측 정답률은 약 0.602, 74번 문제 그룹에 대한 예측 정답률은 0.297, 75번 문제 그룹에 대한 예측 정답률은 0.902, 76번 문제 그룹에 대한 예측 정답률은 0.855로 도출될 수 있다.For example, referring again to FIG. 4, the processor 120 may define the extracted problem group set of the first unit, No. 25-27-27-25-27, as the first sequence. The processor 120 can calculate the predicted correct answer rate for each problem group in the second unit, assuming that all numbers 25-27-27-25-27 of the first sequence are correct. At this time, the predicted correct answer rate for each of problem groups 72 to 76, which are all problem groups included in the second unit, can be calculated. For example, the predicted percentage correct for problem group 72 is approximately 0.622, the predicted percentage correct for problem group 73 is approximately 0.602, the predicted percentage correct for problem group 74 is 0.297, the predicted percentage correct for problem group 75 is 0.902, The predicted correct answer rate for problem group 76 can be derived as 0.855.

이때, 프로세서(120)는 지식 추적 모델(400)을 통해 상기 예측 정답률을 산출할 수 있다. 프로세서(120)가 예측 정답률을 산출하는 지식 추적 모델(400)을 학습하는 방법은 후술하는 도 6에서 설명하는 바와 같다.At this time, the processor 120 may calculate the predicted correct rate through the knowledge tracking model 400. The method by which the processor 120 learns the knowledge tracking model 400 that calculates the predicted correct rate is as described in FIG. 6 described later.

다시 도 2를 참조하면, S203 단계에서, 프로세서(120)는 제2 단원의 문제 그룹들 각각에 대한 예측 정답률의 평균값을 산출할 수 있다. 제1 단원에 대한 제2 단원의 문제 그룹들의 예측 정답률의 평균값을 산출함으로써, 프로세서(120)는 제1 단원에 대한 제2 단원의 연관성을 일반화시킬 수 있다.Referring again to FIG. 2, in step S203, the processor 120 may calculate the average value of the predicted correct answer rate for each of the problem groups of the second unit. By calculating the average value of the predicted correct rate of problem groups of the second unit with respect to the first unit, the processor 120 can generalize the correlation of the second unit with the first unit.

예를 들어, 도 4를 다시 참조하면, 프로세서(120)는 S201 단계에서 산출된 제2 단원의 문제 그룹들 전체(예컨대, 72번 내지 76번 문제 그룹들)에 대한 예측 정답률의 평균값을 산출할 수 있다. 프로세서(120)는 72번 문제 그룹에 대한 예측 정답률인 약 0.622, 73번 문제 그룹에 대한 예측 정답률인 약 0.602, 74번 문제 그룹에 대한 예측 정답률인 약 0.297, 75번 문제 그룹에 대한 예측 정답률인 약 0.902, 및 76번 문제 그룹에 대한 예측 정답률인 약 0.855에 대한 평균값인 약 0.696을 산출할 수 있다.For example, referring again to FIG. 4, the processor 120 calculates the average value of the predicted correct answer rate for all problem groups of the second unit calculated in step S201 (e.g., problem groups 72 to 76). You can. The processor 120 calculates the predicted correct rate for problem group No. 72, which is about 0.622, the predicted correct rate for problem group No. 73, which is about 0.602, the predicted correct rate for problem group No. 74, which is about 0.297, and the predicted correct rate for problem group number 75, which is about 0.297. About 0.902, and about 0.696, which is the average value for the predicted correct rate for problem group 76 of about 0.855, can be calculated.

S205 단계에서, 프로세서(120)는 상기 평균값을 제1 단원에 대한 제2 단원의 상관값으로 정의할 수 있다. 즉, 이를 통해 프로세서(120)가 단원 간의 연관성을 수치화할 수 있다. In step S205, the processor 120 may define the average value as a correlation value of the second unit with respect to the first unit. That is, through this, the processor 120 can quantify the correlation between units.

예를 들어, 제1 단원에 대한 제2 단원의 상관값이 큰 경우, 상기 평균값이 큰 것이고, 제1 단원에 포함된 문제 그룹들을 맞힌 경우 제2 단원에 포함된 문제 그룹들 또한 맞힐 확률이 큰 것이다. 즉, 이 경우 제1 단원과 제2 단원 간의 연관성이 비교적 크다고 예측할 수 있다. 제1 단원에 대한 제2 단원의 상관값이 작은 경우, 상기 평균값이 작은 것이고, 제1 단원에 포함된 문제 그룹들을 맞힌 상황이라고 하더라도 제2 단원에 포함된 문제 그룹들을 틀릴 확률이 큰 것이다. 즉, 이 경우 제1 단원과 제2 단원 간의 연관성은 비교적 작다고 예측할 수 있다. For example, if the correlation value of the second unit with respect to the first unit is large, the average value is large, and if the problem groups included in the first unit are guessed correctly, the probability that the problem groups included in the second unit are also correct is high. will be. That is, in this case, it can be predicted that the correlation between the first unit and the second unit is relatively large. If the correlation value of the second unit with respect to the first unit is small, the average value is small, and even if the problem groups included in the first unit are correct, there is a high probability that the problem groups included in the second unit are incorrect. That is, in this case, it can be predicted that the correlation between the first unit and the second unit is relatively small.

상관값은 0에서 1 사이의 값을 가질 수 있다. 예를 들어, 제1 단원에 대한 제2 단원의 연관성이 클수록 제1 단원에 대한 제2 단원의 상관값은 1에 가까울 수 있다. 반대로, 제1 단원에 대한 제2 단원의 연관성이 작을수록 제1 단원에 대한 제2 단원의 상관값은 0에 가까울 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다.The correlation value can have values between 0 and 1. For example, the greater the correlation between the second unit and the first unit, the closer the correlation value of the second unit to the first unit may be to 1. Conversely, the smaller the correlation between the second unit and the first unit, the closer the correlation value of the second unit to the first unit may be to 0. However, the present disclosure is not limited to this.

프로세서(120)는 저장부(110)에 포함된 전체 문제 그룹들이 속한 단원들 중 하나의 단원에 대한 다른 단원의 상관값을 전체적으로 산출할 수 있다. 즉, 프로세서(120)는 총 단원의 개수의 제곱수 만큼의 상관값들을 산출할 수 있다. The processor 120 may calculate the overall correlation value of one unit among the units to which all problem groups included in the storage unit 110 belong. That is, the processor 120 can calculate correlation values equal to the square of the total number of units.

프로세서(120)는 상기 상관값들을 기초로 단원 간 연관성을 시각화할 수 있다. 프로세서(120)는 상기 상관값들을 이용하여 단원 간 연관성을 히트맵 형식으로 표현할 수 있다.The processor 120 can visualize the correlation between units based on the correlation values. The processor 120 can use the correlation values to express the correlation between units in a heatmap format.

도 5는 본 개시의 몇몇 실시예에 따라 단원 간 연관성을 시각화한 일례를 설명하기 위한 도면이다.FIG. 5 is a diagram illustrating an example of visualizing the relationship between units according to some embodiments of the present disclosure.

도 5를 더 참조하면, S207 단계에서, 프로세서(120)는 세로축 상의 제1 단원과 가로축 상의 제2 단원이 교차하는 지점에 상관값을 대응할 수 있다. 즉, 프로세서(120)는 세로축에 추출의 대상이 되는 단원의 번호가 설정되고, 가로축에 예측 정답률이 산출되는 단원의 번호가 설정되는 표를 생성할 수 있다. 예를 들어, 세로축에는 제1 단원의 번호가 설정되고, 가로축에는 제2 단원의 번호가 설정될 수 있다. 따라서, 프로세서(120)는 세로축 상의 단원들과 가로축 상의 단원들이 교차하는 지점에 세로축 상의 단원에 대한 가로축 상의 단원의 상관값이 각각 대응된 표를 생성할 수 있다.Referring further to FIG. 5, in step S207, the processor 120 may correspond to a correlation value at a point where the first unit on the vertical axis and the second unit on the horizontal axis intersect. That is, the processor 120 may generate a table in which the number of the unit to be extracted is set on the vertical axis, and the number of the unit for which the predicted percentage of correct answers is calculated is set on the horizontal axis. For example, the number of the first unit may be set on the vertical axis, and the number of the second unit may be set on the horizontal axis. Accordingly, the processor 120 may generate a table in which the correlation values of the units on the horizontal axis with respect to the units on the vertical axis correspond to the points where the units on the vertical axis and the units on the horizontal axis intersect.

S209 단계에서, 프로세서(120)는 상관값을 대응하는 색으로 표현할 수 있다. 프로세서(120)는 표에 포함된 각각의 셀을 상관값의 크기 별로 다른 색으로 표현할 수 있다. 예를 들어, 프로세서(120)는 상관값이 1에 가까울수록 밝은 색으로 표현할 수 있고, 상관값이 0에 가까울수록 어두운 색으로 표현할 수 있다. 즉, 이를 통해 프로세서(120)는 단원 간 연관성을 히트맵 형식으로 표현할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다.In step S209, the processor 120 may express the correlation value in a corresponding color. The processor 120 may display each cell included in the table in a different color depending on the size of the correlation value. For example, the processor 120 can display a brighter color as the correlation value approaches 1, and display it in a darker color as the correlation value approaches 0. That is, through this, the processor 120 can express the relationship between units in a heatmap format. However, the present disclosure is not limited to this.

서로 같은 단원끼리는 연관성이 높기 때문에 대각선 방향으로 색이 밝게 표현될 수 있다. 히트맵에서 세로 줄마다 색이 다르게 표현된 것은 각 단원마다의 난이도를 나타낼 수 있다. 즉, 어두운 세로 줄이 대응되는 가로축 상의 단원은 모든 단원에 대해서 전체적으로 정답률이 낮은 것이므로, 난이도가 비교적 높은 단원이라는 것을 예측할 수 있다. 또한, 밝은 세로 줄이 대응되는 가로축 상의 단원은 모든 단원에 대해서 전체적으로 정답률이 높은 것이므로, 난이도가 비교적 낮은 단원이라는 것을 예측할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다.Because the same units are highly related to each other, the colors can be expressed brightly in the diagonal direction. In the heat map, different colors for each vertical line can indicate the level of difficulty for each unit. In other words, the unit on the horizontal axis to which the dark vertical line corresponds has a low percentage of correct answers overall for all units, so it can be predicted that it is a unit with relatively high difficulty. In addition, the units on the horizontal axis to which the bright vertical lines correspond have a high overall percentage of correct answers for all units, so it can be predicted that they are units with relatively low difficulty. However, the present disclosure is not limited to this.

또한, 위에서 제1 단원에 대한 제2 단원의 연관성을 수치화하는 방법만을 설명하였으나, 제2 단원에 대한 제1 단원의 연관성을 수치화하는 방법 또한 별도로 수행될 수 있다. 즉, 제1 단원에 대한 제2 단원의 연관성과 제2 단원에 대한 제1 단원의 연관성이 동일하지 않을 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니며, 프로세서(120)는 제1 단원에 대한 제2 단원의 연관성을 수치화하는 방법만을 수행하여 제1 단원과 제2 단원 간의 연관성을 수치화할 수 있다.In addition, although only the method of quantifying the association of the second unit with the first unit has been described above, the method of quantifying the association of the first unit with the second unit can also be performed separately. That is, the relevance of the second unit to the first unit and the correlation of the first unit to the second unit may not be the same. However, the present disclosure is not limited to this, and the processor 120 may quantify the association between the first unit and the second unit by only performing a method of quantifying the association of the second unit with the first unit.

본 개시의 몇몇 실시예에 따르면, 프로세서(120)는 단원 간 연관성을 수치화할 수 있고, 수치화된 값을 이용하여 단원 간 연관성을 시각화할 수 있다. 이에 따라, 단원 간의 연관성이 직관적으로 확인될 수 있다. 또한, 이로 인해 도출된 단원 간의 연관성을 정답률을 예측하는 데 적용함으로써, 예측 정답률의 정확성을 향상시킬 수 있다. 즉, 단원 간 연관성을 이용하여 지식 추적 모델의 예측력을 향상시킬 수 있다. 또한, 단원 간 연관성을 수치화하여 시각화한 히트맵 형식은 후술하는 지식 추적 모델의 학습이 잘 수행되었는지를 측정하는 척도로도 사용할 수 있다.According to some embodiments of the present disclosure, the processor 120 can quantify the correlation between units and visualize the correlation between units using the numerical value. Accordingly, the connection between units can be intuitively confirmed. In addition, the accuracy of the predicted correct rate can be improved by applying the correlation between units derived from this to predict the correct rate. In other words, the predictive power of the knowledge tracking model can be improved by using the correlation between units. In addition, the heatmap format that quantifies and visualizes the correlation between units can also be used as a measure to measure whether the learning of the knowledge tracking model described later has been performed well.

도 2의 S201 단계에 있어서 제2 단원의 문제 그룹들 각각에 대한 정답률을 예측하는 지식 추적 모델(400)은 아래와 같이 학습될 수 있다.In step S201 of FIG. 2, the knowledge tracking model 400 that predicts the correct answer rate for each of the problem groups in the second unit can be learned as follows.

도 6은 본 개시의 몇몇 실시예에 따른 지식 추적 모델을 학습하는 단계를 설명하기 위한 흐름도이다. 도 7은 도 6의 지식 추적 모델을 학습하는 방법의 일례를 설명하기 위한 도면이다.Figure 6 is a flowchart illustrating the steps of learning a knowledge tracking model according to some embodiments of the present disclosure. FIG. 7 is a diagram illustrating an example of a method for learning the knowledge tracking model of FIG. 6.

지식 추적 모델은 복수의 레이어들을 포함할 수 있다. 여기서, 지식 추적 모델은 적어도 하나의 어텐션 레이어를 포함할 수 있다. 예를 들어, 적어도 하나의 어텐션 레이어는 지식 추적 모델 내에서 복수개로 마련될 수 있고, 복수개의 어텐션 레이어들은 지식 추적 모델 내의 서로 다른 레이어들 사이에 각각 배치될 수 있다.The knowledge tracking model may include multiple layers. Here, the knowledge tracking model may include at least one attention layer. For example, at least one attention layer may be provided in plural numbers within the knowledge tracking model, and a plurality of attention layers may be respectively arranged between different layers within the knowledge tracking model.

도 6을 참조하면, S601 단계에서, 프로세서(120)는 장치의 저장부(110)에 저장된 문제 그룹들 중 일부를 무작위로 추출할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니며, 프로세서(120)는 기 설정된 기준에 의하여 문제 그룹들 중 일부를 선별할 수 있다.Referring to FIG. 6, in step S601, the processor 120 may randomly extract some of the problem groups stored in the storage unit 110 of the device. However, the present disclosure is not limited to this, and the processor 120 may select some of the problem groups based on preset criteria.

예를 들어, 도 7을 더 참조하면, 장치의 저장부(110)에 저장된 전체 문제 그룹들이 제1 단원에 포함된 25번 내지 29번 문제 그룹들, 제2 단원에 포함된 72번 내지 76번, 제3 단원에 포함된 101번 내지 105번일 수 있다. 여기서 프로세서(120)는 76번, 27번, 25번, 75번, 102번, 72번, 및 105번을 추출할 수 있다.For example, further referring to FIG. 7, the entire problem groups stored in the storage unit 110 of the device are problem groups 25 to 29 included in the first unit and problem groups 72 to 76 included in the second unit. , it may be numbers 101 to 105 included in the third section. Here, the processor 120 can extract numbers 76, 27, 25, 75, 102, 72, and 105.

S603 단계에서, 프로세서(120)는 추출된 문제 그룹 세트를 인풋 시퀀스(Input Sequence)로 정의할 수 있다. 예를 들어, 프로세서(120)는 76번-27번-25번-75번-102번-72번-105번 문제 그룹 세트를 인풋 시퀀스로 정의할 수 있다.In step S603, the processor 120 may define the extracted problem group set as an input sequence. For example, the processor 120 may define the problem group set 76-27-25-75-102-72-105 as an input sequence.

S605 단계에서, 프로세서(120)는 인풋 시퀀스 내에 포함된 문제 그룹들 서로에 대한 관련도를 수치화하여 어텐션 정보들을 포함하는 어텐션 정보 셋(700)을 산출할 수 있다.In step S605, the processor 120 may calculate the attention information set 700 including attention information by quantifying the degree of relationship between problem groups included in the input sequence.

다시 말해서, 인풋 시퀀스가 지식 추적 모델에 입력되고, 인풋 시퀀스에 기반하여 지식 추적 모델에 포함된 각 어텐션 레이어에서 어텐션 정보 셋(700)이 산출될 수 있다. 따라서, 어텐션 정보 셋(700)은 인풋 시퀀스 내에 포함된 문제 그룹들 서로에 대한 관련도를 수치화한 값인 어텐션 정보들을 포함할 수 있다. 이때, 관련도는 문제 그룹들 간의 유사도 또는 하나의 문제 그룹에 대해 다른 문제 그룹이 영향을 미치는 정도를 의미할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다. In other words, the input sequence is input to the knowledge tracking model, and the attention information set 700 can be calculated from each attention layer included in the knowledge tracking model based on the input sequence. Accordingly, the attention information set 700 may include attention information that is a numerical value of the degree of relationship between problem groups included in the input sequence. At this time, the degree of relevance may mean the degree of similarity between problem groups or the degree to which another problem group influences one problem group. However, the present disclosure is not limited to this.

S607 단계에서, 프로세서(120)는 어텐션 정보 셋(700)에 대해 개별적으로 가이드 마스킹(701, 702)을 적용할 수 있다. 프로세서(120)는 가이드 마스킹(701, 702)을 적용할 때 각 어텐션 정보 셋(700)마다 마스킹하는 부분을 서로 다르게 설정할 수 있다. 즉, 가이드 마스킹(701, 702)에 의하면, 프로세서(120)는 각 어텐션 레이어에서 산출되는 어텐션 정보 셋(700)에 대해 마스킹하는 부분을 서로 다르게 설정할 수 있다.In step S607, the processor 120 may individually apply guide masking 701 and 702 to the attention information set 700. When applying guide masking 701 and 702, the processor 120 may set the masking portion differently for each attention information set 700. That is, according to the guide masking 701 and 702, the processor 120 can set the masking portion differently for the attention information set 700 calculated from each attention layer.

가이드 마스킹(701, 702)은 운용자에 의해 설정된 기준에 기초하여 각 어텐션 레이어(즉, 어텐션 정보 셋(700))마다 마스킹하는 부분이 서로 다르게 결정되는 마스킹 동작을 의미할 수 있다. Guided masking 701 and 702 may refer to a masking operation in which the masking portion is determined differently for each attention layer (i.e., attention information set 700) based on a standard set by the operator.

구체적으로, 가이드 마스킹(701, 702)은 문제 그룹의 정답률을 예측할 때 미래 위치에 해당하는 정보에 대해 어텐션이 수행되지 못하게 하는 기본 마스킹(701)을 포함할 수 있다. 기본 마스킹(701)은 아직 사용자가 풀지 않은 문제에 기초하여 예측 정답률이 산출되는 것을 방지하기 위해 적용되는 마스킹 동작일 수 있다. 따라서, 기본 마스킹(701)이 적용된 어텐션 정보 셋(700)은 도7 8에서 보는 바와 같이 우상단의 검정 삼각형 모양으로 어텐션 정보가 0으로 표현될 수 있다. 기본 마스킹(701)은 지식 추적 모델 내의 어텐션 레이어 전체에 적용될 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다.Specifically, the guide masking (701, 702) may include basic masking (701) that prevents attention from being performed on information corresponding to future locations when predicting the correct answer rate of a problem group. Basic masking 701 may be a masking operation applied to prevent the predicted correct answer rate from being calculated based on problems that the user has not yet solved. Accordingly, the attention information set 700 to which the basic masking 701 is applied can be expressed as a black triangle in the upper right corner, as shown in Figure 7 8, and the attention information is 0. Basic masking 701 can be applied to the entire attention layer in the knowledge tracking model. However, the present disclosure is not limited to this.

본 개시의 몇몇 실시예에 따르면, 가이드 마스킹(701, 702)은 기본 마스킹(701)에 더하여 기 설정된 기준에 기초하여 각 어텐션 레이어(즉, 어텐션 정보 셋(700))마다 마스킹하는 부분을 서로 다르게 설정할 수 있다. 예를 들어, 가이드 마스킹은 저장부(110)에 저장된 단원 간의 기 설정된 연관성, 문제 그룹들에 대한 정보, 및 문제 그룹들에 대한 학습 기록 중 적어도 하나에 기초하여 각 어텐션 정보 셋(700)마다 마스킹하는 부분을 서로 다르게 설정하는 것을 의미할 수 있다. 이때, 어텐션 정보 셋(700)에서 마스킹되는 부분은 어텐션 정보가 0으로 적용되는 부분을 의미할 수 있다. 즉, 어텐션 정보 셋(700)에서 관련도가 없는 것으로 간주되는 부분을 의미할 수 있다. According to some embodiments of the present disclosure, the guide masking 701 and 702, in addition to the basic masking 701, differently mask the portion for each attention layer (i.e., attention information set 700) based on a preset standard. You can set it. For example, guided masking is masking for each attention information set 700 based on at least one of a preset association between units stored in the storage unit 110, information about problem groups, and learning records about problem groups. This may mean setting the parts differently. At this time, the masked part in the attention information set 700 may mean a part to which attention information is applied as 0. In other words, it may mean a part of the attention information set 700 that is considered irrelevant.

상기 어텐션 레이어는 지식 추적 모델에 포함되는 다양한 블록 중 하나인 어텐션 블록일 수 있다. 상기 어텐션 레이어 내에서 가이드 마스킹은 인코딩 단계에서 적용될 수도 있고, 디코딩 단계에서 적용될 수도 있다. The attention layer may be an attention block, one of various blocks included in the knowledge tracking model. Within the attention layer, guide masking may be applied at the encoding stage or at the decoding stage.

여기서, 단원 간의 기 설정된 연관성은 전문가가 설정한 전체 단원 중 하나의 단원에 대한 다른 단원의 연관성을 의미할 수 있다. 전문가는 해당 분야의 교사, 교수, 강사, 연구원 등을 의미할 수 있다. 또한, 문제 그룹들에 대한 정보 및 문제 그룹들에 대한 학습 기록은 사용자가 문제를 풀었을 때 저장부(110)에 저장되는 모든 정보를 의미할 수 있다. 예를 들어, 문제 그룹들에 대한 정보는 각 문제 그룹들 별 고유값, 각 문제 그룹이 포함된 단원, 각 문제 그룹에 해당하는 난이도 등을 포함할 수 있고, 문제 그룹들에 대한 학습 기록은 사용자가 문제를 맞혔는지 틀렸는지 여부(예컨대, 정오답 여부), 사용자가 문제를 푼 순서, 사용자가 문제를 푼 시간 정보 등을 포함할 수 있다.Here, the preset relationship between units may mean the relationship between one unit and another unit among all units set by an expert. Experts may refer to teachers, professors, lecturers, researchers, etc. in the relevant field. Additionally, information about problem groups and learning records about problem groups may refer to all information stored in the storage unit 110 when a user solves a problem. For example, information about problem groups may include eigenvalues for each problem group, units containing each problem group, level of difficulty corresponding to each problem group, etc., and learning records for problem groups can be recorded by the user. It may include information on whether the user got the problem right or wrong (e.g., whether the answer was incorrect), the order in which the user solved the problem, and the time the user solved the problem.

본 개시의 일 실시예에 따르면, 전문가는 하나의 단원에 대한 다른 단원의 연관성을 복수의 단계들 중 하나로 설정할 수 있다. 복수의 단계들은 강, 중, 약 또는 1단계, 2단계, 3단계, 4단계, 5단계 등을 의미할 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다.According to an embodiment of the present disclosure, an expert may set the relationship between one unit and another unit as one of a plurality of steps. The plurality of stages may mean strong, medium, weak, 1st stage, 2nd stage, 3rd stage, 4th stage, 5th stage, etc. However, the present disclosure is not limited to this.

프로세서(120)는 전문가가 설정한 연관성에 따라 이를 수치화할 수 있다. 예를 들어, 프로세서(120)는 단원 간의 연관성이 강인 경우 가장 큰 값으로, 중인 경우 중간 값으로, 약인 경우 가장 작은 값으로 수치화할 수 있다. 즉, 수치화된 값이 큰 경우일수록 서로 연관성이 큰 단원이므로, 프로세서(120)는 예측 정답률을 산출할 때 연관성이 큰 단원끼리 서로 영향을 줄 수 있도록 어텐션 정보를 적용할 수 있다(즉, 어텐션 정보에 마스킹을 적용하지 않을 수 있다). 따라서, 해당 단원에 포함된 문제 그룹들끼리는 어텐션 정보 셋(700)에 포함된 어텐션 정보에 대한 마스킹 적용 빈도를 감소시킬 수 있다. 반대로, 수치화된 값이 작은 경우일수록 서로 연관성이 적은 단원이므로, 프로세서(120)는 예측 정답률을 산출할 때 서로 영향을 주지 않도록 어텐션 정보를 서로 적용하지 않게 할 수 있다(즉, 어텐션 정보에 마스킹을 적용할 수 있다). 따라서, 해당 단원에 포함된 문제 그룹들끼리는 어텐션 정보 셋(700)에 포함된 어텐션 정보에 대한 마스킹 적용 빈도를 증가시킬 수 있다.The processor 120 can quantify this according to the correlation set by the expert. For example, the processor 120 can quantify the largest value when the correlation between units is strong, the medium value when the correlation between units is weak, and the smallest value when the correlation between units is weak. In other words, the larger the numerical value, the more related the units are to each other. Therefore, the processor 120 can apply attention information so that highly related units can influence each other when calculating the predicted correct rate (i.e., attention information masking may not be applied). Accordingly, the frequency of applying masking to the attention information included in the attention information set 700 can be reduced between problem groups included in the unit. Conversely, the smaller the numerical value, the less correlation between units, so the processor 120 may not apply attention information to each other so as not to influence each other when calculating the predicted correct rate (i.e., masking is applied to attention information). applicable). Accordingly, the frequency of applying masking to the attention information included in the attention information set 700 can be increased among problem groups included in the unit.

S609 단계에서, 프로세서(120)는 가이드 마스킹(701, 702)이 각각 적용된 어텐션 레이어들을 사용하여 지식 추적 모델을 학습할 수 있다. 즉, 프로세서(120)는 가이드 마스킹(701, 702)이 적용된 어텐션 정보 셋(700)을 사용하여 지식 추적 모델을 학습할 수 있다.In step S609, the processor 120 may learn a knowledge tracking model using attention layers to which guide masking 701 and 702 are respectively applied. That is, the processor 120 can learn a knowledge tracking model using the attention information set 700 to which the guide masking 701 and 702 are applied.

위와 같이 가이드 마스킹(701, 702)을 사용하여 단원 간 연관성을 지식 추적 모델에 학습시켜주는 경우, 운용자의 의도에 맞게 설정된 단원 간 연관성에 기반하여 지식 추적 모델이 학습될 수 있다. 즉, 지식 추적 모델이 학습될 때, 운용자는 가이드 마스킹(701, 702)으로 단원 간 연관성을 보다 명확하게 가이드할 수 있다. 따라서, 이와 같이 학습된 지식 추적 모델은 일반적인 지식 추적 모델에 비해 단원 간 연관성에 따른 특성을 고려하며 예측 정답률을 산출할 수 있다. 이에 따라, 지식 추적 모델의 정답률 예측력이 향상되고, 산출된 예측 정답률에 대한 정확도 및 신뢰도가 향상될 수 있다.When the relationship between units is taught to the knowledge tracking model using guide masking (701, 702) as above, the knowledge tracking model can be learned based on the relationship between units set according to the operator's intention. In other words, when the knowledge tracking model is learned, the operator can more clearly guide the relationship between units through guide masking (701, 702). Therefore, compared to a general knowledge tracking model, the knowledge tracking model learned in this way can calculate the predicted correct rate by considering the characteristics of the relationship between units. Accordingly, the prediction ability of the knowledge tracking model's correct rate can be improved, and the accuracy and reliability of the calculated predicted correct rate can be improved.

도 8은 본 개시의 몇몇 실시예에 따른 가이드 마스킹의 일 예를 나타내는 도면이다.FIG. 8 is a diagram illustrating an example of guide masking according to some embodiments of the present disclosure.

예를 들어, 도 8은 서로 다른 가이드 마스킹(801', 802', 803', 804')이 적용된 어텐션 정보 셋들(801, 802, 803, 804)을 나타내는 도면일 수 있다. For example, FIG. 8 may be a diagram showing attention information sets 801, 802, 803, and 804 to which different guide maskings 801', 802', 803', and 804' are applied.

본 개시의 일 실시예에 따르면, 가이드 마스킹(801', 802', 803', 804')은 단원 간의 기 설정된 연관성에 기초하여 설정된 마스킹일 수 있다. 예를 들어, 제1 단원과 제2 단원 간의 연관성이 중 단계로 설정되고, 제1 단원과 제3 단원 간의 연관성은 약 단계로 설정되고, 제2 단원과 제3 단원의 연관성은 강 단계로 설정될 수 있다. 다만, 본 개시는 이에 한정되는 것은 아니다.According to an embodiment of the present disclosure, the guide masking (801', 802', 803', and 804') may be masking set based on a preset relationship between units. For example, the association between the first and second units is set to medium, the association between the first and third units is set to weak, and the association between the second and third units is set to strong. It can be. However, the present disclosure is not limited to this.

도 8을 참조하면, 프로세서(120)는 첫 번째 어텐션 레이어에서 어텐션 정보 셋(801)에 가이드 마스킹(801') 중 기본 마스킹만 적용할 수 있다. 따라서, 첫 번째 어텐션 레이어에서부터 미래 위치에 대응되는 어텐션 정보가 마스킹되어 서로 영향을 미치지 않을 수 있다.Referring to FIG. 8, the processor 120 may apply only basic masking among guide masking 801' to the attention information set 801 in the first attention layer. Accordingly, attention information corresponding to future locations from the first attention layer may be masked so that they do not affect each other.

프로세서(120)는 두 번째 어텐션 레이어에서 어텐션 정보 셋(802)에 첫 번째 어텐션 레이어에 적용된 가이드 마스킹(801')과 다른 가이드 마스킹(802')을 적용할 수 있다. 프로세서(120)는 두 번째 어텐션 레이어에서 연관성이 가장 약한 제1 단원과 제3 단원 간의 관련도에 대응되는 어텐션 정보를 마스킹할 수 있다. 따라서, 제1 단원의 문제 그룹들과 제3 단원의 문제 그룹들은 두 번째 어텐션 레이어에서부터 서로 영향을 미치지 않을 수 있다. The processor 120 may apply a guide masking 802' different from the guide masking 801' applied to the first attention layer to the attention information set 802 in the second attention layer. The processor 120 may mask attention information corresponding to the degree of relevance between the first and third units with the weakest correlation in the second attention layer. Accordingly, the problem groups of the first unit and the problem groups of the third unit may not affect each other starting from the second attention layer.

프로세서(120)는 세 번째 어텐션 레이어에서 어텐션 정보 셋(803)에 첫 번째 및 두 번째 어텐션 레이어들에 적용된 가이드 마스킹(801', 802')과 또 다른 가이드 마스킹(803')을 적용할 수 있다. 프로세서(120)는 세 번째 어텐션 레이어에서 연관성이 중간인(그 다음으로 약한) 제1 단원과 제2 단원 간의 관련도에 대응되는 어텐션 정보를 마스킹할 수 있다. 따라서, 제1 단원의 문제 그룹들과 제2 단원의 문제 그룹들은 세 번째 어텐션 레이어에서부터 서로 영향을 미치지 않을 수 있다.The processor 120 may apply the guide masking (801', 802') applied to the first and second attention layers and another guide masking (803') to the attention information set (803) in the third attention layer. . The processor 120 may mask attention information corresponding to the degree of relationship between the first unit and the second unit, which have a medium (next weakest) relationship in the third attention layer. Accordingly, the problem groups of the first unit and the problem groups of the second unit may not affect each other starting from the third attention layer.

프로세서(120)는 네 번째 어텐션 레이어에서 어텐션 정보 셋(804)에 첫 번째 내지 세 번째 어텐션 레이어들에 적용된 가이드 마스킹(801', 802', 803')과 또 다른 가이드 마스킹(804')을 적용할 수 있다. 프로세서(120)는 네 번째 어텐션 레이어에서 연관성이 가장 강한 제2 단원과 제3 단원 간의 관련도에 대응되는 어텐션 정보를 마스킹할 수 있다. 따라서, 제2 단원의 문제 그룹들과 제3 단원의 문제 그룹들은 네 번째 어텐션 레이어에서부터 서로 영향을 미치지 않을 수 있다. 네 번째 어텐션 레이어에서는 서로 동일한 단원 간의 관련도에 대응되는 어텐션 정보만이 마스킹되지 않고 적용될 수 있다.The processor 120 applies guide masking (801', 802', 803') applied to the first to third attention layers and another guide masking (804') to the attention information set 804 in the fourth attention layer. can do. The processor 120 may mask attention information corresponding to the degree of relevance between the second and third units with the strongest correlation in the fourth attention layer. Accordingly, the problem groups of the second unit and the problem groups of the third unit may not affect each other starting from the fourth attention layer. In the fourth attention layer, only attention information corresponding to the degree of relevance between the same units can be applied without masking.

이때, 몇 번째 어텐션 레이어에서부터 어텐션 정보에 마스킹을 적용했는지에 따라 지식 추적 모델이 다르게 학습될 수 있다. 즉, 어텐션 정보에 마스킹이 적용되기 시작한 어텐션 레이어의 위치에 따라 지식 추적 모델이 다르게 학습될 수 있다. 예를 들어, 비교적 앞부분의 어텐션 레이어에서부터 어텐션 정보 셋(801, 802)에 마스킹이 적용된 부분은 서로 간의 영향을 미치는 정도가 적어질 수 있고, 이에 따라 지식 추적 모델을 통해 산출된 예측 정답률이 달라질 수 있다. 이에 반해 비교적 뒷부분의 어텐션 레이어에서부터 어텐션 정보 셋(803, 804)에 마스킹이 적용되거나, 마스킹이 아예 적용되지 않은 부분은 서로 간의 영향을 미치는 정도가 커질 수 있고, 이에 따라 지식 추적 모델을 통해 산출된 예측 정답률이 달라질 수 있다. 따라서, 가이드 마스킹(801', 802', 803', 804')에 있어서, 단원 간 기 설정된 연관성에 따라 각 어텐션 정보에 대한 마스킹의 적용이 시작되는 어텐션 레이어의 위치가 달라질 수 있다.At this time, the knowledge tracking model may be learned differently depending on which attention layer masking is applied to the attention information. In other words, the knowledge tracking model may be learned differently depending on the location of the attention layer where masking begins to be applied to attention information. For example, the portion where masking is applied to the attention information sets 801 and 802 from the relatively front attention layer may have less influence on each other, and accordingly, the predicted correct answer rate calculated through the knowledge tracking model may vary. there is. On the other hand, the degree to which masking is applied to the attention information sets (803, 804) starting from the relatively later attention layer, or where masking is not applied at all, may increase the degree of influence on each other, and accordingly, the The predicted correct rate may vary. Accordingly, in the guide masking 801', 802', 803', and 804', the position of the attention layer where masking for each attention information starts may vary depending on the preset correlation between units.

상술한 내용은 예시적인 것으로 본 개시는 이에 한정되는 것은 아니다. The above content is illustrative and the present disclosure is not limited thereto.

본 개시의 다른 실시예에 따르면, 가이드 마스킹(801', 802', 803', 804')은 문제 그룹들에 대한 정보에 기초하여 설정된 마스킹일 수 있다. 예를 들어, 문제 그룹들 각각에 난이도 값이 서로 유사할수록 뒷부분의 어텐션 레이어에서부터 어텐션 정보 셋에 마스킹이 적용될 수 있다. 난이도 값이 서로 전혀 상이한 두 개의 문제 그룹들의 경우, 두 개의 문제 그룹들 간의 정오답 여부가 서로에 크게 영향을 미치지 않도록 설정할 수 있다. 난이도가 낮은 문제 그룹을 맞힌다고 하더라도 난이도가 높은 문제 그룹을 맞힐 수 있다고 예측되지 않기 때문이다. 이는, 난이도가 높은 문제 그룹을 틀렸다고 하더라도 난이도가 낮은 문제 그룹을 맞힐 수 있다고 예측되지 않는 것과 마찬가지다. 그러나, 마스킹이 적용되지 않는다면, 난이도가 낮은 문제 그룹을 맞히는 경우 난이도가 높은 문제 그룹에 대한 예측 정답률이 높아지는 오류가 발생할 수 있고, 난이도가 높은 문제 그룹을 틀리는 경우 난이도가 낮은 문제 그룹에 대한 예측 정답률이 낮아지는 오류가 발생할 수 있다. 따라서, 가이드 마스킹(801', 802', 803', 804')에 있어서, 난이도 값에 따라 각 어텐션 정보에 대한 마스킹의 적용이 시작되는 어텐션 레이어의 위치가 달라질 수 있다.According to another embodiment of the present disclosure, the guide masking (801', 802', 803', and 804') may be masking set based on information about problem groups. For example, the more similar the difficulty values are to each problem group, the more masking can be applied to the attention information set starting from the attention layer at the back. In the case of two problem groups with completely different difficulty values, it can be set so that incorrect answers between the two problem groups do not significantly affect each other. This is because even if you guess a group of problems with low difficulty, it is not predicted that you can guess a group of problems with high difficulty. This is the same as saying that even if you get a group of high-difficulty problems wrong, it is not expected that you can get a group of low-difficulty problems right. However, if masking is not applied, an error may occur that increases the predicted correct rate for the high-difficulty problem group if the low-difficulty problem group is correct, and if the high-difficulty problem group is incorrect, the predicted correct rate for the low-difficulty problem group may increase. This lowering error may occur. Accordingly, in guide masking 801', 802', 803', and 804', the position of the attention layer where masking for each attention information starts may vary depending on the difficulty value.

본 개시의 또 다른 실시예에 따르면, 가이드 마스킹(801', 802', 803', 804')은 문제 그룹들에 대한 학습 기록에 기초하여 설정된 마스킹일 수 있다. 예를 들어, 사용자가 문제 그룹들 각각을 푼 시간 정보가 유사할수록 뒷부분의 어텐션 레이어에서부터 어텐션 정보 셋에 마스킹이 적용될 수 있다. 시간 정보가 서로 전혀 상이한 두 개의 문제 그룹들의 경우, 두 개의 문제 그룹들 간의 정오답 여부가 서로에 크게 영향을 미치지 않도록 설정할 수 있다. 문제를 푼 시간이 오래 지난 경우, 해당 시점의 사용자의 실력과 현재 시점의 사용자의 실력이 다를 수 있기 때문이다. 따라서, 시간 정보의 차이가 클수록 사용자의 이전 정오답 여부가 현재 정오답 여부에 영향을 미칠 확률이 작아질 수 있다. 이때, 마스킹이 적용되지 않는다면, 과거의 정오답 여부에 따라 현재의 정오답 여부를 결정하게 되어 현재의 예측 정답률에 오류가 발생할 수 있다. 따라서, 가이드 마스킹(801', 802', 803', 804')은 일정 시간이 지난 학습 기록에 대해서는 예측 정답률을 산출하는 데에 영향을 미치지 않도록 어텐션 정보 셋의 일부를 마스킹할 수 있다.According to another embodiment of the present disclosure, the guide masking (801', 802', 803', and 804') may be masking set based on learning records for problem groups. For example, as the time information at which the user solved each problem group is similar, masking can be applied to the attention information set from the attention layer at the back. In the case of two problem groups with completely different time information, it can be set so that incorrect answers between the two problem groups do not significantly affect each other. If it has been a long time since the problem was solved, the user's skill at that time may be different from the user's skill at the current time. Therefore, the larger the difference in time information, the lower the probability that the user's previous correct answer will affect the current correct answer. At this time, if masking is not applied, the current incorrect answer is determined depending on the past incorrect answer, which may cause an error in the current predicted correct answer rate. Accordingly, the guide masking 801', 802', 803', and 804' can mask part of the attention information set so as not to affect the calculation of the predicted correct response rate for learning records that have passed a certain amount of time.

상술한 가이드 마스킹은 동시에 수행될 수 있고, 각각 개별적으로 수행될 수도 있다.The above-described guide masking may be performed simultaneously or may be performed individually.

위와 같이 가이드 마스킹을 적용하는 경우 지식 추적 모델의 성능이 향상될 수 있다. 즉, 단원 간 연관성을 반영하여 다음 문제 그룹의 예측 정답률을 산출함으로써, 보다 정확하게 정답률을 예측할 수 있다. 또한, 가이드 마스킹을 이용하여 학습한 지식 추적 모델을 이용하여 예측 정답률을 산출하고, 이를 통해 단원 간 연관성을 수치화하고 시각화하는 경우, 단원 간 연관성이 보다 명확하게 수치화되고 시각화될 수 있다.If guided masking is applied as above, the performance of the knowledge tracking model can be improved. In other words, by calculating the predicted correct answer rate for the next problem group by reflecting the relationship between units, the correct answer rate can be predicted more accurately. In addition, when the predicted correct rate is calculated using a knowledge tracking model learned using guided masking, and the correlation between units is quantified and visualized through this, the correlation between units can be quantified and visualized more clearly.

다만, 상술한 예들은 예시들에 불과할 뿐 본 개시는 상술한 예시들에 한정되는 것은 아니다. However, the above-described examples are merely examples and the present disclosure is not limited to the above-described examples.

본 개시에서 장치(100)는 상기 설명된 몇몇 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 몇몇 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.In the present disclosure, the device 100 is not limited to the configuration and method of some of the embodiments described above, but all or part of the embodiments are selectively combined so that various modifications can be made. It may be configured.

본 개시에서 설명되는 다양한 실시예는 예를 들어, 소프트웨어, 하드웨어 또는 이들의 조합된 것을 이용하여 컴퓨터 또는 이와 유사한 디바이스로 읽을 수 있는 기록매체 내에서 구현될 수 있다. Various embodiments described in this disclosure may be implemented, for example, in a recording medium readable by a computer or similar device using software, hardware, or a combination thereof.

하드웨어적인 구현에 의하면, 여기에 설명되는 몇몇 실시예는 ASICs(application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays, 프로세서, 제어기, 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(microprocessors), 기타 기능 수행을 위한 전기적인 유닛(unit) 중 적어도 하나를 이용하여 구현될 수 있다. 일부의 경우에 본 개시에서 설명되는 몇몇 실시예가 프로세서로 구현될 수 있다.According to hardware implementation, some embodiments described herein include application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), and field programmable gate arrays (FPGAs). , may be implemented using at least one of processors, controllers, micro-controllers, microprocessors, and other electrical units for performing functions, as described in the present disclosure. Some embodiments may be implemented in a processor.

소프트웨어적인 구현에 의하면, 본 개시에서 설명되는 절차 및 기능과 같은 몇몇 실시예는 별도의 소프트웨어 모듈들로 구현될 수 있다. 소프트웨어 모듈들 각각은 본 개시에서 설명되는 하나 이상의 기능, 태스크 및 작동을 수행할 수 있다. 적절한 프로그램 언어로 쓰여진 소프트웨어 애플리케이션으로 소프트웨어 코드(software code)가 구현될 수 있다. 여기서, 소프트웨어 코드는, 저장부(110)에 저장되고, 프로세서(120)에 의해 실행될 수 있다. 즉, 적어도 하나의 프로그램 명령이 저장부(110)에 저장되어 있고, 적어도 하나의 프로그램 명령이 프로세서(120)에 의해 실행될 수 있다. According to software implementation, some embodiments, such as procedures and functions described in this disclosure, may be implemented as separate software modules. Each of the software modules may perform one or more functions, tasks, and operations described in this disclosure. Software code can be implemented as a software application written in an appropriate programming language. Here, the software code may be stored in the storage unit 110 and executed by the processor 120. That is, at least one program command is stored in the storage unit 110, and at least one program command can be executed by the processor 120.

본 개시의 몇몇 실시예에 따른 장치의 프로세서가 수행하는 하나의 단원과 관련된 문제를 사용자가 맞힐 확률 값을 산출하는 방법은 장치에 구비된 적어도 하나의 프로세서가 읽을 수 있는 기록매체에 적어도 하나의 프로세서가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 적어도 하나의 프로세서가 읽을 수 있는 기록매체는 적어도 하나의 프로세서에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 디바이스를 포함한다. 적어도 하나의 프로세서가 읽을 수 있는 기록 매체의 예로는 ROM(Read Only Memory), RAM(Random Access Memory), CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장 디바이스 등이 포함된다. A method of calculating a probability value of a user correcting a problem related to one unit performed by a processor of a device according to some embodiments of the present disclosure may include recording a recording medium readable by at least one processor provided in the device and at least one processor. It is possible to implement it as readable code. A recording medium readable by at least one processor includes all types of recording devices storing data that can be read by at least one processor. Examples of recording media that can be read by at least one processor include Read Only Memory (ROM), Random Access Memory (RAM), CD-ROM, magnetic tape, floppy disk, and optical data storage devices.

한편, 본 개시에서 첨부된 도면을 참조하여 설명하였으나, 이는 실시예일 뿐 특정 실시예에 한정되지 아니하며, 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 변형실시가 가능한 다양한 내용도 청구범위에 따른 권리범위에 속한다. 또한, 그러한 변형실시들이 본 발명의 기술 사상으로부터 개별적으로 이해되어서는 안 된다.Meanwhile, although the present disclosure has been described with reference to the accompanying drawings, these are only examples and are not limited to specific embodiments, and various modifications that can be made by those skilled in the art in the technical field to which the invention pertains are also included in the claims. falls within the scope of rights. Additionally, such modified implementations should not be understood individually from the technical spirit of the present invention.

Claims (20)

장치의 프로세서에 의해 단원 간 연관성을 수치화하는 방법으로서,
제1 단원의 문제 그룹들 중 선별된 일부에 대하여 복원 추출된 제1 시퀀스에 포함된 문제 그룹들 각각의 정오답 히스토리를 기초로 하여 제2 단원 문제 그룹들 각각에 대한 정답률을 예측하는 단계;
상기 제2 단원의 문제 그룹들 각각에 대한 예측 정답률의 평균값을 산출하는 단계;
상기 평균값을 상기 제1 단원에 대한 상기 제2 단원의 상관값으로 정의하는 단계; 및
세로축 상의 제1 단원과 가로축 상의 제2 단원이 교차하는 지점에 상기 상관값을 대응하는 단계;를 포함하는,
방법.
A method of quantifying the correlation between units by a processor of a device, comprising:
Predicting a correct answer rate for each of the second unit problem groups based on the incorrect answer history of each problem group included in the first sequence restored and extracted for a selected portion of the first unit problem groups;
calculating the average value of the predicted correct rate for each problem group of the second unit;
defining the average value as a correlation value of the second unit with respect to the first unit; and
Comprising: corresponding to the correlation value at the point where the first unit on the vertical axis and the second unit on the horizontal axis intersect,
method.
제1항에 있어서,
상기 정답률을 예측하는 단계는
상기 장치의 저장부에 저장된 상기 제1 단원의 문제 그룹들 중 제1 특징에 해당하는 문제 그룹들을 선별하는 단계;
제1 단원에서 선별된 문제 그룹들을 표본으로 하여 문제 그룹을 n번 추출하는 단계;
추출된 제1 단원의 문제 그룹 세트를 상기 제1 시퀀스로 정의하는 단계; 및
상기 제1 시퀀스에 포함된 문제 그룹들 각각의 정오답 히스토리를 기초로 하여 상기 제2 단원의 각 문제 그룹들에 대한 예측 정답률을 산출하는 단계;를 포함하는,
방법.
According to paragraph 1,
The step of predicting the correct answer rate is
selecting problem groups corresponding to a first characteristic among problem groups of the first unit stored in the storage of the device;
Extracting problem groups n times using the problem groups selected in the first unit as samples;
defining a problem group set of the extracted first unit as the first sequence; and
Comprising: calculating a predicted correct answer rate for each problem group of the second unit based on the incorrect answer history of each problem group included in the first sequence,
method.
제2항에 있어서,
상기 선별하는 단계는 상기 장치의 저장부에 저장된 문제 그룹들의 난이도를 확인하는 단계를 포함하고,
상기 제1 특징은 제1 난이도 구간인,
방법.
According to paragraph 2,
The selecting step includes checking the difficulty level of problem groups stored in the storage of the device,
The first feature is the first difficulty section,
method.
제2항에 있어서,
상기 추출은 복원추출인,
방법.
According to paragraph 2,
The extraction is restoration extraction,
method.
삭제delete 제2항에 있어서,
상기 예측 정답률은 지식 추적 모델을 이용하여 산출되는,
방법.
According to paragraph 2,
The predicted correct rate is calculated using a knowledge tracking model,
method.
제6항에 있어서,
상기 지식 추적 모델을 학습하는 단계를 더 포함하고,
상기 지식 추적 모델을 학습하는 단계는,
추출된 문제 그룹 세트를 인풋 시퀀스로 정의하는 단계;
상기 인풋 시퀀스 내에 포함된 문제 그룹들 서로에 대한 관련도를 수치화하여 어텐션 정보들을 포함하는 어텐션 정보 셋을 산출하는 단계;
상기 어텐션 정보 셋에 대해 가이드 마스킹을 적용하는 단계; 및
상기 가이드 마스킹이 적용된 상기 어텐션 정보 셋을 사용하여 상기 지식 추적 모델을 학습하는 단계를 포함하는,
방법.
According to clause 6,
Further comprising the step of learning the knowledge tracking model,
The step of learning the knowledge tracking model is,
defining a set of extracted problem groups as an input sequence;
Calculating an attention information set including attention information by quantifying the degree of relationship between problem groups included in the input sequence;
Applying guide masking to the attention information set; and
Comprising the step of learning the knowledge tracking model using the attention information set to which the guide masking is applied,
method.
제7항에 있어서,
상기 가이드 마스킹은,
상기 장치의 저장부에 저장된 단원 간의 기 설정된 연관성, 상기 문제 그룹들에 대한 정보, 및/또는 상기 문제 그룹들에 대한 학습 기록 중 적어도 하나에 기초하여 설정되는,
방법.
In clause 7,
The guide masking is,
Set based on at least one of a preset association between units stored in the storage unit of the device, information on the problem groups, and/or learning records for the problem groups,
method.
컴퓨터 판독가능 저장 매체 저장된 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램은 장치의 프로세서에서 실행되는 경우, 장치의 프로세서에 의해 단원 간 연관성을 수치화하는 단계들을 수행하며, 상기 단계들은:
제1 단원의 문제 그룹들 중 선별된 일부에 대하여 복원 추출된 제1 시퀀스에 포함된 문제 그룹들 각각의 정오답 히스토리를 기초로 하여 제2 단원 문제 그룹들 각각에 대한 정답률을 예측하는 단계;
상기 제2 단원의 문제 그룹들 각각에 대한 예측 정답률의 평균값을 산출하는 단계;
상기 평균값을 상기 제1 단원에 대한 상기 제2 단원의 상관값으로 정의하는 단계; 및
세로축 상의 제1 단원과 가로축 상의 제2 단원이 교차하는 지점에 상기 상관값을 대응하는 단계;를 포함하는,
컴퓨터 판독가능 저장 매체 저장된 컴퓨터 프로그램.
A computer program stored on a computer-readable storage medium, wherein the computer program, when executed on a processor of a device, performs steps of quantifying the relationship between units by the processor of the device, the steps comprising:
Predicting a correct answer rate for each of the second unit problem groups based on the incorrect answer history of each problem group included in the first sequence restored and extracted for a selected portion of the first unit problem groups;
calculating the average value of the predicted correct rate for each problem group of the second unit;
defining the average value as a correlation value of the second unit with respect to the first unit; and
Comprising: corresponding to the correlation value at the point where the first unit on the vertical axis and the second unit on the horizontal axis intersect,
A computer program stored on a computer-readable storage medium.
제9항에 있어서,
상기 정답률을 예측하는 단계는
상기 장치의 저장부에 저장된 상기 제1 단원의 문제 그룹들 중 제1 특징에 해당하는 문제 그룹들을 선별하는 단계;
제1 단원에서 선별된 문제 그룹들을 표본으로 하여 문제 그룹을 n번 추출하는 단계;
추출된 제1 단원의 문제 그룹 세트를 상기 제1 시퀀스로 정의하는 단계; 및
상기 제1 시퀀스에 포함된 문제 그룹들 각각의 정오답 히스토리를 기초로 하여 상기 제2 단원의 각 문제 그룹들에 대한 예측 정답률을 산출하는 단계;를 포함하는,
컴퓨터 판독가능 저장 매체 저장된 컴퓨터 프로그램.
According to clause 9,
The step of predicting the correct answer rate is
selecting problem groups corresponding to a first characteristic among problem groups of the first unit stored in the storage unit of the device;
Extracting problem groups n times using the problem groups selected in the first unit as samples;
defining a problem group set of the extracted first unit as the first sequence; and
Comprising: calculating a predicted correct answer rate for each problem group of the second unit based on the incorrect answer history of each problem group included in the first sequence,
A computer program stored on a computer-readable storage medium.
제10항에 있어서,
상기 선별하는 단계는 상기 장치의 저장부에 저장된 문제 그룹들의 난이도를 확인하는 단계를 포함하고,
상기 제1 특징은 제1 난이도 구간인,
컴퓨터 판독가능 저장 매체 저장된 컴퓨터 프로그램.
According to clause 10,
The selecting step includes checking the difficulty level of problem groups stored in the storage of the device,
The first feature is the first difficulty section,
A computer program stored on a computer-readable storage medium.
제10항에 있어서,
상기 추출은 복원추출인,
컴퓨터 판독가능 저장 매체 저장된 컴퓨터 프로그램.
According to clause 10,
The extraction is restoration extraction,
A computer program stored on a computer-readable storage medium.
삭제delete 제10항에 있어서,
상기 예측 정답률은 지식 추적 모델을 이용하여 산출되는,
컴퓨터 판독가능 저장 매체 저장된 컴퓨터 프로그램.
According to clause 10,
The predicted correct rate is calculated using a knowledge tracking model,
A computer program stored on a computer-readable storage medium.
단원 간 연관성을 수치화하는 장치에 있어서, 상기 장치는:
적어도 하나의 프로그램 명령이 저장된 저장부; 및
상기 적어도 하나의 프로그램 명령을 수행하는 프로세서;
를 포함하고,
상기 프로세서는,
제1 단원의 문제 그룹들 중 선별된 일부에 대하여 복원 추출된 제1 시퀀스에 포함된 문제 그룹들 각각의 정오답 히스토리를 기초로 하여 제2 단원 문제 그룹들 각각에 대한 정답률을 예측하고,
상기 제2 단원의 문제 그룹들 각각에 대한 예측 정답률의 평균값을 산출하고,
상기 평균값을 상기 제1 단원에 대한 상기 제2 단원의 상관값으로 정의하고,
세로축 상의 제1 단원과 가로축 상의 제2 단원이 교차하는 지점에 상기 상관값을 대응하는,
장치.
In the device for quantifying the relationship between units, the device:
a storage unit storing at least one program command; and
a processor executing the at least one program instruction;
Including,
The processor,
Predicting the correct answer rate for each of the second unit problem groups based on the incorrect answer history of each problem group included in the first sequence restored and extracted for a selected portion of the problem groups of the first unit,
Calculating the average value of the predicted correct rate for each of the problem groups in the second unit,
Defining the average value as a correlation value of the second unit with respect to the first unit,
The correlation value corresponds to the point where the first unit on the vertical axis and the second unit on the horizontal axis intersect,
Device.
제15항에 있어서,
상기 정답률을 예측하도록 실행됨에 있어,
상기 장치의 저장부에 저장된 상기 제1 단원의 문제 그룹들 중 제1 특징에 해당하는 문제 그룹들을 선별하고,
제1 단원에서 선별된 문제 그룹들을 표본으로 하여 문제 그룹을 n번 추출하고,
추출된 제1 단원의 문제 그룹 세트를 상기 제1 시퀀스로 정의하고,
상기 제1 시퀀스에 포함된 문제 그룹들 각각의 정오답 히스토리를 기초로 하여 상기 제2 단원의 각 문제 그룹들에 대한 예측 정답률을 산출하는,
장치.
According to clause 15,
In performing the prediction of the correct answer rate,
Selecting problem groups corresponding to the first characteristic among the problem groups of the first unit stored in the storage of the device,
Using the problem groups selected in Unit 1 as samples, problem groups are extracted n times,
Defining the extracted problem group set of the first unit as the first sequence,
Calculating a predicted correct answer rate for each problem group of the second unit based on the incorrect answer history of each problem group included in the first sequence,
Device.
제16항에 있어서,
상기 문제 그룹들을 선별하도록 실행됨에 있어,
상기 장치의 저장부에 저장된 문제 그룹들의 난이도를 확인하고,
상기 제1 특징은 제1 난이도 구간인,
장치.
According to clause 16,
In carrying out the selection of the above problem groups,
Check the difficulty level of problem groups stored in the storage of the device,
The first feature is the first difficulty section,
Device.
제16항에 있어서,
상기 추출은 복원추출인,
장치.
According to clause 16,
The extraction is restoration extraction,
Device.
삭제delete 제16항에 있어서,
상기 예측 정답률은 지식 추적 모델을 이용하여 산출되는,
장치.
According to clause 16,
The predicted correct rate is calculated using a knowledge tracking model,
Device.
KR1020230075514A 2023-06-13 2023-06-13 Method, program, and device for quantifying correlation between units KR102659336B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230075514A KR102659336B1 (en) 2023-06-13 2023-06-13 Method, program, and device for quantifying correlation between units

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020230075514A KR102659336B1 (en) 2023-06-13 2023-06-13 Method, program, and device for quantifying correlation between units

Publications (1)

Publication Number Publication Date
KR102659336B1 true KR102659336B1 (en) 2024-04-18

Family

ID=90844267

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230075514A KR102659336B1 (en) 2023-06-13 2023-06-13 Method, program, and device for quantifying correlation between units

Country Status (1)

Country Link
KR (1) KR102659336B1 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6289853B2 (en) * 2013-10-07 2018-03-07 株式会社 スプリックス Learning content providing apparatus, learning support system, and program
KR102245286B1 (en) 2017-12-01 2021-04-28 한국전자통신연구원 Apparatus and method for learning item recommendation
KR20220050037A (en) * 2020-10-15 2022-04-22 (주)뤼이드 User knowledge tracking device, system and operation method thereof based on artificial intelligence learning
KR102405838B1 (en) * 2021-05-03 2022-06-07 디비디스커버코리아 주식회사 Apparatus for providing personalized content by order of questions and method therefor
KR102465634B1 (en) * 2022-07-20 2022-11-11 주식회사 튜링 Technique for providing customized problems to improve problem solving skills of users
KR102518474B1 (en) * 2022-07-21 2023-04-05 주식회사 튜링 Technique for updating a skill of a user

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6289853B2 (en) * 2013-10-07 2018-03-07 株式会社 スプリックス Learning content providing apparatus, learning support system, and program
KR102245286B1 (en) 2017-12-01 2021-04-28 한국전자통신연구원 Apparatus and method for learning item recommendation
KR20220050037A (en) * 2020-10-15 2022-04-22 (주)뤼이드 User knowledge tracking device, system and operation method thereof based on artificial intelligence learning
KR102405838B1 (en) * 2021-05-03 2022-06-07 디비디스커버코리아 주식회사 Apparatus for providing personalized content by order of questions and method therefor
KR102465634B1 (en) * 2022-07-20 2022-11-11 주식회사 튜링 Technique for providing customized problems to improve problem solving skills of users
KR102518474B1 (en) * 2022-07-21 2023-04-05 주식회사 튜링 Technique for updating a skill of a user

Similar Documents

Publication Publication Date Title
US11481572B2 (en) Method and apparatus for evaluating article value based on artificial intelligence, and storage medium
US11120701B2 (en) Adaptive presentation of educational content via templates
Whittaker A Beginner's guide to structural equation modeling
US10541884B2 (en) Simulating a user score from input objectives
US10866956B2 (en) Optimizing user time and resources
CN106843663B (en) Method, device, equipment and medium for positioning pre-jump position in page
CN117033802A (en) Teaching subject pushing method and system based on AI assistance
KR102659336B1 (en) Method, program, and device for quantifying correlation between units
KR20240013026A (en) Technique for updating a skill of a user
KR102465634B1 (en) Technique for providing customized problems to improve problem solving skills of users
US11170661B2 (en) Physical software coding training apparatus
JP2015197460A (en) Information processor, information processing method, and program
CN111062626A (en) Capability level evaluation method, device, equipment and storage medium
CN111047207A (en) Capability level evaluation method, device, equipment and storage medium
KR102477976B1 (en) Method for providing educational content
KR20160118845A (en) Method, system and recording medium for providing learning content
KR20140051607A (en) Apparatus providing analysis information based on level of a student and method thereof
KR102541689B1 (en) A technique to correct a correct rate of a question
CN113407829A (en) Online learning resource recommendation method, device, equipment and storage medium
KR20240001956A (en) A technique for calculating the probability of correcting a question related to one or more units
KR20240001954A (en) A technique for calculating the probability of correcting a question related to multiple units
KR20240001951A (en) A technique for calculating the probability of correcting a question related to a single unit
CN110648119A (en) Training method and device, storage medium and electronic equipment
KR20240012712A (en) A technique for updating a skill of a user based on the probability of correcting a question
KR20240001967A (en) A technique to set a difficulty level of questions posed by a preset institution

Legal Events

Date Code Title Description
A107 Divisional application of patent
GRNT Written decision to grant