KR102637603B1 - Method and apparatus for providing user customized study contents - Google Patents

Method and apparatus for providing user customized study contents Download PDF

Info

Publication number
KR102637603B1
KR102637603B1 KR1020220172833A KR20220172833A KR102637603B1 KR 102637603 B1 KR102637603 B1 KR 102637603B1 KR 1020220172833 A KR1020220172833 A KR 1020220172833A KR 20220172833 A KR20220172833 A KR 20220172833A KR 102637603 B1 KR102637603 B1 KR 102637603B1
Authority
KR
South Korea
Prior art keywords
user
solving
information
determining
tag information
Prior art date
Application number
KR1020220172833A
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 KR1020220172833A priority Critical patent/KR102637603B1/en
Application granted granted Critical
Publication of KR102637603B1 publication Critical patent/KR102637603B1/en

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
    • G06Q50/205Education administration or guidance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/335Filtering based on additional data, e.g. user or group profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/38Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • 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
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B7/00Electrically-operated teaching apparatus or devices working with questions and answers

Landscapes

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

Abstract

본 개시의 실시예에 따라, 컴퓨팅 장치에 의해 수행되는, 사용자 맞춤형 학습 컨텐츠를 제공하기 위한 방법은, 사용자 장치로부터 사용자 학습을 위한 문제 출제 요청을 수신하는 단계, 상기 문제 출제 요청에 대한 응답으로, 사용자의 개인 정보, 상기 사용자에 의해 설정된 문제 출제 범위 또는 상기 사용자의 풀이 활동 정보 중 적어도 하나에 기반하여 복수의 문제들 중 상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 단계 및 상기 결정된 적어도 하나의 문제를 상기 사용자 장치로 제공하는 단계를 포함한다.According to an embodiment of the present disclosure, a method for providing user-customized learning content performed by a computing device includes receiving a request for presenting a problem for user learning from a user device, in response to the request for presenting a problem, determining at least one problem that the user can solve among a plurality of problems based on at least one of the user's personal information, the problem question range set by the user, or the user's solving activity information, and the determined at least one problem that can be solved by the user. and providing a problem to the user device.

Description

사용자 맞춤형 학습 컨텐츠를 제공하기 위한 방법 및 장치{METHOD AND APPARATUS FOR PROVIDING USER CUSTOMIZED STUDY CONTENTS}Method and apparatus for providing user customized learning content {METHOD AND APPARATUS FOR PROVIDING USER CUSTOMIZED STUDY CONTENTS}

본 개시는 사용자 맞춤형 학습 컨텐츠를 제공하기 위한 방법 및 장치에 관한 것이다.This disclosure relates to a method and device for providing user-customized learning content.

최근 IT 기술이 발전함에 따라 온라인 교육 서비스를 이용하는 학습자들이 증가하고 있다. 이러한 온라인 교육 서비스는 사용자에게 사용자의 교육 과정에 해당하는 언어, 수학, 사회, 과학, 또는 인문 등과 같은 다양한 분야에 관한 문제집들이나 교육자(전문 강사진 또는 문제 출제 위원 등)가 직접 출제한 문제들 등과 같은 학습 컨텐츠를 제공한다.As IT technology has recently developed, the number of learners using online education services is increasing. These online education services provide users with workbooks related to various fields such as language, mathematics, social studies, science, or humanities that correspond to the user's educational course, or problems directly created by educators (professional instructors, problem setting committee members, etc.). Provides learning content.

사용자는 교육 과정에 따라 제공된 문제집들 혹은 출제 문제들을 풀이하고, 다음 난이도에 해당하는 학습 컨텐츠를 제공받을 수 있다. 그러나, 이와 같이 제공되는 학습 컨텐츠는 지정된 교육 과정에 해당하는 정형화된 내용의 문제들을 포함하므로, 사용자 개개인의 학습 수준을 반영한 학습 컨텐츠로 보기 어려워 사용자의 학습 능력을 효율적으로 향상시키는데 한계가 있다. Users can solve the workbooks or questions provided according to the training course and receive learning content corresponding to the next level of difficulty. However, since the learning content provided in this way includes questions of standardized content corresponding to a designated educational course, it is difficult to view it as learning content that reflects the learning level of each user, and there is a limit to efficiently improving the user's learning ability.

따라서, 사용자의 학습 수준을 효율적으로 향상시킬 수 있는 사용자 맞춤형 학습 컨텐츠를 제공하기 위한 방법 및 장치가 요구된다.Therefore, a method and device for providing user-customized learning content that can efficiently improve the user's learning level is required.

한국등록특허 제10-2206599호Korean Patent No. 10-2206599

본 개시는 전술한 배경기술에 대응하여 안출된 것으로, 사용자 맞춤형 학습 컨텐츠를 제공하기 위한 방법 및 장치를 제공하고자 한다. The present disclosure has been devised in response to the above-described background technology, and seeks to provide a method and device for providing user-customized learning content.

본 개시의 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The technical problems of the present disclosure are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art from the description below.

전술한 바와 같은 과제를 해결하기 위한 본 개시의 실시예에 따라, 컴퓨팅 장치에 의해 수행되는, 사용자 맞춤형 학습 컨텐츠를 제공하기 위한 방법은, 사용자 장치로부터 사용자 학습을 위한 문제 출제 요청을 수신하는 단계, 상기 문제 출제 요청에 대한 응답으로, 사용자의 개인 정보, 상기 사용자에 의해 설정된 문제 출제 범위 또는 상기 사용자의 풀이 활동 정보 중 적어도 하나에 기반하여 복수의 문제들 중 상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 단계 및 상기 결정된 적어도 하나의 문제를 상기 사용자 장치로 제공하는 단계를 포함할 수 있다.According to an embodiment of the present disclosure for solving the above-described problem, a method for providing user-customized learning content performed by a computing device includes the steps of receiving a request to submit a question for user learning from a user device; In response to the problem submission request, at least one problem that the user can solve among a plurality of problems based on at least one of the user's personal information, the problem problem range set by the user, or the user's solving activity information. It may include determining a problem and providing the determined at least one problem to the user device.

대안적으로, 상기 사용자의 개인 정보는, 상기 사용자의 연령, 성별, 직업, 학업 능력 또는 관심 분야 중 적어도 하나를 포함할 수 있다.Alternatively, the user's personal information may include at least one of the user's age, gender, occupation, academic ability, or interests.

대안적으로, 상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 단계는, 상기 사용자의 개인 정보와 유사한 개인 정보를 가지는 적어도 하나의 타 사용자를 결정하는 단계 및 상기 적어도 하나의 결정된 타 사용자에게 제공된 학습 컨텐츠에 기반하여 상기 복수의 문제들 중 상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 단계를 포함할 수 있다.Alternatively, determining at least one problem that the user can solve may include determining at least one other user who has personal information similar to the user's personal information, and providing information to the at least one determined other user. It may include determining at least one problem that the user can solve among the plurality of problems based on the provided learning content.

대안적으로, 상기 문제 출제 요청을 수신하기 이전에, 상기 복수의 문제들 각각에 대한 태그 정보를 생성하는 단계 및 상기 복수의 문제들 및 상기 생성된 태그 정보를 대응시켜 저장하는 단계를 더 포함할 수 있다.Alternatively, before receiving the problem submission request, the method may further include generating tag information for each of the plurality of problems and storing the plurality of problems and the generated tag information in correspondence. You can.

대안적으로, 상기 태그 정보는, 각 문제에 대한 학습 주제, 상기 각 문제의 문제 난이도, 상기 각 문제를 구성하는 글자의 수, 상기 각 문제에 포함된 전문 용어의 수, 상기 각 문제를 구성하는 문장들의 평균 길이, 또는 상기 각 문제를 구성하는 단문 및 복문의 비율 중 적어도 하나를 포함할 수 있다.Alternatively, the tag information may include the learning topic for each problem, the problem difficulty level of each problem, the number of letters constituting each problem, the number of technical terms included in each problem, and the number of technical terms constituting each problem. It may include at least one of the average length of sentences or the ratio of simple sentences and complex sentences constituting each problem.

대안적으로, 상기 요청은, 상기 사용자에 의해서 설정된 문제 출제 범위에 대한 정보를 포함하고, 상기 문제 출제 범위는, 상기 사용자에 의해서 설정된, 적어도 하나의 학습 주제, 문제 난이도, 문제 글자 수, 전문 용어의 수, 평균 문장 길이, 단문 및 복문 비율 또는 문제 개수 중 적어도 하나를 포함할 수 있다.Alternatively, the request includes information about a problem question range set by the user, wherein the problem question range includes at least one learning topic, question difficulty level, number of question characters, and technical terminology set by the user. It may include at least one of the number of sentences, average sentence length, ratio of simple sentences and complex sentences, or number of problems.

대안적으로, 상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 단계는, 상기 복수의 문제들 각각에 대하여 사전 설정된 태그 정보 중 상기 문제 출제 범위에 해당하는 태그 정보를 결정하는 단계 및Alternatively, the step of determining at least one problem that the user can solve may include determining tag information corresponding to the problem question range among preset tag information for each of the plurality of problems, and

상기 복수의 문제들 중 상기 결정된 태그 정보에 대응하는 적어도 하나의 문제를, 상기 사용자가 풀이할 수 있는 적어도 하나의 문제로 결정하는 단계를 포함할 수 있다.It may include determining at least one problem corresponding to the determined tag information among the plurality of problems as at least one problem that the user can solve.

대안적으로, 상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 단계는, 사전 저장된 문제별 상세 이력 정보에 기반하여 상기 사용자가 풀이한 적어도 하나의 문제에 대한 태그 정보 및 풀이 활동 정보를 수집하는 단계, 상기 수집된 태그 정보 및 상기 수집된 풀이 활동 정보에 기반하여 상기 사용자의 태그 정보별 문제 풀이 등급을 결정하는 단계, 복수의 사용자들 각각에 대하여 사전 설정된 태그 정보별 문제 풀이 등급에 기반하여, 상기 결정된 태그 정보별 문제 풀이 등급과 동일한 등급을 갖는 적어도 하나의 타 사용자를 결정하는 단계 및 적어도 하나의 결정된 타 사용자에게 제공된 학습 컨텐츠에 기반하여 상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 단계를 포함할 수 있다.Alternatively, the step of determining at least one problem that the user can solve may include collecting tag information and solving activity information for at least one problem solved by the user based on pre-stored detailed history information for each problem. determining a problem solving grade for each tag information of the user based on the collected tag information and the collected solving activity information, based on a problem solving grade for each tag information preset for each of a plurality of users. , determining at least one other user having the same level as the determined problem solving level for each tag information, and determining at least one problem that the user can solve based on learning content provided to the at least one determined other user. It may include steps.

대안적으로, 상기 문제별 상세 이력 정보는, 상기 복수의 문제들, 각 문제에 대한 태그 정보, 상기 각 문제를 풀이한 적어도 하나의 사용자, 또는 각 사용자의 풀이 활동 정보 중 적어도 하나를 포함할 수 있다.Alternatively, the detailed history information for each problem may include at least one of the plurality of problems, tag information for each problem, at least one user who solved each problem, or information on the solving activity of each user. there is.

대안적으로, 상기 풀이 활동 정보는, 상기 복수의 사용자들이 상기 복수의 문제들 각각을 풀이하는데 소요된 시간, 상기 복수의 문제들 각각에 대한 상기 복수의 사용자들의 정답률, 상기 복수의 사용자들이 상기 복수의 문제들 각각을 풀이하는 동안의 시선 패턴 정보 또는 상기 복수의 사용자들이 상기 복수의 문제들 각각을 풀이하는 동안의 행동 패턴 정보 중 적어도 하나를 포함할 수 있다. Alternatively, the solving activity information may include, the time taken by the plurality of users to solve each of the plurality of problems, the correct answer rate of the plurality of users for each of the plurality of problems, and the time taken by the plurality of users to solve each of the plurality of problems. It may include at least one of gaze pattern information while solving each of the problems or behavior pattern information while the plurality of users solve each of the plurality of problems.

대안적으로, 상기 사용자의 태그 정보별 문제 풀이 등급을 결정하는 단계는, 상기 사용자가 풀이한 적어도 하나의 문제를 태그 정보별로 구분하는 단계 및 상기 태그 정보별로 구분된 적어도 하나의 문제에 대응하는 풀이 활동 정보에 기반하여 태그 정보별 문제 풀이 등급을 추론하도록 학습된 적어도 하나의 등급 추론 모델을 이용하여 상기 태그 정보별 문제 풀이 등급을 결정하는 단계를 포함할 수 있다.Alternatively, the step of determining the problem solving grade according to the user's tag information may include classifying at least one problem solved by the user by tag information and solving the problem corresponding to the at least one problem classified according to the tag information. It may include determining a problem-solving grade for each tag information using at least one grade inference model learned to infer a problem-solving grade for each tag information based on activity information.

대안적으로, 상기 적어도 하나의 결정된 타 사용자에게 제공된 학습 컨텐츠에 기반하여 상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 단계는, 상기 적어도 하나의 결정된 타 사용자에게 제공된 문제들에 대한 난이도, 또는 상기 난이도의 문제들을 풀이한 적어도 하나의 타 사용자의 문제 풀이 등급에 대한 상향 또는 하향 여부를 고려하여 상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 단계일 수 있다.Alternatively, the step of determining at least one problem that can be solved by the user based on the learning content provided to the at least one determined other user may include difficulty levels for the problems provided to the at least one determined other user; Alternatively, it may be a step of determining at least one problem that the user can solve by considering whether the problem solving grade of at least one other user who solved the problems of the difficulty level is raised or lowered.

대안적으로, 상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 단계는, 상기 복수의 문제들 각각에 대하여 사전 설정된 태그 정보 중 상기 사용자에 의해서 설정된 문제 출제 범위에 해당하는 태그 정보를 결정하는 단계, 상기 결정된 태그 정보에 해당하는 문제들 중 상기 사용자가 풀이한 적어도 하나의 문제에 대한 풀이 활동 정보를 수집하는 단계, 상기 적어도 하나의 문제에 대한 태그 정보 및 상기 수집된 풀이 활동 정보에 기반하여 상기 사용자의 태그 정보별 문제 풀이 등급을 결정하는 단계, 복수의 사용자들 각각에 대하여 사전 설정된 태그 정보별 문제 풀이 등급에 기반하여, 상기 결정된 태그 정보별 문제 풀이 등급과 동일한 등급을 갖는 적어도 하나의 타 사용자를 결정하는 단계 및 상기 적어도 하나의 결정된 타 사용자에게 제공된 학습 컨텐츠에 기반하여 상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 단계를 포함할 수 있다.Alternatively, the step of determining at least one problem that the user can solve may include determining tag information corresponding to a problem question range set by the user among preset tag information for each of the plurality of problems. A step of collecting solving activity information for at least one problem solved by the user among the problems corresponding to the determined tag information, based on the tag information for the at least one problem and the collected solving activity information Determining a problem-solving grade for each tag information of the user, based on a problem-solving grade for each tag information preset for each of a plurality of users, at least one other device having the same grade as the determined problem-solving grade for each tag information It may include determining a user and determining at least one problem that the user can solve based on learning content provided to the at least one determined other user.

전술한 바와 같은 과제를 해결하기 위한 본 개시의 실시예에 따라, 컴퓨터 판독가능 저장 매체 저장된 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램은 하나 이상의 프로세서에서 실행되는 경우, 사용자 맞춤형 학습 컨텐츠를 제공하기 위한 이하의 동작들을 수행하도록 하며, 상기 동작들은, 사용자 장치로부터 사용자 학습을 위한 문제 출제 요청을 수신하는 동작, 상기 문제 출제 요청에 대한 응답으로, 사용자의 개인 정보, 상기 사용자에 의해 설정된 문제 출제 범위 또는 상기 사용자의 풀이 활동 정보 중 적어도 하나에 기반하여 복수의 문제들 중 상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 동작 및 상기 결정된 적어도 하나의 문제를 상기 사용자 장치로 제공하는 동작을 포함할 수 있다.According to an embodiment of the present disclosure for solving the above-described problem, a computer program stored in a computer-readable storage medium, wherein the computer program is executed on one or more processors, performs the following operations for providing user-customized learning content. The operations include receiving a request for a question for user learning from a user device, and in response to the request for a question, the user's personal information, a problem question range set by the user, or the user's It may include an operation of determining at least one problem that the user can solve among a plurality of problems based on at least one of the solving activity information, and an operation of providing the determined at least one problem to the user device.

전술한 바와 같은 과제를 해결하기 위한 본 개시의 실시예에 따라, 사용자 맞춤형 학습 컨텐츠를 제공하기 하기 위한 컴퓨팅 장치는, 적어도 하나의 프로세서; 및 메모리를 포함하며, 상기 적어도 하나의 프로세서는, 사용자 장치로부터 사용자 학습을 위한 문제 출제 요청을 수신하고, 상기 문제 출제 요청에 대한 응답으로, 사용자의 개인 정보, 상기 사용자에 의해 설정된 문제 출제 범위 또는 상기 사용자의 풀이 활동 정보 중 적어도 하나에 기반하여 복수의 문제들 중 상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하고, 상기 결정된 적어도 하나의 문제를 상기 사용자 장치로 제공하도록 구성될 수 있다.According to an embodiment of the present disclosure for solving the problems described above, a computing device for providing user-customized learning content includes at least one processor; and a memory, wherein the at least one processor receives a request for presenting a problem for user learning from a user device, and in response to the request for presenting a problem, includes the user's personal information, a problem setting range set by the user, or It may be configured to determine at least one problem that the user can solve among a plurality of problems based on at least one of the user's solving activity information, and provide the determined at least one problem to the user device.

본 개시에서 얻을 수 있는 기술적 해결 수단은 이상에서 언급한 해결 수단들로 제한되지 않으며, 언급하지 않은 또 다른 해결 수단들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The technical solutions obtainable from this disclosure are not limited to the solutions mentioned above, and other solutions not mentioned above will be clearly apparent to those skilled in the art from the description below. It will be understandable.

