KR102269606B1 - Method, apparatus and computer program for analyzing new contents for solving cold start - Google Patents

Method, apparatus and computer program for analyzing new contents for solving cold start Download PDF

Info

Publication number
KR102269606B1
KR102269606B1 KR1020200063446A KR20200063446A KR102269606B1 KR 102269606 B1 KR102269606 B1 KR 102269606B1 KR 1020200063446 A KR1020200063446 A KR 1020200063446A KR 20200063446 A KR20200063446 A KR 20200063446A KR 102269606 B1 KR102269606 B1 KR 102269606B1
Authority
KR
South Korea
Prior art keywords
vector
framework
metadata
modeling
new
Prior art date
Application number
KR1020200063446A
Other languages
Korean (ko)
Other versions
KR20200084816A (en
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 KR1020200063446A priority Critical patent/KR102269606B1/en
Publication of KR20200084816A publication Critical patent/KR20200084816A/en
Application granted granted Critical
Publication of KR102269606B1 publication Critical patent/KR102269606B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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

Landscapes

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

Abstract

본 발명은 신규 학습 콘텐츠의 모델링 벡터 생성 방법, 장치 및 컴퓨터 프로그램에 관한 것이다. 본 발명은 신규 문제의 모델링 벡터를 생성하는 방법에 있어서, 임의의 문제에 대하여, 상기 문제의 특성을 나타내는 하나 이상의 문제 특성 정보를 각각 벡터화하는 a단계, 벡터화된 문제 특성 정보를 결합하여 문제 메타데이터를 생성하는 b단계, 하나 이상의 문제 메타데이터를 데이터 분석 프레임워크에 적용하여 상기 데이터 분석 프레임워크를 학습시키는 c단계, 상기 a 내지 b 단계를 통해 상기 신규 문제에 대한 신규문제 메타데이터를 생성하고, 상기 신규문제 메타데이터를 상기 학습된 데이터 분석 프레임워크에 적용하여 상기 신규 문제의 모델링 벡터를 생성하는 d 단계를 포함하는 것을 일 특징으로 한다. 본 발명에 의하면, 문제 그 자체만으로도 문제가 어떤 특성을 가지고 있는지를 모델링할 수 있어, 사용자의 신규 문제에 대한 풀이 결과를 수집하지 않고도 신규 문제에 대한 분석 및 활용이 가능하다. The present invention relates to a method, apparatus and computer program for generating a modeling vector of new learning content. The present invention provides a method of generating a modeling vector of a new problem, for any problem, step a of vectorizing one or more problem characteristic information representing the characteristics of the problem, respectively, combining the vectorized problem characteristic information to obtain problem metadata step b of creating a, step c of learning the data analysis framework by applying one or more problem metadata to the data analysis framework, generating new problem metadata for the new problem through steps a to b, and a step d of generating a modeling vector of the new problem by applying the new problem metadata to the learned data analysis framework. According to the present invention, it is possible to model the characteristics of the problem by itself, so that it is possible to analyze and utilize the new problem without collecting the user's solution result for the new problem.

Description

콜드 스타트를 해결하기 위한 신규 컨텐츠 분석 분석 방법, 장치 및 컴퓨터 프로그램 {METHOD, APPARATUS AND COMPUTER PROGRAM FOR ANALYZING NEW CONTENTS FOR SOLVING COLD START} NEW CONTENT ANALYSIS ANALYSIS METHOD, DEVICE AND COMPUTER PROGRAM FOR ANALYZING NEW CONTENTS FOR SOLVING COLD START

본 발명은 신규 학습 콘텐츠 분석 방법, 장치 및 컴퓨터 프로그램에 관한 것으로, 보다 구체적으로 풀이 결과 데이터가 없어 분석이 어려운 신규 문제의 경우 그 자체로 특징을 분석할 수 있도록 하는 기계학습 모델링을 위한 신규 학습 콘텐츠 분석 방법, 장치 및 컴퓨터 프로그램에 관한 것이다. The present invention relates to a new learning content analysis method, apparatus, and computer program, and more specifically, new learning content for machine learning modeling that enables the analysis of features by itself in the case of a new problem that is difficult to analyze because there is no solution result data It relates to analytical methods, apparatus and computer programs.

최근 들어, 문제 풀이 결과를 학습하여 문제의 특성 및 사용자의 특성을 파악하여 제공하거나, 이를 바탕으로 개인 맞춤형 콘텐츠가 제공하는 서비스가 증가하는 추세이다. In recent years, there is an increasing trend in the number of services provided by learning problem-solving results to identify and provide problem characteristics and user characteristics, or based on this, personalized content.

예를 들어, 일본등록특허 제4447411호(발명의 명칭: 학습자 습득 특성 분석 시스템, 방법 및 프로그램, 공개일: 2006.03.16.)의 경우, 각 학습자에 대해 득점이나 편차치, 소속 타입에 맞추어 자동 선택된 교재 등의 결과 정보를 제공하고, 각 학습자가 자신의 습득 경향과 각 학습자에게 가까운 소속 타입의 습득 경향이나 항목의 실수 특성을 알 수 있도록 한다. For example, in the case of Japanese Patent Registration No. 4447411 (Title of Invention: Learner Acquisition Characteristics Analysis System, Method and Program, Publication Date: March 16, 2006), automatically selected according to the score or deviation value and affiliation type for each learner It provides result information such as textbooks, and allows each learner to know their own learning tendency and the learning tendency of the type of affiliation close to each learner or the characteristics of mistakes in items.

한국등록특허 제10-1773065호(발명의 명칭: 개인 맞춤형 교육 컨텐츠를 제공하는 방법, 장치 및 컴퓨터 프로그램)의 경우, 복수의 사용자에 대한 하나 이상의 문제 풀이 결과 데이터를 수집하여, 문제 사이의 유사도를 계산하고 계산 결과를 문제에 인덱싱한다. In the case of Korean Patent Registration No. 10-1773065 (title of invention: method, device and computer program for providing personalized educational content), one or more problem solving result data for a plurality of users is collected to determine the degree of similarity between problems Calculate and index the calculation results into the problem.

즉, 종래의 머신러닝을 적용한 학습 데이터의 분석은 각 문제에 대한 사용자의 문제 풀이 결과를 바탕으로 한다. 따라서 신규 유입된 사용자나 문제의 경우, 해당 사용자나 문제에 대한 데이터가 축적되기 전에는 분석 결과를 제공할 수 없으며, 그 특성이 분석된 문제 풀(pool)에 넣어 사용하는 것도 불가능하다. 그러나 사용자의 문제 풀이 결과를 수집하는 데는 적지 않은 시간이 소요된다는 점에서, 신규 문제를 모델링할 수 있는 새로운 방법이 요구된다. That is, the analysis of learning data to which the conventional machine learning is applied is based on the user's problem solving results for each problem. Therefore, in the case of a newly introduced user or problem, analysis results cannot be provided before data on the user or problem is accumulated, and it is also impossible to put the characteristics into the analyzed problem pool. However, since it takes a considerable amount of time to collect the user's problem solving results, a new method for modeling a new problem is required.

본 발명은 문제 그 자체만으로도 문제가 어떤 특성을 가지고 있는지를 모델링 함으로써, 신규 문제에 대한 즉각적인 활용을 가능하게 하는 것을 일 목적으로 한다.An object of the present invention is to enable immediate utilization of a new problem by modeling the characteristics of the problem by itself.

본 발명은 문제의 내용을 분석함에 있어서 문제에 포함된 각 단어들이 컨텍스트 내에서 갖는 함의를 문제 모델링에 반영하는 것을 다른 목적으로 한다. Another object of the present invention is to reflect the meaning of each word included in the problem in the context in problem modeling in analyzing the content of the problem.

이러한 목적을 달성하기 위한 본 발명은 신규 문제의 모델링 벡터를 생성하는 방법에 있어서, 임의의 문제에 대하여, 상기 문제의 특성을 나타내는 하나 이상의 문제 특성 정보를 각각 벡터화하는 a단계, 벡터화된 문제 특성 정보를 결합하여 문제 메타데이터를 생성하는 b단계, 하나 이상의 문제 메타데이터를 데이터 분석 프레임워크에 적용하여 상기 데이터 분석 프레임워크를 학습시키는 c단계, 상기 a 내지 b 단계를 통해 상기 신규 문제에 대한 신규문제 메타데이터를 생성하고, 상기 신규문제 메타데이터를 상기 학습된 데이터 분석 프레임워크에 적용하여 상기 신규 문제의 모델링 벡터를 생성하는 d 단계를 포함하는 것을 일 특징으로 한다. The present invention for achieving this object is a method of generating a modeling vector of a new problem, for any problem, step a of vectorizing one or more problem characteristic information representing the characteristics of the problem, vectorized problem characteristic information Step b to create problem metadata by combining It is characterized in that it comprises a step d of generating a modeling vector of the new problem by generating metadata and applying the new problem metadata to the learned data analysis framework.

전술한 바와 같은 본 발명에 의하면, 문제 그 자체만으로도 문제가 어떤 특성을 가지고 있는지를 모델링할 수 있어, 사용자의 신규 문제에 대한 풀이 결과를 수집하지 않고도 신규 문제에 대한 분석 및 활용이 가능하다. According to the present invention as described above, it is possible to model the characteristics of the problem by itself, so that it is possible to analyze and utilize the new problem without collecting the user's solution result for the new problem.

또한, 본 발명에 의하면 문제의 내용을 분석함에 있어서 문제에 포함된 각 단어들이 컨텍스트 내에서 갖는 함의를 문제 모델링에 반영할 수 있다. In addition, according to the present invention, in analyzing the content of the problem, the meaning of each word included in the problem in the context can be reflected in problem modeling.

도 1은 본 발명의 일 실시 예에 따른 신규 문제 모델링 벡터 생성 방법을 도시한 순서도,
도 2는 본 발명의 일 실시 예에 따른 문제 내용의 벡터화 방법을 설명하기 위한 도면,
도 3은 본 발명의 일 실시 예에 따른 풀이 결과 데이터를 이용한 프레임워크 학습 방법을 설명하기 위한 도면,
도 4는 본 발명의 일 실시 예에 따른 프레임워크 학습 방법을 설명하기 위한 도면이다.
1 is a flowchart illustrating a method for generating a new problem modeling vector according to an embodiment of the present invention;
2 is a view for explaining a vectorization method of problem content according to an embodiment of the present invention;
3 is a view for explaining a framework learning method using solution result data according to an embodiment of the present invention;
4 is a diagram for explaining a framework learning method according to an embodiment of the present invention.

전술한 목적, 특징 및 장점은 첨부된 도면을 참조하여 상세하게 후술되며, 이에 따라 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 상세한 설명을 생략한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시 예를 상세히 설명하기로 한다. 도면에서 동일한 참조부호는 동일 또는 유사한 구성요소를 가리키는 것으로 사용되며, 명세서 및 특허청구의 범위에 기재된 모든 조합은 임의의 방식으로 조합될 수 있다. 그리고 다른 식으로 규정하지 않는 한, 단수에 대한 언급은 하나 이상을 포함할 수 있고, 단수 표현에 대한 언급은 또한 복수 표현을 포함할 수 있음이 이해되어야 한다. The above-described objects, features and advantages will be described below in detail with reference to the accompanying drawings, and accordingly, those skilled in the art to which the present invention pertains will be able to easily implement the technical idea of the present invention. In describing the present invention, if it is determined that a detailed description of a known technology related to the present invention may unnecessarily obscure the gist of the present invention, the detailed description will be omitted. Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings. In the drawings, the same reference numerals are used to refer to the same or similar elements, and all combinations described in the specification and claims may be combined in any manner. And unless otherwise specified, it is to be understood that references to the singular may include one or more, and references to the singular may also include the plural.

종래에는 컨텐츠와 사용자를 분석하기 위해 해당 과목의 개념들을 전문가에 의해 수작업으로 정의하고 해당 과목에 대한 각 문제가 어떤 개념을 포함하고 있는지 전문가가 개별적으로 판단하여 태깅하는 방식을 따랐다. 이후 각 사용자가 특정 개념에 대해 태깅된 문제들을 풀어본 결과 정보를 토대로 학습자의 실력을 분석하는 것이다. 그러나 이와 같은 방법은 태그 정보가 사람의 주관에 따라 정해지는 문제점이 있었다. 사람마다 난이도를 평가하는 기준이 상이하기 때문에 결과 데이터에 대한 신뢰도가 높지 않았다. Conventionally, in order to analyze content and users, the concepts of the subject are manually defined by experts, and the experts individually judge and tag the concepts included in each problem for the subject. After that, each user analyzes the learner's ability based on the result of solving the tagged problems for a specific concept. However, this method has a problem in that the tag information is determined according to the subjectivity of the person. The reliability of the result data was not high because the criteria for evaluating the difficulty level were different for each person.

최근 들어 인공신경망을 이용한 기계학습이 여러 분야에 활용되면서, 머신 러닝 프레임워크를 이용하여 데이터 처리 과정에 사람의 개입을 배제하려는 노력이 확산되고 있다. 즉, 사용자 문제 풀이 결과 로그를 수집하고, 사용자와 문제로 구성된 다차원 공간을 구성하고, 사용자가 문제를 맞았는지 틀렸는지를 기준으로 다차원 공간에 값을 부여하여 각각의 사용자 및 문제에 대한 벡터를 계산하는 방식으로 사용자 및/또는 문제를 모델링하는 것이다. Recently, as machine learning using artificial neural networks has been used in various fields, efforts to exclude human intervention in data processing using machine learning frameworks are spreading. In other words, it collects the log of user problem solving results, constructs a multidimensional space composed of users and problems, and calculates vectors for each user and problem by assigning values to the multidimensional space based on whether the user got the problem right or wrong. to model users and/or problems in a way that

이렇게 사용자 또는 문제에 대한 특성에 대응되는 다차원 공간상의 한 점을 부여하는 것을 임베딩(embedding)한다 또는 벡터화한다고 명명할 수 있다. 또한, 이렇게 임의의 객체에 대응하여 부여된 다차원 공간상의 한 점을 모델링 벡터, 벡터화된 객체, 객체 벡터라고 부를 수 있다. 즉, 임베딩하고자 하는 객체가 문제라면 문제 특성(feature)를 나타내는 다차원 공간상의 한 점은 문제 모델링 벡터, 벡터화된 문제, 문제 벡터로 명명 가능하며, 임베딩하고자 하는 객체가 사용자라면 해당 사용자의 특성을 나타내는 다차원 공간상의 한 점은 사용자 모델링 벡터, 벡터화된 사용자, 사용자 벡터로 명명할 수 있다. In this way, giving a point in a multidimensional space corresponding to a characteristic of a user or a problem can be called embedding or vectorization. In addition, a point on the multidimensional space given in response to an arbitrary object in this way may be called a modeling vector, a vectorized object, or an object vector. That is, if the object to be embedded is a problem, a point in the multidimensional space representing the problem feature can be named a problem modeling vector, a vectorized problem, or a problem vector. A point in the multidimensional space can be named as a user modeling vector, a vectorized user, or a user vector.

이렇게 사용자 특성 또는 문제 특성을 벡터화하면, 전체 문제에서 특정 문제의 위치, 상기 문제와 유사한 그룹으로 클러스터링할 수 있는 다른 문제, 다른 문제와 특정 문제의 유사도 등을 수학적으로 계산하는 것이 가능해진다. 뿐만 아니라 벡터의 차원(dimension)에 대응하는 속성을 기준으로 사용자 또는 문제를 클러스터링하는 것도 가능하다. 본 발명에서는 사용자 벡터 또는 문제 벡터들이 어떤 특성 내지는 속성을 포함하고 있는지는 제한하여 해석될 수 없으나, 일 예로 문제 벡터의 경우 문제가 어떤 개념으로 구성되어 있는지(개념 구성도)를 포함할 수 있다. By vectorizing user characteristics or problem characteristics in this way, it becomes possible to mathematically calculate the location of a specific problem in the whole problem, other problems that can be clustered into groups similar to the above problems, and the similarity between other problems and the specific problem. In addition, it is possible to cluster users or problems based on attributes corresponding to the dimensions of the vector. In the present invention, it is not possible to limit and interpret which characteristics or properties the user vector or problem vectors include, but for example, the problem vector may include what concept the problem is composed of (concept diagram).

이하에서는 본 발명의 일 실시 예에 따라 객체의 특성을 나타낼 수 있는 모델링 벡터 생성 방법에 대해 자세히 살펴보기로 한다. 설명의 편의를 위하여 본 명세서는 모델링 벡터로 임베딩하고자 하는 객체가 신규 문제인 경우의 예를 중심으로 설명한다. 그러나 이는 일 실시 예에 불과하며, 본 발명은 사용자, 문제, 보기, 학습 콘텐츠 등 다양한 객체에 적용될 수 있음에 유의한다. Hereinafter, a method for generating a modeling vector capable of representing characteristics of an object according to an embodiment of the present invention will be described in detail. For convenience of description, the present specification will focus on an example in which an object to be embedded as a modeling vector is a new problem. However, it should be noted that this is only an example, and the present invention may be applied to various objects such as users, problems, views, and learning contents.

도 1은 본 발명의 일 실시 예에 따른 신규 문제의 모델링 벡터 생성 방법을 설명하기 위한 도면이다. 1 is a diagram for explaining a method of generating a modeling vector of a new problem according to an embodiment of the present invention.

도 1을 참조하면, 서버는 임의의 문제에 대하여, 문제의 특성을 나타내는 하나 이상의 문제 특성 정보를 각각 벡터화할 수 있다(S100). 여기서 문제 특성 정보는 문제 내용, 문제의 주제(분야), 문제에 포함된 이미지, 음원 특징(음원을 녹음한 화자의 국적, 억양, 주파수), 음원 길이, 문제 길이, 결합 문제(하나의 지문에 여러 개의 문제가 결합되어 있는 문제)의 수 또는 문제가 속한 단원(파트)의 종류, 언어의 종류(영어, 중국어, 일본어, 한국어 등), 문제의 종류(듣기, 읽기, 쓰기, 문법 등) 중 적어도 하나를 포함할 수 있다. Referring to FIG. 1 , for an arbitrary problem, the server may vectorize one or more problem characteristic information indicating the characteristic of the problem, respectively ( S100 ). Here, the problem characteristic information includes the problem content, problem subject (field), image included in the problem, sound source characteristics (nationality, intonation, frequency of the speaker who recorded the sound source), sound source length, problem length, and combination problem (in one passage) Among the number of problems in which multiple problems are combined, the type of unit (part) to which the problem belongs, the type of language (English, Chinese, Japanese, Korean, etc.), and the type of the problem (listening, reading, writing, grammar, etc.) It may include at least one.

예를 들어, 음원의 특징을 벡터화 하고자 하는 경우, 기 설정된 구간 단위 별 평균 주파수 값을 각 차원에 대입시키는 방식으로 음원 특성을 임베딩할 수 있다. 음원의 길이, 파트의 종류 등 상기 문제 특성 정보 각각을 기 설정된 방식으로 임베딩할 수 있음은 물론이다. 벡터화된 문제 특성 정보는 서로 다른 차원을 가질 수 있다. 예를 들어, 음원 길이의 경우 다양한 특성을 포함하지는 않으므로, 저차원 벡터에 임베딩될 수 있다. 그러나 음원 특성 또는 문제 내용의 경우 어떠한 방식으로 벡터화하는지에 따라 차원이 크게 증가할 수 있다. For example, when the characteristics of the sound source are to be vectorized, the sound source characteristics may be embedded in a manner of substituting an average frequency value for each dimension in each dimension. Of course, each of the problem characteristic information such as the length of the sound source and the type of part may be embedded in a preset method. The vectorized problem characteristic information may have different dimensions. For example, since the length of the sound source does not include various characteristics, it may be embedded in a low-dimensional vector. However, in the case of sound source characteristics or problem content, the dimension can be greatly increased depending on how vectorized it is.

문제 내용을 벡터화하는 도 2의 실시 예를 살펴보자. Let's look at the example of FIG. 2 in which the problem content is vectorized.

문제 내용에는 복수의 단어가 포함된다. 서버는 복수의 단어 각각에 임의의 n차원 벡터를 부여할 수 있다. 서버는 제1 단어에 부여된 제1 벡터를 인코딩 프레임워크(130)에 적용하여 저차원의 제2 벡터를 획득할 수 있다(S103). 서버는 제2 벡터를 디코딩 프레임워크(150)에 적용하여 n차원의 제3 벡터를 획득할 수 있는데(S105), 제3 벡터가 제1 단어로부터 기 설정된 거리 내에 포함되는 제2 단어에 임의로 부여된 제4 벡터에 상응하도록 인코딩 프레임워크(130) 및 디코딩 프레임워크(150)를 학습시킨다. The content of the problem contains multiple words. The server may assign an arbitrary n-dimensional vector to each of the plurality of words. The server may obtain a low-dimensional second vector by applying the first vector assigned to the first word to the encoding framework 130 ( S103 ). The server may obtain an n-dimensional third vector by applying the second vector to the decoding framework 150 ( S105 ), and the third vector is arbitrarily assigned to a second word included within a preset distance from the first word. The encoding framework 130 and the decoding framework 150 are trained to correspond to the fourth vector.

여기서 인코딩 프레임워크(130)와 디코딩 프레임워크(150)는 심층 신경망(Deep Neural Network)구조를 가지며, 비선형 변환기법의 조합을 통해 벡터 값을 모델링한다. Here, the encoding framework 130 and the decoding framework 150 have a deep neural network structure, and model a vector value through a combination of a nonlinear transformation method.

인코딩 프레임워크(130)와 디코딩 프레임워크(150)는 입력되는 값을 이용해 임의로 설정된 가중치 초기값이 최적의 가중치에 가까워지도록 가중치를 계속해서 갱신한다. 인코딩 프레임워크(130)는 벡터의 차원을 낮출 수 있으며, 디코딩 프레임워크(150)는 저차원으로 부호화된 벡터를 다시 원래의 차원으로 복구(reconstruction)시키는 것을 특징으로 한다. The encoding framework 130 and the decoding framework 150 continuously update the weights so that an arbitrarily set initial weight value approaches an optimal weight using the input value. The encoding framework 130 may lower the dimension of the vector, and the decoding framework 150 is characterized by reconstructing the low-dimensionally encoded vector back to the original dimension.

예를 들어, 문제 내용에 “I like an apple”이라는 문장이 포함되는 경우, 서버는 I=(1,0,0,0), like =(0,1,0,0), an=(0,0,1,0), apple=(0,0,0,1)의 4차원 벡터를 부여할 수 있다. 각 단어를 임베딩함에 있어서, 본 발명의 서버는 I가 문장 내에서 다른 단어들과 갖는 관계를 모델링 벡터에 반영하는 것을 일 목적으로 한다. For example, if the content of the problem contains the sentence “I like an apple”, the server returns I=(1,0,0,0), like =(0,1,0,0), an=(0) ,0,1,0) and apple=(0,0,0,1) can be given as a 4D vector. In embedding each word, one purpose of the server of the present invention is to reflect the relationship of I with other words in the sentence to the modeling vector.

