WO2020204468A1 - 액티브 러닝 기법을 적용한 머신 러닝 프레임워크 운용 방법, 장치 및 컴퓨터 프로그램 - Google Patents

액티브 러닝 기법을 적용한 머신 러닝 프레임워크 운용 방법, 장치 및 컴퓨터 프로그램 Download PDF

Info

Publication number
WO2020204468A1
WO2020204468A1 PCT/KR2020/004137 KR2020004137W WO2020204468A1 WO 2020204468 A1 WO2020204468 A1 WO 2020204468A1 KR 2020004137 W KR2020004137 W KR 2020004137W WO 2020204468 A1 WO2020204468 A1 WO 2020204468A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
model
data
data analysis
analysis model
Prior art date
Application number
PCT/KR2020/004137
Other languages
English (en)
French (fr)
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 CN202080025985.7A priority Critical patent/CN113646788A/zh
Priority to US16/964,823 priority patent/US20210233191A1/en
Priority to JP2020540290A priority patent/JP7054558B2/ja
Publication of WO2020204468A1 publication Critical patent/WO2020204468A1/ko
Priority to CONC2021/0012810A priority patent/CO2021012810A2/es

Links

Images

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • 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

Definitions

  • the present invention relates to a method of providing user-customized content using a data analysis framework. More specifically, the present invention relates to a method of operating an expert model that generates an analysis model for a problem and/or a user using a large amount of user content consumption result data, and selects necessary data to efficiently learn the analysis model. For.
  • the present invention aims to solve the above problems. More specifically, the present invention relates to a method of operating an expert model for selecting data necessary to efficiently generate a user and/or a problem model.
  • a method of analyzing a user comprises constructing a problem database including a plurality of problems, collecting result data of a user's solution to the problem, and collecting the solution result data.
  • D step of updating the expert model by applying a reward set in a direction in which prediction accuracy of the data analysis model is improved to update information of the data analysis model.
  • the present invention it is possible to operate a data selection model to efficiently increase the performance of the analysis model separately from the data analysis model in the field of machine learning. According to this, since the data selection model proposes data for learning the data analysis model, it is possible to reduce the computer resources required for the data analysis model training, efficiently acquire the reliability of the data analysis model, and solve the problem of data selection. It works.
  • 1 is a diagram for explaining a problem of a data set for machine learning
  • FIG. 2 is a flowchart illustrating a method of operating a training data analysis model and a data coaching model in a data analysis framework according to an embodiment of the present invention.
  • 3 is a diagram for explaining a relationship between a problem understanding degree X and a probability P of matching a problem
  • FIG. 4 is a diagram for explaining a method of ending a data proposal for learning a data analysis model according to an embodiment of the present invention
  • this method has a problem in that the tag information depends on the subjectivity of the person. There was a problem that the reliability of the result data could not be high because the tag information generated mathematically without human subjectivity was not given according to the concept of the problem.
  • the present invention provides a method of applying a data analysis framework for big data processing and machine learning to exclude human intervention in the learning data processing process, and analyzing users and/or problems through the data analysis framework. It aims to do.
  • the user's content application result log is collected, a multidimensional space composed of the user and/or problem is formed, and the result data of the user's consumption of content such as problems, explanations, and lectures, correct and incorrect answer data for each problem, or view of problems
  • a user and/or problem may be modeled by calculating a vector for each user and problem, and a user modeling vector and a problem modeling vector may be calculated.
  • the user modeling vector may be interpreted as representing the characteristics of all the problems of an individual user as a vector value
  • the problem modeling vector may be interpreted as expressing the characteristics of all users of the individual problem as a vector value.
  • a method of calculating the user modeling vector and/or the problem modeling vector is not limited, and a conventional technique applied to a big data analysis framework used to calculate the user modeling vector and/or the problem modeling vector may be used.
  • the user modeling vector and the problem modeling vectors may not be interpreted as being limited to what attributes or features are included.
  • a user modeling vector may be expressed to express characteristics of an individual user among all users
  • a problem modeling vector may be expressed to express characteristics of an individual problem among all problems.
  • the user modeling vector may include information on a degree to which the user understands a certain concept, that is, a degree of understanding of the concept.
  • the problem modeling vector may include information on what concepts the problem is composed of, that is, a conceptual diagram.
  • a probability of a correct answer to a specific problem of a specific user may be estimated using the user modeling vector and the problem modeling vector.
  • the problem vector can be extended to a problem-view vector, and the user modeling vector and the problem-view modeling The vector can be used to calculate the probability that a particular user will select a particular view of any problem.
  • FIG. 1 is a diagram illustrating a problem of a data set applied to a conventional machine learning modeling.
  • the problem model generated by learning based on the data set biased against the problem solving data for gerunds will dominate the inclusion of the gerund concept, not the whole concept constituting the English subject. In this case, it is difficult to evaluate the performance of the user/problem model highly. For example, there may be a large difference between a probability that a corresponding user will solve an infinitive problem calculated using the user model and a result of the corresponding user actually solving the same problem.
  • each data constituting the entire data set is used as a machine learning input for generating an analysis model.
  • the amount of data used to generate the analysis model is very large, and a problem arises that excessive resources are required for generating the data analysis model.
  • a very large data set will be needed that contains enough data for other concepts.
  • a very large data set needs to be collected and processed, so it takes a long time to learn and a large cost for operating the data analysis framework occurs.
  • an object of the present invention is to provide a method of operating an expert model for coaching data necessary for learning the data analysis model separately from the data analysis model.
  • the expert model may propose data necessary to update the data analysis model in a preset direction according to the state of the data analysis model at a corresponding time point. Furthermore, the data analysis model according to an embodiment of the present invention may learn result data of solving a problem having a modeling vector that is close to the proposed data of the expert model. In this case, since the data analysis model can learn based on the data most suitable for the state at a specific point in time in order to improve performance, it can process the minimum amount of data and quickly reach the required level of performance.
  • the expert model may extract vectors having values for concepts other than the gerund and notify the data analysis model. Furthermore, the data analysis model selects problems with modeling vectors that are close to the vector and provides them to the user, and applies the resultant data to the user vector to reflect the understanding of the whole concept of the English subject in the user modeling vector. It can solve the problem of data bias.
  • steps 210, 220, 225, 23, and 240 are for explaining a process of generating a user and/or problem analysis model by using data on a content consumption result in a data analysis framework according to an embodiment of the present invention.
  • steps 260, 265, 270, 275, 280, and 285 describe the process of generating an expert model that recommends data necessary to efficiently generate the analysis model in a data analysis framework according to an embodiment of the present invention. For.
  • the user and/or problem model and the expert model may be learned based on different data and may be referred to as software that perform separate functions. Connected, it can contribute to the performance improvement of the entire data analysis framework.
  • step 210 of FIG. 2A all content and content consumption result data for all users are collected, and in step 220, an analysis model M for all users and/or content is used using the content consumption result data. Can be created.
  • the data analysis server may configure a database for learning content such as text, image, audio, and/or video problems, commentary, and lecture, and collect data as a result of users' access to the content database. have.
  • the data analysis server may collect problem solving result data, commentary inquiry data, or lecture video running data for all users. More specifically, the data analysis server builds a database for various problems on the market, provides a problem database to the user device, and collects the result of solving the problem by the user through the user device. Data can be collected.
  • the data analysis server can organize the collected problem solving result data in the form of a list of users, problems, and results.
  • Y (u, i) denotes the result of the user u solving the problem i, and may be assigned a value of 1 for the correct answer and 0 for the incorrect answer.
  • the multiple-choice problem is composed of not only the fingerprint but also the viewing element. If only the correct or incorrect answer is reflected as the source of the analysis, if two students answer the same problem but choose a different option, it is equivalent to calculating the vector value of the two students. The effect of the problem is the same, so the effect of the problem on the analysis results may be diluted.
  • the result of the student's solution is sufficiently reflected in the calculation of the vector value of the problem. It does not work, and it becomes practically diluted.
  • the data analysis server may extend the collected problem solving result data by applying a viewing parameter selected by the user.
  • the data analysis server may configure the collected solution result data in the form of a list of users, problems, and selection views.
  • Y (u, i, j) denotes a result of the user u selecting the example j of the question i, and a value of 1 may be assigned when the user u selects it and 0 when the answer is an incorrect answer.
  • the data analysis server configures a multidimensional space composed of a user and a problem, and assigns a value to the multidimensional space based on whether the user has a problem or is wrong,
  • the modeling vector for can be calculated.
  • the data analysis server configures a multidimensional space consisting of a user and a selection view of a problem, and assigns a value to the multidimensional space based on whether the user selects the view, and You can calculate the modeling vector for the problem view.
  • a user and a problem are expressed as a modeling vector according to an embodiment of the present invention, whether a specific user will fit a specific problem or not, that is, a probability of a correct answer to a specific problem of a specific user can be mathematically calculated.
  • the data analysis server may estimate a degree of understanding of a specific problem of a specific user using the user modeling vector and the problem modeling vector, and estimate a probability that a specific user will meet a specific problem using the degree of understanding.
  • the data analysis system can mathematically connect the mutual relationship between the user and the problem through a low coefficient matrix if the user's concept understanding L and the problem concept inclusion R are estimated with sufficient reliability. .
  • the total number of users to be analyzed is n and the total number of problems to be analyzed is m
  • the number of unknown concepts constituting the subject is assumed to be r
  • the understanding matrix L for each user's concept is n by It is defined as an r matrix
  • the matrix R for the degree of inclusion for each concept of the problem can be defined as an m by r matrix.
  • L is connected to the transposition matrix R T of R, the relationship between the user and the problem can be analyzed without separately defining the concept or the number of concepts.
  • understanding and correct answer rate can be estimated by introducing methodologies used in psychology, cognitive science, and pedagogy.
  • understanding and correct answer rate can be estimated by considering the M2PL (multidimensional two-parameter logistic) latent trait model devised by Reckase and McKinely.
  • 3 is a two-dimensional graph of the result of an experiment using sufficiently large data on the degree of understanding of the problem X and the probability P of matching the problem.
  • the X-axis indicates the degree of understanding and the Y-axis indicates the probability of a correct answer.
  • a function ⁇ for estimating the probability P that the user will solve the problem can be derived as shown in the following equation.
  • the probability P of the correct answer to the problem can be calculated by applying the degree of understanding of the problem X to the tn ⁇ .
  • the present invention suffices if it is possible to calculate the probability of a correct answer to a user's problem by applying a conventional technique capable of estimating the relationship between understanding and correct answer rate in a reasonable manner, and the present invention is limited to the methodology for estimating the relationship between understanding and correct answer rate. It should be noted that it cannot be interpreted.
  • the user modeling vector may be provided to mean the correct answer rate of a specific problem by using the relationship between the user modeling vector and the problem modeling vector.
  • a rate of correct answers to a user's problem may be estimated by using a selection probability for each question. For example, if the first user has a probability of selecting an option for a specific question (0.1, 0.2, 0, 0.7), the user will select option 4 with a high probability, and when the correct answer to the corresponding question is 4, the first Users can expect a high probability of hitting the problem.
  • the data analysis server configures a multidimensional space with the user and problem-view as variables, and assigns a value to the multi-dimensional space based on whether the user selects the problem-view, and We can compute vectors.
  • the selectivity may be estimated by applying various algorithms to the user modeling vector and the problem-view modeling vector, and the algorithm for calculating the selectivity is not limited in interpreting the present invention. That is, by using the relationship between the user modeling vector and the problem-view modeling vector, the user modeling vector may be provided to mean a selection probability for a specific view of a specific problem.
  • the user's problem-view selection rate can be estimated. (x is the problem-view vector, is the user vector)
  • the data analysis server may estimate a correct answer rate of a problem using the user's view selection rate.
  • a method of estimating the correct answer rate for the corresponding question may be considered by using a plurality of selection rates for the corresponding question.
  • a method of comparing the choices of the correct answers to the choices of all the choices may be considered.
  • the percentage of correct answers for the user's question will be calculated as 0.5 / (0.5+0.1+0.3+0.6).
  • the user does not understand the problem by dividing it in units of views, but understands it in units of questions including the composition of the entire view and the intention to present the question, so the selection rate and the correct answer rate cannot be simply connected.
  • the correct answer rate of a corresponding question can be estimated from the answer selection rate by averaging the selection rates of all the answers of a corresponding question and applying the averaged selection rates of the correct answers to the selection rates of all the answers.
  • the service server may estimate the correct answer rate of a problem by using the user's problem-view selection probability, and through this, the user's understanding of a specific concept may be estimated.
  • an expert model T for coaching the user and data necessary to efficiently update the problem analysis model M may be generated.
  • the expert model T takes an action based on the state information of the analysis model M, the update information, and the data information that causes the update, and receives a reward for the action according to the change state of the model. It can be created through reinforcement learning that learns in the direction of maximizing the sum.
  • the data analysis server may assign an initial value T int of the expert model T in an arbitrary form, and extract at least one or more arbitrary vector values for proposal to the analysis model M.
  • the vector is used to collect data necessary to increase the reliability of the performance of the user vector calculated by the analysis model M, for example, the probability that a random user calculated according to the analysis model M will fit a random problem. Can mean a problem.
  • the vector value extracted from the expert model T int can be proposed to the analysis model M.
  • the analysis model M checks at least one problem having a modeling vector close to the vector value, (Step 225) provides the corresponding problems to the user (Step 230) and collects problem solving result data. , We will update to reflect this. (Step 240)
  • the expert model status information of the updated analysis model based on the suggestions of T int can be used to train the professional model T int. More specifically, the expert model T compares and learns the prediction performance of the analysis model M before the update and the analysis model M after the update, and receives an evaluation and rewards for their proposal based on the changed value of the prediction performance of the analysis model. Can be obtained. (Step 270). And the expert model T can be updated in the direction of maximizing rewards. (Step 275)
  • the reward according to the exemplary embodiment of the present invention may be interpreted as indicating a learning direction or orientation point of the analysis model M.
  • the reward is set to increase the prediction accuracy of the analysis model M by updating the analysis model M in a direction in which the probability of correct answer or the probability of selecting an answer for a specific problem predicted by analysis model M coincides with the actual solution result. Can be.
  • a modeling vector U A of user A created by applying data obtained by solving problems 1, 2, 3, 4, and 5 by user A may be considered.
  • U A is a vector representing the probability of the correct answer to the entire problem of user A
  • the data analysis model M is the prediction accuracy of U A , that is, the result of the actual solution by user A for each problem and the data analysis model M
  • the expert model T should be updated to recommend data necessary for the data analysis model M to be updated in this direction.
  • the expert model T may recommend a vector for a problem that requires solution result data to increase the prediction accuracy of U A at the time point.
  • the data analysis server may extract problem 6 having a modeling vector close to the recommended vector value, provide problem 6 to user A, and collect data as a result of solving user A's 6 problem.
  • the solution result data may include the view selected by the user A while solving the 6 problem, the correct answer view of the 6 problem, and information on the time point of the solution, and the data analysis model M will be updated by applying the solution result data.
  • the expert model T is for ⁇ U A , U A ', and the modeling vector Q 6 of problem 6 from the data analysis model M. You will receive information.
  • T will be trained to extract a vector different from Q 6 when the analytic model M is in the state of U A.
  • user A has a user modeling vector U A formed based on the data obtained by solving problems 1, 2, 3, 4, and 5.
  • the difference between the probability of the correct answer estimated by the vector Q 6 of the 6 problem and the result of the user A solving the 6 problem is based on the data obtained by the user A solving the 1, 2, 3, 4, 5, 6
  • the expert model T will be updated by applying a negative reward to ( ⁇ U A , U A ', Q 6 ).
  • the expert model T will be trained to extract a vector that is not similar to Q 6 in the direction of recommending 6 dissimilar problems in the state of similar data analysis model M.
  • T will be trained to extract a vector similar to Q 6 when the analysis model M is in the state of U A.
  • the user modeling vector U A and The difference between the probability of the correct answer estimated by the vector Q 6 of problem 6 and the result of solving the problem 6 by user A is U A '
  • the difference between the probability of the correct answer estimated by Q 6 and the result of actually solving the 6 problem by user A is greater than the difference between the result of solving the 6 problem, it can be interpreted that the prediction accuracy of the analysis model M is improved by applying the data for solving the 6 problem.
  • the expert model T will be updated by applying a positive reward to ( ⁇ U A , U A ', Q 6 ).
  • the expert model T will be trained to extract a vector similar to Q 6 in the direction of recommending the problem similar to 6 in the state of the similar data analysis model M.
  • the reward applied to the training of the expert model T can be set in a direction to increase the prediction accuracy of the data analysis model M, as described above, but according to another embodiment of the present invention, it is also set in a direction to narrow the prediction score variance range. I can.
  • the expert model T will be formed in the direction of extracting data for learning in a direction in which prediction of the analysis model M is elaborated.
  • step 275 the expert model T will be updated by learning the data ( ⁇ U A , U A ', Q) received from the analysis model M according to the reward.
  • Step 280 is a step for learning the analysis model M and/or the expert model T to an optimized level.
  • Expert model T will continue to propose data for learning analysis model M if the performance of the analysis model M formed at that time is insufficient, but if the performance of the analysis model M is sufficient, the data proposal ends, and the data analysis server It would be appropriate to analyze users and/or content with the analysis model M of.
  • FIG. 4 is a diagram for describing a case in which the update of the analysis model M and/or the expert model T is ended.
  • the first is when the analysis model M at that time can sufficiently diagnose the user and/or the problem. For example, if analytic model M can estimate the probability of correct answer to user A's entire problem with sufficient accuracy through user vector U A without additional learning of user A's problem-solving result data, or User A's external test score can be estimated. This can be determined by checking whether the accuracy of the estimated value calculated by the analysis model at the time point is greater than or equal to a threshold value. (450 in Fig. 4)
  • the second is when the characteristics of the user and/or the problem can no longer be grasped even if additional learning of the result data is performed.
  • this is a case where there is no effect of learning, and it is expected that no change in the analysis model M is expected even if data is additionally learned according to the recommendation of the expert model T.
  • this may be the case when the accuracy of the estimated value calculated through the user vector U A is not changed and is maintained within a certain range despite the addition of user A's solution result data. (460 in Fig. 4)
  • the data recommended by the expert model T is already reflected in the analysis model M.
  • the recommendation problem calculated by the expert model T is any one of the first to twentieth problems Can be considered.
  • the expert model T ends the data proposal, and the training of the expert model T and the analysis model M will also end.
  • the expert model T may extract data necessary for learning the analysis model M at a corresponding time point and recommend it to the analysis model M.
  • the state information, update information, and problem modeling vector information of the analysis model M acquired in the expert model T in step 245 are used for learning the expert model T as well as ( Step 275), there is a feature that is used as an input for determining the next proposed data in the updated expert model. (Step 285)
  • the expert model T may propose the next data necessary to increase the performance of the analysis model M by referring to the state information of the analysis model changed according to the conventional proposal.
  • the next vector value to be proposed to increase the performance of U A ' may be calculated.
  • the vector refers to a problem for collecting necessary data to increase the performance of the user vector U A calculated by the analysis model M, for example, the reliability of the probability that the user A calculated according to the analysis model M will fit a random problem. can do.
  • the analysis model M extracts the vector received from the expert model T and a problem vector having a degree of similarity in a preset range and provides it to the user, and learns the result data of solving the problem.
  • the data analysis server randomly extracts at least one problem from the problem database and provides it to a new user, and applies the solution result data to determine the user modeling vector U int of the new user. You can set it up and point it out to Expert Model T.
  • the initial modeling vector of the new user u new can be calculated.
  • the expert model T may recommend at least one or more arbitrary problem vectors necessary for diagnosis of a new user.
  • the data analysis server will provide the new user with problems following the recommendation of the expert model T as diagnostic problems.
  • the analysis model M updates the user vector by applying the result data of the user's solution to the diagnosis problem, and notifies the expert model T with information about the updated user vector, the changed value of the user vector, and the diagnosis problem vector.
  • the expert model T learns information by applying a positive reward.
  • the expert model T learns information by applying a negative reward. Thereafter, the expert model T may determine whether the performance of the user model U is sufficient, and may recommend a problem vector necessary for improving the performance of U until the performance of the user model exceeds a preset range.
  • FIG. 2A is a case in which the analysis model M and the expert model T are updated to reflect the data collection result while providing a recommendation problem to the user.
  • a framework for operating an analysis model and a framework for learning an expert model may be implemented in logically and/or physically separated computing devices in order to recommend a problem to a user. More specifically, a system for recommending a problem to a user and a system for learning an expert model may be logically and physically separated and operated.
  • FIG. 2B is a flow chart for explaining the embodiment of the present invention. In the description of FIG. 2B, descriptions of portions overlapping with those of FIG. 2A will be omitted.
  • the framework for operating the expert model T may record a history of update information of the analysis model. That is, the history of the state information of the analysis model M, the update M'information, and the problem modeling vector information causing the update may be recorded. Furthermore, unlike FIG. 2A, as long as the expert model T is not updated and the termination condition is not satisfied (step 280), a problem vector may be proposed to the analysis model M by using the expert model T. (Step 265)
  • the expert model T operation framework may update the expert model T by reflecting the update history information of the analysis model at an arbitrary point in time.
  • Step 275 the reward for setting the update direction of the expert model T is applied (Step 270), which may be substantially the same as the embodiment of FIG. 2A.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Strategic Management (AREA)
  • Primary Health Care (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Educational Technology (AREA)
  • Educational Administration (AREA)
  • Medical Informatics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

본 발명은 데이터 분석 서버에서, 사용자를 분석하는 방법에 대한 것으로, 복수의 문제를 포함하는 문제 데이터베이스를 구성하고, 상기 문제에 대한 사용자의 풀이 결과 데이터를 수집하고, 상기 풀이 결과 데이터를 이용하여 상기 사용자를 모델링하기 위한 데이터 분석 모델을 생성하는 A 단계; 상기 데이터 분석 모델의 기계 학습에 필요한 데이터를 제안하는 전문가 모델을 생성하는 B 단계; 상기 전문가 모델의 추천에 따라 상기 문제 데이터베이스에서 적어도 하나 이상의 문제를 추출하고, 추출한 문제에 대한 사용자의 풀이 결과 데이터를 이용하여 상기 데이터 분석 모델을 업데이트하는 C 단계; 및 상기 데이터 분석 모델의 업데이트 정보에 상기 데이터 분석 모델의 예측 정확도가 향상되는 방향으로 설정된 리워드를 적용하여 상기 전문가 모델을 업데이트하는D 단계를 포함하는 것을 특징으로 한다.

Description

액티브 러닝 기법을 적용한 머신 러닝 프레임워크 운용 방법, 장치 및 컴퓨터 프로그램
본 발명은 데이터 분석 프레임워크를 이용하여 사용자 맞춤형 컨텐츠를 제공하는 방법에 대한 것이다. 보다 구체적으로 본 발명은 대량의 사용자 컨텐츠 소비 결과 데이터를 이용하여 문제 및/또는 사용자에 대한 분석 모델을 생성하고, 상기 분석 모델을 효율적으로 학습시키기 위해 필요한 데이터를 선별하는 전문가 모델을 운용하는 방법에 대한 것이다.
지금까지 교육 컨텐츠는 일반적으로 패키지로 제공되어 왔다. 예를 들어 종이에 기록되는 문제집은 권당 최소 700문제가 수록되어 있으며, 온라인 또는 오프라인 강의 역시 1-2 시간 단위로 최소 한달간 공부할 양을 묶어서 한번에 판매된다.
그러나 교육을 받는 학생들 입장에서는 개별적으로 취약한 단원과 취약한 문제 유형이 모두 상이하기 때문에 패키지 형태보다는 개인 맞춤형 컨텐츠에 대한 니즈가 존재한다. 자신이 취약한 단원의 취약한 문제 유형만을 골라서 학습하는 것이 문제집의 7백 문제 전체를 푸는 것보다 훨씬 효율적이기 때문이다.
그러나 피교육자인 학생들 스스로 자신의 취약점을 파악하는 것은 매우 어렵다. 나아가 학원, 출판사 등 종래의 교육 업계에서도 주관적 경험과 직관에 의존하여 학생 및 문제들을 분석하기 때문에 개별 학생들에게 최적화된 문제를 제공하는 것을 쉽지 않다.
이와 같이 종래의 교육 환경에서는 피교육자가 가장 효율적으로 학습 결과를 낼 수 있는 개인 맞춤형 컨텐츠를 제공하는 것이 쉽지 않으며, 학생들은 패키지 형태의 교육 컨텐츠에 대해 성취감과 흥미를 금방 잃게 되는 문제가 발생한다.
본 발명은 상기와 같은 문제를 해결하는 것을 목적으로 한다. 보다 구체적으로 본 발명은, 사용자 및/또는 문제 모델을 효율적으로 생성하기 위해 필요한 데이터를 선별하는 전문가 모델을 운용하는 방법에 대한 것이다.
본 발명의 실시예를 따르는, 데이터 분석 서버에서, 사용자를 분석하는 방법은, 복수의 문제를 포함하는 문제 데이터베이스를 구성하고, 상기 문제에 대한 사용자의 풀이 결과 데이터를 수집하고, 상기 풀이 결과 데이터를 이용하여 상기 사용자를 모델링하기 위한 데이터 분석 모델을 생성하는 A 단계; 상기 데이터 분석 모델의 기계 학습에 필요한 데이터를 제안하는 전문가 모델을 생성하는 B 단계; 상기 전문가 모델의 추천에 따라 상기 문제 데이터베이스에서 적어도 하나 이상의 문제를 추출하고, 추출한 문제에 대한 사용자의 풀이 결과 데이터를 이용하여 상기 데이터 분석 모델을 업데이트하는 C 단계; 및 상기 데이터 분석 모델의 업데이트 정보에 상기 데이터 분석 모델의 예측 정확도가 향상되는 방향으로 설정된 리워드를 적용하여 상기 전문가 모델을 업데이트하는D 단계를 포함하는 것을 특징으로 한다.
본 발명에 따르면, 기계학습 분야에서 데이터 분석 모델과 별도로 상기 분석 모델의 성능을 효율적으로 높이기 위한 데이터 선별 모델을 운용할 수 있다. 이에 따르면 데이터 선별 모델에서 데이터 분석 모델의 학습을 위한 데이터를 제안하기 때문에 데이터 분석 모델 학습에 필요한 컴퓨터 리소스를 줄일 수 있으며, 데이터 분석 모델의 신뢰성을 효율적으로 획득하고, 데이터 선별의 문제를 해결할 수 있는 효과가 있다.
도 1은 기계학습을 위한 데이터 세트의 문제점을 설명하기 위한 도면
도 2는 본 발명의 실시예를 따르는 데이터 분석 프레임워크에서 학습 데이터 분석 모델 및 데이터 코칭 모델을 운용하는 방법을 설명하기 위한 순서도
도 3은 문제 이해도 X 와 문제를 맞출 확률 P의 관계를 설명하기 위한 도면
도 4은 본 발명의 실시예를 따라 데이터 분석 모델의 학습을 위한 데이터 제안을 종료하는 방법을 설명하기 위한 도면
본 발명은 이하에 기재되는 실시예들의 설명 내용에 한정되는 것은 아니며, 본 발명의 기술적 요지를 벗어나지 않는 범위 내에서 다양한 변형이 가해질 수 있음은 자명하다. 그리고 실시예를 설명함에 있어서 본 발명이 속하는 기술 분야에 널리 알려져 있고 본 발명의 기술적 요지와 직접적으로 관련이 없는 기술 내용에 대해서는 설명을 생략한다.
한편, 첨부된 도면에서 동일한 구성요소는 동일한 부호로 표현된다. 그리고 첨부 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 개략적으로 도시될 수도 있다. 이는 본 발명의 요지와 관련이 없는 불필요한 설명을 생략함으로써 본 발명의 요지를 명확히 설명하기 위함이다.
최근 IT 디바이스의 보급이 확대되면서, 사용자 분석을 위한 데이터 수집이 용이해지고 있다. 사용자 데이터를 충분히 수집할 수 있으면, 사용자의 분석이 보다 정밀해지고 해당 사용자에게 가장 적합한 형태의 컨텐츠를 제공할 수 있다.
이러한 흐름과 함께 특히 교육 업계에서 사용자 맞춤형 교육 컨텐츠 제공에 대한 니즈가 높다. 그런데 이와 같이 사용자 맞춤형 교육 컨텐츠를 제공하기 위해서는 각각의 컨텐츠 및 사용자 개개인에 대한 정밀한 분석이 필요하다.
종래에는 컨텐츠와 사용자를 분석하기 위해 해당 과목의 개념들을 전문가에 의해 수작업으로 정의하고 해당 과목에 대한 각 문제가 어떤 개념을 포함하고 있는지 전문가가 개별적으로 판단하여 태깅하는 방식을 따랐다. 이후 각 사용자가 특정 개념에 대해 태깅된 문제들을 풀어본 결과 정보를 토대로 학습자의 실력을 분석하는 것이다.
그러나 이와 같은 방법은 태그 정보가 사람의 주관에 의존하는 문제점이 있었다. 사람의 주관이 개입되지 않고 수학적으로 생성된 태그 정보들이 문제의 개념 포함도에 따라 부여되는 것이 아니기 때문에 결과 데이터에 대한 신뢰도가 높을 수 없는 문제가 있었다.
따라서 본 발명은 학습 데이터 처리 과정에 사람의 개입을 배제하기 위하여 빅데이터 처리 및 기계 학습을 위한 데이터 분석 프레임워크를 적용하고, 상기 데이터 분석 프레임워크를 통해 사용자 및/또는 문제를 분석하는 방법을 제공하는 것을 목적으로 한다.
이에 따르면, 사용자의 컨텐츠 적용 결과 로그를 수집하고, 사용자 및/또는 문제로 구성된 다차원 공간을 구성하고, 문제, 해설, 강의 등 컨텐츠를 사용자가 소비한 결과 데이터, 문제별 정오답 데이터 또는 문제의 보기별 선택 데이터 등을 기준으로 상기 다차원 공간에 값을 부여하여, 각각의 사용자 및 문제에 대한 벡터를 계산하는 방식으로 사용자 및/또는 문제를 모델링하고 사용자 모델링 벡터 및 문제 모델링 벡터를 계산할 수 있다.
이 경우 사용자 모델링 벡터는 개별 사용자의 전체 문제들에 대한 특성을 벡터 값으로 표현한 것이며, 문제 모델링 벡터는 개별 문제의 전체 사용자들에 대한 특성을 벡터 값으로 표현한 것으로 해석될 수 있다. 나아가 상기 사용자 모델링 벡터 및/또는 상기 문제 모델링 벡터를 계산하는 방법은 제한되지 않으며, 이를 계산하기 위해 사용되는 빅데이터 분석 프레임워크에 적용된 종래 기술에 따를 수 있다.
나아가 본 발명에서 상기 사용자 모델링 벡터, 상기 문제 모델링 벡터들이 어떤 속성, 또는 피처를 포함하고 있는지는 제한하여 해석될 수 없음을 유의해야 한다. 예를 들어, 사용자 모델링 벡터는 전체 사용자 중 개별 사용자의 특성을 표현하도록, 문제 모델링 벡터는 전체 문제 중 개별 문제의 특성을 표현하도록 표현될 수 있다.
또한 본 발명의 실시예를 따르면, 상기 사용자 모델링 벡터는 상기 사용자가 임의의 개념에 대해 이해하고 있는 정도, 즉 개념의 이해도에 대한 정보를 포함할 수 있다. 나아가 상기 문제 모델링 벡터는 상기 문제가 어떤 개념들로 구성되어 있는지, 즉 개념 구성도에 대한 정보를 포함할 수 있다. 나아가 본 발명의 실시예를 따르면 사용자 모델링 벡터 및 문제 모델링 벡터를 이용하여 특정 사용자의 특정 문제에 대한 정답 확률을 추정할 수 있다.
나아가 본 발명의 실시예를 따르면, 문제의 모델링 과정에서 해당 문제의 선택 보기들에 대한 파라미터를 추가하여, 문제 벡터는 문제-보기 벡터로 확장할 수 있으며, 상기 사용자 모델링 벡터와 상기 문제-보기 모델링 벡터를 이용하여 특정 사용자가 임의의 문제의 특정 보기를 선택할 확률이 계산될 수 있다.
그런데 데이터분석 프레임워크를 이용하여 사용자와 문제를 수학적으로 모델링하기 위해서는 학습 데이터 선별의 문제를 해결해야 한다.
도 1은 종래의 기계 학습 모델링에 적용되는 데이터 세트의 문제점을 설명하기 위한 도면이다.
대량의 컨텐츠 데이터베이스가 대량의 사용자에게 제공된 경우, 사용자들은 모든 컨텐츠를 일정한 빈도로 소비하지 않는다. 예를 들어 사용자 유입 초기에 제공된 문제 또는 각 챕터의 기본 문제들이 다른 문제들에 비해 훨씬 많이 풀릴 것이다. 따라서 풀이 빈도수에 대한 문제 수는 도 1에 도시된 그래프를 따른다. 즉, 문제 데이터베이스에서 대부분의 사용자가 여러 번 푼 문제는 전체 문제 중 매우 적으며 (100), 대부분의 문제들은 소수의 사용자에게 한두번 풀리는 경향 (200)을 보이며, 롱테일 분포를 따르게 된다.
그런데 문제에 대한 풀이 빈도수가 도 1과 같은 분포를 따르는 경우, 즉, 자주 풀린 문제의 개수는 너무 적고 가끔 풀린 문제의 개수가 너무 많은 경우, 해당 데이터를 이용하여 생성한 데이터 분석 모델은 데이터 불균형의 문제가 생길 수 있다.
예를 들어 영어 과목에서 동명사 문제가 자주 풀린 경우, 해당 풀이 데이터를 적용하여 학습한 분석 모델은 영어 과목 전체가 아니라 동명사 개념에 편향된 모델이 생성될 것이다. 즉, 동명사에 대한 문제 풀이 데이터에 편향된 데이터 세트를 기반으로 학습하여 생성한 사용자 모델은 영어 과목을 구성하는 전체 개념이 아니라 동명사 개념에 대한 이해도를 지배적으로 반영하게 될 것이다.
또한 동명사에 대한 문제 풀이 데이터에 편향된 데이터 세트를 기반으로 학습하여 생성한 문제 모델은 영어 과목을 구성하는 전체 개념이 아니라 동명사 개념에 대한 포함도를 지배적으로 반영하게 될 것이다. 이 경우, 사용자/문제 모델의 성능은 높게 평가되기 어렵다. 예를 들어 상기 사용자 모델을 이용하여 계산된 해당 사용자가 부정사 문제를 맞출 확률과 해당 사용자가 동일한 문제를 실제 풀이한 결과는 차이가 크게 나타날 수 있다.
따라서 기계 학습 모델의 성능을 높이기 위해서는 중복정보를 가지는 데이터를 선별하고, 필요한 정보를 가지는 데이터를 구별하는 작업이 필수적으로 요구된다.
이를 위해 종래에는 전체 데이터 세트를 이루는 각각의 데이터를 분석 모델 생성을 위한 기계학습 인풋으로 모두 사용하는 패시브 러닝 (passive learning)방식을 따랐다. 이는 기계 학습 프레임워크에서, 전체 데이터 세트를 한 번에 학습하기 적절한 크기로 분할하고 모두 인풋으로 사용하는 경우를 말하며, 따라서 데이터에 대한 어떠한 선별도 없이 분석 모델에서 수동적으로 모두 받아들여 학습하게 된다.
그러나 이와 같은 방식은 분석 모델을 생성하기 위해 사용하는 데이터 양이 매우 방대하여 데이터 분석 모델 생성을 위한 리소스가 과다하게 소요되는 문제가 발생한다. 동명사에 편중된 데이터 세트에 대한 위의 예에서, 영어 과목을 구성하는 전체 개념을 반영하는 모델을 구성하기 위해서는, 다른 개념에 대한 데이터까지 충분히 포함하는 매우 큰 사이즈의 데이터 세트가 필요할 것이다. 즉, 분석 모델의 성능을 일정 수준이상 담보하기 위해서는 매우 큰 사이즈의 데이터 세트를 수집하고 이를 처리해야 하기 때문에, 학습이 오래 걸리고 데이터 분석 프레임워크 운용에 소요되는 비용이 큰 문제가 발생한다.
따라서 본 발명은 상기 문제를 해결하기 위해, 데이터 분석 모델과 별도로, 상기 데이터 분석 모델의 학습에 필요한 데이터를 코칭하는 전문가 모델을 운용하는 방법을 제공하는 것을 목적으로 한다.
본 발명의 실시예를 따르면, 상기 전문가 모델은 해당 시점의 데이터 분석 모델의 상태에 따라, 미리 설정된 방향으로 데이터 분석 모델이 업데이트되기 위해 필요한 데이터를 제안할 수 있다. 나아가 본 발명의 실시예를 따르는 데이터 분석 모델은 상기 전문가 모델의 제안 데이터에 근접하는 모델링 벡터를 가지는 문제에 대한 풀이 결과 데이터를 학습할 수 있다. 이 경우, 데이터 분석 모델은 성능을 높이기 위해 특정 시점의 상태에 가장 적합한 데이터를 기반으로 학습할 수 있기 때문에, 최소한의 데이터를 처리하여 요구되는 수준의 성능에 빠르게 도달할 수 있다.
예를 들어, 동명사에 편중된 데이터 세트에 대한 위의 예에서, 본 발명의 실시예를 따르는 전문가 모델은 동명사 외 다른 개념에 대한 값을 가지는 벡터들을 추출하여 데이터 분석 모델에 노티스할 수 있다. 나아가 데이터 분석 모델은 상기 벡터와 근접하는 모델링 벡터를 가지는 문제들을 선별하여 사용자에게 제공하고, 상기 문제 풀이 결과 데이터를 사용자 벡터 생성에 적용하여 영어 과목 전체 개념의 이해도를 사용자 모델링 벡터에 반영하는 방식으로 데이터 편중의 문제를 해결할 수 있다.
도 2는 본 발명의 실시예를 따르는 데이터 분석 프레임워크에서 학습 데이터 분석 모델 및 데이터 코칭 모델을 운용하는 방법을 설명하기 위한 순서도이다. 도 2a에서 단계 210, 220, 225, 23 및 240은 본 발명의 실시예를 따르는 데이터 분석 프레임워크에서 컨텐츠 소비 결과에 대한 데이터를 이용하여 사용자 및/또는 문제 분석 모델을 생성하는 과정을 설명하기 위한 것이며, 단계 260, 265, 270, 275, 280 및 285은 본 발명의 실시예를 따르는 데이터 분석 프레임워크에서 상기 분석 모델을 효율적으로 생성하기 위해 필요한 데이터를 추천하는 전문가 모델을 생성하는 과정을 설명하기 위한 것이다.
본 발명의 실시예를 따르면, 도 2a에 도시된 바와 같이 사용자 및/또는 문제 모델과 전문가 모델은 상이한 데이터를 기반으로 학습되어 별개의 기능을 수행하는 소프트웨어라고 할 수 있으나, 두 모델은 서로 유기적으로 연결되어 전체 데이터 분석 프레임워크의 성능 향상에 기여할 수 있다.
본 발명의 실시예를 따르면 도 2a의 단계 210에서 전체 컨텐츠와 전체 사용자에 대한 컨텐츠 소비 결과 데이터가 수집되고, 단계 220에서 상기 컨텐츠 소비 결과 데이터를 이용하여 전체 사용자 및/또는 컨텐츠에 대한 분석 모델 M을 생성할 수 있다.
예를 들어 데이터 분석 서버는, 텍스트, 이미지, 오디오, 및/또는 동영상 형태의 문제, 해설, 강의 등의 학습 컨텐츠에 대한 데이터베이스를 구성하고, 상기 컨텐츠 데이터베이스에 대한 사용자들의 엑세스 결과 데이터를 수집할 수 있다.
예를 들어 데이터 분석 서버는 전체 사용자들에 대한 문제 풀이 결과 데이터, 해설 조회 데이터 또는 강의 동영상 러닝 데이터 등을 수집할 수 있다. 보다 구체적으로 데이터 분석 서버는 시중에 나와 있는 각종 문제들에 대한 데이터베이스를 구축하고, 사용자 디바이스에 문제 데이터베이스를 제공하고, 상기 사용자 디바이스를 통해 사용자가 해당 문제들을 풀이한 결과를 수집하는 방식으로 풀이 결과 데이터를 수집할 수 있다.
나아가 데이터 분석 서버는 수집된 문제 풀이 결과 데이터를 사용자, 문제, 결과에 대한 리스트 형태로 구성할 수 있다. 예를 들어 Y (u, i)는 사용자 u가 문제 i를 푼 결과를 의미하며, 정답인 경우 1, 오답인 경우 0의 값이 부여될 수 있다.
그런데 객관식 문제는 지문뿐만 아니라 보기 요소가 포함되어 구성되는데, 분석의 소스로 정오답 여부만을 반영하는 경우, 두 학생이 같은 문제를 틀렸으나 다른 선택지를 골랐을 경우, 두 학생의 벡터값 계산에 해당 문제가 미치는 영향이 동일하여 해당 문제가 분석 결과에 미치는 영향이 희석될 수 있다.
예를 들어 어떤 학생이 특정 문제를 동명사에 대한 보기를 선택하면서 틀린 경우와 동사의 시제에 대한 보기를 선택하면서 틀린 경우, 종래의 방식에 따르면 해당 문제의 벡터값 계산에 학생의 풀이 결과는 충분히 반영되지 못하고 실질적으로 희석되게 된다.
따라서 본 발명의 다른 실시예를 따르는 데이터 분석 서버는 수집된 문제 풀이 결과 데이터를 사용자가 선택한 보기 파라미터를 적용하여 확장할 수 있다.
이 경우 데이터 분석 서버는 수집된 풀이 결과 데이터를 사용자, 문제, 선택 보기에 대한 리스트 형태로 구성할 수 있다. 예를 들어 Y (u, i, j)는 사용자 u가 문제 i의 보기 j를 선택한 결과를 의미하며, 선택한 경우 1, 오답인 경우 0의 값이 부여될 수 있다.
단계 220에서 본 발명의 실시예를 따르는 데이터 분석 서버는 사용자와 문제로 구성된 다차원 공간을 구성하고, 사용자가 문제를 맞았는지 틀렸는지를 기준으로 상기 다차원 공간에 값을 부여하여, 각각의 사용자 및 문제에 대한 모델링 벡터를 계산할 수 있다.
또 다른 예로 본 발명의 실시예를 따르는 데이터 분석 서버는 사용자와 문제의 선택 보기로 구성된 다차원 공간을 구성하고 사용자가 해당 보기를 선택했는지를 기준으로 상기 다차원 공간에 값을 부여하여, 각각의 사용자 및 문제 보기에 대한 모델링 벡터를 계산할 수 있다.
본 발명의 실시예를 따라 사용자와 문제를 모델링 벡터로 표현하면, 특정 사용자가 특정 문제를 맞출지 틀릴지, 즉, 특정 사용자의 특정 문제에 대한 정답 확률을 수학적으로 계산할 수 있다.
예를 들어 데이터 분석 서버는 상기 사용자 모델링 벡터 및 상기 문제 모델링 벡터를 이용하여 특정 사용자의 특정 문제에 대한 이해도를 추정하고 상기 이해도를 이용하여 특정 사용자가 특정 문제를 맞출 확률을 추정할 수 있다.
예를 들어 사용자 모델링 벡터의 1번째 행의 값이 [0, 0, 1, 0.5, 1] 인 경우, 이는 제 1 사용자가 1, 2번째 개념은 전혀 이해하지 못하고, 3번째 및 5번째 개념은 완벽히 이해하고, 그리고 4번째 개념은 절반만큼 이해한 것으로 해석될 수 있다.
나아가 문제 벡터의 1번째 행의 값이 [0, 0.2, 0.5, 0.3, 0]이라 할 때, 이는 제 1 문제가 1번 개념은 전혀 포함하고 있지 않고, 2번 개념이 20% 정도 포함, 3번 개념이 50% 정도 포함, 4번 개념이 30% 정도 포함된 것으로 해석될 수 있다.
한편 본 발명의 실시예를 따르는 데이터 분석 시스템은, 사용자의 개념 이해도 L, 문제의 개념 포함도 R이 충분한 신뢰도로 추정되면 사용자와 문제 사이의 상호 관계를 낮은 계수 행렬을 통해 수학적으로 연결할 수 있다.
예를 들어 서비스 서버는 분석 대상 전체 사용자 수가 n, 분석 대상 전체 문제 개수가 m인 경우, 해당 과목을 구성하는 미지의 개념의 개수를 r로 상정하면, 사용자의 개념별 이해도 행렬 L을 n by r 행렬로 정의하고, 문제의 개념별 포함 정도에 대한 행렬 R을 m by r 행렬로 정의할 수 있다. 이 경우, L을 R의 전치행렬 R T과 연결하면, 개념 또는 개념의 개수를 별도로 정의하지 않고 사용자와 문제의 상호 관계를 분석할 수 있다.
즉, 사용자별 문제 이해도 행렬 X는 L과 R의 전치행렬의 곱 (X=LR T)으로 표현될 수 있다.
이를 적용하면 L의 1번째 행의 값이 [0, 0, 1, 0.5, 1], R의 1번째 행의 값이 [0, 0.2, 0.5, 0.3, 0]인 위의 예에서, 사용자 1이 문제 1에 대한 이해도 X(1,1)은 X(1,1)=0.5-0.5 x 0.3 = 0.65 와 같이 계산될 수 있다. 즉, 사용자 1은 문제 1을 65퍼센트 이해하는 것으로 추정될 수 있다.
그러나 사용자의 특정 문제에 대한 이해도와 특정 문제를 맞출 확률은 동일하다고 할 수 없다. 위의 예에서 제 1 사용자가 제 1 문제를 65 퍼센트 이해한다면 제 1 문제를 실제로 풀었을 때 정답일 확률은 어느 정도인 것인가?
이를 위해 심리학, 인지과학, 교육학 등에서 사용되는 방법론을 도입하여 이해도와 정답률의 관계를 추정할 수 있다. 예를 들어 Reckase 및 McKinely가 고안한 M2PL (multidimensional two-parameter logistic) 잠재적 특성 이론 (Latent Trait Model) 등을 고려하여 이해도와 정답률을 추정할 수 있다.
상기 이론을 적용하여 충분히 큰 데이터를 사용하여 실험한 결과, 문제 이해도 X 와 문제를 맞출 확률 P은 리니어하지 않으며, 도 3과 같은 형태의 결과가 관측되었다.
도 3은 문제 이해도 X와 문제를 맞출 확률 P를 충분히 큰 데이터를 사용하여 실험한 결과에 대한 2차원 그래프로, X축은 이해도, Y축은 정답 확률을 의미한다.
상기 그래프를 통해, 사용자가 문제를 맞출 확률 P를 추정하기 위한 함수 Φ 를 아래의 수학식과 같이 도출할 수 있다. 다시 말하면, 문제 정답 확률 P는 함tn Φ에 문제 이해도 X를 적용하면 계산될 수 있다.
Φ(x) = 0.25 + 0.75 / (1+e -10(x-0.5))
사용자 1의 문제 1에 대한 이해도가 65퍼센트인 위의 예에서, 사용자 1이 문제 1를 맞출 확률은 P(1,1)=Φ(x(1,1))= 0.8632 와 같이 계산되어 86%에 해당한다. 즉, 사용자 1은 개념 2, 4는 전혀 이해하지 못하고, 개념 3을 완전히 이해하며, 문제 1은 개념 2가 20%, 개념 3을 50%, 개념 4가 30%로 구성된 문제인데, 위의 공식에 의하면 사용자 1이 문제 1을 풀게 되면 86퍼센트의 확률로 정답일 것으로 추정될 수 있다.
다만 본 발명은 합리적인 방식으로 이해도와 정답률 관계를 추정할 수 있는 종래 기술을 적용하여 사용자의 문제에 대한 정답 확률을 계산할 수 있으면 족하며, 본 발명은 이해도와 정답률의 관계를 추정하는 방법론에 제한되어 해석될 수 없음을 유의해야 한다.
위와 같은 실시예를 따라 사용자 모델링 벡터와 문제 모델링 벡터를 계산하면, 사용자 모델링 벡터와 문제 모델링 벡터의 관계를 이용하여 사용자 모델링 벡터가 특정 문제의 정답률을 의미하도록 제공될 수 있다.
한편, 본 발명의 또 다른 실시예를 따르면, 사용자의 문제에 대한 정답률은 문제의 보기별 선택 확률을 이용하여 추정할 수도 있다. 예를 들어 제 1 사용자가 특정 문제에 대한 보기 선택 확률이 (0.1, 0.2, 0, 0.7)인 경우, 사용자는 높은 확률로 보기 4번을 선택할 것이고, 해당 문제의 정답이 4번인 경우, 제 1 사용자는 그 문제를 맞을 확률이 높을 것으로 예상할 수 있다.
이를 위해 데이터 분석 서버는 사용자 및 문제-보기를 변수로 다차원 공간을 구성하고, 사용자가 해당 문제-보기를 선택했는지를 기준으로 상기 다차원 공간에 값을 부여하여, 각각의 사용자 및 문제-보기에 대한 벡터를 계산할 수 있다.
이때 상기 사용자 모델링 벡터와 상기 문제-보기 모델링 벡터에 다양한 알고리즘을 적용하여 상기 선택률을 추정할 수 있으며, 본 발명을 해석함에 있어 선택률을 계산하기 위한 알고리즘은 제한되지 않는다. 즉, 사용자 모델링 벡터와 문제-보기 모델링 벡터의 관계를 이용하여 사용자 모델링 벡터가 특정 문제의 특정 보기에 대한 선택 확률을 의미하도록 제공될 수 있다.
예를 들어, 본 발명의 실시예를 따르면, 아래의 수학식과 같은 시그모이드 함수를 적용하면, 사용자의 문제-보기 선택률을 추정할 수 있다. (x는 문제-보기 벡터, 는 사용자 벡터)
hθ(x) = 1 / ( 1 + e ( -θ * T * X) )
나아가 본 발명의 실시예를 따르는 데이터 분석 서버는 사용자의 보기 선택률을 이용하여 문제의 정답률을 추정할 수 있다.
그런데 예를 들어 4지 선다형으로 구성된 특정 문제에 대해 특정 사용자의 보기 선택 확률이 (0.5, 0.1, 0.3, 0.6)이며, 정답 보기는 1번인 경우, 상기 사용자가 해당 문제를 맞출 확률은 얼마인지가 문제된다. 즉, 해당 문제에 대한 복수의 보기 선택률을 이용하여 해당 문제의 정답률을 추정하는 방법을 고려할 수 있다.
본 발명의 실시예를 따라 보기 선택률을 문제 정답률로 환원하는 간단한 방식으로는 전체 보기의 선택률 대비 정답 보기의 선택률을 비교하는 방법을 고려할 수 있다. 이 경우 앞의 예에서 해당 사용자의 해당 문제에 대한 정답률은 0.5 / (0.5+0.1+0.3+0.6)로 계산할 것이다. 그러나 사용자는 문제를 풀이할 때는 보기 단위로 구분하여 해당 문제를 이해하는 것이 아니라, 전체 보기에 대한 구성 및 문제의 출제 의도를 포함하여 문제 단위로 이해하기 때문에 보기 선택률과 정답률은 단순 연결될 수 없다.
따라서 본 발명의 실시예를 따르면, 해당 문제의 전체 보기 선택률을 평균화하고 정답 보기의 평균화된 선택률을 전체 보기의 선택률에 적용하는 방식으로 보기 선택률로부터 해당 문제의 정답률을 추정할 수 있다.
앞의 예에서 보기의 선택 확률이 (0.5, 0.1, 0.3, 0.6)인 경우, 이를 전체 보기에 대해 평균화하면 각각의 보기 선택률은 (0.33, 0.07, 0.20, 0.40)로 스케일이 변경될 수 있다. 정답 보기가 1번인 경우, 보기 1의 평균화된 선택률은 0.33이며, 전체 보기 선택률은 (0.5+0.1+0.3+0.6)이므로, 해당 사용자의 해당 문제에 대한 정답률은 0.33/ (0.5+0.1+0.3+0.6)= 22%로 추정될 수 있다.
나아가 본 발명의 실시예를 따르는 서비스 서버는 사용자의 문제-보기 선택 확률을 이용하여 문제의 정답률을 추정할 수 있으며, 이를 통해 특정 개념에 대한 사용자의 이해도를 추정할 수 있다.
한편, 본 발명의 실시예를 따르는 데이터 분석 모델은 단계 260에서 사용자, 문제 분석 모델 M을 효율적으로 업데이트하기 위해 필요한 데이터를 코칭하는 전문가 모델 T을 생성할 수 있다. 예를 들어, 전문가 모델 T은 분석 모델 M의 상태 정보, 업데이트 정보 및 상기 업데이트의 원인이 되는 데이터 정보를 기반으로 행동을 취하고 그에 따른 모델의 변화 상태에 따라 그 행동에 대한 보상을 받아 전체 보상의 합을 최대화하는 방향으로 학습하는 강화 학습을 통해 생성될 수 있다.
예를 들어, 데이터 분석 서버는 전문가 모델 T의 초기값 T int을 임의의 형태로 부여하고, 분석 모델 M에 제안하기 위한 적어도 하나 이상의 임의의 벡터값을 추출할 수 있다. (단계 265) 상기 벡터는 분석 모델 M이 계산한 사용자 벡터의 성능, 예를 들어, 분석 모델 M에 따라 계산된 임의의 사용자가 임의의 문제를 맞출 확률의 신뢰도를 높이기 위하여 필요한 데이터를 수집하기 위한 문제를 의미할 수 있다.
이후 전문가 모델 T int에서 추출된 벡터값은 분석 모델 M에 제안될 수 있다. (단계 267) 이후 분석 모델 M은 상기 백터 값과 근접한 모델링 벡터를 가지는 문제를 적어도 하나 이상 확인하고, (단계 225) 해당 문제들을 사용자에게 제공하여 (단계 230) 문제 풀이 결과 데이터를 수집할 수 있으며, 이를 반영하여 업데이트 할 것이다. (단계 240)
한편, 전문가 모델 T int의 제안에 따라 업데이트된 분석 모델의 상태 정보는 전문가 모델 T int의 학습에 이용될 수 있다. 보다 구체적으로, 전문가 모델 T는 업데이트 이전의 분석 모델 M과 업데이트 이후의 분석 모델 M'의 예측 성능을 비교하고 학습하며, 분석 모델의 예측 성능의 변경 값을 토대로 자신의 제안에 대해 평가를 받고 리워드를 얻을 수 있다. (단계270). 그리고 리워드를 극대화하는 방향으로 전문가 모델 T를 업데이트 할 수 있다. (단계 275)
도 2a의 단계 270에서 본 발명의 실시예를 따르는 리워드는 분석 모델 M의 학습 방향 또는 지향점을 의미하는 것으로 해석될 수 있다. 예를 들어 리워드는 분석 모델 M에 따라 예측한 특정 사용자의 특정 문제에 대한 정답 확률 또는 보기 선택 확률이 실제 풀이 결과와 일치하는 방향으로 분석 모델 M이 업데이트되어 분석 모델 M의 예측 정확도가 상승하도록 설정될 수 있다.
예를 들어, 사용자 A가 1, 2, 3, 4, 5번 문제를 풀이한 데이터를 적용하여 생성한 사용자 A의 모델링 벡터 U A를 고려할 수 있다. 이때 U A가 사용자 A의 전체 문제에 대한 정답 확률을 의미하는 벡터라고 하면, 데이터 분석 모델 M은 U A의 예측 정확도, 즉 각각의 문제에 대해 사용자 A가 실제 풀이한 결과와 데이터 분석 모델 M 이 추정하는 사용자 A의 각각의 문제에 대한 정답 확률의 차이를 줄이는 방향으로 업데이트되는 것이 바람직할 것이며, 전문가 모델 T는 데이터 분석 모델 M이 상기 방향으로 업데이트되기 위해 필요한 데이터를 추천하도록 업데이트되어야 할 것이다.
예를 들어 전문가 모델 T는 해당 시점의 U A의 예측 정확도를 높이기 위해 풀이 결과 데이터가 필요한 문제에 대한 벡터를 추천할 수 있다. 이 경우, 데이터 분석 서버는 추천받은 벡터 값과 근접한 모델링 벡터를 가지는 6번 문제를 추출하고, 사용자 A에게 6번 문제를 제공하고, 사용자 A의 제 6 문제에 대한 풀이 결과 데이터를 수집할 수 있다. 상기 풀이 결과 데이터는 사용자 A가 6번 문제를 풀면서 선택한 보기, 6번 문제의 정답 보기, 풀이 시점에 대한 정보를 포함할 수 있으며, 데이터 분석 모델 M 은 상기 풀이 결과 데이터를 적용하여 업데이트될 것이다. 사용자 A의 모델링 벡터 U A가 △U A 만큼 변경되어 U A'로 업데이트 된 경우, 전문가 모델 T는 데이터 분석 모델 M으로부터 △U A , U A', 및 6번 문제의 모델링 벡터 Q 6에 대한 정보를 수신할 것이다.
이 경우, 전문가 모델 T는 데이터 분석 모델 M의 업데이트 방향에 대한 정보를 의미하는 △U A 및 데이터 분석 모델 M의 해당 시점의 상태 정보를 의미하는 U A'를 토대로 6번 문제를 추천한 것이 적절했는지, 즉 6번 문제 풀이 결과 데이터를 적용하여 업데이트한 데이터 분석 모델 M의 성능이 좋아졌는지를 판단하여 리워드를 생성하고, 상기 리워드를 적용하여 업데이트 될 수 있다.
예를 들어 6번 문제를 추천한 것이 적절하지 않은 경우, T는 분석 모델 M이U A의 상태일 때 Q 6과 상이한 벡터를 추출하도록 학습될 것이다.
예를 들어, 사용자 A가 1, 2, 3, 4, 5번 문제를 풀이한 데이터를 기반으로 형성한 사용자 모델링 벡터 U A 6번 문제의 벡터Q 6로 추정한 정답 확률과 사용자 A가 실제 6번 문제를 풀이한 결과의 차이가 사용자 A가 1, 2, 3, 4, 5, 6번 문제를 풀이한 데이터를 기반으로 형성한 사용자 모델링 벡터 U A'와 Q 6로 추정한 정답 확률과 사용자 A가 실제 6번 문제를 풀이한 결과의 차이보다 작은 경우, 6번 문제 풀이 데이터를 적용하여 분석 모델 M의 예측 정확도가 낮아진 것으로 해석할 수 있다. 이 경우, 전문가 모델 T는 (△U A , U A', Q 6)에 음의 리워드를 적용하여 업데이트할 것이다. 이 경우 전문가 모델 T는 유사한 데이터 분석 모델 M의 상태에서는 6번 유사하지 않은 문제를 추천하는 방향, 즉 Q 6과 유사하지 않은 벡터를 추출하도록 학습될 것이다.
반면, 6번 문제를 추천한 것이 적절한 경우, T는 분석 모델 M이U A의 상태일 때 Q 6과 유사한 벡터를 추출하도록 학습될 것이다.
예를 들어, 사용자 모델링 벡터 U A 6번 문제의 벡터Q 6로 추정한 정답 확률과 사용자 A가 실제 6번 문제를 풀이한 결과의 차이가 U A'와 Q 6로 추정한 정답 확률과 사용자 A가 실제 6번 문제를 풀이한 결과의 차이보다 큰 경우, 6번 문제 풀이 데이터를 적용하여 분석 모델 M의 예측 정확도가 높아진 것으로 해석할 수 있다. 이 경우, 전문가 모델 T는 (△U A , U A', Q 6)에 양의 리워드를 적용하여 업데이트할 것이다. 이 경우 전문가 모델 T는 유사한 데이터 분석 모델 M의 상태에서는 6번과 유사한 문제를 추천하는 방향, 즉 Q 6과 유사한 벡터를 추출하도록 학습될 것이다.
이와 같이 전문가 모델 T의 학습에 적용되는 리워드는 전술한 바와 같이 데이터 분석 모델 M의 예측 정확도를 높이는 방향으로 설정할 수 있지만, 본 발명의 다른 실시예를 따르면, 예측 점수 분산 범위를 좁히는 방향으로도 설정할 수 있다. 이 경우, 전문가 모델 T는 분석 모델 M의 예측이 정교해지는 방향으로 학습되기 위한 데이터를 추출하는 방향으로 형성될 것이다.
이후, 단계 275에서 전문가 모델 T는 분석 모델 M으로부터 수신한 데이터 (△U A , U A', Q)를 리워드에 따라 학습하여 업데이트될 것이다.
한편, 분석 모델 M 및/또는 전문가 모델 T의 학습 범위가 클수록 모델의 성능은 높아질 것이나 데이터 분석 프레임워크를 운용하기 위한 리소스가 상승할 것이다. 따라서 학습의 최적화 범위를 고려할 필요가 있다.
단계 280은 분석 모델 M 및/또는 전문가 모델 T이 최적화된 수준으로 학습하기 위한 단계이다. 전문가 모델 T는 해당 시점에 형성된 분석 모델 M의 성능이 충분하지 않으면 분석 모델 M의 학습을 위한 데이터 제안을 계속할 것이나, 분석 모델 M 의 성능이 충분하면 데이터 제안을 종료하고, 데이터 분석 서버는 해당 시점의 분석 모델 M으로 사용자 및/또는 컨텐츠를 분석하는 것이 적절할 것이다.
전문가 모델 T가 데이터 제안을 종료하는 경우, 즉 분석 모델 M 및/또는 전문가 모델 T가 충분히 학습된 상황은 크게 세가지를 고려할 수 있다. 도 4는 분석 모델 M 및/또는 전문가 모델 T의 업데이트를 종료하는 경우를 설명하기 위한 도면이다.
첫번째는 해당 시점의 분석 모델 M으로 사용자 및/문제를 충분히 진단할 수 있을 때이다. 예를 들어, 분석 모델 M이 사용자A의 문제 풀이 결과 데이터를 추가로 학습하지 않아도 사용자 벡터 U A를 통해 충분한 정확도로 사용자 A의 전체 문제에 대한 정답 확률을 추정할 수 있는 경우, 또는 충분한 정확도로 사용자 A의 외부 시험 점수를 추정할 수 있는 경우이다. 이는 해당 시점의 분석 모델이 계산한 추정값의 정확도가 임계치 이상인지 여부를 확인하여 판단할 수 있다. (도 4의 450)
두번째는 풀이 결과 데이터를 추가로 학습한다 하더라도 사용자 및/또는 문제의 특성을 더 이상 파악할 수 없을 때이다. 즉, 학습의 효과가 없는 경우인데, 전문가 모델 T의 추천에 따라 데이터를 추가로 학습한다 하더라도 분석 모델 M의 변화가 없을 것으로 예상되는 경우이다. 예를 들어 사용자A의 풀이 결과 데이터의 추가에도 불구하고 사용자 벡터 U A를 통해 계산한 추정값의 정확도가 변경되지 않고 임의의 범위 내에서 유지되는 경우, 이에 해당할 수 있다. (도 4의 460)
세번째는 전문가 모델 T가 추천한 데이터가 분석 모델 M에 이미 반영된 경우이다. 예를 들어 사용자 A가 제 1 문제 내지 제 20 문제를 풀이한 결과 데이터를 이용하여 사용자 벡터 U A가 생성되었는데, 전문가 모델 T가 계산한 추천 문제가 제 1 문제 내지 제 20 문제 중 어느 하나인 경우를 고려할 수 있다.
종료 조건이 만족되면, 전문가 모델 T는 데이터 제안을 종료하고, 전문가 모델 T 및 분석 모델 M의 학습 역시 종료될 것이다. 반면, 종료 조건이 만족하지 않는 경우, 전문가 모델 T는 해당 시점의 분석 모델 M의 학습에 필요한 데이터를 추출하여 분석 모델 M에 추천할 수 있다.
특히, 본 발명의 실시예를 따르면, 단계 245에서 전문가 모델 T에 획득된 분석 모델 M의 상태 정보, 업데이트 정보 및 업데이트의 원인이 되는 문제 모델링 벡터 정보는 전문가 모델 T의 학습에 사용되는 것은 물론 (단계 275), 업데이트된 전문가 모델에서 다음 제안 데이터를 결정하기 위한 인풋으로 활용되는 특징이 있다. (단계 285)
즉, 전문가 모델 T은 종래 제안에 따라 변경된 분석 모델의 상태 정보를 참고하여 분석 모델 M의 성능을 높이기 위해 필요한 다음 데이터를 제안할 수 있다.
사용자 A에 대한 위의 예에서, 사용자 A의 모델링 벡터 U A 가 전문가 모델 T의 제안에 따라, 제 6 문제의 풀이 결과 데이터를 적용하여 U A'로 업데이트 된 경우, 전문가 모델 T는 △U A , U A', 및 6번 문제의 모델링 벡터 Q 6에 대한 정보를 참고하여, U A'의 성능을 높이기 위해 제안할 다음 벡터 값을 계산할 수 있다. 상기 벡터는 분석 모델 M이 계산한 사용자 벡터 U A 의 성능, 예를 들어, 분석 모델 M에 따라 계산된 사용자 A가 임의의 문제를 맞출 확률의 신뢰도를 높이기 위하여 필요한 데이터를 수집하기 위한 문제를 의미할 수 있다.
이후, 분석 모델 M은 전문가 모델 T로부터 수신한 벡터와 미리 설정된 범위의 유사도를 가지는 문제 벡터를 추출하여 사용자에게 제공하고, 해당 문제의 풀이 결과 데이터를 학습할 것이다.
한편, 본 발명의 실시예를 따라 전문가 모델 T를 운용하면, 새로 유입된 사용자 분석을 위해 필요한 최적화된 진단용 문제 세트를 효율적으로 구성할 수 있다.
신규 유입된 사용자나 문제의 경우, 해당 사용자나 문제에 대한 데이터가 축적되기 전에는 분석 결과를 제공할 수 없는 문제가 있다. 따라서 데이터 분석 프레임워크에서 초기 분석 결과를 임의의 신뢰도로 도출하기 위해 신규 사용자 또는 신규 문제에 대한 학습 결과 데이터를 효율적으로 수집할 필요가 있다. 일반적으로는 신규 사용자에게 진단 문제를 제공하고, 진단 문제에 대한 풀이 결과를 이용하여 신규 사용자의 초기 분석 모델을 형성하게 된다.
이 경우, 진단용 문제는 많을수록 신규 사용자에 대한 보다 정밀한 분석이 가능하다. 그러나 사용자 입장에서는 진단 문제를 조금만 풀어도 신뢰성 있는 분석 결과를 제공받기를 바랄 것이다. 따라서 사용자 분석 결과의 신뢰도가 임의의 범위 이상 확보될 수 있는 최소한의 문제로 진단용 문제를 구성할 필요가 있다. 그런데 본 발명의 실시예를 따르는 전문가 모델 T를 운용하면 신규 사용자가 풀어야할 문제 세트를 효율적으로 추출할 수 있어 많은 문제를 풀어볼 필요없이 신뢰성 있는 분석 결과를 제공할 수 있는 효과가 있다.
신규 사용자가 유입된 경우, 본 발명의 실시예를 따르는 데이터 분석 서버는 문제 데이터베이스에서 적어도 하나 이상의 문제를 임의로 추출하여 신규 사용자에게 제공하고, 풀이 결과 데이터를 적용하여 신규 사용자의 사용자 모델링 벡터 U int 를 설정하고 이를 전문가 모델 T에 노티스할 수 있다.
예를 들어, 특정 신규 사용자에게 a, b, c 보기로 구성된 제 1 문제를 제공하고, 해당 신규 사용자가 제 1 문제의 a보기를 선택한 경우, 데이터 분석 서버는 (u new, 1, a) = 1, (u new, 1, b) = 0, (u new, 1, c) = 0 데이터를 데이터 분석 프레임워크에 적용하여 신규 사용자 u new의 초기 모델링 벡터를 계산할 수 있다.
이후 본 발명의 실시예를 따르는 전문가 모델 T은 신규 사용자 진단을 위해 필요한 임의의 문제 벡터를 적어도 하나 이상 추천할 수 있다.
이 경우, 데이터 분석 서버는 전문가 모델 T의 추천에 따르는 문제들을 진단 문제로 신규 사용자에게 제공할 것이다. 분석 모델 M은 진단 문제에 대한 사용자의 풀이 결과 데이터를 적용하여 사용자 벡터를 업데이트하고, 업데이트 사용자 벡터, 사용자 벡터의 변경 값 및 진단 문제 벡터에 대한 정보를 전문가 모델 T에 노티스할 것이다.
전문가 모델 T는 사용자 모델 U의 성능이 좋아진 경우, 양의 리워드를 적용하여 정보를 학습하고 사용자 모델 U의 성능이 나빠진 경우, 음의 리워드를 적용하여 정보를 학습할 것이다. 이후 전문가 모델 T는 사용자 모델 U의 성능이 충분한지 판단하여, 사용자 모델의 성능이 미리 설정된 범위 이상이 될 때까지 U의 성능 향상에 필요한 문제 벡터를 추천할 수 있다.
한편, 전술한 도 2a의 예시는 분석 모델 M에서 사용자에게 추천 문제를 제공하면서 동시에 분석 모델 M과 전문가 모델 T가 데이터 수집 결과를 반영하여 업데이트되는 경우에 대한 것이다. 한편 본 발명의 다른 실시예를 따르면, 사용자에게 문제를 추천하기 위하여 분석 모델을 운영하는 프레임워크와 전문가 모델을 학습하는 프레임워크가 논리적 및/또는 물리적으로 분리된 컴퓨팅 장치에서 구현될 수 있다. 보다 구체적으로, 사용자에게 문제를 추천하는 시스템과 전문가 모델의 학습을 위한 시스템이 논리적, 물리적으로 분리되어 운영될 수 있다.
도 2b는 본 발명의 상기 실시예에 대한 설명을 위한 순서도이다. 도 2b에 대한 설명에서 도 2a와 중복되는 부분은 설명을 생략한다.
도 2b의 단계 270에서 전문가 모델 T를 운용하는 프레임워크는 분석 모델의 업데이트 정보에 대한 히스토리를 기록할 수 있다. 즉, 분석 모델 M의 상태 정보, 업데이트 M' 정보 및 업데이트의 원인이 되는 문제 모델링 벡터 정보에 대한 히스토리를 기록할 수 있다. 나아가, 도 2a와는 달리 전문가 모델 T를 업데이트하지 않고, 종료 조건을 만족하지 않는 이상 (단계 280), 전문가 모델 T를 이용하여 분석 모델 M에 문제 벡터를 제안할 수 있다. (단계 265)
한편, 전문가 모델 T 운용 프레임워크는 임의의 시점에 분석 모델의 업데이트 히스토리 정보를 반영하여 전문가 모델 T를 업데이트할 수 있다. (단계 275) 이때 전문가 모델 T의 업데이트 방향을 설정하기 위한 리워드가 적용되며 (단계 270) 이는 도 2a의 실시예와 실질적으로 동일할 수 있다.
본 명세서와 도면에 게시된 본 발명의 실시 예들은 본 발명의 기술 내용을 쉽게 설명하고 본 발명의 이해를 돕기 위해 특정 예를 제시한 것뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 여기에 게시된 실시 예들 이외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다.

Claims (6)

  1. 데이터 분석 서버에서, 사용자를 분석하는 방법에 있어서,
    복수의 문제를 포함하는 문제 데이터베이스를 구성하고, 상기 문제에 대한 사용자의 풀이 결과 데이터를 수집하고, 상기 풀이 결과 데이터를 학습하여 상기 사용자를 모델링하기 위한 데이터 분석 모델을 생성하는 A 단계;
    상기 데이터 분석 모델과 독립적으로 동작하고, 상기 데이터 분석 모델과 상이한 데이터를 기반으로 학습되며, 임의의 시점의 상기 데이터 분석 모델의 성능을 높이기 위하여 상기 데이터 분석 모델에서 필요한 학습 데이터를 추천하는 전문가 모델을 생성하는 B 단계;
    상기 전문가 모델의 추천에 따라 상기 문제 데이터베이스에서 적어도 하나 이상의 문제를 추출하고, 추출한 문제에 대한 사용자의 풀이 결과 데이터를 이용하여 상기 데이터 분석 모델을 업데이트하는 C 단계; 및
    상기 데이터 분석 모델의 업데이트 정보에 상기 데이터 분석 모델의 예측 정확도가 향상되는 방향으로 설정된 리워드를 적용하여 상기 전문가 모델을 업데이트하는 D 단계를 포함하며
    상기 B 단계는,
    상기 데이터 분석 모델의 제 1 상태 정보, 제 2 상태 정보 및 상기 제 1 상태가 상기 제 2 상태로 변경된 원인이 되는 데이터 정보를 학습하여 상기 전문가 모델을 생성하는 단계를 포함하는 것을 특징으로 하는 사용자 분석 방법.
  2. 제 1항에 있어서,
    상기 A 단계는, 상기 문제에 대한 사용자 각각의 특성을 설명하는 사용자 모델링 벡터를 계산하고, 상기 사용자 모델링 벡터를 이용하여 사용자의 문제에 대한 정답 확률을 추정하는 단계를 포함하며,
    상기 D단계는, 사용자가 문제를 실제 풀이한 결과와 상기 사용자 모델링 벡터를 이용하여 추정한 상기 문제의 정답 확률의 차이인 사용자 모델링 벡터의 예측 성능을 높이도록 설정된 리워드를 적용하여 상기 전문가 모델을 업데이트하는 단계를 포함하는 것을 특징으로 하는 사용자 분석 방법.
  3. 제 1항에 있어서,
    상기 A 단계는, 상기 문제에 대한 사용자 각각의 특성을 설명하는 사용자 모델링 벡터를 계산하고, 상기 사용자 모델링 벡터를 이용하여 상기 문제 데이터베이스를 이용하지 않고 출제된 외부 시험에 대한 사용자의 예측 점수를 추정하는 단계를 포함하며,
    상기 D단계는, 상기 데이터 분석 모델의 업데이트 정보에 상기 예측 점수의 표준편차가 작아지는 방향으로 설정된 리워드를 적용하여 상기 전문가 모델을 업데이트하는 단계를 포함하는 것을 특징으로 하는 사용자 분석 방법.
  4. 제 2항 또는 3항에 있어서,
    상기 C 단계는,
    상기 사용자 모델링 벡터의 예측 성능의 변경율이 미리 설정된 값 이내인 경우, 상기 데이터 분석 모델에 대한 추가 학습의 효과가 없는 것으로 판단하여 상기 전문가 모델의 추천을 종료하는 단계를 포함하는 것을 특징으로 하는 사용자 분석 방법.
  5. 제 2항 또는 3항에 있어서,
    상기 C 단계는,
    상기 사용자 모델링 벡터의 예측 성능이 미리 설정된 범위 이상인 경우, 상기 데이터 분석 모델이 추가 학습을 하지 않아도 상기 사용자 분석에 충분한 것으로 판단하여 상기 전문가 모델의 추천을 종료하는 단계를 포함하는 것을 특징으로 하는 사용자 분석 방법.
  6. 제 2항 또는 3항에 있어서,
    상기 C 단계는,
    상기 전문가 모델이 추천하는 문제의 풀이 결과 데이터가 상기 사용자 모델링 벡터에 이미 반영되어 있는 경우, 상기 전문가 모델의 추천을 종료하는 단계를 포함하는 것을 특징으로 하는 사용자 분석 방법.
PCT/KR2020/004137 2019-04-03 2020-03-26 액티브 러닝 기법을 적용한 머신 러닝 프레임워크 운용 방법, 장치 및 컴퓨터 프로그램 WO2020204468A1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202080025985.7A CN113646788A (zh) 2019-04-03 2020-03-26 利用主动学习技术操作机器学习框架的方法、设备和计算机程序
US16/964,823 US20210233191A1 (en) 2019-04-03 2020-03-26 Method, apparatus and computer program for operating a machine learning framework with active learning technique
JP2020540290A JP7054558B2 (ja) 2019-04-03 2020-03-26 アクティブ学習手法を適用した機械学習フレームワークの運用方法、装置及びコンピュータプログラム
CONC2021/0012810A CO2021012810A2 (es) 2019-04-03 2021-09-28 Método, aparato y programa de computadora para operar un marco de aprendizaje automático con técnica de aprendizaje activo

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020190039091A KR102096301B1 (ko) 2019-04-03 2019-04-03 액티브 러닝 기법을 적용한 머신 러닝 프레임워크 운용 방법, 장치 및 컴퓨터 프로그램
KR10-2019-0039091 2019-04-03

Publications (1)

Publication Number Publication Date
WO2020204468A1 true WO2020204468A1 (ko) 2020-10-08

Family

ID=70281728

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2020/004137 WO2020204468A1 (ko) 2019-04-03 2020-03-26 액티브 러닝 기법을 적용한 머신 러닝 프레임워크 운용 방법, 장치 및 컴퓨터 프로그램

Country Status (6)

Country Link
US (1) US20210233191A1 (ko)
JP (1) JP7054558B2 (ko)
KR (1) KR102096301B1 (ko)
CN (1) CN113646788A (ko)
CO (1) CO2021012810A2 (ko)
WO (1) WO2020204468A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11663494B2 (en) 2019-12-05 2023-05-30 Uchicago Argonne, Llc Systems and methods for hierarchical multi-objective optimization
US11651839B2 (en) 2020-03-02 2023-05-16 Uchicago Argonne, Llc Systems and methods for generating phase diagrams for metastable material states
US11710038B2 (en) * 2020-04-13 2023-07-25 Uchicago Argonne, Llc Systems and methods for active learning from sparse training data
KR20210148763A (ko) 2020-06-01 2021-12-08 강릉원주대학교산학협력단 머신 러닝 모델링 자동화 방법 및 이를 이용한 머신 러닝 모델링 자동화 시스템
US11823044B2 (en) * 2020-06-29 2023-11-21 Paypal, Inc. Query-based recommendation systems using machine learning-trained classifier
KR102426812B1 (ko) * 2020-08-25 2022-07-28 세종대학교산학협력단 강화 학습 기반의 상호작용 향상 방식
KR102475108B1 (ko) 2020-11-02 2022-12-07 강릉원주대학교산학협력단 최적화된 하이퍼파라미터를 갖는 기계 학습 모델링 자동화 방법 및 이를 이용한 기계 학습 모델링 자동화 시스템
KR102274984B1 (ko) * 2020-11-12 2021-07-09 태그하이브 주식회사 컨텐츠 스킬 라벨링 적합성 판단 방법 및 이를 실행하는 시스템
KR102398318B1 (ko) * 2021-07-09 2022-05-16 (주)뤼이드 학습 능력 평가 방법, 학습 능력 평가 장치, 및 학습 능력 평가 시스템
KR20230009816A (ko) * 2021-07-09 2023-01-17 (주)뤼이드 학습 능력 평가 방법, 학습 능력 평가 장치, 및 학습 능력 평가 시스템
CN114781194B (zh) * 2022-06-20 2022-09-09 航天晨光股份有限公司 基于金属软管的数据库的构建方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150100530A1 (en) * 2013-10-08 2015-04-09 Google Inc. Methods and apparatus for reinforcement learning
US20170364831A1 (en) * 2016-06-21 2017-12-21 Sri International Systems and methods for machine learning using a trusted model
KR20180061999A (ko) * 2016-11-30 2018-06-08 한국전자통신연구원 개인 맞춤형 학습 제공 장치 및 그 방법
KR101895961B1 (ko) * 2017-10-31 2018-09-06 (주)뤼이드 점수 추정 방법, 장치 및 컴퓨터 프로그램
KR20180127188A (ko) * 2018-04-23 2018-11-28 (주)뤼이드 개인 맞춤형 교육 컨텐츠를 제공하기 위한 기계학습 프레임워크 운용 방법, 장치 및 컴퓨터 프로그램

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10290221B2 (en) * 2012-04-27 2019-05-14 Aptima, Inc. Systems and methods to customize student instruction
US20140272914A1 (en) * 2013-03-15 2014-09-18 William Marsh Rice University Sparse Factor Analysis for Learning Analytics and Content Analytics
US10706734B2 (en) * 2013-12-06 2020-07-07 Act, Inc. Methods for improving test efficiency and accuracy in a computer adaptive test (CAT)
JP6364037B2 (ja) 2016-03-16 2018-07-25 セコム株式会社 学習データ選択装置
KR101853091B1 (ko) 2017-05-19 2018-04-27 (주)뤼이드 기계학습이 적용된 사용자 답변 예측 프레임워크를 통한 개인 맞춤형 교육 컨텐츠 제공 방법, 장치 및 컴퓨터 프로그램
US11651702B2 (en) * 2018-08-31 2023-05-16 Pearson Education, Inc. Systems and methods for prediction of student outcomes and proactive intervention
KR102213479B1 (ko) * 2019-02-28 2021-02-08 (주)뤼이드 교육 컨텐츠를 제공하는 방법, 장치 및 컴퓨터 프로그램

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150100530A1 (en) * 2013-10-08 2015-04-09 Google Inc. Methods and apparatus for reinforcement learning
US20170364831A1 (en) * 2016-06-21 2017-12-21 Sri International Systems and methods for machine learning using a trusted model
KR20180061999A (ko) * 2016-11-30 2018-06-08 한국전자통신연구원 개인 맞춤형 학습 제공 장치 및 그 방법
KR101895961B1 (ko) * 2017-10-31 2018-09-06 (주)뤼이드 점수 추정 방법, 장치 및 컴퓨터 프로그램
KR20180127188A (ko) * 2018-04-23 2018-11-28 (주)뤼이드 개인 맞춤형 교육 컨텐츠를 제공하기 위한 기계학습 프레임워크 운용 방법, 장치 및 컴퓨터 프로그램

Also Published As

Publication number Publication date
CN113646788A (zh) 2021-11-12
JP7054558B2 (ja) 2022-04-14
US20210233191A1 (en) 2021-07-29
JP2021520529A (ja) 2021-08-19
CO2021012810A2 (es) 2021-11-19
KR102096301B1 (ko) 2020-04-02

Similar Documents

Publication Publication Date Title
WO2020204468A1 (ko) 액티브 러닝 기법을 적용한 머신 러닝 프레임워크 운용 방법, 장치 및 컴퓨터 프로그램
WO2018212394A1 (ko) 기계 학습 프레임워크를 운용하는 방법, 장치 및 컴퓨터 프로그램
WO2017146344A1 (ko) 개인 맞춤형 교육 컨텐츠를 제공하는 방법, 장치 및 컴퓨터 프로그램
Jonassen Operationalizing mental models: strategies for assessing mental models to support meaningful learning and design-supportive learning environments.
WO2021251690A1 (ko) 인공 지능 학습 기반의 학습 컨텐츠 추천 시스템 및 그것의 동작 방법
US20210133598A1 (en) Machine learning method, apparatus, and computer program for providing personalized educational content based on learning efficiency
Verdú et al. A genetic fuzzy expert system for automatic question classification in a competitive learning environment
KR20220136952A (ko) 복수의 시험 도메인에 적용되는 전이요소로 학습된 인공지능 모델을 통해 사용자의 실력을 평가하는 장치, 시스템 및 그것의 동작방법
WO2018212396A1 (ko) 데이터를 분석하는 방법, 장치 및 컴퓨터 프로그램
CN110651294A (zh) 估计考试分数的方法、设备及计算机程序
WO2022059921A1 (ko) 사용자의 학습효과를 반영하여 추천 문제를 결정하는 학습 컨텐츠 추천 장치, 시스템 및 그것의 동작 방법
Giabbanelli et al. Overcoming the PBL assessment challenge: Design and development of the incremental thesaurus for assessing causal maps (ITACM)
Samarakou et al. An e-learning system for extracting text comprehension and learning style characteristics
Andaroon et al. The effect of individual counseling on attitudes and decisional conflict in the choice of delivery among nulliparous women
Sedelmaier et al. How can we find out what makes a good requirements engineer in the age of digitalization?
WO2022145829A1 (ko) 잠재인자에 기반한 협업 필터링을 사용하여 사용자의 정답확률을 예측하는 학습 컨텐츠 추천 시스템 및 그것의 동작방법
WO2018079968A1 (ko) 개인 맞춤형 교육 컨텐츠를 제공하는 방법, 장치 및 컴퓨터 프로그램
Mavrikis Data-driven modelling of students' interactions in an ILE
KR102567043B1 (ko) 인공지능 모델을 활용한 독서능력진단 기반 책 큐레이션 서비스 제공 방법, 장치 및 시스템
WO2022245009A1 (ko) 메타인지능력 평가방법 및 이를 위한 평가시스템
Mahnane et al. Automatic detection of learning styles based on dynamic Bayesian network in adaptive e-learning system
KR20190025871A (ko) 사용자 맞춤형 컨텐츠를 제공하기 위한 방법, 장치 및 컴퓨터 프로그램
Liu et al. Student performance assessment using Bayesian network and web portfolios
Mueller et al. Authoring guide for cognitive tutorials for artificial intelligence: Purposes and methods
Shen et al. Constructing Behavioral Representation of Computational Thinking based on Event Graph: A new approach for learning analytics

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2020540290

Country of ref document: JP

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20784793

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: P6001778/2021

Country of ref document: AE

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20784793

Country of ref document: EP

Kind code of ref document: A1