본 개시의 몇몇 실시예에 따르면, 본 개시에서는 사용자의 개인 정보, 상기 사용자에 의해 설정된 문제 출제 범위 또는 상기 사용자의 풀이 활동 정보 중 적어도 하나에 기반하여 학습 컨텐츠를 제공함으로써, 사용자의 학습 수준 또는 학습 능력을 효율적으로 향상시킬 수 있다.According to some embodiments of the present disclosure, in the present disclosure, learning content is provided based on at least one of the user's personal information, the problem question range set by the user, or the user's solving activity information, thereby determining the user's learning level or learning level. You can improve your abilities efficiently.

또한, 본 개시에서는 사용자의 과거 문제 풀이 이력 및 사용자와 학습 성향이 유사한 타 사용자의 문제 풀이 이력 등을 고려하여 학습 컨텐츠를 제공함으로써, 사용자 개개인의 학습 수준 또는 학습 능력에 보다 적합한 학습 컨텐츠를 제공할 수 있다.In addition, the present disclosure provides learning content in consideration of the user's past problem-solving history and the problem-solving history of other users with similar learning tendencies as the user, thereby providing learning content more suitable to the learning level or learning ability of each user. You can.

본 개시에서 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects that can be obtained from 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. .

다양한 양상들이 이제 도면들을 참조로 기재되며, 여기서 유사한 참조 번호들은 총괄적으로 유사한 구성요소들을 지칭하는데 이용된다. 이하의 실시예에서, 설명 목적을 위해, 다수의 특정 세부사항들이 하나 이상의 양상들의 총체적 이해를 제공하기 위해 제시된다. 그러나, 그러한 양상(들)이 이러한 구체적인 세부사항들 없이 실시될 수 있음은 명백할 것이다.
도 1은 본 개시의 실시예에 따른 사용자 맞춤형 학습 컨텐츠를 제공하기 위한 예시적인 시스템의 구성도이다.
도 2는 본 개시의 실시예에 따른 서버의 블록 구성도이다.
도 3은 본 개시의 실시예에 따른 사용자 맞춤형 학습 컨텐츠를 제공하기 위한 방법의 일례를 설명하기 위한 흐름도이다.
도 4는 본 개시의 실시예에 따른 개인 정보에 기반하여, 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 방법의 일례를 설명하기 위한 흐름도이다.
도 5는 본 개시의 실시예에 따른 사용자에 의해서 설정된 문제 출제 범위에 기반하여, 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 방법의 일례를 설명하기 위한 흐름도이다.
도 6은 본 개시의 실시예에 따른 각 문제에 대하여 태그 정보를 설정하는 방법의 일례를 설명하기 위한 흐름도이다.
도 7은 본 개시의 실시예에 따른 문제별 태그 정보를 나타내는 예시도이다.
도 8은 본 개시의 실시예에 따른 태그 정보 및 문제 풀이 활동 정보에 기반하여, 복수의 문제들 중 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 방법의 일례를 설명하기 위한 흐름도이다.
도 9는 본 개시의 실시예에 따른 문제별 상세 이력 정보를 설명하기 위한 예시도이다.
도 10은 본 개시의 실시예에 따른 복수의 타 사용자들 각각에 대하여 사전 설정된 태그 정보별 문제 풀이 등급을 나타내는 예시도이다.
도 11은 본 개시의 실시예에 따른 문제 출제 범위 및 문제 풀이 등급에 기반하여 사용자가 풀이할 수 있는 문제를 결정하는 방법의 일례를 설명하기 위한 흐름도이다.
도 12는 본 개시의 실시예들이 구현될 수 있는 예시적인 컴퓨팅 환경에 대한 간략하고 일반적인 개략도이다.
Various aspects will now be 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 comprehensive understanding of one or more aspects. However, it will be clear that such aspect(s) may be practiced without these specific details.
1 is a configuration diagram of an exemplary system for providing user-customized learning content according to an embodiment of the present disclosure.
Figure 2 is a block configuration diagram of a server according to an embodiment of the present disclosure.
Figure 3 is a flowchart illustrating an example of a method for providing user-customized learning content according to an embodiment of the present disclosure.
FIG. 4 is a flowchart illustrating an example of a method of determining at least one problem that a user can solve based on personal information according to an embodiment of the present disclosure.
FIG. 5 is a flowchart illustrating an example of a method of determining at least one problem that a user can solve based on a problem question range set by the user according to an embodiment of the present disclosure.
FIG. 6 is a flowchart illustrating an example of a method for setting tag information for each problem according to an embodiment of the present disclosure.
Figure 7 is an example diagram showing tag information for each problem according to an embodiment of the present disclosure.
FIG. 8 is a flowchart illustrating an example of a method of determining at least one problem that a user can solve among a plurality of problems based on tag information and problem-solving activity information according to an embodiment of the present disclosure.
Figure 9 is an example diagram for explaining detailed history information for each problem according to an embodiment of the present disclosure.
Figure 10 is an example diagram showing a problem solving grade for each tag information preset for each of a plurality of other users according to an embodiment of the present disclosure.
FIG. 11 is a flowchart illustrating an example of a method of determining a problem that a user can solve based on the problem range and problem solving grade according to an embodiment of the present disclosure.
Figure 12 is a brief, general schematic diagram of an example computing environment in which embodiments of the present disclosure may be implemented.

다양한 실시예들이 이제 도면을 참조하여 설명된다. 본 명세서에서, 다양한 설명들이 본 개시의 이해를 제공하기 위해서 제시된다. 그러나, 이러한 실시예들은 이러한 구체적인 설명 없이도 실행될 수 있음이 명백하다.Various embodiments are now described with reference to the drawings. In this specification, various descriptions are presented to provide an understanding of the disclosure. However, it is clear that these embodiments may be practiced without these specific descriptions.

본 명세서에서 사용되는 용어 "컴포넌트", "모듈", "시스템" 등은 컴퓨터-관련 엔티티, 하드웨어, 펌웨어, 소프트웨어, 소프트웨어 및 하드웨어의 조합, 또는 소프트웨어의 실행을 지칭한다. 예를 들어, 컴포넌트는 프로세서상에서 실행되는 처리과정(procedure), 프로세서, 객체, 실행 스레드, 프로그램, 및/또는 컴퓨터일 수 있지만, 이들로 제한되는 것은 아니다. 예를 들어, 컴퓨팅 장치에서 실행되는 애플리케이션 및 컴퓨팅 장치 모두 컴포넌트일 수 있다. 하나 이상의 컴포넌트는 프로세서 및/또는 실행 스레드 내에 상주할 수 있다. 일 컴포넌트는 하나의 컴퓨터 내에 로컬화 될 수 있다. 일 컴포넌트는 2개 이상의 컴퓨터들 사이에 분배될 수 있다. 또한, 이러한 컴포넌트들은 그 내부에 저장된 다양한 데이터 구조들을 갖는 다양한 컴퓨터 판독가능한 매체로부터 실행할 수 있다. 컴포넌트들은 예를 들어 하나 이상의 데이터 패킷들을 갖는 신호(예를 들면, 로컬 시스템, 분산 시스템에서 다른 컴포넌트와 상호작용하는 하나의 컴포넌트로부터의 데이터 및/또는 신호를 통해 다른 시스템과 인터넷과 같은 네트워크를 통해 전송되는 데이터)에 따라 로컬 및/또는 원격 처리들을 통해 통신할 수 있다.As used herein, the terms “component,” “module,” “system,” and the like refer to a computer-related entity, hardware, firmware, software, a combination of software and hardware, or an implementation of software. For example, a component may be, but is not limited to, a process running on a processor, a processor, an object, a thread of execution, a program, and/or a computer. For example, both an application running on a computing device and the computing device can be a component. One or more components may reside within a processor and/or thread of execution. A component may be localized within one computer. A component may be distributed between two or more computers. Additionally, these components can execute from various computer-readable media having various data structures stored thereon. Components can transmit signals, for example, with one or more data packets (e.g., data and/or signals from one component interacting with other components in a local system, a distributed system, to other systems and over a network such as the Internet). Depending on the data being transmitted, they may communicate through local and/or remote processes.

더불어, 용어 "또는"은 배타적 "또는"이 아니라 내포적 "또는"을 의미하는 것으로 의도된다. 즉, 달리 특정되지 않거나 문맥상 명확하지 않은 경우에, "X는 A 또는 B를 이용한다"는 자연적인 내포적 치환 중 하나를 의미하는 것으로 의도된다. 즉, X가 A를 이용하거나; X가 B를 이용하거나; 또는 X가 A 및 B 모두를 이용하는 경우, "X는 A 또는 B를 이용한다"가 이들 경우들 어느 것으로도 적용될 수 있다. 또한, 본 명세서에 사용된 "및/또는"이라는 용어는 열거된 관련 아이템들 중 하나 이상의 아이템의 가능한 모든 조합을 지칭하고 포함하는 것으로 이해되어야 한다.Additionally, the term “or” is intended to mean an inclusive “or” and not an exclusive “or.” 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; 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 herein should be understood to refer to and include all possible combinations of one or more of the related listed items.

또한, "포함한다" 및/또는 "포함하는"이라는 용어는, 해당 특징 및/또는 구성요소가 존재함을 의미하는 것으로 이해되어야 한다. 다만, "포함한다" 및/또는 "포함하는"이라는 용어는, 하나 이상의 다른 특징, 구성요소 및/또는 이들의 그룹의 존재 또는 추가를 배제하지 않는 것으로 이해되어야 한다. 또한, 달리 특정되지 않거나 단수 형태를 지시하는 것으로 문맥상 명확하지 않은 경우에, 본 명세서와 청구범위에서 단수는 일반적으로 "하나 또는 그 이상"을 의미하는 것으로 해석되어야 한다.Additionally, the terms “comprise” and/or “comprising” should be understood to mean that the corresponding feature and/or element is present. However, the terms “comprise” and/or “comprising” should be understood as not excluding the presence or addition of one or more other features, elements and/or groups thereof. Additionally, unless otherwise specified or the context is clear to indicate a singular form, the singular terms herein and in the claims should generally be construed to mean “one or more.”

그리고, "A 또는 B 중 적어도 하나"이라는 용어는, "A만을 포함하는 경우", "B 만을 포함하는 경우", "A와 B의 구성으로 조합된 경우"를 의미하는 것으로 해석되어야 한다. And, the term “at least one of A or B” should be interpreted to mean “a case containing only A,” “a case containing only B,” and “a case of combining A and B.”

당업자들은 추가적으로 여기서 개시된 실시예들과 관련되어 설명된 다양한 예시적 논리적 블록들, 구성들, 모듈들, 회로들, 수단들, 로직들, 및 알고리즘 단계들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 양쪽 모두의 조합들로 구현될 수 있음을 인식해야 한다. 하드웨어 및 소프트웨어의 상호교환성을 명백하게 예시하기 위해, 다양한 예시적 컴포넌트들, 블록들, 구성들, 수단들, 로직들, 모듈들, 회로들, 및 단계들은 그들의 기능성 측면에서 일반적으로 위에서 설명되었다. 그러한 기능성이 하드웨어로 또는 소프트웨어로서 구현되는지 여부는 전반적인 시스템에 부과된 특정 어플리케이션(application) 및 설계 제한들에 달려 있다. 숙련된 기술자들은 각각의 특정 어플리케이션들을 위해 다양한 방법들로 설명된 기능성을 구현할 수 있다. 다만, 그러한 구현의 결정들이 본 개시내용의 영역을 벗어나게 하는 것으로 해석되어서는 안된다.Those skilled in the art will additionally recognize that the various illustrative logical blocks, components, modules, circuits, means, logic, and algorithm steps described in connection with the embodiments disclosed herein may be implemented using electronic hardware, computer software, or a combination of both. It must be recognized that it can be implemented with To clearly illustrate the interchangeability of hardware and software, various illustrative components, blocks, configurations, means, logics, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented in hardware or software will depend on the specific application and design constraints imposed on the overall system. A skilled technician can implement the described functionality in a variety of ways for each specific application. However, such implementation decisions should not be construed as causing a departure from the scope of the present disclosure.

제시된 실시예들에 대한 설명은 본 개시의 기술 분야에서 통상의 지식을 가진 자가 본 발명을 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 개시의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이다. 여기에 정의된 일반적인 원리들은 본 개시의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 발명은 여기에 제시된 실시예 들로 한정되는 것이 아니다. 본 발명은 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다. The description of the presented embodiments is provided to enable anyone skilled in the art to use or practice the present invention. Various modifications to these embodiments will be apparent to those skilled in the art. The general principles defined herein may be applied to other embodiments without departing from the scope of the disclosure. Therefore, the present invention is not limited to the embodiments presented herein. The present invention is to be interpreted in the broadest scope consistent with the principles and novel features presented herein.

도 1은 본 개시의 실시예에 따른 사용자 맞춤형 학습 컨텐츠를 제공하기 위한 예시적인 시스템의 구성도이다. 1 is a configuration diagram of an exemplary system for providing user-customized learning content according to an embodiment of the present disclosure.

도 1을 참조하면, 해당 시스템은 사용자 학습을 위한 문제 출제를 요청하는 사용자 장치(10) 및 요청에 따라 사용자에게 적합한 적어도 하나의 문제를 제공하는 서버(100)를 포함할 수 있다. 도 1에서 도시되는 컴포넌트들은 예시적인 것이며, 추가적인 컴포넌트들이 존재하거나 또는 컴포넌트들의 일부가 생략될 수 있다.Referring to FIG. 1, the system may include a user device 10 that requests questions for user learning and a server 100 that provides at least one problem suitable for the user according to the request. The components shown in FIG. 1 are exemplary, and additional components may exist or some of the components may be omitted.

본 개시의 몇몇 실시예에 따르면, 사용자 장치(10) 및 서버(100)는 무선 통신 네트워크를 통해, 본 개시의 몇몇 실시예들에 따른 사용자 맞춤형 학습 컨텐츠를 제공하기 위한 데이터를 상호 송수신할 수 있다.According to some embodiments of the present disclosure, the user device 10 and the server 100 may mutually transmit and receive data for providing user-customized learning content according to some embodiments of the present disclosure through a wireless communication network. .

사용자 장치(10)는 사용자의 학습을 위해 문제 출제를 요청하기 위한 장치로서, 예를 들어 PC, 노트북, 모바일 단말기, 스마트 폰, 태블릿 PC 등과 같이 유/무선 네트워크에 접속할 수 있는 모든 종류의 전자 디바이스를 포함할 수 있다.The user device 10 is a device for requesting questions for user learning. For example, all types of electronic devices that can connect to a wired/wireless network, such as a PC, laptop, mobile terminal, smart phone, tablet PC, etc. may include.

구체적으로, 사용자 장치(10)는 문제 출제 요청을 서버(100)로 전달하고, 문제 출제 요청에 대한 응답으로, 서버(100)로부터 적어도 하나의 문제를 수신할 수 있다.Specifically, the user device 10 may transmit a question submission request to the server 100 and receive at least one question from the server 100 in response to the question submission request.

본 개시의 몇몇 실시예에 따르면, 사용자 장치(10)는 제어부, 저장부(메모리 및 영구저장매체) 및 통신부를 포함하여, 임의의 데이터를 처리, 저장 및 송수신할 수 있는 임의의 엔티티일 수 있다.According to some embodiments of the present disclosure, the user device 10 may be any entity capable of processing, storing, and transmitting and receiving any data, including a control unit, a storage unit (memory and persistent storage media), and a communication unit. .

본 개시 내용에서의 제어부는 하나 이상의 코어로 구성될 수 있으며, 컴퓨팅 장치의 중앙 처리 장치(CPU: central processing unit), 범용 그래픽 처리 장치 (GPGPU: general purpose graphics processing unit), 텐서 처리 장치(TPU: tensor processing unit) 등과 같이 메모리 상에 저장된 명령어들을 실행시킴으로써 문제 출제 요청을 서버(100)로 전달하기 위한 임의의 형태의 프로세서를 포함할 수 있다. 프로세서는 메모리에 저장된 컴퓨터 프로그램을 판독하여 본 개시의 일 실시예에 따른 문제 출제 요청을 서버(100)로 전달할 수 있다.The control unit in the present disclosure may be composed of one or more cores, such as a central processing unit (CPU), a general purpose graphics processing unit (GPGPU), and a tensor processing unit (TPU) of a computing device. It may include any type of processor for transmitting a question request to the server 100 by executing instructions stored in memory, such as a tensor processing unit). The processor may read the computer program stored in the memory and transmit a request for problem solving according to an embodiment of the present disclosure to the server 100.

본 개시 내용에서의 저장부는 제어부의 동작을 위한 프로그램을 저장할 수 있고, 입/출력되는 데이터들을 임시 또는 영구 저장할 수도 있다. 저장부는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk 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), 자기 메모리, 자기 디스크, 광디스크 중 적 어도 하나의 타입의 저장매체를 포함할 수 있다. 이러한 저장부는 제어부에 제어에 의하여 동작될 수 있다. 또한, 본 개시 내용에서 메모리 및 저장부는 서로 상호 교환 가능하게 사용될 수 있다.The storage unit in the present disclosure may store a program for the operation of the control unit, and may temporarily or permanently store input/output data. The storage unit is a flash memory type, hard disk type, multimedia card micro type, card type memory (e.g. SD or XD memory, etc.), and RAM (Random Access). Memory, RAM), SRAM (Static Random Access Memory), ROM (Read-Only Memory, ROM), EEPROM (Electrically Erasable Programmable Read-Only Memory), PROM (Programmable Read-Only Memory), magnetic memory, magnetic disk, optical disk It may include at least one type of storage medium. This storage unit can be operated by control from the control unit. Additionally, memory and storage may be used interchangeably with each other in the present disclosure.

본 개시 내용에서의 통신부는 사용자 장치(10)가 다양한 장치와 통신 가능하도록 연결할 수 있다. 구체적으로, 통신부는 서버(100)와 연결되어 사용자 장치(10)와 서버(100) 간의 데이터를 주고받을 수 있다.The communication unit in the present disclosure can connect the user device 10 to communicate with various devices. Specifically, the communication unit is connected to the server 100 and can exchange data between the user device 10 and the server 100.