인코딩 프레임워크(130)의 가중치 행렬을 w1, 디코딩 프레임워크(150)의 가중치 행렬을 w2라고 가정하자. I에 대응하는 제1 벡터(v1=(1,0,0,0))을 인코딩 프레임워크(130)에 입력하면, 인코딩 프레임워크(130)에서 출력되는 제2 벡터(v2)는 다음과 같이 나타낼 수 있다.Assume that the weight matrix of the encoding framework 130 is w1 and the weight matrix of the decoding framework 150 is w2. When the first vector (v1 = (1,0,0,0)) corresponding to I is input to the encoding framework 130 , the second vector v2 output from the encoding framework 130 is as follows. can indicate

Figure 112020053419637-pat00001
Figure 112020053419637-pat00001

즉, 인코딩 프레임워크(130)에 4차원의 제1 벡터를 적용하면 2차원의 제2 벡터를 얻을 수 있다. 위 내용은 본 발명을 설명하기 위한 일 실시 예로, 실제로 문제에 사용되는 단어의 개수는 수십 만 개 이상이 될 수 있으며, 이러한 경우 인코딩 프레임워크(130)에 입력되는 제1 벡터의 차수는 수십만 차수이며, 인코딩 프레임워크(130)의 가중치 행렬을 어떻게 설정하는지에 따라 상기 인코딩 프레임워크(130)에서 출력되는 제2 벡터의 차수는 천분의 일, 만분의 일 수준의 저차원으로 변환될 수 있다. That is, if the first four-dimensional vector is applied to the encoding framework 130 , a two-dimensional second vector can be obtained. The above is an example for explaining the present invention, and the number of words actually used in the problem may be hundreds of thousands or more. In this case, the order of the first vector input to the encoding framework 130 is hundreds of thousands of orders. , and depending on how the weight matrix of the encoding framework 130 is set, the order of the second vector output from the encoding framework 130 may be converted to a low dimension of one thousandth or ten thousandths.