서버(100)는 사용자 장치(10)의 문제 출제 요청에 따라, 사용자 맞춤형 학습 컨텐츠를 제공하기 위한 장치로서, 예를 들어 컴퓨터, 디지털 프로세서, 휴대용 디바이스 및 디바이스 제어기 등과 같은 임의의 타입의 컴퓨터 시스템 또는 컴퓨터 디바이스를 포함할 수 있다. The server 100 is a device for providing user-customized learning content in response to a question request from the user device 10, and may be any type of computer system, such as a computer, digital processor, portable device, or device controller. May include computer devices.

구체적으로, 서버(100)는 사용자의 개인정보, 사용자에 의해서 설정된 문제 출제 범위 또는 사용자의 문제 풀이 활동 정보 중 적어도 하나에 기반하여, 복수의 문제들 중 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하고, 적어도 하나의 결정된 문제를 사용자 장치(10)로 제공할 수 있다.Specifically, the server 100 selects at least one problem that the user can solve among a plurality of problems based on at least one of the user's personal information, the problem question range set by the user, or the user's problem-solving activity information. may be determined, and at least one determined problem may be provided to the user device 10.

본 개시의 몇몇 실시예에 따르면, 서버(100)는 프로세서, 저장부(메모리 및 영구저장매체) 및 통신부를 포함하여, 임의의 데이터를 처리, 저장 및 송수신할 수 있는 임의의 엔티티일 수 있다. According to some embodiments of the present disclosure, the server 100 may be any entity capable of processing, storing, and transmitting and receiving any data, including a processor, a storage unit (memory and persistent storage media), and a communication unit.

본 개시 내용에서의 프로세서는 하나 이상의 코어로 구성될 수 있으며, 컴퓨팅 장치의 중앙 처리 장치(CPU), 범용 그래픽 처리 장치 (GPGPU), 텐서 처리 장치(TPU), 그래픽 처리 장치(GPU) 등과 같이 메모리 상에 저장된 명령어들을 실행시킴으로써, 문제 출제 요청에 대한 응답으로, 사용자 맞춤형 학습 컨텐츠를 제공하는 임의의 형태의 프로세서를 포함할 수 있다. 프로세서는 메모리에 저장된 컴퓨터 프로그램을 판독하여 본 개시의 실시예에 따른 사용자 맞춤형 학습 컨텐츠를 제공할 수 있다.A processor in the present disclosure may consist of one or more cores, and memory, such as a central processing unit (CPU), general purpose graphics processing unit (GPGPU), tensor processing unit (TPU), graphics processing unit (GPU), etc. of a computing device. It may include any type of processor that provides user-customized learning content in response to a question request by executing instructions stored on the computer. The processor can read the computer program stored in the memory and provide user-customized learning content according to an embodiment of the present disclosure.

본 개시 내용에서의 메모리는 프로세서의 동작을 위한 프로그램을 저장할 수 있고, 입/출력되는 데이터들을 임시 또는 영구 저장할 수도 있다. 메모리는 플래시 메모리 타입, 하드디스크 타입, 멀티미디어 카드 마이크로 타입, 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM), SRAM, 롬(ROM), EEPROM, PROM, 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 이러한 메모리는 프로세서에 제어에 의하여 동작될 수 있다. 또한, 본 개시 내용에서 메모리 및 저장부는 서로 상호 교환 가능하게 사용될 수 있다.The memory in the present disclosure may store a program for the operation of a processor, and may temporarily or permanently store input/output data. Memory includes flash memory type, hard disk type, multimedia card micro type, card type memory (e.g. SD or XD memory, etc.), RAM, SRAM, ROM, EEPROM, PROM, magnetic memory, magnetic memory. It may include at least one type of storage medium among disks and optical disks. These memories can be operated under processor control. Additionally, memory and storage may be used interchangeably with each other in the present disclosure.

본 개시에 따른 저장부는 사용자 맞춤형 학습 컨텐츠를 제공하기 위한 다양한 데이터를 저장할 수 있다.The storage unit according to the present disclosure can store various data for providing user-customized learning content.

본 개시 내용에서의 통신부는 서버(100)가 다양한 장치와 통신 가능하도록 연결할 수 있다. 구체적으로 통신부는 사용자 장치(10)와 데이터를 주고받을 수 있다.The communication unit in the present disclosure can connect the server 100 to communicate with various devices. Specifically, the communication unit can exchange data with the user device 10.

도 2는 본 개시의 실시예에 따른 서버의 블록 구성도이다. 도 2에 도시된 서버(100)의 구성은 간략화하여 나타낸 예시일 뿐이다. 본 개시의 일 실시예에서 서버(100)는 서버(100)의 컴퓨팅 환경을 수행하기 위한 다른 구성들이 포함될 수 있고, 개시된 구성들 중 일부만이 서버(100)를 구성할 수도 있다. Figure 2 is a block configuration diagram of a server according to an embodiment of the present disclosure. The configuration of the server 100 shown in FIG. 2 is only a simplified example. In one embodiment of the present disclosure, the server 100 may include different configurations for performing the computing environment of the server 100, and only some of the disclosed configurations may configure the server 100.

서버(100)는 통신부(110), 저장부(120) 및 프로세서(130)를 포함할 수 있다. 다만, 상술한 구성 요소들은 서버(100)를 구현하는데 있어서 필수적인 것은 아니어서, 서버(100)는 위에서 열거된 구성요소들보다 많거나, 또는 적은 구성요소들을 가질 수 있다. 여기서, 각각의 구성 요소들은 별개의 칩이나 모듈이나 장치로 구성될 수 있고, 하나의 장치 내에 포함될 수도 있다.The server 100 may include a communication unit 110, a storage unit 120, and a processor 130. However, the above-described components are not essential for implementing the server 100, so the server 100 may have more or less components than the components listed above. Here, each component may be composed of a separate chip, module, or device, or may be included in one device.

본 개시의 실시예에 따른 통신부(110)는 네트워크 접속을 위한 임의의 형태의 유/무선 인터넷 모듈을 포함할 수 있다. 제시된 실시예에서 통신부(110)는 다양한 형태의 공지된 유선 네트워크 및 무선 네트워크를 사용할 수 있다.The communication unit 110 according to an embodiment of the present disclosure may include any type of wired/wireless Internet module for network connection. In the presented embodiment, the communication unit 110 may use various types of known wired networks and wireless networks.

본 개시의 몇몇 실시예에 따르면, 통신부(110)는 서버(100)가 외부 장치와 통신이 가능하도록 연결한다. 통신부(110)는 유/무선 통신을 이용하여 사용자 장치(10)에 연결되어 사용자 장치(10)로부터 문제 출제 요청을 수신하고, 적어도 하나의 문제를 서버(100)로 전달할 수 있다.According to some embodiments of the present disclosure, the communication unit 110 connects the server 100 to enable communication with an external device. The communication unit 110 may be connected to the user device 10 using wired/wireless communication, receive a question request from the user device 10, and transmit at least one question to the server 100.

본 개시의 일 실시예에 따르면, 저장부(120)는 프로세서(130)가 생성하거나 결정한 임의의 형태의 정보 및 통신부(110)가 수신한 임의의 형태의 정보를 저장할 수 있다. 본 개시의 몇몇 실시예에 따르면, 저장부(120)는 사용자 장치(10)의 문제 제출 요청에 따른 사용자 맞춤형 학습 컨텐츠를 제공하기 위해 사용되는 다양한 데이터를 저장할 수 있다. According to an embodiment of the present disclosure, the storage unit 120 may store any type of information generated or determined by the processor 130 and any type of information received by the communication unit 110. According to some embodiments of the present disclosure, the storage unit 120 may store various data used to provide customized learning content according to a problem submission request from the user device 10.

저장부(120)는 메모리 및/또는 영구저장매체를 포함할 수 있다. 저장부(120)는 플래시 메모리 타입, 하드디스크 타입, 멀티미디어 카드 마이크로 타입, 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM), SRAM, 롬(ROM), EEPROM, PROM, 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 서버(100)는 인터넷(internet) 상에서 상기 저장부(120)의 저장 기능을 수행하는 웹 스토리지(web storage)와 관련되어 동작할 수도 있다. 전술한 저장부에 대한 기재는 예시일 뿐, 본 개시는 이에 제한되지 않는다.Storage unit 120 may include memory and/or persistent storage media. The storage unit 120 includes flash memory type, hard disk type, multimedia card micro type, card type memory (e.g. SD or XD memory, etc.), RAM, SRAM, ROM, EEPROM, PROM, It may include at least one type of storage medium among magnetic memory, magnetic disk, and optical disk. The server 100 may operate in relation to web storage that performs the storage function of the storage unit 120 on the Internet. The description of the storage unit described above is merely an example, and the present disclosure is not limited thereto.

프로세서(130)는 하나 이상의 코어로 구성될 수 있으며, 컴퓨팅 장치의 중앙 처리 장치, 범용 그래픽 처리 장치, 텐서 처리 장치 등의 데이터 분석 및 처리를 위한 프로세서를 포함할 수 있다. The processor 130 may consist of one or more cores and may include a processor for data analysis and processing, such as a central processing unit, a general-purpose graphics processing unit, or a tensor processing unit of a computing device.

프로세서(130)는 저장부(120)에 저장된 컴퓨터 프로그램을 판독하여 본 개시의 실시예에 따른 사용자 맞춤형 학습 컨텐츠를 제공할 수 있다. The processor 130 may read the computer program stored in the storage unit 120 and provide user-customized learning content according to an embodiment of the present disclosure.

구체적으로, 프로세서(130)는 사용자 장치(10)로부터 문제 출제 요청이 수신되면 수신된 문제 출제 요청에 대한 응답으로, 사용자의 개인 정보, 사용자에 의해서 설정된 문제 출제 범위 또는 사용자의 문제 풀이 활동 정보 중 적어도 하나에 기반하여 사용자 맞춤형 학습 컨텐츠를 제공할 수 있다. Specifically, when a problem submission request is received from the user device 10, the processor 130 responds to the received problem submission request by selecting the user's personal information, the problem assessment range set by the user, or the user's problem solving activity information. Customized learning content can be provided based on at least one of the following.

이하에서는 도 3 내지 도 11을 참조하여 사용자 맞춤형 학습 컨텐츠를 제공하기 위한 방법을 구체적으로 설명하도록 한다. 제시된 실시예에서 도 3 내지 도 11의 동작들은 서버(100)의 프로세서(130)에 의해서 수행될 수 있다.Hereinafter, a method for providing user-customized learning content will be described in detail with reference to FIGS. 3 to 11. In the presented embodiment, the operations of FIGS. 3 to 11 may be performed by the processor 130 of the server 100.

도 3은 본 개시의 실시예에 따른 사용자 맞춤형 학습 컨텐츠를 제공하기 위한 방법의 일례를 설명하기 위한 흐름도이다.Figure 3 is a flowchart illustrating an example of a method for providing user-customized learning content according to an embodiment of the present disclosure.

도 3을 참조하면, 프로세서(130)는 사용자 장치(10)로부터 사용자 학습을 위한 문제 출제 요청을 수신하고(S300), 문제 출제 요청에 대한 응답으로, 사용자의 개인 정보, 사용자에 의해서 설정된 문제 출제 범위 또는 사용자의 문제 풀이 활동 정보 중 적어도 하나에 기반하여, 복수의 문제들 중 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정한다(S310). 이에 대해서 도 4 내지 도 11을 참조하여 하기에서 구체적으로 설명하도록 한다.Referring to FIG. 3, the processor 130 receives a request for a question for user learning from the user device 10 (S300), and in response to the request for a question, the user's personal information and a question set by the user are provided. Based on at least one of the scope or the user's problem-solving activity information, at least one problem that the user can solve among the plurality of problems is determined (S310). This will be described in detail below with reference to FIGS. 4 to 11.

도 4는 본 개시의 실시예에 따른 개인 정보에 기반하여, 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 방법의 일례를 설명하기 위한 흐름도이다.FIG. 4 is a flowchart illustrating an example of a method of determining at least one problem that a user can solve based on personal information according to an embodiment of the present disclosure.

도 4를 참조하면, 프로세서(130)는 사용자의 개인 정보와 유사한 개인 정보를 가지는 적어도 하나의 타 사용자를 결정하고(S400), 적어도 하나의 타 사용자에게 제공된 학습 컨텐츠에 기반하여 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정한다(S410). 여기서, 개인 정보는 연령, 성별, 직업, 학업 능력 또는 관심 분야 중 적어도 하나를 포함할 수 있으나, 이에 한정되지 않는다. 또한, 학업 능력은 학업에 대한 지식력, 이해력, 적용력, 분석력, 종합력 또는 평가력 등을 의미할 수 있으나, 이에 한정되지 않는다.Referring to FIG. 4, the processor 130 determines at least one other user who has personal information similar to the user's personal information (S400), and allows the user to interpret based on learning content provided to at least one other user. Determine at least one problem (S410). Here, personal information may include, but is not limited to, at least one of age, gender, occupation, academic ability, or field of interest. Additionally, academic ability may mean academic knowledge, understanding, application, analysis, synthesis, or evaluation, but is not limited to this.

예를 들어, 프로세서(130)는 사용자와 유사한 연령대, 동일한 성별, 유사한 직업 또는 유사한 관심 분야 중 적어도 하나에 해당하는 적어도 하나의 타 사용자를 결정하고, 적어도 하나의 결정된 타 사용자에게 제공된 문제들 중 적어도 하나의 문제를, 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정할 수 있다. For example, the processor 130 determines at least one other user corresponding to at least one of a similar age group, the same gender, a similar occupation, or a similar field of interest as the user, and at least one of the problems provided to the at least one determined other user. For one problem, at least one problem that can be solved by the user can be determined.

이하에서는 사용자에 의해서 설정된 문제 출제 범위에 기반하여, 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 방법을 도 5 및 도 6을 참조하여 설명하도록 한다.Hereinafter, a method of determining at least one problem that a user can solve based on the problem range set by the user will be described with reference to FIGS. 5 and 6.

도 5는 본 개시의 실시예에 따른 사용자에 의해서 설정된 문제 출제 범위에 기반하여, 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 방법의 일례를 설명하기 위한 흐름도이다.FIG. 5 is a flowchart illustrating an example of a method of determining at least one problem that a user can solve based on a problem question range set by the user according to an embodiment of the present disclosure.

도 5를 참조하면, 프로세서(130)는 복수의 문제들 각각에 대하여 사전 설정된 태그 정보 중 사용자에 의해서 설정된 문제 출제 범위에 해당하는 태그 정보를 결정한다(S500). 여기서, 복수의 문제들 각각에 대하여 사전 설정된 태그 정보는 각 문제에 대한 학습 주제, 문제 난이도, 문제를 구성하는 글자의 수, 문제에 포함된 전문 용어의 수, 문제를 구성하는 문장들의 평균 길이, 또는 문제를 구성하는 단문 및 복문의 비율 중 적어도 하나를 포함할 수 있다. 이러한 태그 정보를 설정하는 방법에 대해서 도 6을 참조하여 하기에서 설명하도록 한다.Referring to FIG. 5, the processor 130 determines tag information corresponding to the problem question range set by the user among preset tag information for each of a plurality of problems (S500). Here, the preset tag information for each of the plurality of problems includes the learning topic for each problem, problem difficulty, number of letters constituting the problem, number of technical terms included in the problem, average length of sentences constituting the problem, Alternatively, it may include at least one of the ratio of simple sentences and complex sentences that constitute the problem. A method of setting such tag information will be described below with reference to FIG. 6.

도 6은 본 개시의 실시예에 따른 각 문제에 대하여 태그 정보를 설정하는 방법의 일례를 설명하기 위한 흐름도이다.FIG. 6 is a flowchart illustrating an example of a method for setting tag information for each problem according to an embodiment of the present disclosure.

도 6을 참조하면, 프로세서(130)는 복수의 문제들 각각에 대한 태그 정보를 생성하고(S600), 복수의 문제들 및 복수의 문제들 각각에 대하여 생성된 태그 정보를 대응시켜 저장한다(S610). 여기서, 복수의 문제들은 다양한 학습 분야에 관련된 복수의 문제집들 각각으로부터 수집된 문제들, 또는 다양한 학습 분야에 종사하는 교육자들이 출제한 문제들을 포함할 수 있으나, 이에 한정되지 않는다. Referring to FIG. 6, the processor 130 generates tag information for each of a plurality of problems (S600) and stores the plurality of problems and the tag information generated for each of the problems in correspondence (S610). ). Here, the plurality of problems may include problems collected from each of a plurality of workbooks related to various learning fields, or problems posed by educators engaged in various learning fields, but are not limited to this.

구체적으로, 사용자 장치(10)의 문제 출제 요청을 수신하기 이전에, 프로세서(130)는 복수의 문제들 각각에 대한 학습 주제, 문제 난이도, 문제를 구성하는 글자의 수, 문제에 포함된 전문 용어의 수, 문제를 구성하는 문장들의 평균 길이, 또는 문제를 구성하는 단문 및 복문의 비율 중 적어도 하나를 결정할 수 있다.Specifically, before receiving a problem submission request from the user device 10, the processor 130 determines the learning topic for each of the plurality of problems, the problem difficulty level, the number of letters constituting the problem, and technical terms included in the problem. At least one of the number, the average length of sentences constituting the problem, or the ratio of simple sentences and complex sentences constituting the problem can be determined.

각 문제에 대한 학습 주제를 결정하기 위해 프로세서(130)는 각 문제를 구성하는 문장 또는 단어 등을 분석하여 주제를 추론하도록 학습된 인공지능 기반 주제 추론 모델을 이용할 수 있다. 이러한 주제 추론 모델은 토픽 모델링(topic modeling)을 위한 기계 학습 알고리즘을 기반으로 하는 LDA(Latent Dirichlet Allocation) 또는 HDP(Hierarchical Dirichlet Process)일 수 있으나, 이에 한정되지 않으며, 토픽 모델링을 위한 다양한 인공지능 모델이 이용될 수 있다.To determine a learning topic for each problem, the processor 130 may use an artificial intelligence-based topic inference model that has been trained to infer the topic by analyzing sentences or words that make up each problem. These topic inference models may be, but are not limited to, LDA (Latent Dirichlet Allocation) or HDP (Hierarchical Dirichlet Process) based on machine learning algorithms for topic modeling, and various artificial intelligence models for topic modeling. This can be used.