디코딩 프레임워크(150)의 가중치 행렬 w2의 초기값은 인코딩 프레임워크(130)의 가중치 행렬 w1의 전치 행렬일 수 있다. 즉, w1이 m x n 행렬이라면, w2 는 n x m 행렬일 수 있으며, 따라서 저차원(k차원)의 제2 벡터에 디코딩 프레임워크(150)를 적용하면 n차원의 제3 벡터가 출력될 수 있다. 즉, 제3 벡터는 다음과 같이 표시할 수 있다. The initial value of the weight matrix w2 of the decoding framework 150 may be a transpose matrix of the weight matrix w1 of the encoding framework 130 . That is, if w1 is an m x n matrix, w2 may be an n x m matrix. Therefore, when the decoding framework 150 is applied to the low-dimensional (k-dimensional) second vector, an n-dimensional third vector can be output. That is, the third vector can be expressed as follows.

Figure 112020053419637-pat00002
Figure 112020053419637-pat00002

본 발명의 서버는 디코딩 프레임워크(150)가 제3 행렬(v3)이 인접한 다른 단어에 상응하도록 디코딩 프레임워크(150)의 가중치(w2)를 갱신할 수 있다. 예를 들어, 제3벡터 v3=(v31,v32,v33,v34)가 like에 부여된 (0,1,0,0)가 되도록 w2를 갱신하고, v3이 an에 부여된 (0,0,1,0)가 되도록 w2를 갱신하고, v3이 apple에 대응되는 (0,0,0,1)에 상응하도록 w2를 갱신하는 방식으로 디코딩 프레임워크(150)를 학습시킬 수 있다. The server of the present invention may update the weight w2 of the decoding framework 150 so that the decoding framework 150 corresponds to another word adjacent to the third matrix v3. For example, w2 is updated so that the third vector v3=(v31,v32,v33,v34) becomes (0,1,0,0) assigned to like, and v3 is assigned to an (0,0, The decoding framework 150 can be trained by updating w2 so that it becomes 1,0) and updating w2 so that v3 corresponds to (0,0,0,1) corresponding to apple.

문제 내용을 벡터화하는 단계 100에서, 서버는 제1 단어의 벡터화를 위해 제1 단어로부터 기 설정된 거리 내에 포함되는 하나 이상의 제2 단어 각각에 대하여 상술한 단계 101 내지 105를 반복 수행할 수 있다. 예를 들어, 각 단어의 임베딩에 있어서 해당 단어 뒤쪽 방향의 3개 단어를 임베딩에 사용하는 경우를 가정하자. I like an apple라는 문장에서, I를 임베딩하기 위하여 서버는 I에 부여된 제1 벡터 (1,0,0,0)를 인코딩 프레임워크(130)와 디코딩 프레임워크(150)에 순차적으로 적용하여 제3 벡터를 획득한다. 서버는 제3 벡터가 like에 부여된 제2 벡터 (0,1,0,0)에 상응하도록 인코딩 프레임워크(130) 및 디코딩 프레임워크(150)를(이하, ‘프레임워크(100)’라 함) 학습시키고, 다음 단계에서는 제3 벡터가 an에 부여된 제2 벡터 (0,0,1,0)에 상응하도록 프레임워크(100)를 학습시키고, 다음 단계에서는 제3 벡터가 apple에 부여된 제2 벡터 (0,0,0,1)에 상응하도록(차이를 줄이는 방향으로) 프레임워크(100)를 학습시킬 수 있다. In step 100 of vectorizing the problem content, the server may repeat steps 101 to 105 described above for each of one or more second words included within a preset distance from the first word in order to vectorize the first word. For example, in embedding of each word, it is assumed that three words in the direction behind the corresponding word are used for embedding. In the sentence I like an apple, in order to embed I, the server sequentially applies the first vector (1,0,0,0) given to I to the encoding framework 130 and the decoding framework 150, A third vector is obtained. The server uses the encoding framework 130 and the decoding framework 150 (hereinafter referred to as 'framework 100') so that the third vector corresponds to the second vector (0,1,0,0) given to like. In the next step, the framework 100 is trained so that the third vector corresponds to the second vector (0,0,1,0) given to an, and in the next step, the third vector is assigned to apple The framework 100 may be trained to correspond to the second vector (0,0,0,1) (in a direction to reduce the difference).