각 문제에 대한 문제 난이도를 결정하기 위해 프로세서(130)는 문제집의 각 문제에 지정된 난이도 또는 해당 문제를 출제한 출제자에 의해서 설정된 난이도를 획득할 수 있다. 다양한 실시예에서 프로세서(130)는 문제를 난이도별로 분류하도록 학습된 인공지능 기반 분류 모델을 이용할 수 있으나, 이에 한정되지 않는다. 예를 들어, 분류 모델은 문제, 문제를 풀이하는데 소요된 시간 또는 문제에 설정된 난이도 등 중 적어도 하나를 기반으로 사전 학습된 인공지능 기반 모델일 수 있다. In order to determine the problem difficulty level for each problem, the processor 130 may obtain the difficulty level specified for each problem in the workbook or the difficulty level set by the test taker of the problem. In various embodiments, the processor 130 may use an artificial intelligence-based classification model learned to classify problems by difficulty, but is not limited to this. For example, the classification model may be an artificial intelligence-based model that is pre-trained based on at least one of the problem, the time taken to solve the problem, or the difficulty level set for the problem.

각 문제를 구성하는 글자의 수를 결정하기 위해 프로세서(130)는 글자 수를 계산하기 위한 알고리즘을 이용할 수 있는데, 프로세서(130)는 이러한 알고리즘을 이용하여 문제를 구성하는 텍스트를 단어별로 구분하고, 구분된 단어의 개수를 계산할 수 있다.To determine the number of letters constituting each problem, the processor 130 may use an algorithm for calculating the number of letters. The processor 130 uses this algorithm to separate the text constituting the problem by word, The number of separated words can be calculated.

각 문제에 포함된 전문 용어의 수를 결정하기 위해 프로세서(130)는 각 분야별 전문 용어 사전을 이용할 수 있다. 예를 들어, 프로세서(130)는 문제를 구성하는 텍스트 중 각 분야별 전문 용어 사전에 기록된 전문 용어와 일치하는 단어를 결정하고, 결정된 단어의 수를 계산할 수 있다.To determine the number of technical terms included in each problem, the processor 130 may use a technical terminology dictionary for each field. For example, the processor 130 may determine words that match technical terms recorded in a technical terminology dictionary for each field among texts constituting the problem, and calculate the number of words determined.

각 문제를 구성하는 문장들의 평균 길이를 결정하기 위해 프로세서(130)는 각 문제를 구성하는 텍스트를 문장 단위로 구분하고, 구분된 각 문장의 길이를 계산하고, 각 문장에 대하여 계산된 길이의 평균 값을 계산할 수 있다. 텍스트를 문장 단위로 구분하기 위해 프로세서(130)는 자연어처리(Natural Language Processing, NLP) 기술을 이용할 수 있으나, 이에 한정되지 않는다. 문장 길이를 계산하기 위해 프로세서(130)는 문자열 길이를 계산하거나, 글자 수를 계산하는 알고리즘을 이용할 수 있으나, 이에 한정되지 않는다.In order to determine the average length of the sentences constituting each problem, the processor 130 divides the text constituting each problem into sentences, calculates the length of each separated sentence, and averages the length calculated for each sentence. The value can be calculated. To classify text into sentences, the processor 130 may use Natural Language Processing (NLP) technology, but is not limited to this. To calculate the sentence length, the processor 130 may use an algorithm that calculates the length of a string or the number of characters, but is not limited to this.

각 문제를 구성하는 단문 및 복문의 비율을 결정하기 위해 프로세서(130)는 각 문제를 구성하는 텍스트를 단문 단위로 구분하고 구분된 단문의 개수를 계산하며, 텍스트를 복문 단위로 구분하고 구분된 복문의 개수를 계산할 수 있다. 이어서, 프로세서(130)는 계산된 단문 개수 및 계산된 복문 개수에 기반하여 단문 및 복문의 비율을 계산할 수 있다. 텍스트를 단문 단위 및 복문 단위로 구분하기 위해 프로세서(130)는 상술한 자연어처리 기술을 이용할 수 있으나, 이에 한정되지 않는다.In order to determine the ratio of simple sentences and complex sentences constituting each problem, the processor 130 divides the text constituting each problem into simple sentences, calculates the number of separated simple sentences, divides the text into complex sentences, and divides the text into complex sentences. The number of can be calculated. Subsequently, the processor 130 may calculate the ratio of simple sentences and complex sentences based on the calculated number of simple sentences and the calculated number of complex sentences. The processor 130 may use the above-described natural language processing technology to classify text into simple sentence units and complex sentence units, but is not limited to this.

이와 같이 각 문제에 대하여 설정된 태그 정보는 도 7과 같이 예시적으로 나타낼 수 있다.In this way, the tag information set for each problem can be exemplarily shown in FIG. 7.

도 7은 본 개시의 실시예에 따른 문제별 태그 정보를 나타내는 예시도이다. Figure 7 is an example diagram showing tag information for each problem according to an embodiment of the present disclosure.

도 7을 참조하면, 프로세서(130)는 각 문제에 대하여 결정된 학습 주제, 문제 난이도, 글자 수, 전문 용어 수, 평균 문장 길이 및 단문/복문 비율을 나타내는 정보를 대응시킨 문제별 태그 정보(700)를 저장할 수 있다. 예를 들어, 프로세서(130)는 문제 A1에 대하여, 학습 주제가 '인문'이고, 문제 난이도가 '중'이고, 글자 수가 '998단어'이고, 전문 용어 수가 '20단어'이고, 평균 문장 길이가 '15단어'이며, 단문/복문 비율이 '0.2'인 태그 정보 '태그 A1'을 대응시켜 저장할 수 있다.Referring to FIG. 7, the processor 130 generates problem-specific tag information 700 that corresponds information indicating the learning topic, problem difficulty, number of characters, number of technical terms, average sentence length, and simple/complex sentence ratio determined for each problem. can be saved. For example, for problem A1, the processor 130 determines that the learning topic is 'humanities', the problem difficulty is 'medium', the number of characters is '998 words', the number of technical terms is '20 words', and the average sentence length is 'medium'. It is '15 words' and can be stored by matching tag information 'Tag A1' with a simple sentence/complex sentence ratio of '0.2'.

다시 도 5를 참조하면, 사용자에 의해서 설정된 문제 출제 범위는 사용자 장치(10)로부터 수신된 요청에 포함되거나, 요청과 함께 수신될 수 있다. 또한, 사용자에 의해서 설정된 문제 출제 범위는 사용자에 의해서 설정된 적어도 하나의 학습 주제, 사용자에 의해서 설정된 문제 난이도, 문제에 대하여 사용자에 의해서 설정된 글자 수, 문제에 대하여 사용자에 의해서 설정된 전문 용어의 개수, 문제에 대하여 사용자에 의해서 설정된 평균 문장 길이, 문제에 대하여 사용자에 의해서 설정된 단문 및 복문의 비율 또는 사용자에 의해서 설정된 문제 개수 중 적어도 하나를 포함할 수 있다.Referring again to FIG. 5, the problem question range set by the user may be included in the request received from the user device 10 or may be received together with the request. In addition, the scope of the problem set by the user includes at least one learning topic set by the user, the problem difficulty level set by the user, the number of characters set by the user for the problem, the number of technical terms set by the user for the problem, and the number of technical terms set by the user for the problem. It may include at least one of the average sentence length set by the user for the problem, the ratio of simple sentences and complex sentences set by the user for the problem, or the number of problems set by the user.

예를 들어, 사용자에 의해서 설정된 적어도 하나의 학습 주제가 '과학'이고, 사용자에 의해서 설정된 문제 난이도가 '중'이고, 문자에 대하여 사용자에 의해서 설정된 글자 수가 '2000자'이고, 문제에 대하여 사용자에 의해서 설정된 전문 용어의 개수가 '30개'이고, 문제에 대하여 사용자에 의해서 설정된 평균 문장 길이가 '25자'이고, 문제에 대하여 사용자에 의해서 설정된 단문 및 복문의 비율이 '1.5'이며, 사용자에 의해서 설정된 문제 개수가 '10개'라고 가정한다. 이러한 경우 프로세서(130)는 복수의 문제들 각각에 대하여 사전 설정된 태그 정보 중 학습 주제가 '과학'이고, 문제 난이도가 '중'이고, 글자 수가 '2000자'이고, 전문 용어의 개수가 '30개'이고, 평균 문장 길이가 '25자'이고, 단문 및 복문의 비율이 '1.5'에 해당하는 10개의 태그 정보를 결정할 수 있다. For example, at least one learning topic set by the user is 'Science', the difficulty level of the problem set by the user is 'Medium', the number of characters set by the user for the character is '2000', and the user's The number of technical terms set by the user is '30', the average sentence length set by the user for the problem is '25 characters', the ratio of simple sentences and complex sentences set by the user for the problem is '1.5', and the average sentence length set by the user for the problem is '1.5'. Assume that the number of problems set is '10'. In this case, the processor 130 determines that among the preset tag information for each of the plurality of problems, the learning topic is 'science', the problem difficulty level is 'medium', the number of characters is '2000 characters', and the number of technical terms is '30'. ', the average sentence length is '25 characters', and the ratio of simple sentences and complex sentences is '1.5', and 10 tag information can be determined.

프로세서(130)는 적어도 하나의 결정된 태그 정보에 해당하는 적어도 하나의 문제를, 사용자가 풀이할 수 있는 적어도 하나의 문제로 결정한다(S510). 예를 들어, 프로세서(130)는 10개의 결정된 태그 정보에 해당하는 10개의 문제들을, 사용자가 풀이할 수 있는 적어도 하나의 문제로 결정할 수 있다.The processor 130 determines at least one problem corresponding to at least one determined tag information as at least one problem that the user can solve (S510). For example, the processor 130 may determine 10 problems corresponding to 10 pieces of determined tag information as at least one problem that the user can solve.

이하에서는 태그 정보 및 문제 풀이 활동 정보에 기반하여, 복수의 문제들 중 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 방법을 도 8 내지 도 10을 참조하여 설명하도록 한다.Hereinafter, a method of determining at least one problem that a user can solve among a plurality of problems based on tag information and problem solving activity information will be described with reference to FIGS. 8 to 10.

도 8은 본 개시의 실시예에 따른 태그 정보 및 문제 풀이 활동 정보에 기반하여, 복수의 문제들 중 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 방법의 일례를 설명하기 위한 흐름도이다.FIG. 8 is a flowchart illustrating an example of a method of determining at least one problem that a user can solve among a plurality of problems based on tag information and problem-solving activity information according to an embodiment of the present disclosure.

도 8을 참조하면, 프로세서(130)는 사전 저장된 문제별 상세 이력 정보에 기반하여 사용자가 과거에 풀이한 적어도 하나의 문제에 대한 태그 정보 및 문제 풀이 활동 정보를 수집한다(S800). 여기서, 사전 저장된 문제별 상세 이력 정보는 복수의 문제들, 각 문제에 대한 태그 정보, 각 문제를 풀이한 적어도 하나의 사용자 및 각 문제에 대한 적어도 하나의 사용자의 풀이 활동 정보를 포함할 수 있다. 또한, 적어도 하나의 사용자의 문제 풀이 활동 정보는 사용자가 문제 출제 요청 이전까지 풀이한 적어도 하나의 문제에 대하여, 각 문제를 풀이하는데 소요된 시간, 각 문제에 대한 사용자의 정답률, 각 문제를 풀이하는 동안의 시선 패턴 정보 또는 각 문제를 풀이하는 동안의 행동 패턴 정보 중 적어도 하나를 포함할 수 있다. 예를 들어, 시선 패턴 정보는 복수의 사용자들 각각의 시선 정지 횟수, 또는 시선 역행 횟수 등을 포함하고, 행동 패턴 정보는 복수의 사용자들 각각의 얼굴의 좌우 움직임 폭, 얼굴의 상하 움직임 폭, 얼굴 각도 또는 팔 움직임 등을 포함할 수 있으나, 이에 한정되지 않는다. 사전 저장된 문제별 상세 이력 정보에 대해서 도 9를 참조하여 설명하도록 한다.Referring to FIG. 8, the processor 130 collects tag information and problem-solving activity information for at least one problem solved by the user in the past based on pre-stored detailed history information for each problem (S800). Here, the pre-stored detailed history information for each problem may include a plurality of problems, tag information for each problem, at least one user who solved each problem, and information on the solving activity of at least one user for each problem. In addition, information on at least one user's problem-solving activity includes information about at least one problem solved by the user prior to requesting the question, the time spent solving each problem, the user's percentage of correct answers for each problem, and the number of users solving each problem. It may include at least one of gaze pattern information while solving a problem or behavior pattern information while solving each problem. For example, gaze pattern information includes the number of gaze pauses or gaze reversals for each of a plurality of users, and behavior pattern information includes the width of left and right movements of the face of each of the plurality of users, the width of upward and downward movement of the face, and the number of times the gaze is reversed. It may include, but is not limited to, angles or arm movements. Detailed history information for each pre-stored problem will be described with reference to FIG. 9.

도 9는 본 개시의 실시예에 따른 문제별 상세 이력 정보를 설명하기 위한 예시도이다.Figure 9 is an example diagram for explaining detailed history information for each problem according to an embodiment of the present disclosure.

도 9를 참조하면, 프로세서(130)는 복수의 문제들(문제 A1, 문제 문제 A2 문제 A3, ??, 문제 B1, ??), 각 문제에 대한 태그 정보(태그 A1, A2, A3, ??, B1, ??), 각 문제를 풀이한 적어도 하나의 사용자(사용자1, 사용자2, 사용자3, 사용자4, ??) 및 각 사용자에 대하여 수집된 풀이 활동 정보(사용자1_A1 풀이 활동 정보, 사용자2_A1 풀이 활동 정보, ??)를 대응시킨 문제별 상세 이력 정보(900)를 저장할 수 있다. 예를 들어, 프로세서(130)는 문제 A1에 대하여 태그 정보인 태그 A1, 문제 A1을 풀이한 사용자1 및 사용자2, 및 문제 A1을 풀이하는데 수집된 사용자1의 풀이 활동 정보(사용자1_A1 풀이 활동 정보) 및 사용자2의 풀이 활동 정보(사용자2_A1 풀이 활동 정보)를 대응시켜 저장할 수 있다. Referring to FIG. 9, the processor 130 generates a plurality of problems (problem A1, problem A2, problem A3, ??, problem B1, ??) and tag information for each problem (tags A1, A2, A3, ??). ?, B1, ??), at least one user who solved each problem (User1, User2, User3, User4, ??), and solving activity information collected for each user (User1_A1 solving activity information, User 2_A1 solution activity information, detailed history information (900) for each problem that corresponds to ??) can be stored. For example, the processor 130 includes tag A1, which is tag information for problem A1, user 1 and user 2 who solved problem A1, and user 1's solving activity information (user 1_A1 solving activity information) collected in solving problem A1. ) and User 2's solving activity information (User 2_A1 solving activity information) can be stored in correspondence.

다시 도 8을 참조하면, 프로세서(130)는 수집된 태그 정보 및 수집된 풀이 활동 정보에 기반하여 사용자의 태그 정보별 문제 풀이 등급을 결정한다(S810).Referring again to FIG. 8, the processor 130 determines the user's problem solving grade for each tag information based on the collected tag information and the collected solving activity information (S810).

구체적으로, 프로세서(130)는 수집된 태그 정보 및 수집된 풀이 활동 정보에 기반하여 사용자의 학습 주제별 문제 풀이 등급, 문제 난이도별 문제 풀이 등급, 글자 개수별 문제 풀이 등급, 전문 용어 개수별 문제 풀이 등급, 평균 문장 길이별 문제 풀이 등급 또는 단문/복문 비율별 문제 풀이 등급 중 적어도 하나를 결정할 수 있다. 여기서, 태그 정보별 문제 풀이 등급은 적어도 하나의 사용자가 태그 정보별로 구분된 문제들을 풀이하는데 있어서 쉽거나 어려움 정도를 나타내는 등급을 의미할 수 있다. 문제 풀이 등급(상)이 높을수록 사용자가 태그 정보별로 구분된 문제들을 쉽게 풀이했다고 이해될 수 있고, 문제 풀이 등급(하)이 낮을수록 사용자가 태그 정보별로 구분된 문제들을 어렵게 풀이했다고 이해될 수 있다.Specifically, the processor 130 is based on the collected tag information and the collected solving activity information. The user's problem solving grade by learning topic, problem solving grade by problem difficulty, problem solving grade by number of letters, and problem solving grade by number of technical terms. , at least one of a problem solving grade based on average sentence length or a problem solving grade based on simple sentence/complex sentence ratio can be determined. Here, the problem solving grade by tag information may mean a grade indicating the ease or difficulty in solving problems classified by tag information for at least one user. The higher the problem solving grade (upper), the easier it can be understood that the user solved the problems classified by tag information. The lower the problem solving grade (lower), the more difficult it can be understood that the user solved the problems classified by tag information. there is.

이와 같이 태그 정보별 문제 풀이 등급을 결정하기 위해 프로세서(130)는 사용자가 풀이한 복수의 문제들을 학습 주제별, 문제 난이도별, 글자 개수별, 전문 용어 개수별, 평균 문장 길이별 또는 단문/복문 비율별로 구분하고, 구분된 학습 주제별 문제에 대응하는 풀이 활동 정보, 문제 난이도별 문제에 대응하는 풀이 활동 정보, 글자 개수별 문제에 대응하는 풀이 활동 정보, 전문 용어 개수별 문제에 대응하는 풀이 활동 정보, 평균 문장 길이별 문제에 대응하는 풀이 활동 정보 또는 단문/복문 비율별 문제에 대응하는 풀이 활동 정보 중 적어도 하나를 이용하여 학습 주제별 문제 풀이 등급, 문제 난이도별 문제 풀이 등급, 글자 개수별 문제 풀이 등급, 전문 용어 개수별 문제 풀이 등급, 평균 문장 길이별 문제 풀이 등급 또는 단문/복문 비율별 문제 풀이 등급 중 적어도 하나를 결정할 수 있다. 예를 들어, 학습 주제별 문제 풀이 등급을 결정하기 위해 프로세서(130)는 사용자가 풀이한 문제들을 인문, 사회, 과학, 기술 등의 학습 주제로 구분하고, 인문에 관한 적어도 하나의 문제, 사회에 관한 적어도 하나의 문제, 과학에 관한 적어도 하나의 문제 및 기술에 관한 적어도 하나의 문제 각각에 대하여 수집된 풀이 활동 정보에 기반하여 인문, 사회, 과학 및 기술에 대한 사용자의 문제 풀이 등급을 결정할 수 있다. 인문에 관한 적어도 하나의 문제를 풀이하는데 소요된 시간이 사전 설정된 임계 시간 이상이고, 정답률이 사전 설정된 임계율보다 낮으며, 시선 패턴 및 행동 패턴이 분산되는 경우 프로세서(130)는 사용자의 인문에 관한 문제 풀이 등급을 가장 낮은 등급인 '하'로 결정할 수 있다. 다양한 실시예에서 기술에 관한 적어도 하나의 문제를 풀이하는데 소요된 시간이 임계 시간 미만이고, 정답률이 임계율보다 높으며, 시선 패턴 및 행동 패턴이 분산되지 않은 경우 프로세서(130)는 사용자의 인문에 관한 문제 풀이 등급을 가장 높은 등급인 '상'으로 결정할 수 있다.In order to determine the problem solving grade according to tag information, the processor 130 selects a plurality of problems solved by the user by learning topic, problem difficulty, number of characters, number of technical terms, average sentence length, or simple/complex sentence ratio. Divided into categories, solution activity information corresponding to problems by classified learning topics, solution activity information corresponding to problems by problem difficulty, solution activity information corresponding to problems by number of letters, solution activity information corresponding to problems by number of technical terms, Using at least one of the solution activity information corresponding to problems by average sentence length or the solution activity information corresponding to problems by simple sentence/complex sentence ratio, problem solving grade by learning topic, problem solving grade by problem difficulty, problem solving grade by number of letters, At least one of the problem solving grade according to the number of technical terms, the problem solving grade according to the average sentence length, or the problem solving grade according to the simple sentence/complex sentence ratio can be determined. For example, in order to determine the problem solving grade for each learning topic, the processor 130 divides the problems solved by the user into learning topics such as humanities, social science, science, and technology, and divides them into at least one problem related to the humanities and one related to society. The user's problem solving level for humanities, social studies, science, and technology may be determined based on the solving activity information collected for each of at least one problem, at least one problem related to science, and at least one problem related to technology. If the time taken to solve at least one problem related to the humanities is more than a preset threshold time, the correct answer rate is lower than the preset threshold rate, and the gaze pattern and behavior pattern are dispersed, the processor 130 determines the user's humanities related problem. The problem solving grade can be determined as 'low', the lowest grade. In various embodiments, if the time taken to solve at least one problem related to technology is less than the threshold time, the correct answer rate is higher than the threshold rate, and the gaze pattern and behavior pattern are not distributed, the processor 130 may determine the user's humanities problem. The problem solving grade can be determined as ‘Award’, which is the highest grade.

다양한 실시예에서 태그 정보별 문제 풀이 등급을 결정하기 위해 프로세서(130)는 사용자의 풀이 활동 정보에 기반하여 사용자의 태그 정보별 문제 풀이 등급을 추론하도록 학습된 인공지능 기반 등급 추론 모델을 이용하여 사용자의 태그 정보별 문제 풀이 등급을 결정할 수 있다. 이러한 등급 추론 모델은 태그 정보별로 구비될 수 있으나, 이에 한정되지 않는다. 예를 들어, 학습 주제별 등급 추론 모델, 문제 난이도별 등급 추론 모델, 글자 개수별 등급 추론 모델, 전문 용어 개수별 등급 추론 모델, 평균 문장 길이별 등급 추론 모델 또는 단문/복문 비율별 등급 추론 모델이 이용될 수 있다.In various embodiments, in order to determine the problem solving grade for each tag information, the processor 130 uses an artificial intelligence-based grade inference model learned to infer the problem solving grade for each tag information of the user based on the user's solving activity information. The problem solving grade can be determined for each tag information. This grade inference model may be provided for each tag information, but is not limited to this. For example, a grade inference model by learning topic, a grade inference model by problem difficulty, a grade inference model by number of letters, a grade inference model by number of technical terms, a grade inference model by average sentence length, or a grade inference model by simple/complex sentence ratio are used. It can be.

등급 추론 모델을 학습시키기 위해 프로세서(130)는 복수의 사용자들에 대하여, 각 사용자가 풀이한 복수의 문제들 각각을 학습 주제별, 문제 난이도별, 글자 개수별, 전문 용어 개수별, 평균 문장 길이별 또는 단문/복문 비율별로 구분하고, 구분된 각 문제에 대응하는 풀이 활동 정보를 학습 데이터로서 이용할 수 있다. 이러한 등급 추론 모델을 학습하기 위해 지도 학습(Supervised Learning)이 이용될 수 있으나, 이에 한정되지 않는다. In order to learn the rating inference model, the processor 130 analyzes each of the plurality of problems solved by each user for a plurality of users by learning topic, problem difficulty, number of characters, number of technical terms, and average sentence length. Alternatively, it can be classified by simple sentence/complex sentence ratio, and the solution activity information corresponding to each classified problem can be used as learning data. Supervised learning may be used to learn this grade inference model, but is not limited to this.

프로세서(130)는 복수의 타 사용자들 각각에 대하여 사전 설정된 태그 정보별 문제 풀이 등급에 기반하여, 결정된 태그 정보별 문제 풀이 등급과 동일한 등급을 갖는 적어도 하나의 사용자를 결정한다(S820). 여기서, 복수의 타 사용자들 각각에 대하여 사전 설정된 태그 정보별 문제 풀이 등급은 도 10과 같이 도시될 수 있다.The processor 130 determines at least one user having the same grade as the determined problem-solving grade by tag information, based on the problem-solving grade by tag information preset for each of the plurality of other users (S820). Here, the problem solving grade for each tag information preset for each of the plurality of other users may be shown as shown in FIG. 10.

도 10은 본 개시의 실시예에 따른 복수의 타 사용자들 각각에 대하여 사전 설정된 태그 정보별 문제 풀이 등급을 나타내는 예시도이다.Figure 10 is an example diagram showing a problem solving grade for each tag information preset for each of a plurality of other users according to an embodiment of the present disclosure.

도 10을 참조하면, 복수의 타 사용자들 각각에 대하여 사전 설정된 태그 정보별 문제 풀이 등급(1000)은 복수의 사용자들 각각에 대하여 학습 주제별, 문제 난이도별, 글자 개수별, 전문 용어 개수별, 평균 문장 길이별 및 단문/복문 비율별 문제 풀이 등급을 포함한다. 예를 들어, '인문'에 대한 사용자의 문제 풀이 등급이 '중'이고, 기술이 '하'인 경우 프로세서(130)는 '인문'에 대한 문제 풀이 등급이 '중'이고, 기술이 '하'에 해당하는 '사용자2'를 동일한 등급을 갖는 적어도 하나의 사용자로 결정할 수 있다. Referring to FIG. 10, the problem solving grade (1000) for each tag information preset for each of a plurality of other users is calculated by learning topic, problem difficulty, number of letters, number of technical terms, and average for each of the plurality of users. Includes problem solving grades by sentence length and simple/complex sentence ratio. For example, if the user's problem solving grade for 'humanities' is 'medium' and the technology is 'low', the processor 130 determines that the problem solving grade for 'humanities' is 'medium' and the technology is 'low'. 'User 2' corresponding to ' can be determined to be at least one user with the same level.

다시 도 8을 참조하면, 프로세서(130)는 적어도 하나의 결정된 타 사용자에게 제공된 학습 컨텐츠에 기반하여 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정한다(S830). 구체적으로, 프로세서(130)는 적어도 하나의 결정된 타 사용자에게 제공된 적어도 하나의 문제에 대한 난이도, 또는 해당 난이도의 문제를 풀이한 적어도 하나의 타 사용자의 문제 풀이 등급에 대한 상향 또는 하향 여부를 고려하여 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정할 수 있다. Referring again to FIG. 8, the processor 130 determines at least one problem that the user can solve based on learning content provided to at least one determined other user (S830). Specifically, the processor 130 considers the level of difficulty of at least one problem provided to at least one determined other user, or whether to increase or decrease the problem solving grade of at least one other user who solved a problem of the corresponding level of difficulty. The user can determine at least one problem that can be solved.

예를 들어, '사용자2'에게 '인문'에 대한 문제 난이도가 '상'이고, '기술'에 대한 문제 난이도가 '중'인 적어도 하나의 문제가 제공된 경우 프로세서(130)는 복수의 문제들 중 '사용자2'에게 제공된, '인문'에 대한 문제 난이도가 '상'이고, '기술'에 대한 문제 난이도가 '중'인 적어도 하나의 문제를, 사용자가 풀이할 수 있는 적어도 하나의 문제로 결정할 수 있다.For example, when 'User 2' is provided with at least one problem whose difficulty level for 'Humanities' is 'High' and the problem difficulty level for 'Technology' is 'Medium', the processor 130 selects a plurality of problems. At least one problem provided to 'User 2' with a problem difficulty level of 'Large' for 'Humanities' and a problem difficulty level of 'Medium' for 'Technology' is converted into at least one problem that the user can solve. You can decide.

다양한 실시예에서 적어도 하나의 타 사용자의 문제 풀이 등급에 대한 상향 또는 하향 여부를 고려하여 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하기 위해 프로세서(130)는 복수의 사용자들 각각의 태그 정보별 문제 풀이 등급에 대한 이력을 저장하고, 저장된 이력에 기반하여 학습 컨텐츠를 제공할 수 있다. 구체적으로, 프로세서(130)는 복수의 사용자들 각각에 제공된 학습 컨텐츠에 의해 복수의 사용자들 각각의 태그 정보별 문제 풀이 등급이 상향되거나, 하향된 이력을 저장할 수 있다.In various embodiments, in order to determine at least one problem that can be solved by a user in consideration of whether the problem solving grade of at least one other user is raised or lowered, the processor 130 determines at least one problem that can be solved by the user by tag information for each of the plurality of users. The history of problem solving grades can be saved, and learning content can be provided based on the saved history. Specifically, the processor 130 may store a history of whether the problem solving grade for each tag information of a plurality of users has been raised or lowered by learning content provided to each of the plurality of users.

예를 들어, '사용자2'에게 '인문'에 대한 문제 난이도가 '상'이고, '기술'에 대한 문제 난이도가 '중'인 적어도 하나의 문제가 제공되고, 적어도 하나의 제공된 문제를 풀이한 '사용자2'의 '인문'및 '기술'에 대한 문제 풀이 등급이 상향된 경우 프로세서(130)는 '사용자2'에게 제공된 적어도 하나의 문제, 또는 '사용자2'에게 제공된 적어도 하나의 문제보다 높은 난이도의 문제를, 사용자가 풀이할 수 있는 적어도 하나의 문제로 결정할 수도 있다. 다양한 실시예에서 '사용자2'에게 '인문'에 대한 문제 난이도가 '상'이고, '기술'에 대한 문제 난이도가 '중'인 적어도 하나의 문제가 제공되고, 적어도 하나의 제공된 문제를 풀이한 '사용자2'의 '인문'및 '기술'에 대한 문제 풀이 등급이 하향된 경우 프로세서(130)는 '사용자2'에게 제공된 적어도 하나의 문제보다 낮은 난이도의 문제를, 사용자가 풀이할 수 있는 적어도 하나의 문제로 결정할 수도 있다.For example, 'User 2' is provided with at least one problem with a problem difficulty level of 'Large' for 'Humanities' and a problem difficulty level of 'Medium' for 'Technology', and at least one problem is solved. If 'User 2's' problem solving grade for 'Humanities' and 'Technology' is increased, the processor 130 determines at least one problem provided to 'User 2', or higher than at least one problem provided to 'User 2'. The problem of difficulty may be determined as at least one problem that the user can solve. In various embodiments, 'User 2' is provided with at least one problem in which the problem difficulty level for 'humanities' is 'high' and the problem difficulty level for 'technology' is 'medium', and at least one problem is solved. If 'User 2's' problem solving grade for 'Humanities' and 'Technology' is lowered, the processor 130 selects a problem of lower difficulty level than at least one problem provided to 'User 2', and provides at least one problem that the user can solve. It can be decided on a single issue.

이와 같이 본 개시에서는 사용자의 과거 문제 풀이 이력뿐만 아니라, 사용자와 학습 성향이 유사한 타 사용자의 문제 풀이 이력을 고려하여 학습 컨텐츠를 제공함으로써, 사용자의 학습 수준에 보다 적합한 학습 컨텐츠를 제공할 수 있다.In this way, in the present disclosure, learning content more suitable for the user's learning level can be provided by providing learning content by considering not only the user's past problem solving history but also the problem solving history of other users with similar learning tendencies as the user.

이하에서는 사용자에 의해서 설정된 문제 출제 범위 및 사용자의 문제 풀이 등급에 기반하여 사용자가 풀이할 수 있는 문제를 결정하는 방법을 도 11을 참조하여 설명하도록 한다.Hereinafter, a method of determining a problem that a user can solve based on the problem range set by the user and the user's problem solving grade will be described with reference to FIG. 11.