그리고 서버는 이러한 방식으로 학습이 완료된 인코딩 프레임워크(130)에 제1 벡터를 입력하고, 인코딩 프레임워크(130)에서 제1 벡터에 맵핑되는 저차원의 제2 벡터를 단어 I의 벡터값, 즉 단어 I의 벡터값으로 설정할 수 있다. And the server inputs the first vector to the encoding framework 130 that has been learned in this way, and converts the low-dimensional second vector mapped to the first vector in the encoding framework 130 to the vector value of the word I, that is, It can be set as a vector value of the word I.

서버는 I의 벡터값을 획득한 방식으로 like, an, apple 각 단어의 벡터값을 얻어낼 수 있다. 이 때 최종적으로 얻어지는 각 단어의 벡터값은 제2 벡터에 해당하는 저차원 벡터일 수 있다. The server can obtain the vector value of each word like, an, and apple in the same way that the vector value of I was obtained. In this case, the vector value of each word finally obtained may be a low-dimensional vector corresponding to the second vector.

본 발명의 서버는 프레임워크(100)의 출력값이 입력값과 동일해지도록 프레임워크(100)를 학습시키는 것이 아니라, 프레임워크(100)의 출력값이 인접한 단어들에 부여된 임의의 벡터값에 대응되도록 프레임워크(100)를 학습시킴으로써, 각 단어와 다른 단어들 간의 관계를 임베딩에 반영할 수 있도록 한다는 점에서 종래 방식과 차이가 있다. The server of the present invention does not train the framework 100 so that the output value of the framework 100 becomes the same as the input value, but the output value of the framework 100 corresponds to an arbitrary vector value assigned to adjacent words By learning the framework 100 as much as possible, it is different from the conventional method in that the relationship between each word and other words can be reflected in the embedding.

상술한 예시에서는 설명의 편의를 위하여 하나의 문장에 포함된 단어 임베딩 방법을 설명하였으나, 본 발명을 실제 학습 컨텐츠에 적용함에 있어서 서버는 문제 내용에 포함된 수백개의 단어 각각에 대한 임의의 벡터값에 부여하고 하나의 문단 내지는 문제 내용 전체에 포함된 단어들과의 관계를 모두 반영할 수 있도록 프레임워크(100)를 학습시킬 수 있다. 또한 이러한 과정을 통해 서버는 각 단어, 각 문장, 각 문단, 각 문제 내용을 하나의 저차원 벡터로 모델링할 수 있다. In the above example, the embedding method of a word included in one sentence has been described for convenience of explanation. However, in applying the present invention to actual learning content, the server provides an arbitrary vector value for each of hundreds of words included in the problem content. and the framework 100 can be trained to reflect all relationships with words included in one paragraph or the entire problem content. In addition, through this process, the server can model each word, each sentence, each paragraph, and each problem content as one low-dimensional vector.

뿐만 아니라, 이미지 및 이미지를 설명하는 보기가 포함된 듣기 문제의 경우 서버는 이미지와 보기 간 관계를 위와 같은 방식으로 모델링할 수 있다. 이 경우 서버는 이미지에 포함된 이미지 특징 정보에 임의의 벡터를 부여하는 방식으로 초기값을 설정한 후, 보기 단어에 부여된 벡터와 이미지에 부여된 벡터가 서로 상응하도록 프레임워크(100)를 학습시키는 방식으로 이미지 또는 보기를 저차원 모델링벡터에 임베딩할 수 있다. In addition, for listening problems involving images and views that describe images, the server can model the relationship between images and views in the same way as above. In this case, the server sets the initial value in such a way that an arbitrary vector is given to the image feature information included in the image, and then learns the framework 100 so that the vector given to the view word and the vector given to the image correspond to each other. You can embed an image or view into a low-dimensional modeling vector in the following way.

상술한 바와 같이 문제 내용을 벡터화하는 것 이외에도, 서버는 문제의 주제(분야)에 기 설정된 벡터값을 맵핑시키거나, 문제에 포함된 이미지의 픽셀값, 디스크립터 등을 이용하여 이미지를 벡터화할 수 있다. 또한 서버는 문제 길이 또는 구간을 벡터값에 대응시키는 방식으로 문제 길이를 벡터화할 수 있다. 언어의 종류, 문제의 종류, 단원(파트) 종류 역시 기 설정된 벡터값에 대응시킬 수 있다. In addition to vectorizing the problem content as described above, the server may map a preset vector value to the subject (field) of the problem, or vectorize the image using pixel values, descriptors, etc. of the image included in the problem. . In addition, the server may vectorize the problem length in a way that the problem length or section corresponds to a vector value. A language type, a problem type, and a unit (part) type may also correspond to a preset vector value.

다시 도 1을 참조하면, 서버는 이와 같이 벡터화된 각종 문제 특성 정보를 결합하여 문제 메타데이터를 생성할 수 있다(S200). 문제 메타데이터는 벡터화된 문제 특성 정보를 이어붙인 형태일 수 있다. 예를 들어, 임의의 문제 A에 관하여, 벡터화된 문제 내용이 [0.3, 0.6, 0.3, 0.1]이고, 벡터화된 음원 특징이 [0.1, 0.2, 0.3], 벡터화된 문제 길이가 [0.2], 벡터화된 파트 정보가 [0.7]이면, 문제 A의 문제 메타데이터는 [0.3, 0.6, 0.3, 0.1, 0.1, 0.2, 0.3, 0.2, 0.7]와 같이 생성될 수 있다. Referring back to FIG. 1 , the server may generate problem metadata by combining various types of vectorized problem characteristic information ( S200 ). The problem metadata may be in the form of concatenating vectorized problem characteristic information. For example, for any problem A, the vectorized problem content is [0.3, 0.6, 0.3, 0.1], the vectorized source feature is [0.1, 0.2, 0.3], the vectorized problem length is [0.2], and the vectorized problem length is [0.2]. If the completed part information is [0.7], the problem metadata of problem A can be generated as [0.3, 0.6, 0.3, 0.1, 0.1, 0.2, 0.3, 0.2, 0.7].

다음으로 서버는 하나 이상의 문제 메타데이터를 데이터 분석 프레임워크에 적용하여 데이터 분석 프레임워크를 학습시킬 수 있다(S300). 단계 300에서의 학습은 풀이 결과를 보유하고 있는 문제를 사용하여 이루어질 수도 있고(도 3 설명 참조), 신규 문제만으로 이루어질 수도 있다(도 4 설명 참조). Next, the server may learn the data analysis framework by applying one or more problem metadata to the data analysis framework (S300). The learning in step 300 may be performed using a problem with a solution result (refer to the description of FIG. 3 ) or may be performed only with a new problem (refer to the description of FIG. 4 ).

도 3을 참조하면, 서버는 단계 300에서 문제 메타데이터를 데이터 분석 프레임워크에 적용한 제1 문제 모델링 벡터가 문제에 대한 사용자의 풀이 결과 데이터를 이용하여 기 생성된 문제의 제2 모델링 벡터에 상응하도록 데이터 분석 프레임워크를 학습시킬 수 있다. Referring to FIG. 3 , in step 300, the server applies the problem metadata to the data analysis framework so that the first problem modeling vector corresponds to the second modeling vector of the problem created by using the user's solution result data for the problem. A data analysis framework can be trained.

예를 들어, 서버는 아무런 풀이 결과 데이터가 존재하지 않는 신규 문제의 모델링 벡터를 생성하기 위하여, 문제 데이터베이스를 구성하는 문제 중 풀이 결과 데이터를 보유하고 있는 문제를 이용하여 데이터분석 프레임워크(300)을 학습시킬 수 있다. 데이터분석 프레임워크(50)는 종래 사용되는 풀이 결과 데이터를 이용한 데이터 분석 프레임워크이며, 데이터분석 프레임워크(300)은 문제 메타데이터를 이용하여 문제를 모델링하기 위한 본 발명의 일 실시 예에 따른 프레임워크이다. For example, in order to create a modeling vector of a new problem in which no solution result data exists, the server uses the problem that holds the solution result data among the problems constituting the problem database to implement the data analysis framework 300 can learn The data analysis framework 50 is a data analysis framework using conventionally used solution result data, and the data analysis framework 300 is a frame according to an embodiment of the present invention for modeling a problem using problem metadata. it is work

서버는 우선적으로 사용자의 풀이 결과 데이터를 보유한 문제 A에 데이터분석 프레임워크(50)를 적용하여 문제 A의 풀이 결과 모델링 벡터(55)를 획득할 수 있다. 그리고 서버는 문제 A에 본 발명의 단계 100 내지 200를 적용하여 문제 A의 메타데이터를 획득할 수 있으며, 문제 A의 메타데이터에 데이터분석 프레임워크(300)을 적용하여 문제 A 메타데이터에 대응하는 메타 모델링 벡터(305)를 얻을 수 있다. The server can acquire the solution result modeling vector 55 of the problem A by first applying the data analysis framework 50 to the problem A having the user's solution result data. And the server can obtain the metadata of the problem A by applying steps 100 to 200 of the present invention to the problem A, and apply the data analysis framework 300 to the metadata of the problem A corresponding to the problem A metadata A meta-modeling vector 305 can be obtained.

즉, 서버는 종래 방식으로 문제 A의 풀이 결과 모델링 벡터(55)를 획득하고, 메타데이터를 이용하여 모델링 벡터를 생성하는 본 발명의 일 실시 예에 따라 문제 A의 메타 모델링 벡터(305)를 획득하여, 두 벡터 값의 차이를 줄이는 방향으로 데이터분석 프레임워크(300)을 학습시킬 수 있다. That is, the server obtains the modeling vector 55 as a result of solving the problem A in a conventional manner, and obtains the meta modeling vector 305 of the problem A according to an embodiment of the present invention that generates a modeling vector using metadata Thus, the data analysis framework 300 can be trained in a direction to reduce the difference between the two vector values.

학습이 완료된 후 서버는 신규 문제가 유입되면 신규 문제에 대하여 단계 100 내지 단계 200을 수행하여 신규문제 메타데이터를 생성하고, 신규문제 메타데이터를 단계 300에서 학습된 데이터 분석 프레임워크에 적용하여 신규 문제의 모델링 벡터를 생성할 수 있다(S400). 따라서 이후에 생성되는 신규 문제의 경우에는 사용자의 풀이 결과 데이터 없이도 문제 그 자체만으로 모델링 벡터를 생성할 수 있으며, 모델링 벡터가 생성되면 이를 바탕으로 유사 속성(feature)를 갖는 문제들을 클러스터링할 수 있다. 나아가 본 발명에 의하면 맞춤형 문제 제공, 사용자의 풀이 결과 데이터를 수집하기 위한 진단 문제 세트의 구성 등이 용이해진다. After learning is completed, when a new problem is introduced, the server performs steps 100 to 200 for the new problem to generate new problem metadata, and applies the new problem metadata to the data analysis framework learned in step 300 to apply the new problem It is possible to generate a modeling vector of (S400). Therefore, in the case of a new problem generated later, a modeling vector can be generated by the problem itself without the user's solution result data, and when the modeling vector is generated, problems having similar features can be clustered based on this. Furthermore, according to the present invention, it is easy to provide a customized problem, to configure a diagnostic problem set for collecting user's solution result data, and the like.

데이터분석 프레임워크(300)을 학습시키는 단계 300의 또 다른 실시 예를 도 4를 참고하여 설명한다. 도 4는 사용자 풀이 결과 데이터 없이 본 발명의 데이터분석 프레임워크(300)을 학습시킬 수 있는 방법의 일 실시 예이다. 따라서 도 4의 실시 예에 따르면, 서버는 기존 데이터를 전혀 이용하지 않고 신규 문제만으로도 신규 문제의 모델링 벡터를 생성할 수 있다. Another embodiment of the step 300 of learning the data analysis framework 300 will be described with reference to FIG. 4 . 4 is an embodiment of a method for learning the data analysis framework 300 of the present invention without user pool result data. Therefore, according to the embodiment of FIG. 4 , the server may generate a modeling vector of a new problem only with a new problem without using any existing data.

도 4를 참조하면, 서버는 단계 100 내지 단계 200을 거쳐 생성된 문제 메타 데이터를 인코딩 프레임워크에 적용하여 저차원의 제1 문제 벡터를 획득하고(S303), 제1 문제 벡터를 디코딩 프레임워크에 적용하여 k차원의 제2 문제 벡터를 획득할 수 있다(S355). 서버는 데이터분석 프레임워크(300)에서 출력된 제2 문제 벡터가 처음에 데이터분석 프레임워크(300)에 입력했던 문제 메타데이터에 상응하도록(차이가 줄어들도록) 인코딩 프레임워크(330) 및 디코딩 프레임워크(350)를 학습시킬 수 있다.Referring to FIG. 4, the server applies the problem metadata generated through steps 100 to 200 to the encoding framework to obtain a low-dimensional first problem vector (S303), and applies the first problem vector to the decoding framework. By applying the k-dimensional second problem vector can be obtained (S355). The server sets the encoding framework 330 and the decoding frame so that the second problem vector output from the data analysis framework 300 corresponds to the problem metadata that was initially input to the data analysis framework 300 (so that the difference is reduced). The work 350 may be trained.