도 11은 본 개시의 실시예에 따른 문제 출제 범위 및 문제 풀이 등급에 기반하여 사용자가 풀이할 수 있는 문제를 결정하는 방법의 일례를 설명하기 위한 흐름도이다. 제시된 실시예에서는 사용자가 과거에 문제 풀이를 한 이력(즉, 사용자의 풀이 활동 정보)이 존재하는 경우에 대해서 설명하도록 한다.FIG. 11 is a flowchart illustrating an example of a method of determining a problem that a user can solve based on the problem range and problem solving grade according to an embodiment of the present disclosure. In the presented embodiment, a case where a user has a history of solving problems in the past (i.e., user's solving activity information) will be described.

도 11을 참조하면, 프로세서(130)는 복수의 문제들 각각에 대하여 사전 설정된 태그 정보 중 사용자에 의해서 설정된 문제 출제 범위에 해당하는 태그 정보를 결정한다(S1100). 다시 말해서, 프로세서(130)는 사용자에 의해서 설정된 학습 주제, 문제 난이도, 문제의 글자 수, 문제의 전문 용어 수, 문제의 평균 문장 길이, 문제의 단문 및 복문 비율 중 적어도 하나에 해당하는 태그 정보를 결정할 수 있다.Referring to FIG. 11, the processor 130 determines tag information corresponding to the problem question range set by the user among preset tag information for each of a plurality of problems (S1100). In other words, the processor 130 provides tag information corresponding to at least one of the learning topic set by the user, problem difficulty, number of characters in the problem, number of technical terms in the problem, average sentence length of the problem, and ratio of simple sentences and complex sentences in the problem. You can decide.

이어서, 프로세서(130)는 결정된 태그 정보에 해당하는 문제들 중 사용자가 풀이한 적어도 하나의 문제에 대한 풀이 활동 정보를 수집하고(S1110), 적어도 하나의 문제에 대한 태그 정보 및 수집된 풀이 활동 정보에 기반하여 사용자의 태그 정보별 문제 풀이 등급을 결정한다(S1120). 사용자의 태그 정보별 문제 풀이 등급을 결정하기 위해 프로세서(130)는 도 7의 S710에서 상술한 바와 같은 동일한 방식을 이용할 수 있다. 즉, 프로세서(130)는 사용자가 풀이한 적어도 하나의 문제를, 학습 주제별, 문제 난이도별, 글자 개수별, 전문 용어 개수별, 평균 문장 길이별 또는 단문/복문 비율별로 구분하고, 구분된 학습 주제별 문제에 대응하는 풀이 활동 정보, 문제 난이도별 문제에 대응하는 풀이 활동 정보, 글자 개수별 문제에 대응하는 풀이 활동 정보, 전문 용어 개수별 문제에 대응하는 풀이 활동 정보, 평균 문장 길이별 문제에 대응하는 풀이 활동 정보 또는 단문/복문 비율별 문제에 대응하는 풀이 활동 정보 중 적어도 하나를 이용하여 학습 주제별 문제 풀이 등급, 문제 난이도별 문제 풀이 등급, 글자 개수별 문제 풀이 등급, 전문 용어 개수별 문제 풀이 등급, 평균 문장 길이별 문제 풀이 등급 또는 단문/복문 비율별 문제 풀이 등급 중 적어도 하나를 결정할 수 있다. 예를 들어, 프로세서(130)는 학습 주제별 풀이 활동 정보, 문제 난이도별 풀이 활동 정보, 글자 개수별 풀이 활동 정보 풀이 활동 정보, 전문 용어 개수별 풀이 활동 정보, 평균 문장 길이별 풀이 활동 정보 또는 단문/복문 비율별 풀이 활동 정보 중 적어도 하나에 기반하여 학습 주제별 문제 풀이 등급, 문제 난이도별 문제 풀이 등급, 글자 개수별 문제 풀이 등급, 전문 용어 개수별 문제 풀이 등급, 평균 문장 길이별 문제 풀이 등급 또는 단문/복문 비율별 문제 풀이 등급 중 적어도 하나를 추론하도록 학습된 적어도 하나의 등급 추론 모델을 이용하여 학습 주제별 문제 풀이 등급, 문제 난이도별 문제 풀이 등급, 글자 개수별 문제 풀이 등급, 전문 용어 개수별 문제 풀이 등급, 평균 문장 길이별 문제 풀이 등급 또는 단문/복문 비율별 문제 풀이 등급 중 적어도 하나를 결정할 수 있다.Next, the processor 130 collects solving activity information for at least one problem solved by the user among the problems corresponding to the determined tag information (S1110), and tag information and the collected solving activity information for the at least one problem. Based on this, the problem solving grade for each user's tag information is determined (S1120). To determine the problem solving level for each user's tag information, the processor 130 may use the same method as described above in S710 of FIG. 7 . That is, the processor 130 divides at least one problem solved by the user by learning topic, problem difficulty, number of letters, number of technical terms, average sentence length, or simple sentence/complex sentence ratio, and categorizes each problem by learning topic. Solving activity information corresponding to the problem, solving activity information corresponding to the problem by problem difficulty, solving activity information corresponding to the problem by number of characters, solving activity information corresponding to the problem by number of technical terms, solving activity information corresponding to the problem by average sentence length By using at least one of the solution activity information or the solution activity information corresponding to the problem by simple sentence/complex sentence ratio, problem solving grade by learning topic, problem solving grade by problem difficulty, problem solving grade by number of letters, problem solving grade by number of technical terms, At least one of a problem solving grade based on average sentence length or a problem solving grade based on simple sentence/complex sentence ratio can be determined. For example, the processor 130 may provide solving activity information by learning topic, solving activity information by problem difficulty, solving activity information by number of letters, solving activity information by number of technical terms, solving activity information by average sentence length, or short sentence/ Based on at least one of the solving activity information by complex sentence ratio, problem solving grade by learning topic, problem solving grade by problem difficulty, problem solving grade by number of letters, problem solving grade by number of technical terms, problem solving grade by average sentence length, or short sentence/ Learning using at least one grade inference model trained to infer at least one of the problem solving grades by complex sentence ratio, problem solving grade by topic, problem solving grade by problem difficulty, problem solving grade by number of letters, problem solving grade by number of technical terms , at least one of a problem solving grade based on average sentence length or a problem solving grade based on simple sentence/complex sentence ratio can be determined.

프로세서(130)는 복수의 타 사용자들 각각에 대하여 사전 설정된 태그 정보별 문제 풀이 등급에 기반하여, 결정된 태그 정보별 문제 풀이 등급과 동일한 등급을 갖는 적어도 하나의 타 사용자를 결정한다(S1130). 다시 말해서, 프로세서(130)는 도 9와 같이 복수의 타 사용자에 대한 태그 정보별 문제 풀이 등급에서, 사용자의 태그 정보별 문제 풀이 등급과 동일한 등급에 해당하는 적어도 하나의 타 사용자를 결정할 수 있다. 예를 들어, 문제 난이도가 '상'일 때 사용자의 결정된 문제 풀이 등급이 '하'라고 가정한다. 이러한 경우 프로세서(130)는 '사용자1'을 사용자와 동일한 문제 풀이 등급을 갖는 적어도 하나의 타 사용자로 결정할 수 있다.The processor 130 determines at least one other user having the same grade as the determined problem-solving grade by tag information, based on the problem-solving grade by tag information preset for each of the plurality of other users (S1130). In other words, the processor 130 may determine at least one other user corresponding to the same level as the user's problem-solving level according to tag information from the problem-solving level according to tag information for a plurality of other users, as shown in FIG. 9. For example, when the problem difficulty level is 'High', it is assumed that the user's determined problem solving grade is 'Low'. In this case, the processor 130 may determine 'User 1' to be at least one other user who has the same problem solving level as the user.

프로세서(130)는 적어도 하나의 결정된 타 사용자에게 제공된 학습 컨텐츠에 기반하여 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정한다(S1140). 예를 들어, 사용자의 태그 정보별 문제 풀이 등급과 동일한 등급을 갖는 적어도 하나의 타 사용자가 '사용자1'과 '사용자2'라고 가정한다. 이러한 경우 프로세서(130)는 '사용자1'과 '사용자2'각각에 제공된 문제들을 조합하여 조합된 문제들을 사용자가 풀이한 적어도 하나의 문제로 결정할 수 있다. The processor 130 determines at least one problem that the user can solve based on learning content provided to at least one determined other user (S1140). For example, assume that 'User 1' and 'User 2' are at least one other user who has the same level as the problem solving level according to the user's tag information. In this case, the processor 130 may combine the problems provided to 'User 1' and 'User 2' respectively and determine the combined problems as at least one problem solved by the user.

다양한 실시예에서 프로세서(130)는 '사용자1'및 '사용자2' 각각에 대한 문제 풀이 등급의 상향 또는 하향 여부를 결정하여 '사용자1'의 문제 풀이 등급이 상향되고, '사용자2'의 문제 풀이 등급이 상향된 경우 사용자1'과 '사용자2' 각각에 제공된 문제들을 조합하여 조합된 문제들을 사용자가 풀이한 적어도 하나의 문제로 결정할 수 있다. '사용자1'의 문제 풀이 등급이 상향되었지만 '사용자2'의 문제 풀이 등급이 하향된 경우 프로세서(130)는 '사용자1'에게 제공된 문제들과, '사용자2'에게 제공된 문제들보다 낮은 난이도의 문제들을 조합하여 조합된 문제들을 사용자가 풀이한 적어도 하나의 문제로 결정할 수 있다.In various embodiments, the processor 130 determines whether to raise or lower the problem solving grade for each of 'User 1' and 'User 2' so that the problem solving grade of 'User 1' is raised and the problem solving grade of 'User 2' is raised. When the solution level is raised, the problems provided to 'User 1' and 'User 2' can be combined and the combined problems can be determined as at least one problem solved by the user. If the problem solving grade of 'User 1' is increased but the problem solving grade of 'User 2' is lowered, the processor 130 selects the problems provided to 'User 1' and those of lower difficulty level than the problems provided to 'User 2'. By combining problems, the combined problems can be determined to be at least one problem solved by the user.

다양한 실시예에서 사용자의 과거 문제 풀이 이력이 존재하지 않은 경우 프로세서(130)는 사용자에 의해서 설정된 문제 출제 범위에 해당하는 태그 정보를 결정하고(S1100과 동일), 결정된 태그 정보에 해당하는 적어도 하나의 문제에 대한 적어도 하나의 타 사용자의 풀이 활동 정보를 수집할 수 있다. 여기서, 적어도 하나의 타 사용자의 풀이 활동 정보는 적어도 하나의 타 사용자의 태그 정보별 문제 풀이 등급에 기반하여 제공된 문제들의 난이도가 조정됨에 따라 적어도 하나의 타 사용자의 문제 풀이 등급이 상향 또는 하향되었는지를 나타내는 정보를 더 포함할 수 있다. 예를 들어, 학습 주제가 '인문'에 해당하는 문제를 풀이한 적어도 하나의 타 사용자가 해당 문제보다 난이도 높은 문제를 풀이했을 때 학습 주제별 문제 풀이 등급이 하향되었다고 가정한다. 이러한 경우 프로세서(130)는 사용자에 의해서 설정된 문제 난이도보다 낮은 난이도의 문제를 사용자가 풀이할 수 있는 문제로 결정할 수 있다. In various embodiments, when the user's past problem-solving history does not exist, the processor 130 determines tag information corresponding to the problem question range set by the user (same as S1100) and at least one tag information corresponding to the determined tag information. Information on the solving activities of at least one other user for the problem can be collected. Here, the solving activity information of at least one other user indicates whether the problem solving grade of at least one other user was raised or lowered as the difficulty level of the provided problems was adjusted based on the problem solving grade of each tag information of the at least one other user. Additional information may be included. For example, assume that when at least one other user who solved a problem whose learning topic is 'humanities' solved a problem with higher difficulty than the corresponding problem, the problem solving rating for each learning topic was lowered. In this case, the processor 130 may determine that a problem with a level of difficulty lower than that set by the user is a problem that the user can solve.

다시 도 3을 참조하면, 프로세서(130)는 결정된 적어도 하나의 문제를 사용자 장치(10)로 제공한다(S320). 다시 말해서, 프로세서(130)는 결정된 적어도 하나의 문제를, 사용자 맞춤형 학습 컨텐츠로서 사용자 장치(10)로 제공할 수 있다.Referring again to FIG. 3, the processor 130 provides at least one determined problem to the user device 10 (S320). In other words, the processor 130 may provide at least one determined problem to the user device 10 as user-customized learning content.

이처럼, 본 개시에서는 사용자의 개인 정보, 상기 사용자에 의해 설정된 문제 출제 범위 또는 상기 사용자의 풀이 활동 정보 중 적어도 하나에 기반하여 학습 컨텐츠를 제공함으로써, 사용자의 학습 수준 또는 학습 능력을 효율적으로 향상시킬 수 있다.As such, in the present disclosure, the user's learning level or learning ability can be efficiently improved by providing learning content based on at least one of the user's personal information, the problem question range set by the user, or the user's solving activity information. there is.

도 12는 본 개시의 실시예들이 구현될 수 있는 예시적인 컴퓨팅 환경에 대한 간략하고 일반적인 개략도이다.Figure 12 is a brief, general schematic diagram of an example computing environment in which embodiments of the present disclosure may be implemented.

본 개시가 일반적으로 컴퓨팅 장치에 의해 구현될 수 있는 것으로 전술되었지만, 당업자라면 본 개시가 하나 이상의 컴퓨터 상에서 실행될 수 있는 컴퓨터 실행가능 명령어 및/또는 기타 프로그램 모듈들과 결합되어 및/또는 하드웨어와 소프트웨어의 조합으로써 구현될 수 있다는 것을 잘 알 것이다.Although the present disclosure has generally been described above as being capable of being implemented by a computing device, those skilled in the art will understand that the present disclosure can be implemented in combination with computer-executable instructions and/or other program modules that can be executed on one or more computers and/or in hardware and software. It will be well known that it can be implemented as a combination.

일반적으로, 프로그램 모듈은 특정의 태스크를 수행하거나 특정의 추상 데이터 유형을 구현하는 루틴, 프로그램, 컴포넌트, 데이터 구조, 기타 등등을 포함한다. 또한, 당업자라면 본 개시의 방법이 단일-프로세서 또는 멀티프로세서 컴퓨터 시스템, 미니컴퓨터, 메인프레임 컴퓨터는 물론 퍼스널 컴퓨터, 핸드헬드(handheld) 컴퓨팅 장치, 마이크로프로세서-기반 또는 프로그램가능 가전 제품, 기타 등등(이들 각각은 하나 이상의 연관된 장치와 연결되어 동작할 수 있음)을 비롯한 다른 컴퓨터 시스템 구성으로 실시될 수 있다는 것을 잘 알 것이다.Typically, program modules include routines, programs, components, data structures, etc. that perform specific tasks or implement specific abstract data types. Additionally, those skilled in the art will understand that the methods of the present disclosure are applicable to single-processor or multiprocessor computer systems, minicomputers, mainframe computers, as well as personal computers, handheld computing devices, microprocessor-based or programmable consumer electronics, etc. It will be appreciated that each of these may be implemented in other computer system configurations, including those capable of operating in conjunction with one or more associated devices.

본 개시의 설명된 실시예들은 또한 어떤 태스크들이 통신 네트워크를 통해 연결되어 있는 원격 처리 장치들에 의해 수행되는 분산 컴퓨팅 환경에서 실시될 수 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 로컬 및 원격 메모리 저장 장치 둘 다에 위치할 수 있다.The described embodiments of the disclosure can also be practiced in distributed computing environments where certain tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.

컴퓨터는 통상적으로 다양한 컴퓨터 판독가능 매체를 포함한다. 컴퓨터에 의해 액세스 가능한 매체는 그 어떤 것이든지 컴퓨터 판독가능 매체가 될 수 있고, 이러한 컴퓨터 판독가능 매체는 휘발성 및 비휘발성 매체, 일시적(transitory) 및 비일시적(non-transitory) 매체, 이동식 및 비-이동식 매체를 포함한다. 제한이 아닌 예로서, 컴퓨터 판독가능 매체는 컴퓨터 판독가능 저장 매체 및 컴퓨터 판독가능 전송 매체를 포함할 수 있다. 컴퓨터 판독가능 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보를 저장하는 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성 매체, 일시적 및 비-일시적 매체, 이동식 및 비이동식 매체를 포함한다. 컴퓨터 판독가능 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 기타 메모리 기술, CD-ROM, DVD(digital video disk) 또는 기타 광 디스크 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 기타 자기 저장 장치, 또는 컴퓨터에 의해 액세스될 수 있고 원하는 정보를 저장하는 데 사용될 수 있는 임의의 기타 매체를 포함하지만, 이에 한정되지 않는다.Computers typically include a variety of computer-readable media. Computer-readable media can be any medium that can be accessed by a computer, and such computer-readable media includes volatile and non-volatile media, transitory and non-transitory media, removable and non-transitory media. Includes removable media. By way of example, and not limitation, computer-readable media may include computer-readable storage media and computer-readable transmission media. Computer-readable storage media refers to volatile and non-volatile media, transient and non-transitory media, removable and non-removable, implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Includes media. Computer readable storage media may include RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital video disk (DVD) or other optical disk storage, magnetic cassette, magnetic tape, magnetic disk storage or other magnetic storage. This includes, but is not limited to, a device, or any other medium that can be accessed by a computer and used to store desired information.

컴퓨터 판독가능 전송 매체는 통상적으로 반송파(carrier wave) 또는 기타 전송 메커니즘(transport mechanism)과 같은 피변조 데이터 신호(modulated data signal)에 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터 등을 구현하고 모든 정보 전달 매체를 포함한다. 피변조 데이터 신호라는 용어는 신호 내에 정보를 인코딩하도록 그 신호의 특성들 중 하나 이상을 설정 또는 변경시킨 신호를 의미한다. 제한이 아닌 예로서, 컴퓨터 판독가능 전송 매체는 유선 네트워크 또는 직접 배선 접속(direct-wired connection)과 같은 유선 매체, 그리고 음향, RF, 적외선, 기타 무선 매체와 같은 무선 매체를 포함한다. 상술된 매체들 중 임의의 것의 조합도 역시 컴퓨터 판독가능 전송 매체의 범위 안에 포함되는 것으로 한다.A computer-readable transmission medium typically implements computer-readable instructions, data structures, program modules, or other data on a modulated data signal, such as a carrier wave or other transport mechanism. Includes all information delivery media. The term modulated data signal refers to a signal in which one or more of the characteristics of the signal have been set or changed to encode information within the signal. By way of example, and not limitation, computer-readable transmission media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared, and other wireless media. Combinations of any of the above are also intended to be included within the scope of computer-readable transmission media.

컴퓨터(1202)를 포함하는 본 개시의 여러가지 측면들을 구현하는 예시적인 환경(1200)이 나타내어져 있으며, 컴퓨터(1202)는 처리 장치(1204), 시스템 메모리(1206) 및 시스템 버스(1208)를 포함한다. 시스템 버스(1208)는 시스템 메모리(1206)(이에 한정되지 않음)를 비롯한 시스템 컴포넌트들을 처리 장치(1204)에 연결시킨다. 처리 장치(1204)는 다양한 상용 프로세서들 중 임의의 프로세서일 수 있다. 듀얼 프로세서 및 기타 멀티프로세서 아키텍처도 역시 처리 장치(1204)로서 이용될 수 있다.An example environment 1200 is shown that implements various aspects of the present disclosure, including a computer 1202, which includes a processing unit 1204, a system memory 1206, and a system bus 1208. do. System bus 1208 couples system components, including but not limited to system memory 1206, to processing unit 1204. Processing unit 1204 may be any of a variety of commercially available processors. Dual processors and other multiprocessor architectures may also be used as processing unit 1204.

시스템 버스(1208)는 메모리 버스, 주변장치 버스, 및 다양한 상용 버스 아키텍처 중 임의의 것을 사용하는 로컬 버스에 추가적으로 상호 연결될 수 있는 몇 가지 유형의 버스 구조 중 임의의 것일 수 있다. 시스템 메모리(1206)는 판독 전용 메모리(ROM)(1210) 및 랜덤 액세스 메모리(RAM)(1212)를 포함한다. 기본 입/출력 시스템(BIOS)은 ROM, EPROM, EEPROM 등의 비휘발성 메모리(1210)에 저장되며, 이 BIOS는 시동 중과 같은 때에 컴퓨터(1202) 내의 구성요소들 간에 정보를 전송하는 일을 돕는 기본적인 루틴을 포함한다. RAM(1212)은 또한 데이터를 캐싱하기 위한 정적 RAM 등의 고속 RAM을 포함할 수 있다.System bus 1208 may be any of several types of bus structures that may further be interconnected to a memory bus, peripheral bus, and local bus using any of a variety of commercial bus architectures. System memory 1206 includes read only memory (ROM) 1210 and random access memory (RAM) 1212. The basic input/output system (BIOS) is stored in non-volatile memory 1210, such as ROM, EPROM, and EEPROM, and is a basic input/output system that helps transfer information between components within the computer 1202, such as during startup. Contains routines. RAM 1212 may also include high-speed RAM, such as static RAM, for caching data.

컴퓨터(1202)는 또한 내장형 하드 디스크 드라이브(HDD)(1214)(예를 들어, EIDE, SATA) -이 내장형 하드 디스크 드라이브(1214)는 또한 적당한 섀시(도시 생략) 내에서 외장형 용도로 구성될 수 있음-, 자기 플로피 디스크 드라이브(FDD)(1216)(예를 들어, 이동식 디스켓(1218)으로부터 판독을 하거나 그에 기록을 하기 위한 것임), 및 광 디스크 드라이브(1220)(예를 들어, CD-ROM 디스크(1222)를 판독하거나 DVD 등의 기타 고용량 광 매체로부터 판독을 하거나 그에 기록을 하기 위한 것임)를 포함한다. 하드 디스크 드라이브(1214), 자기 디스크 드라이브(1216) 및 광 디스크 드라이브(1220)는 각각 하드 디스크 드라이브 인터페이스(1224), 자기 디스크 드라이브 인터페이스(1226) 및 광 드라이브 인터페이스(1228)에 의해 시스템 버스(1208)에 연결될 수 있다. 외장형 드라이브 구현을 위한 인터페이스(1224)는 USB(Universal Serial Bus) 및 IEEE 1394 인터페이스 기술 중 적어도 하나 또는 그 둘 다를 포함한다.Computer 1202 may also include an internal hard disk drive (HDD) 1214 (e.g., EIDE, SATA)—the internal hard disk drive 1214 may also be configured for external use within a suitable chassis (not shown). -, a magnetic floppy disk drive (FDD) 1216 (e.g., for reading from or writing to a removable diskette 1218), and an optical disk drive 1220 (e.g., a CD-ROM for reading the disk 1222 or reading from or writing to other high-capacity optical media such as DVDs). Hard disk drive 1214, magnetic disk drive 1216, and optical disk drive 1220 are connected to system bus 1208 by hard disk drive interface 1224, magnetic disk drive interface 1226, and optical drive interface 1228, respectively. ) can be connected to. The interface 1224 for implementing an external drive includes at least one or both of Universal Serial Bus (USB) and IEEE 1394 interface technologies.