학습이 진행될수록 인코딩 프레임워크(330) 및 디코딩 프레임워크(350)를 구성하는 심층 신경망의 각 레이어 가중치는 계속해서 갱신되며 서버는 신규 문제의 메타데이터에 학습이 완료된 인코딩 프레임워크(330)를 적용함으로써 저차원의 신규 문제 모델링 벡터를 도출할 수 있다(S400) As the learning progresses, the weights of each layer of the deep neural network constituting the encoding framework 330 and the decoding framework 350 are continuously updated, and the server applies the learning encoding framework 330 to the metadata of the new problem. By doing so, a new low-dimensional problem modeling vector can be derived (S400)

저차원 벡터를 신규 문제 모델링 벡터로 사용하는 이유는, 낮은 차원의 벡터값을 이용하면 이후 모델링 벡터를 이용한 데이터 처리(클러스터링, 데이터 분류 등)에 소모되를 리소스를 줄일 수 있기 때문이다. 뿐만 아니라 모델링 벡터를 이용하여 인공신경망을 학습시키는 경우 벡터값의 차원이 낮으면 학습량도 줄어드는 장점이 있다. The reason for using a low-dimensional vector as a new problem modeling vector is that if a low-dimensional vector value is used, resources consumed for data processing (clustering, data classification, etc.) using the modeling vector can be reduced. In addition, in the case of learning an artificial neural network using a modeling vector, if the dimension of the vector value is low, the amount of learning is reduced.

또한 본 발명의 일 실시 예에서는 각각의 학습 컨텐츠들을 벡터화된 메타데이터로 구성하고 이를 다시 저차원의 벡터에 임베딩함으로써 컨텐츠를 하나의 벡터에 대응시키는데, 전술한 과정을 통해 문제 각각의 특성(feature)을 나타내는 모델링 벡터가 더욱 강건해질 뿐 아니라, 메타데이터에 포함되어있는 노이즈도 제거되는 효과가 있다. In addition, in an embodiment of the present invention, each learning content is composed of vectorized metadata and embedded in a low-dimensional vector so that the content corresponds to a single vector. Through the above-described process, each feature of each problem Not only the modeling vector representing , but also the noise included in the metadata is removed.

전술한 신규 학습 콘텐츠의 모델링 벡터 생성 방법은 각 실시 예 중 어느 하나를 실행시키기 위하여 컴퓨터 판독 가능 매체에 저장된 신규 문제 모델링 벡터 생성 프로그램을 통해 서버 또는 단말에서 구현될 수 있다. The above-described method for generating a modeling vector of new learning content may be implemented in a server or a terminal through a new problem modeling vector generating program stored in a computer-readable medium to execute any one of the embodiments.

본 명세서에서 생략된 일부 실시 예는 그 실시 주체가 동일한 경우 동일하게 적용 가능하다. 또한, 전술한 본 발명은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시 예 및 첨부된 도면에 의해 한정되는 것이 아니다.Some embodiments omitted in this specification are equally applicable when the implementing subject is the same. In addition, since the above-described present invention is capable of various substitutions, modifications and changes within the scope without departing from the technical spirit of the present invention for those of ordinary skill in the art to which the present invention pertains, the above-described embodiments and accompanying It is not limited by the drawing.

Claims (5)

서버가 신규 문제의 모델링 벡터를 생성하는 방법에 있어서,
임의의 문제에 대하여, 상기 문제의 특성을 나타내는 하나 이상의 문제 특성 정보를 각각 벡터화하는 a단계;
벡터화된 문제 특성 정보를 결합하여 문제 메타데이터를 생성하는 b단계;
하나 이상의 문제 메타데이터를 데이터 분석 프레임워크에 적용하여 상기 데이터 분석 프레임워크를 학습시키는 c단계;
상기 a 내지 b 단계를 통해 상기 신규 문제에 대한 신규문제 메타데이터를 생성하고, 상기 신규문제 메타데이터를 상기 학습된 데이터 분석 프레임워크에 적용하여 상기 신규 문제의 모델링 벡터를 생성하는 d 단계를 포함하며,
상기 c단계는,
상기 문제 메타데이터를 상기 데이터 분석 프레임워크에 적용한 제1 문제 모델링 벡터가 상기 문제에 대한 사용자의 풀이 결과 데이터를 이용하여 기 생성된 상기 문제의 제2 모델링 벡터에 상응하도록 상기 데이터 분석 프레임워크를 학습시키는 단계를 포함하는 것을 특징으로 하는 신규 문제 모델링 벡터 생성 방법.
A method for a server to generate a modeling vector of a new problem,
For an arbitrary problem, a step of vectorizing one or more problem characteristic information representing the characteristic of the problem, respectively;
b step of generating problem metadata by combining vectorized problem characteristic information;
c step of applying one or more problem metadata to a data analysis framework to train the data analysis framework;
a step d of generating new problem metadata for the new problem through the steps a to b, and applying the new problem metadata to the learned data analysis framework to generate a modeling vector of the new problem, ,
In step c,
Learning the data analysis framework so that the first problem modeling vector applying the problem metadata to the data analysis framework corresponds to the second modeling vector of the problem that has been previously generated using the user's solution result data for the problem A new problem modeling vector generation method comprising the step of:
제1항에 있어서,
상기 c 단계는
k 차원의 상기 문제 메타데이터를 인코딩 프레임워크에 적용하여 저차원의 제1 문제 벡터를 획득하는 c-1 단계;
상기 제1 문제 벡터를 디코딩 프레임워크에 적용하여 k차원의 제2 문제 벡터를 획득하는 c-2 단계;
상기 제2 문제 벡터가 상기 문제 메타데이터에 상응하도록 상기 c-1 내지 c-2 단계를 반복하여 상기 인코딩 프레임워크 및 상기 디코딩 프레임워크를 학습시키는 c-3 단계;
학습이 완료되는 시점의 상기 제2 문제 벡터를 상기 문제 메타데이터의 모델링 벡터로 설정하는 c-4 단계를 포함하는 신규 문제 모델링 벡터 생성 방법.
According to claim 1,
Step c is
step c-1 of applying the k-dimensional problem metadata to an encoding framework to obtain a low-dimensional first problem vector;
step c-2 of applying the first problem vector to a decoding framework to obtain a second problem vector of k-dimensionality;
a step c-3 of learning the encoding framework and the decoding framework by repeating steps c-1 to c-2 so that the second problem vector corresponds to the problem metadata;
and c-4 of setting the second problem vector at the time when learning is completed as a modeling vector of the problem metadata.
제1항에 있어서,
상기 문제 특성 정보가 문제 내용이고, 상기 문제 내용은 복수의 단어를 포함하는 경우,
상기 a 단계는
상기 복수의 단어 각각에 임의의 n차원 벡터를 부여하는 a-1 단계;
제1 단어에 부여된 제1 벡터를 인코딩 프레임워크에 적용하여 저차원의 제2 벡터를 획득하는 a-2 단계;
상기 제2 벡터를 디코딩 프레임워크에 적용하여 n차원의 제3 벡터를 획득하는 a-3 단계;
상기 제3 벡터가 상기 제1 단어로부터 기 설정된 거리 내에 포함되는 제2 단어에 임의로 부여된 제4 벡터에 상응하도록 상기 인코딩 프레임워크 및 상기 디코딩 프레임워크를 학습시키는 a-4 단계;
하나 이상의 제2 단어 각각에 대하여 상기 a-2 내지 a-4 단계를 반복 수행하여 최종 도출된 제 2 벡터를 상기 제1 단어의 벡터값으로 설정하는 a-5단계;
상기 복수의 단어 각각에 대하여 상기 a-2 내지 a-5 단계를 수행하여 단어별 벡터값을 획득하고, 상기 단어별 벡터값을 이용하여 상기 문제 내용을 벡터화하는 단계를 포함하는 신규 문제 모델링 벡터 생성 방법.
According to claim 1,
When the problem characteristic information is a problem content, and the problem content includes a plurality of words,
Step a is
a-1 step of assigning an arbitrary n-dimensional vector to each of the plurality of words;
a-2 step of applying the first vector assigned to the first word to the encoding framework to obtain a low-dimensional second vector;
a-3 step of applying the second vector to a decoding framework to obtain an n-dimensional third vector;
a-4 step of learning the encoding framework and the decoding framework so that the third vector corresponds to a fourth vector arbitrarily assigned to a second word included within a preset distance from the first word;
a-5 step of repeatedly performing steps a-2 to a-4 for each of one or more second words to set a finally derived second vector as a vector value of the first word;
A new problem modeling vector creation comprising the step of performing steps a-2 to a-5 for each of the plurality of words to obtain a vector value for each word, and vectorizing the problem content using the vector value for each word Way.
컴퓨터에 제1항 내지 제3항의 방법 중 어느 하나의 방법을 실행시키기 위하여 컴퓨터 판독 가능 매체에 저장된 신규 문제 모델링 벡터 생성 응용 프로그램.A new problem modeling vector generation application stored in a computer readable medium for executing the method of any one of claims 1 to 3 on a computer. 제1항 내지 제3항의 방법 중 어느 하나의 방법에 따라 신규 문제 모델링 벡터를 생성하는 서버. A server for generating a new problem modeling vector according to any one of the methods of claims 1 to 3.
KR1020200063446A 2018-01-02 2020-05-27 Method, apparatus and computer program for analyzing new contents for solving cold start KR102269606B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200063446A KR102269606B1 (en) 2018-01-02 2020-05-27 Method, apparatus and computer program for analyzing new contents for solving cold start

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020180000026A KR102117908B1 (en) 2018-01-02 2018-01-02 Method, apparatus and computer program for analyzing new learning contents for machine learning modeling
KR1020200063446A KR102269606B1 (en) 2018-01-02 2020-05-27 Method, apparatus and computer program for analyzing new contents for solving cold start

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020180000026A Division KR102117908B1 (en) 2018-01-02 2018-01-02 Method, apparatus and computer program for analyzing new learning contents for machine learning modeling