이들 드라이브 및 그와 연관된 컴퓨터 판독가능 매체는 데이터, 데이터 구조, 컴퓨터 실행가능 명령어, 기타 등등의 비휘발성 저장을 제공한다. 컴퓨터(1202)의 경우, 드라이브 및 매체는 임의의 데이터를 적당한 디지털 형식으로 저장하는 것에 대응한다. 상기에서의 컴퓨터 판독가능 매체에 대한 설명이 HDD, 이동식 자기 디스크, 및 CD 또는 DVD 등의 이동식 광 매체를 언급하고 있지만, 당업자라면 집 드라이브(zip drive), 자기 카세트, 플래쉬 메모리 카드, 카트리지, 기타 등등의 컴퓨터에 의해 판독가능한 다른 유형의 매체도 역시 예시적인 운영 환경에서 사용될 수 있으며 또 임의의 이러한 매체가 본 개시의 방법들을 수행하기 위한 컴퓨터 실행가능 명령어를 포함할 수 있다는 것을 잘 알 것이다.These drives and their associated computer-readable media provide non-volatile storage of data, data structures, computer-executable instructions, and the like. For computer 1202, drive and media correspond to storing any data in a suitable digital format. Although the description of computer-readable media above refers to removable optical media such as HDDs, removable magnetic disks, and CDs or DVDs, those skilled in the art will also recognize removable optical media such as zip drives, magnetic cassettes, flash memory cards, cartridges, etc. It will be appreciated that other types of computer-readable media, such as the like, may also be used in the example operating environment and that any such media may contain computer-executable instructions for performing the methods of the present disclosure.

운영 체제(1230), 하나 이상의 애플리케이션 프로그램(1232), 기타 프로그램 모듈(1234) 및 프로그램 데이터(1236)를 비롯한 다수의 프로그램 모듈이 드라이브 및 RAM(1212)에 저장될 수 있다. 운영 체제, 애플리케이션, 모듈 및/또는 데이터의 전부 또는 그 일부분이 또한 RAM(1212)에 캐싱될 수 있다. 본 개시가 여러가지 상업적으로 이용가능한 운영 체제 또는 운영 체제들의 조합에서 구현될 수 있다는 것을 잘 알 것이다.A number of program modules may be stored in drives and RAM 1212, including an operating system 1230, one or more application programs 1232, other program modules 1234, and program data 1236. All or portions of the operating system, applications, modules and/or data may also be cached in RAM 1212. It will be appreciated that the present disclosure may be implemented on various commercially available operating systems or combinations of operating systems.

사용자는 하나 이상의 유선/무선 입력 장치, 예를 들어, 키보드(1238) 및 마우스(1240) 등의 포인팅 장치를 통해 컴퓨터(1202)에 명령 및 정보를 입력할 수 있다. 기타 입력 장치(도시 생략)로는 마이크, IR 리모콘, 조이스틱, 게임 패드, 스타일러스 펜, 터치 스크린, 기타 등등이 있을 수 있다. 이들 및 기타 입력 장치가 종종 시스템 버스(1208)에 연결되어 있는 입력 장치 인터페이스(1242)를 통해 처리 장치(1204)에 연결되지만, 병렬 포트, IEEE 1394 직렬 포트, 게임 포트, USB 포트, IR 인터페이스, 기타 등등의 기타 인터페이스에 의해 연결될 수 있다.A user may enter commands and information into computer 1202 through one or more wired/wireless input devices, such as a keyboard 1238 and a pointing device such as mouse 1240. Other input devices (not shown) may include microphones, IR remote controls, joysticks, game pads, stylus pens, touch screens, etc. These and other input devices are connected to the processing unit 1204 through an input device interface 1242, which is often connected to the system bus 1208, but may also include a parallel port, an IEEE 1394 serial port, a game port, a USB port, an IR interface, It can be connected by other interfaces, etc.

모니터(1244) 또는 다른 유형의 디스플레이 장치도 역시 비디오 어댑터(1246) 등의 인터페이스를 통해 시스템 버스(1208)에 연결된다. 모니터(1244)에 부가하여, 컴퓨터는 일반적으로 스피커, 프린터, 기타 등등의 기타 주변 출력 장치(도시 생략)를 포함한다.A monitor 1244 or other type of display device is also connected to system bus 1208 through an interface, such as a video adapter 1246. In addition to monitor 1244, computers typically include other peripheral output devices (not shown) such as speakers, printers, etc.

컴퓨터(1202)는 유선 및/또는 무선 통신을 통한 원격 컴퓨터(들)(1248) 등의 하나 이상의 원격 컴퓨터로의 논리적 연결을 사용하여 네트워크화된 환경에서 동작할 수 있다. 원격 컴퓨터(들)(1248)는 워크스테이션, 컴퓨팅 디바이스 컴퓨터, 라우터, 퍼스널 컴퓨터, 휴대용 컴퓨터, 마이크로프로세서-기반 오락 기기, 피어 장치 또는 기타 통상의 네트워크 노드일 수 있으며, 일반적으로 컴퓨터(1202)에 대해 기술된 구성요소들 중 다수 또는 그 전부를 포함하지만, 간략함을 위해, 메모리 저장 장치(1250)만이 도시되어 있다. 도시되어 있는 논리적 연결은 근거리 통신망(LAN)(1252) 및/또는 더 큰 네트워크, 예를 들어, 원거리 통신망(WAN)(1254)에의 유선/무선 연결을 포함한다. 이러한 LAN 및 WAN 네트워킹 환경은 사무실 및 회사에서 일반적인 것이며, 인트라넷 등의 전사적 컴퓨터 네트워크(enterprise-wide computer network)를 용이하게 해주며, 이들 모두는 전세계 컴퓨터 네트워크, 예를 들어, 인터넷에 연결될 수 있다.Computer 1202 may operate in a networked environment using logical connections to one or more remote computers, such as remote computer(s) 1248, via wired and/or wireless communications. Remote computer(s) 1248 may be a workstation, computing device computer, router, personal computer, portable computer, microprocessor-based entertainment device, peer device, or other conventional network node, and is generally connected to computer 1202. For simplicity, only memory storage device 1250 is shown, although it includes many or all of the components described. The logical connections depicted include wired/wireless connections to a local area network (LAN) 1252 and/or a larger network, such as a wide area network (WAN) 1254. These LAN and WAN networking environments are common in offices and companies and facilitate enterprise-wide computer networks, such as intranets, all of which can be connected to a worldwide computer network, such as the Internet.

LAN 네트워킹 환경에서 사용될 때, 컴퓨터(1202)는 유선 및/또는 무선 통신 네트워크 인터페이스 또는 어댑터(1256)를 통해 로컬 네트워크(1252)에 연결된다. 어댑터(1256)는 LAN(1252)에의 유선 또는 무선 통신을 용이하게 해줄 수 있으며, 이 LAN(1252)은 또한 무선 어댑터(1256)와 통신하기 위해 그에 설치되어 있는 무선 액세스 포인트를 포함하고 있다. WAN 네트워킹 환경에서 사용될 때, 컴퓨터(1202)는 모뎀(1258)을 포함할 수 있거나, WAN(1254) 상의 통신 컴퓨팅 디바이스에 연결되거나, 또는 인터넷을 통하는 등, WAN(1254)을 통해 통신을 설정하는 기타 수단을 갖는다. 내장형 또는 외장형 및 유선 또는 무선 장치일 수 있는 모뎀(1258)은 직렬 포트 인터페이스(1242)를 통해 시스템 버스(1208)에 연결된다. 네트워크화된 환경에서, 컴퓨터(1202)에 대해 설명된 프로그램 모듈들 또는 그의 일부분이 원격 메모리/저장 장치(1250)에 저장될 수 있다. 도시된 네트워크 연결이 예시적인 것이며 컴퓨터들 사이에 통신 링크를 설정하는 기타 수단이 사용될 수 있다는 것을 잘 알 것이다.When used in a LAN networking environment, computer 1202 is connected to local network 1252 through wired and/or wireless communications network interfaces or adapters 1256. Adapter 1256 may facilitate wired or wireless communication to a local area network (LAN) 1252, which also includes a wireless access point installed thereon for communicating with wireless adapter 1256. When used in a WAN networking environment, the computer 1202 may include a modem 1258 or be connected to a communicating computing device on the WAN 1254 or to establish communications over the WAN 1254, such as over the Internet. Have other means. Modem 1258, which may be internal or external and a wired or wireless device, is coupled to system bus 1208 via serial port interface 1242. In a networked environment, program modules described for computer 1202, or portions thereof, may be stored in remote memory/storage device 1250. It will be appreciated that the network connections shown are exemplary and that other means of establishing a communications link between computers may be used.

컴퓨터(1202)는 무선 통신으로 배치되어 동작하는 임의의 무선 장치 또는 개체, 예를 들어, 프린터, 스캐너, 데스크톱 및/또는 휴대용 컴퓨터, PDA(portable data assistant), 통신 위성, 무선 검출가능 태그와 연관된 임의의 장비 또는 장소, 및 전화와 통신을 하는 동작을 한다. 이것은 적어도 Wi-Fi 및 블루투스 무선 기술을 포함한다. 따라서, 통신은 종래의 네트워크에서와 같이 미리 정의된 구조이거나 단순하게 적어도 2개의 장치 사이의 애드혹 통신(ad hoc communication)일 수 있다.Computer 1202 may be associated with any wireless device or object deployed and operating in wireless communications, such as a printer, scanner, desktop and/or portable computer, portable data assistant (PDA), communications satellite, wirelessly detectable tag. Performs actions to communicate with any device or location and telephone. This includes at least Wi-Fi and Bluetooth wireless technologies. Accordingly, communication may be a predefined structure as in a conventional network or may simply be ad hoc communication between at least two devices.

Wi-Fi(Wireless Fidelity)는 유선 없이도 인터넷 등으로의 연결을 가능하게 해준다. Wi-Fi는 이러한 장치, 예를 들어, 컴퓨터가 실내에서 및 실외에서, 즉 기지국의 통화권 내의 아무 곳에서나 데이터를 전송 및 수신할 수 있게 해주는 셀 전화와 같은 무선 기술이다. Wi-Fi 네트워크는 안전하고 신뢰성 있으며 고속인 무선 연결을 제공하기 위해 IEEE 802.11(a, b, g, 기타)이라고 하는 무선 기술을 사용한다. 컴퓨터를 서로에, 인터넷에 및 유선 네트워크(IEEE 802.3 또는 이더넷을 사용함)에 연결시키기 위해 Wi-Fi가 사용될 수 있다. Wi-Fi 네트워크는 비인가 2.4 및 5GHz 무선 대역에서, 예를 들어, 11Mbps(802.11a) 또는 54 Mbps(802.11b) 데이터 레이트로 동작하거나, 양 대역(듀얼 대역)을 포함하는 제품에서 동작할 수 있다.Wi-Fi (Wireless Fidelity) enables connection to the Internet, etc. without wires. Wi-Fi is a wireless technology, like cell phones, that allows these devices, such as computers, to send and receive data indoors and outdoors, anywhere within the coverage area of a cell tower. Wi-Fi networks use wireless technology called IEEE 802.11 (a, b, g, etc.) to provide secure, reliable, and high-speed wireless connections. Wi-Fi can be used to connect computers to each other, to the Internet, and to wired networks (using IEEE 802.3 or Ethernet). Wi-Fi networks can operate in the unlicensed 2.4 and 5 GHz wireless bands, for example, at data rates of 11 Mbps (802.11a) or 54 Mbps (802.11b), or in products that include both bands (dual band). .

본 개시의 기술 분야에서 통상의 지식을 가진 자는 정보 및 신호들이 임의의 다양한 상이한 기술들 및 기법들을 이용하여 표현될 수 있다는 것을 이해할 것이다. 예를 들어, 위의 설명에서 참조될 수 있는 데이터, 지시들, 명령들, 정보, 신호들, 비트들, 심볼들 및 칩들은 전압들, 전류들, 전자기파들, 자기장들 또는 입자들, 광학장들 또는 입자들, 또는 이들의 임의의 결합에 의해 표현될 수 있다.Those skilled in the art will understand that information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols and chips that may be referenced in the above description include voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields. It can be expressed by particles or particles, or any combination thereof.

본 개시의 기술 분야에서 통상의 지식을 가진 자는 여기에 개시된 실시예들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 프로세서들, 수단들, 회로들 및 알고리즘 단계들이 전자 하드웨어, (편의를 위해, 여기에서 소프트웨어로 지칭되는) 다양한 형태들의 프로그램 또는 설계 코드 또는 이들 모두의 결합에 의해 구현될 수 있다는 것을 이해할 것이다. 하드웨어 및 소프트웨어의 이러한 상호 호환성을 명확하게 설명하기 위해, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들 및 단계들이 이들의 기능과 관련하여 위에서 일반적으로 설명되었다. 이러한 기능이 하드웨어 또는 소프트웨어로서 구현되는지 여부는 특정한 애플리케이션 및 전체 시스템에 대하여 부과되는 설계 제약들에 따라 좌우된다. 본 개시의 기술 분야에서 통상의 지식을 가진 자는 각각의 특정한 애플리케이션에 대하여 다양한 방식들로 설명된 기능을 구현할 수 있으나, 이러한 구현 결정들은 본 개시의 범위를 벗어나는 것으로 해석되어서는 안 될 것이다.Those skilled in the art will understand that the various illustrative logical blocks, modules, processors, means, circuits and algorithm steps described in connection with the embodiments disclosed herein may be used in electronic hardware, (for convenience) It will be understood that it may be implemented by various forms of program or design code (referred to herein as software) or a combination of both. To clearly illustrate this interoperability of hardware and software, various illustrative components, blocks, modules, circuits and steps have been described above generally with respect to their functionality. Whether this functionality is implemented as hardware or software depends on the specific application and design constraints imposed on the overall system. A person skilled in the art of this disclosure may implement the described functionality in various ways for each specific application, but such implementation decisions should not be construed as departing from the scope of this disclosure.

여기서 제시된 다양한 실시예들은 방법, 장치, 또는 표준 프로그래밍 및/또는 엔지니어링 기술을 사용한 제조 물품(article)으로 구현될 수 있다. 용어 제조 물품은 임의의 컴퓨터-판독가능 저장장치로부터 액세스 가능한 컴퓨터 프로그램, 캐리어, 또는 매체(media)를 포함한다. 예를 들어, 컴퓨터-판독가능 저장매체는 자기 저장 장치(예를 들면, 하드 디스크, 플로피 디스크, 자기 스트립, 등), 광학 디스크(예를 들면, CD, DVD, 등), 스마트 카드, 및 플래쉬 메모리 장치(예를 들면, EEPROM, 카드, 스틱, 키 드라이브, 등)를 포함하지만, 이들로 제한되는 것은 아니다. 또한, 여기서 제시되는 다양한 저장 매체는 정보를 저장하기 위한 하나 이상의 장치 및/또는 다른 기계-판독가능한 매체를 포함한다.The various embodiments presented herein may be implemented as a method, apparatus, or article of manufacture using standard programming and/or engineering techniques. The term article of manufacture includes a computer program, carrier, or media accessible from any computer-readable storage device. For example, computer-readable storage media include magnetic storage devices (e.g., hard disks, floppy disks, magnetic strips, etc.), optical disks (e.g., CDs, DVDs, etc.), smart cards, and flash. Includes, but is not limited to, memory devices (e.g., EEPROM, cards, sticks, key drives, etc.). Additionally, various storage media presented herein include one or more devices and/or other machine-readable media for storing information.

제시된 프로세스들에 있는 단계들의 특정한 순서 또는 계층 구조는 예시적인 접근들의 일례임을 이해하도록 한다. 설계 우선순위들에 기반하여, 본 개시의 범위 내에서 프로세스들에 있는 단계들의 특정한 순서 또는 계층 구조가 재배열될 수 있다는 것을 이해하도록 한다. 첨부된 방법 청구항들은 샘플 순서로 다양한 단계들의 엘리먼트들을 제공하지만 제시된 특정한 순서 또는 계층 구조에 한정되는 것을 의미하지는 않는다.It is to be understood that the specific order or hierarchy of steps in the processes presented is an example of illustrative approaches. It is to be understood that the specific order or hierarchy of steps in processes may be rearranged within the scope of the present disclosure, based on design priorities. The appended method claims present elements of the various steps in a sample order but are not meant to be limited to the particular order or hierarchy presented.

제시된 실시예들에 대한 설명은 임의의 본 개시의 기술 분야에서 통상의 지식을 가진 자가 본 개시를 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 개시의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이며, 여기에 정의된 일반적인 원리들은 본 개시의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 개시는 여기에 제시된 실시예들로 한정되는 것이 아니라, 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다.The description of the presented embodiments is provided to enable any person skilled in the art to make or use the present disclosure. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments without departing from the scope of the disclosure. Thus, the present disclosure is not limited to the embodiments presented herein but is to be interpreted in the broadest scope consistent with the principles and novel features presented herein.

Claims (15)

컴퓨팅 장치에 의해 수행되는, 사용자 맞춤형 학습 컨텐츠를 제공하기 위한 방법으로서,
사용자 장치로부터 사용자 학습을 위한 문제 출제 요청을 수신하는 단계;
상기 문제 출제 요청에 대한 응답으로, 사용자의 개인 정보, 상기 사용자에 의해 설정된 문제 출제 범위 및 상기 사용자의 풀이 활동 정보에 기반하여 복수의 문제들 중 상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 단계; 및
상기 결정된 적어도 하나의 문제를 상기 사용자 장치로 제공하는 단계를 포함하고,
상기 풀이 활동 정보는,
상기 적어도 하나의 문제를 푸는 동안의 상기 사용자의 시선과 관련된 시선 패턴 정보 - 상기 시선 패턴 정보는 시선 정지 횟수 및 시선 역행 횟수를 포함함 -및 상기 사용자의 행동과 관련된 행동 패턴 정보 - 상기 행동 패턴 정보는 얼굴의 좌우 움직임 폭, 얼굴의 상하 움직임 폭, 얼굴 각도 및 팔 움직임을 포함함 - 를 포함하고,
상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 단계는,
사전 저장된 문제별 상세 이력 정보에 기반하여 상기 사용자가 풀이한 적어도 하나의 문제에 대한 태그 정보 및 풀이 활동 정보를 수집하는 단계;
상기 수집된 태그 정보 및 상기 수집된 풀이 활동 정보에 기반하여 상기 사용자의 태그 정보별 문제 풀이 등급을 결정하는 단계;
복수의 사용자들 각각에 대하여 사전 설정된 태그 정보별 문제 풀이 등급에 기반하여, 상기 결정된 태그 정보별 문제 풀이 등급과 동일한 등급을 갖는 복수의 타 사용자들을 결정하는 단계; 및
결정된 복수의 타 사용자에게 제공된 학습 컨텐츠에 기반하여 상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 단계 - 상기 적어도 하나의 문제를 결정하는 단계는 상기 타 사용자들에게 제공된 복수의 문제들을 조합하여 상기 하나의 문제를 결정하는 것을 포함함 - 를 포함하는,
학습 컨텐츠 제공 방법.
A method for providing user-customized learning content performed by a computing device, comprising:
Receiving a request to submit questions for user learning from a user device;
In response to the problem submission request, determining at least one problem that the user can solve among a plurality of problems based on the user's personal information, the problem problem range set by the user, and the user's solving activity information. steps; and
Providing the determined at least one problem to the user device,
The above solving activity information is,
Gaze pattern information related to the user's gaze while solving the at least one problem - the gaze pattern information includes the number of gaze stops and gaze reversals - and behavior pattern information related to the user's behavior - the behavior pattern information includes the left and right movement width of the face, the up and down movement width of the face, the face angle, and the arm movement,
The step of determining at least one problem that the user can solve is:
collecting tag information and solving activity information for at least one problem solved by the user based on pre-stored detailed history information for each problem;
determining a problem solving grade for each tag information of the user based on the collected tag information and the collected solving activity information;
Based on the problem solving level for each tag information preset for each of the plurality of users, determining a plurality of other users having the same level as the determined problem solving level for each tag information; and
Determining at least one problem that can be solved by the user based on the determined learning content provided to a plurality of other users - Determining the at least one problem includes combining a plurality of problems provided to the other users Including determining said one problem - comprising,
How to provide learning content.
제1항에 있어서, 상기 사용자의 개인 정보는,
상기 사용자의 연령, 성별, 직업, 학업 능력 또는 관심 분야 중 적어도 하나를 포함하는,
학습 컨텐츠 제공 방법.
The method of claim 1, wherein the user's personal information is:
Containing at least one of the user's age, gender, occupation, academic ability, or interests,
How to provide learning content.
삭제delete 삭제delete 제1항에 있어서, 상기 태그 정보는,
각 문제에 대한 학습 주제, 상기 각 문제의 문제 난이도, 상기 각 문제를 구성하는 글자의 수, 상기 각 문제에 포함된 전문 용어의 수, 상기 각 문제를 구성하는 문장들의 평균 길이, 또는 상기 각 문제를 구성하는 단문 및 복문의 비율 중 적어도 하나를 포함하는,
학습 컨텐츠 제공 방법.
The method of claim 1, wherein the tag information is:
Learning topic for each problem, problem difficulty of each problem, number of letters constituting each problem, number of technical terms included in each problem, average length of sentences constituting each problem, or each problem Containing at least one of the ratio of simple sentences and complex sentences that make up,
How to provide learning content.
제1항에 있어서, 상기 요청은,
상기 사용자에 의해서 설정된 문제 출제 범위에 대한 정보를 포함하고,
상기 문제 출제 범위는,
상기 사용자에 의해서 설정된, 적어도 하나의 학습 주제, 문제 난이도, 문제 글자 수, 전문 용어의 수, 평균 문장 길이, 단문 및 복문 비율 또는 문제 개수 중 적어도 하나를 포함하는,
학습 컨텐츠 제공 방법.
The method of claim 1, wherein the request is:
Contains information about the scope of the problem set by the user,
The scope of the above question is,
Set by the user, including at least one of at least one learning topic, problem difficulty, number of problem letters, number of technical terms, average sentence length, ratio of simple sentences and complex sentences, or number of problems,
How to provide learning content.
삭제delete 삭제delete 삭제delete 제1항에 있어서, 상기 풀이 활동 정보는,
상기 복수의 사용자들이 상기 복수의 문제들 각각을 풀이하는데 소요된 시간 및 상기 복수의 문제들 각각에 대한 상기 복수의 사용자들의 정답률 중 적어도 하나를 포함하는,
학습 컨텐츠 제공 방법.
The method of claim 1, wherein the solving activity information is:
Containing at least one of the time taken by the plurality of users to solve each of the plurality of problems and the correct answer rate of the plurality of users for each of the plurality of problems,
How to provide learning content.
제1항에 있어서, 상기 사용자의 태그 정보별 문제 풀이 등급을 결정하는 단계는,
상기 사용자가 풀이한 적어도 하나의 문제를 태그 정보별로 구분하는 단계; 및
상기 태그 정보별로 구분된 적어도 하나의 문제에 대응하는 풀이 활동 정보에 기반하여 태그 정보별 문제 풀이 등급을 추론하도록 학습된 적어도 하나의 등급 추론 모델을 이용하여 상기 태그 정보별 문제 풀이 등급을 결정하는 단계를 포함하는,
학습 컨텐츠 제공 방법.
The method of claim 1, wherein the step of determining the problem solving grade according to the user's tag information comprises:
Classifying at least one problem solved by the user by tag information; and
Determining a problem solving grade for each tag information using at least one grade inference model learned to infer a problem solving grade for each tag information based on solving activity information corresponding to at least one problem classified for each tag information. Including,
How to provide learning content.
삭제delete 삭제delete 컴퓨터 판독가능 저장 매체 저장된 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램은 하나 이상의 프로세서에서 실행되는 경우, 사용자 맞춤형 학습 컨텐츠를 제공하기 위한 이하의 동작들을 수행하도록 하며, 상기 동작들은:
사용자 장치로부터 사용자 학습을 위한 문제 출제 요청을 수신하는 동작;
상기 문제 출제 요청에 대한 응답으로, 사용자의 개인 정보, 상기 사용자에 의해 설정된 문제 출제 범위 및 상기 사용자의 풀이 활동 정보에 기반하여 복수의 문제들 중 상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 동작; 및
상기 결정된 적어도 하나의 문제를 상기 사용자 장치로 제공하는 동작을 포함하고,
상기 풀이 활동 정보는,
상기 적어도 하나의 문제를 푸는 동안의 상기 사용자의 시선과 관련된 시선 패턴 정보 - 상기 시선 패턴 정보는 시선 정지 횟수 및 시선 역행 횟수를 포함함 - 및 상기 사용자의 행동과 관련된 행동 패턴 정보 - 상기 행동 패턴 정보는 얼굴의 좌우 움직임 폭, 얼굴의 상하 움직임 폭, 얼굴 각도 및 팔 움직임을 포함함 - 를 포함하고,
상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 동작은,
사전 저장된 문제별 상세 이력 정보에 기반하여 상기 사용자가 풀이한 적어도 하나의 문제에 대한 태그 정보 및 풀이 활동 정보를 수집하는 동작;
상기 수집된 태그 정보 및 상기 수집된 풀이 활동 정보에 기반하여 상기 사용자의 태그 정보별 문제 풀이 등급을 결정하는 동작;
복수의 사용자들 각각에 대하여 사전 설정된 태그 정보별 문제 풀이 등급에 기반하여, 상기 결정된 태그 정보별 문제 풀이 등급과 동일한 등급을 갖는 복수의 타 사용자들을 결정하는 동작; 및
결정된 상기 타 사용자들에게 제공된 학습 컨텐츠에 기반하여 상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 동작 - 상기 적어도 하나의 문제를 결정하는 동작은 상기 타 사용자들에게 제공된 복수의 문제들을 조합하여 상기 하나의 문제를 결정하는 것을 포함함 - 을 포함하는,
컴퓨터 판독가능 저장매체에 저장된 컴퓨터 프로그램.
A computer program stored in a computer-readable storage medium, wherein the computer program, when executed on one or more processors, performs the following operations to provide customized learning content, the operations being:
An operation of receiving a request to submit a problem for user learning from a user device;
In response to the problem submission request, determining at least one problem that the user can solve among a plurality of problems based on the user's personal information, the problem problem range set by the user, and the user's solving activity information. action; and
An operation of providing the determined at least one problem to the user device,
The above solving activity information is,
Gaze pattern information related to the user's gaze while solving the at least one problem - the gaze pattern information includes the number of gaze stops and gaze reversals - and behavior pattern information related to the user's behavior - the behavior pattern information includes the left and right movement width of the face, the up and down movement width of the face, the face angle, and the arm movement,
The operation of determining at least one problem that the user can solve is:
collecting tag information and solving activity information for at least one problem solved by the user based on pre-stored detailed history information for each problem;
determining a problem solving grade for each tag information of the user based on the collected tag information and the collected solving activity information;
An operation of determining a plurality of other users having the same level as the determined problem-solving level according to tag information, based on the problem-solving level according to tag information preset for each of the plurality of users; and
An operation of determining at least one problem that can be solved by the user based on the determined learning content provided to the other users - The operation of determining the at least one problem is performed by combining a plurality of problems provided to the other users. Including determining said one problem - comprising,
A computer program stored on a computer-readable storage medium.
사용자 맞춤형 학습 컨텐츠를 제공하기 위한 컴퓨팅 장치로서,
적어도 하나의 프로세서; 및
메모리를 포함하며,
상기 적어도 하나의 프로세서는:
사용자 장치로부터 사용자 학습을 위한 문제 출제 요청을 수신하고,
상기 문제 출제 요청에 대한 응답으로, 사용자의 개인 정보, 상기 사용자에 의해 설정된 문제 출제 범위 및 상기 사용자의 풀이 활동 정보에 기반하여 복수의 문제들 중 상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하고,
상기 결정된 적어도 하나의 문제를 상기 사용자 장치로 제공하도록 구성되고,
상기 풀이 활동 정보는,
상기 적어도 하나의 문제를 푸는 동안의 상기 사용자의 시선과 관련된 시선 패턴 정보 - 상기 시선 패턴 정보는 시선 정지 횟수 및 시선 역행 횟수를 포함함 - 및 상기 사용자의 행동과 관련된 행동 패턴 정보 - 상기 행동 패턴 정보는 얼굴의 좌우 움직임 폭, 얼굴의 상하 움직임 폭, 얼굴 각도 및 팔 움직임을 포함함 - 를 포함하고,
상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정하는 것은,
사전 저장된 문제별 상세 이력 정보에 기반하여 상기 사용자가 풀이한 적어도 하나의 문제에 대한 태그 정보 및 풀이 활동 정보를 수집하고;
상기 수집된 태그 정보 및 상기 수집된 풀이 활동 정보에 기반하여 상기 사용자의 태그 정보별 문제 풀이 등급을 결정하고;
복수의 사용자들 각각에 대하여 사전 설정된 태그 정보별 문제 풀이 등급에 기반하여, 상기 결정된 태그 정보별 문제 풀이 등급과 동일한 등급을 갖는 복수의 타 사용자들을 결정하고; 그리고,
결정된 상기 타 사용자들에게 제공된 학습 컨텐츠에 기반하여 상기 사용자가 풀이할 수 있는 적어도 하나의 문제를 결정 - 상기 적어도 하나의 문제를 결정하는 것은 상기 타 사용자들에게 제공된 복수의 문제들을 조합하여 상기 하나의 문제를 결정하는 것을 포함함 - 하는 것을 포함하는,
컴퓨팅 장치.
A computing device for providing user-customized learning content,
at least one processor; and
Contains memory,
The at least one processor:
Receive a request to submit questions for user learning from the user device,
In response to the problem submission request, determining at least one problem that the user can solve among a plurality of problems based on the user's personal information, the problem problem range set by the user, and the user's solving activity information. do,
configured to provide the determined at least one problem to the user device,
The above solving activity information is,
Gaze pattern information related to the user's gaze while solving the at least one problem - the gaze pattern information includes the number of gaze stops and gaze reversals - and behavior pattern information related to the user's behavior - the behavior pattern information includes the left and right movement width of the face, the up and down movement width of the face, the face angle, and the arm movement,
Determining at least one problem that the user can solve includes:
collect tag information and solution activity information for at least one problem solved by the user based on pre-stored detailed history information for each problem;
determining a problem solving grade for each tag information of the user based on the collected tag information and the collected solving activity information;
Based on the problem-solving level for each tag information preset for each of the plurality of users, determining a plurality of other users having the same level as the determined problem-solving level for each tag information; and,
Determine at least one problem that can be solved by the user based on the determined learning content provided to the other users - Determining the at least one problem is performed by combining a plurality of problems provided to the other users to determine the one problem. involving deciding a problem - involving doing;
Computing device.
KR1020220172833A 2022-12-12 2022-12-12 Method and apparatus for providing user customized study contents KR102637603B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220172833A KR102637603B1 (en) 2022-12-12 2022-12-12 Method and apparatus for providing user customized study contents

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220172833A KR102637603B1 (en) 2022-12-12 2022-12-12 Method and apparatus for providing user customized study contents

Publications (1)

Publication Number Publication Date
KR102637603B1 true KR102637603B1 (en) 2024-02-16

Family

ID=90056044

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220172833A KR102637603B1 (en) 2022-12-12 2022-12-12 Method and apparatus for providing user customized study contents

Country Status (1)

Country Link
KR (1) KR102637603B1 (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150065354A (en) * 2013-12-05 2015-06-15 한국전자통신연구원 Apparatus and method for intelligent learning materials decision
KR20190105252A (en) * 2018-03-05 2019-09-17 (주)뤼이드 Method and apparatus for providing study contents using ai tutor
KR102109775B1 (en) * 2019-08-23 2020-05-12 유스타온 주식회사 Method and system for analyzing and extracting questions for english study
KR20200083081A (en) * 2018-12-28 2020-07-08 주식회사 엠티에스컴퍼니 System and Method for providing learning service
KR102206599B1 (en) 2018-12-12 2021-01-22 스톰스터디 주식회사 A method and program for providing personalied education curriculum for each student's learning ability
KR102283711B1 (en) * 2020-09-16 2021-07-30 (주)뤼이드 Learning content recommendation device, system, and operation method for determining recommendation problem by reflecting user's learning effect
KR20210152976A (en) * 2021-02-02 2021-12-16 (주)뤼이드 Learning contents recommendation system based on artificial intelligence learning and operation method thereof

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150065354A (en) * 2013-12-05 2015-06-15 한국전자통신연구원 Apparatus and method for intelligent learning materials decision
KR20190105252A (en) * 2018-03-05 2019-09-17 (주)뤼이드 Method and apparatus for providing study contents using ai tutor
KR102206599B1 (en) 2018-12-12 2021-01-22 스톰스터디 주식회사 A method and program for providing personalied education curriculum for each student's learning ability
KR20200083081A (en) * 2018-12-28 2020-07-08 주식회사 엠티에스컴퍼니 System and Method for providing learning service
KR102109775B1 (en) * 2019-08-23 2020-05-12 유스타온 주식회사 Method and system for analyzing and extracting questions for english study
KR102283711B1 (en) * 2020-09-16 2021-07-30 (주)뤼이드 Learning content recommendation device, system, and operation method for determining recommendation problem by reflecting user's learning effect
KR20210152976A (en) * 2021-02-02 2021-12-16 (주)뤼이드 Learning contents recommendation system based on artificial intelligence learning and operation method thereof

Similar Documents

Publication Publication Date Title
Isvoranu et al. Network psychometrics with R: A guide for behavioral and social scientists
CN105493032A (en) Cross-device user interface selection
JP6986978B2 (en) Information processing equipment, information processing methods, and information processing programs
KR102008169B1 (en) Computer program stored on computer-readable medium, method and server for responding to a customer inquiry
US11842204B2 (en) Automated generation of early warning predictive insights about users
CN107896510A (en) The quality business content mixed in social networks with the model of friend
US20220415203A1 (en) Interface to natural language generator for generation of knowledge assessment items
WO2023022823A1 (en) Automated generation of predictive insights classifying user activity
KR102098003B1 (en) Method, apparatus and computer-readable medium for operating chatbot
AU2023203892A9 (en) Natural solution language
KR20200041199A (en) Method, apparatus and computer-readable medium for operating chatbot
KR102637603B1 (en) Method and apparatus for providing user customized study contents
Iparraguirre-Villanueva et al. Comparison of predictive machine learning models to predict the level of adaptability of students in online education
Qu et al. Construction of the EFL mobile learning model in the hybrid distributed terminal
Santamarıa-Bonfil et al. A learning ecosystem for linemen training based on big data components and learning analytics
CN115130430A (en) Test paper generation method and device, storage medium and computer equipment
KR102669800B1 (en) Method and apparatus for providing step by step in solving mathematical problem
Saidani et al. Student academic success prediction in multimedia-supported virtual learning system using ensemble learning approach
Yan Analysis and Simulation of Multimedia English Auxiliary Handle Based on Decision Tree Algorithm
US20220383341A1 (en) Entity health evaluation microservice for a product
KR102508200B1 (en) Artificial intelligence learning data collection method for improving recognition rate using eraser function and candidate list
KR102568554B1 (en) Method and apparatus for evaluating cognitive ability of user based on game contents
Perkash et al. Feature optimization and machine learning for predicting students’ academic performance in higher education institutions
KR20240039991A (en) Method for artificial intelligence based academy evaluation
Bahl et al. Predicting the Size of a Family Based upon the Demographic Status of that Family

Legal Events

Date Code Title Description
GRNT Written decision to grant