Publications (2)

Publication Number Publication Date
KR20200084816A KR20200084816A (en) 2020-07-13
KR102269606B1 true KR102269606B1 (en) 2021-06-25

Family

ID=67254990

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020180000026A KR102117908B1 (en) 2018-01-02 2018-01-02 Method, apparatus and computer program for analyzing new learning contents for machine learning modeling
KR1020200063446A KR102269606B1 (en) 2018-01-02 2020-05-27 Method, apparatus and computer program for analyzing new contents for solving cold start

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020180000026A KR102117908B1 (en) 2018-01-02 2018-01-02 Method, apparatus and computer program for analyzing new learning contents for machine learning modeling

Country Status (1)

Country Link
KR (2) KR102117908B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102501446B1 (en) * 2019-10-11 2023-02-21 숭실대학교 산학협력단 Method for abstractive document summarization based on a context based coverage mechanism, recording medium and device for performing the method
KR20220169883A (en) * 2021-06-21 2022-12-28 (주)뤼이드 A deep learning-based pedagogical word recommendation method for predicting and improving vocab skills of language learners

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007157006A (en) 2005-12-08 2007-06-21 National Institute Of Information & Communication Technology Question-answer device, question-answer method and question-answer program
JP2008129449A (en) 2006-11-22 2008-06-05 Yahoo Japan Corp Automatic question creating device, automatic question creating method and computer program

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170034106A (en) * 2015-09-18 2017-03-28 아주대학교산학협력단 Apparatus of Recommending Problems of Adequate Level for User and Method thereof
KR101816665B1 (en) * 2016-02-25 2018-01-09 (주)뤼이드 Method, apparatus and computer program for analysis educational data of multiple-choice question

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007157006A (en) 2005-12-08 2007-06-21 National Institute Of Information & Communication Technology Question-answer device, question-answer method and question-answer program
JP2008129449A (en) 2006-11-22 2008-06-05 Yahoo Japan Corp Automatic question creating device, automatic question creating method and computer program

Also Published As

Publication number Publication date
KR20190082453A (en) 2019-07-10
KR102117908B1 (en) 2020-06-02
KR20200084816A (en) 2020-07-13

Similar Documents

Publication Publication Date Title
CN111666416B (en) Method and device for generating semantic matching model
CN111930906A (en) Knowledge graph question-answering method and device based on semantic block
CN112100401B (en) Knowledge graph construction method, device, equipment and storage medium for science and technology services
CN117033609B (en) Text visual question-answering method, device, computer equipment and storage medium
CN117743315B (en) Method for providing high-quality data for multi-mode large model system
KR102269606B1 (en) Method, apparatus and computer program for analyzing new contents for solving cold start
CN115131698B (en) Video attribute determining method, device, equipment and storage medium
WO2024051000A1 (en) Structured simulation data generating system and generating method
CN114722833B (en) Semantic classification method and device
CN116431827A (en) Information processing method, information processing device, storage medium and computer equipment
CN114676705B (en) Dialogue relation processing method, computer and readable storage medium
CN114661951A (en) Video processing method and device, computer equipment and storage medium
CN117273167A (en) Training method, medical method, device, equipment and storage medium for medical model
CN113837910B (en) Test question recommending method and device, electronic equipment and storage medium
CN115762721A (en) Medical image quality control method and system based on computer vision technology
CN113901793A (en) Event extraction method and device combining RPA and AI
CN113821610A (en) Information matching method, device, equipment and storage medium
Fan Effectiveness model of automatic machine translation of publicity texts based on deep learning
Ryabinin et al. Ontology-driven data mining platform for fuzzy classification of mental maps
Yang Applied process mining, recommendation, and visual analytics
CN114842246B (en) Social media pressure type detection method and device
CN118467709B (en) Evaluation method, device, medium and computer program product for visual question-answering task
CN118692693B (en) Method and system for mining health care service requirements based on text analysis
CN118552369B (en) English learning intelligent auxiliary system based on cognitive diagnosis
CN116266266B (en) Multi-tone word disambiguation method, device, equipment and storage medium

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant