KR102563986B1 - Method and apparatus for recommending learning amount using artificial intelligence and clustering using k-means algorithm at the same time - Google Patents

Method and apparatus for recommending learning amount using artificial intelligence and clustering using k-means algorithm at the same time Download PDF

Info

Publication number
KR102563986B1
KR102563986B1 KR1020220066793A KR20220066793A KR102563986B1 KR 102563986 B1 KR102563986 B1 KR 102563986B1 KR 1020220066793 A KR1020220066793 A KR 1020220066793A KR 20220066793 A KR20220066793 A KR 20220066793A KR 102563986 B1 KR102563986 B1 KR 102563986B1
Authority
KR
South Korea
Prior art keywords
learning
vector
academic achievement
clustering
amount
Prior art date
Application number
KR1020220066793A
Other languages
Korean (ko)
Other versions
KR20230101668A (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 KR1020220066793A priority Critical patent/KR102563986B1/en
Publication of KR20230101668A publication Critical patent/KR20230101668A/en
Application granted granted Critical
Publication of KR102563986B1 publication Critical patent/KR102563986B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/20Education
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/906Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised 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
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Tourism & Hospitality (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Operations Research (AREA)
  • General Business, Economics & Management (AREA)
  • Probability & Statistics with Applications (AREA)
  • Marketing (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Primary Health Care (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Educational Technology (AREA)
  • Educational Administration (AREA)
  • Algebra (AREA)
  • Entrepreneurship & Innovation (AREA)

Abstract

K-평균 알고리즘을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 방법 및 장치가 개시된다. 상기 가우시안 혼합 모델(Gaussian Mixtue model)을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 장치는, 다수의 사용자들에 대응하는 학생 단말들로부터 다수의 학습 데이터들을 수집하는 학습 데이터 수집부; 상기 다수의 학습 데이터들을 이용하여 상기 학생 단말들 각각의 사용자와 대응하는 학업성취능력 타입을 예측하는 학업성취능력 예측부; 예측된 학업성취능력 타입에 따라 상기 학습 데이터들을 전처리(pre-processing)하여 학습량 테이블을 생성하는 학습량 테이블 생성부; 및 상기 학습량 테이블을 참조하여 타겟 사용자에 대응하는 추천 학습량을 결정하고, 결정된 상기 추천 학습량을 상기 타겟 사용자의 학생 단말에 제공하는 추천 학습량 결정부;를 포함하되, 상기 학업성취능력 예측부는, K-평균 알고리즘을 이용하여 현재 교육과정에 따른 학습 데이터들 각각에 대응하는 사용자들을 클러스터링함으로써, 사용자들 각각에 대응하는 클러스터(cluster)를 결정하고, 결정된 클러스터에 부여된 학업성취능력 타입을 해당 클러스터에 속하는 사용자의 학업성취능력 타입으로 예측하는 군집화 엔진;을 포함한다.A method and apparatus for recommending a learning amount using clustering using a K-means algorithm and artificial intelligence are disclosed. An apparatus for recommending a learning amount using clustering using the Gaussian Mixtue model and artificial intelligence at the same time includes a learning data collection unit that collects a plurality of learning data from student terminals corresponding to a plurality of users; an academic achievement predictor predicting an academic achievement ability type corresponding to a user of each of the student terminals by using the plurality of learning data; a learning amount table generation unit generating a learning amount table by pre-processing the learning data according to the predicted academic achievement ability type; and a recommended learning amount determining unit for determining a recommended learning amount corresponding to a target user by referring to the learning amount table, and providing the determined recommended learning amount to a student terminal of the target user, wherein the academic achievement ability prediction unit includes a K- By clustering users corresponding to each learning data according to the current curriculum using an average algorithm, a cluster corresponding to each user is determined, and the academic achievement type assigned to the determined cluster belongs to the cluster. A clustering engine that predicts the user's academic achievement type.

Description

K-평균 알고리즘을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 방법 및 장치{METHOD AND APPARATUS FOR RECOMMENDING LEARNING AMOUNT USING ARTIFICIAL INTELLIGENCE AND CLUSTERING USING K-MEANS ALGORITHM AT THE SAME TIME}Method and apparatus for recommending learning amount using clustering using K-means algorithm and artificial intelligence at the same time

본 발명은 학습량 추천 기술에 관한 것으로, 더욱 상세하게는 K-평균 알고리즘을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 방법 및 장치 에 관한 것이다.The present invention relates to a learning amount recommendation technology, and more particularly, to a learning amount recommendation method and apparatus using clustering using a K-means algorithm and artificial intelligence at the same time.

국내는 교육에 대한 학부모의 관심과 열의가 매우 높고, 이 때문에 학생들의 학교 수업과 이를 통한 대학 입시에는 굉장히 많은 사람들이 관심을 갖고 있다.In Korea, parents' interest and enthusiasm for education are very high, and because of this, many people are interested in students' school classes and college entrance exams through them.

학생들이 학습량을 최대한 많이 늘릴수록 좋은 학습 성취 결과를 얻을 가능성이 높아질 수는 있지만, 학습량을 무작정 늘리는 것은 물리적으로 불가능하고 체력적으로도 역효과를 초래할 수 있어, 주어진 시간 내에서 최적의 학습량을 결정하는 것은 매우 중요한 이슈가 된다.The more students increase the amount of learning as much as possible, the more likely they are to achieve good learning outcomes. It becomes a very important issue.

통상적인 경우, 현재의 학습 결과가 다음 학습에 영향을 미치기 때문에 현재의 학습 결과에 따라 다음 학습량을 늘리거나 줄이는 방식으로 개별적으로 결정하고 있어 학업성취결과가 제각각으로 나타나는 경우가 많다.In general, since the current learning result affects the next learning, the next learning amount is individually determined by increasing or decreasing the current learning result, so the results of academic achievement often appear differently.

이러한 문제를 해결하기 위하여, 종래의 기술(특허출원번호 10-2018-0135206)은 최근에 수행한 소정 개수의 학습 결과 데이터에 근거하여, 시기적으로 최근일 수록 더 높은 가중치를 부여하는 방식으로 사전 지정된 가중치를 적용하여 예상 학습량을 추정하고 있다.In order to solve this problem, the conventional technology (Patent Application No. 10-2018-0135206) is based on a predetermined number of recently performed learning result data, and a pre-specified weight in a way that a higher weight is given the more recent in time. is applied to estimate the expected amount of learning.

그러나 상술한 종래의 기술의 경우, 사전 지정된 가중치에 따라 예측 결과가 크게 달라질 수 있는 문제가 있으며, 가중치를 선정하는 기준 자체가 구현 방식에 따라 매우 상이하게 결정되기 때문에 일정한 예측 결과를 기대하기 어려운 문제가 있었다.However, in the case of the above-described prior art, there is a problem that the prediction result may vary greatly depending on the pre-specified weight, and it is difficult to expect a constant prediction result because the criteria for selecting the weight are determined very differently depending on the implementation method. there was

한편, 최근에는 사람의 지능을 모방하여 복잡한 일을 수행하는 인공지능(artificial intelligence)에 대한 연구가 활발히 진행되고 있으며, 인공지능은 기계학습 알고리즘을 이용하여 학습되어 동작하는 형태의 머신 러닝(machine learning)을 포함하는 넓은 개념이며, 머신 러닝 분야에서도 사람의 뉴런들을 모방하여 구현된 딥 러닝(deep learning)이 조금 더 진보된 개념으로 알려져 있다.On the other hand, recently, research on artificial intelligence (artificial intelligence), which performs complex tasks by imitating human intelligence, has been actively conducted. ), and in the field of machine learning, deep learning implemented by imitating human neurons is known as a slightly more advanced concept.

딥 러닝에 따른 심층 신경망(Deep Neural Network, DNN)은, 다중의 은닉층을 포함하여 다양한 비선형적 관계를 학습하고, 학습 결과를 기반으로 예측 결과를 제공하는 인공신경망(ANN, Artificial Neural Network)으로서, 이에 대한 많은 관심과 연구가 이루어지고 있다.A deep neural network (DNN) based on deep learning is an artificial neural network (ANN) that learns various nonlinear relationships, including multiple hidden layers, and provides prediction results based on the learning results, There is a lot of interest and research on this.

심층 신경망은 알고리즘에 따라 비지도 학습(unsupervised learning)을 기반으로 하는 심층 신뢰 신경망(DBN, Deep Belief Network), 심층 오토인코더(Deep Autoencoder) 등이 있으며, 이미지와 같은 2차원 데이터를 처리하기 위한 합성곱 신경망(CNN, Convolutional Neural Network), 시계열 데이터를 처리하는 데 유용한 순환 신경망(RNN, Recurrent Neural Network) 등이 알려져 있다.Depending on the algorithm, deep neural networks include a deep belief network (DBN) based on unsupervised learning, a deep autoencoder, and the like, and are synthesized for processing two-dimensional data such as images. A convolutional neural network (CNN), a recurrent neural network (RNN) useful for processing time series data, and the like are known.

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, K-평균 알고리즘을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 방법 및 장치 를 제공하는 데 있다.An object of the present invention to solve the above problems is to provide a method and apparatus for recommending a learning amount using clustering using a K-means algorithm and artificial intelligence at the same time.

상기 목적을 달성하기 위한 본 발명의 일 측면은, K-평균 알고리즘을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 장치를 제공한다.One aspect of the present invention for achieving the above object provides an apparatus for recommending a learning amount using clustering using a K-means algorithm and artificial intelligence at the same time.

상기 K-평균 알고리즘을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 장치는, 다수의 사용자들에 대응하는 학생 단말들로부터 다수의 학습 데이터들을 수집하는 학습 데이터 수집부; 상기 다수의 학습 데이터들을 이용하여 상기 학생 단말들 각각의 사용자와 대응하는 학업성취능력 타입을 예측하는 학업성취능력 예측부; 예측된 학업성취능력 타입에 따라 상기 학습 데이터들을 전처리(pre-processing)하여 학습량 테이블을 생성하는 학습량 테이블 생성부; 및 상기 학습량 테이블을 참조하여 타겟 사용자에 대응하는 추천 학습량을 결정하고, 결정된 상기 추천 학습량을 상기 타겟 사용자의 학생 단말에 제공하는 추천 학습량 결정부;를 포함한다.An apparatus for recommending a learning amount using clustering using the K-means algorithm and artificial intelligence at the same time includes a learning data collection unit that collects a plurality of learning data from student terminals corresponding to a plurality of users; an academic achievement predictor predicting an academic achievement ability type corresponding to a user of each of the student terminals by using the plurality of learning data; a learning amount table generation unit generating a learning amount table by pre-processing the learning data according to the predicted academic achievement ability type; and a recommended learning amount determining unit for determining a recommended learning amount corresponding to a target user by referring to the learning amount table, and providing the determined recommended learning amount to a student terminal of the target user.

상기 학업성취능력 예측부는, K-평균 알고리즘을 이용하여 현재 교육과정에 따른 학습 데이터들 각각에 대응하는 사용자들을 클러스터링함으로써, 사용자들 각각에 대응하는 클러스터(cluster)를 결정하고, 결정된 클러스터에 부여된 학업성취능력 타입을 해당 클러스터에 속하는 사용자의 학업성취능력 타입으로 예측하는 군집화 엔진; 및 상기 사용자들 각각의 학습 데이터와 대응하는 훈련 입력값 및 상기 군집화 엔진을 통해 학업성취능력 타입이 라벨링된 훈련 출력값으로 구성되는 훈련 데이터를 이용하여 지도학습(supervised-learning)되고, 딥러닝 기반으로 상기 타겟 사용자에 대응하는 학업성취능력 타입을 예측하는 인공신경망 엔진;을 포함한다.The academic achievement predictor determines a cluster corresponding to each user by clustering users corresponding to each of the learning data according to the current curriculum using a K-means algorithm, and assigns a cluster to the determined cluster. A clustering engine that predicts an academic achievement type as a user's academic achievement type belonging to a corresponding cluster; And supervised-learning is performed using training data consisting of training input values corresponding to the learning data of each of the users and training output values labeled with academic achievement types through the clustering engine, and based on deep learning. and an artificial neural network engine that predicts an academic achievement ability type corresponding to the target user.

상기 인공신경망 엔진은, 상기 사용자들 각각의 현재 교육과정에 따른 학습 데이터를 변환하여 획득되는 학습 특징 벡터를 입력받고, 상기 학습 특징 벡터의 성분값 개수와 동일한 개수의 뉴런들로 구성되는 입력층; 상기 입력층으로부터 전달받은 출력값들을 이용하여 산출된 출력 벡터를 출력층에 전달하는 은닉층; 및 상기 출력 벡터에 활성화함수(activation function)를 적용하여 상기 출력 벡터에 대응하는 확률을 결정하고, 결정된 확률이 가장 높은 출력 벡터를 출력하는 출력층을 포함한다.The artificial neural network engine may include an input layer configured of the same number of neurons as the number of component values of the learning feature vector, which receives a learning feature vector obtained by converting learning data according to the current curriculum of each of the users; a hidden layer that transmits an output vector calculated using the output values received from the input layer to an output layer; and an output layer which determines a probability corresponding to the output vector by applying an activation function to the output vector, and outputs an output vector having the highest determined probability.

상기 인공신경망 엔진은, 상기 훈련 입력값을 입력받았을 때 상기 은닉층의 출력으로 획득되는 출력 벡터와 상기 훈련 출력값에 따른 학업 성취능력 타입을 지시하는 훈련출력 벡터를 이용하여 하기 수학식에 따른 손실함수를 연산하고, 연산된 상기 손실함수의 결과값이 최소화되도록 지도학습되고,The artificial neural network engine, when receiving the training input value, uses an output vector obtained as an output of the hidden layer and a training output vector indicating the type of academic achievement according to the training output value to obtain a loss function according to the following equation It is calculated, and supervised so that the resultant value of the calculated loss function is minimized,

상기 수학식에서 Ym은 목표 출력 벡터(Ym)의 m(m은 1 이상의 자연수)번째 성분이고, Y`m은 상기 은닉층의 출력으로 획득되는 출력 벡터(Y`)의 m번째 성분이다.In the above equation, Ym is the m-th component (m is a natural number greater than or equal to 1) of the target output vector Ym, and Y'm is the m-th component of the output vector Y' obtained as an output of the hidden layer.

상기 인공신경망 엔진은, 상기 입력층과 상기 은닉층 사이에 자기집중 메커니즘(self-attention mechanism)에 따른 기법을 수행하는 자가주의 집중계층(self-attention layer)을 더 포함한다.The artificial neural network engine further includes a self-attention layer performing a technique according to a self-attention mechanism between the input layer and the hidden layer.

상기 자가주의 집중계층은, 상기 입력층의 출력으로 획득되는 중간 연산 벡터들 각각의 중요도를 판별하고, 판별된 중요도가 상대적으로 낮은 중간 연산 벡터를 배제시킴으로써 상기 중간 연산 벡터들 중 일부를 선택적으로 상기 은닉층에 전달한다.The self-attention concentration layer determines the importance of each of the intermediate operation vectors obtained as an output of the input layer, and selectively selects some of the intermediate operation vectors by excluding intermediate operation vectors having a relatively low level of importance. passed to the hidden layer.

상기 군집화 엔진은, 상기 다수의 학습 데이터들을 이용하여 현재 교육과정과 레슨에 따른 문제풀이 횟수와 평가 통과 횟수, 현재 교육과정에서의 평균 통과 횟수, 현재 교육과정에서의 평균 점수, 및 현재 교육과정에서의 레슨에 따른 테스트 점수를 포함하는 전처리 학습 데이터를 획득하고, 획득된 상기 전처리 학습 데이터를 이용하여 사용자들 각각에 대응하는 학습 특징 벡터를 생성한다.The clustering engine uses the plurality of learning data to determine the number of problem solving and evaluation passes according to the current curriculum and lessons, the average number of passes in the current curriculum, the average score in the current curriculum, and the current curriculum. Preprocessing learning data including test scores according to lessons of is obtained, and learning feature vectors corresponding to each user are generated using the obtained preprocessing learning data.

상기 K-평균 알고리즘은, 비지도 학습에 속하는 머신러닝 기반의 클러스터링 기법으로서, K개의 클러스터들 각각에 대해 초기 중심점에 해당하는 벡터값을 설정하고, 상기 사용자들 각각을 대표하는 상기 학습 특징 벡터와 가장 가까운 초기 중심점을 갖는 클러스터로 상기 사용자들 각각을 할당하는, K-평균 알고리즘을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 장치.The K-means algorithm is a machine learning-based clustering technique belonging to unsupervised learning, which sets a vector value corresponding to an initial center point for each of the K clusters, and sets the learning feature vector representing each of the users and An apparatus for recommending a learning amount that simultaneously utilizes clustering using a K-means algorithm and artificial intelligence to assign each of the users to a cluster having the closest initial center point.

삭제delete

삭제delete

삭제delete

상기와 같은 본 발명에 따른 K-평균 알고리즘을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 방법 및 장치를 이용할 경우에는 학생의 학업성취능력을 미리 지도학습된 인공신경망을 이용하여 예측하고, 예측된 학습성취능력에 따른 최적의 추천 학습량을 빅데이터 기반으로 결정하여 학생에게 제공함으로써 가장 효율적인 학습량을 학생에게 가이드하고 학습 효과를 극대화할 수 있다.In the case of using the learning amount recommendation method and apparatus using clustering using the K-means algorithm and artificial intelligence according to the present invention as described above, the student's academic achievement ability is predicted using an artificial neural network trained in advance, and the predicted By determining the optimal recommended learning amount according to learning achievement ability based on big data and providing it to students, it is possible to guide students to the most efficient learning amount and maximize learning effects.

도 1은 일 실시예에 따른 가우시안 혼합 모델을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 방법이 수행되는 환경을 나타낸 개념도이다.
도 2는 도 1에 따른 가우시안 혼합 모델을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 장치의 기능적 구성요소들을 나타낸 블록도이다.
도 3은 도 1에 따른 학습량 테이블의 구성을 예시적으로 나타낸 도면이다.
도 4는 도 2에 따른 학습량 테이블을 참조하여 가중점수를 산출한 결과를 나타낸 도면이다.
도 5는 도 2에 따른 군집화 엔진의 동작을 설명하기 위한 도면이다.
도 6은 도 2에 따른 인공신경망 엔진의 동작을 설명하기 위한 도면이다.
도 7은 도 6에 따른 인공신경망 엔진의 구조를 구체적으로 도시한 도면이다.
도 8은 일 실시예에 따른 자가주의집중계층에서의 K벡터를 결정하는 방법을 설명하기 위한 도면이다.
도 9는 일 실시예에 따른 가우시안 혼합 모델을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 장치의 하드웨어 구성을 예시적으로 나타낸 도면이다.
도 10은 일 실시예에 따른 가우시안 혼합 모델을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 방법 및 장치의 효과를 확인할 수 있는 통계 분석 결과를 나타낸 그래프이다.
1 is a conceptual diagram illustrating an environment in which a learning amount recommendation method using artificial intelligence and clustering using a Gaussian mixture model at the same time according to an embodiment is performed.
FIG. 2 is a block diagram showing functional components of an apparatus for recommending a learning amount using artificial intelligence and clustering using a Gaussian mixture model according to FIG. 1 at the same time.
3 is a diagram showing the configuration of the learning amount table according to FIG. 1 by way of example.
4 is a diagram showing the result of calculating the weighted score with reference to the learning amount table according to FIG. 2 .
FIG. 5 is a diagram for explaining the operation of the clustering engine according to FIG. 2 .
6 is a diagram for explaining the operation of the artificial neural network engine according to FIG. 2;
FIG. 7 is a diagram showing the structure of the artificial neural network engine according to FIG. 6 in detail.
8 is a diagram for explaining a method of determining a K vector in a self-attention layer according to an embodiment.
9 is a diagram showing the hardware configuration of an apparatus for recommending a learning amount using artificial intelligence and clustering using a Gaussian mixture model at the same time according to an embodiment by way of example.
10 is a graph showing statistical analysis results for confirming the effect of a learning amount recommendation method and apparatus using artificial intelligence and clustering using a Gaussian mixture model at the same time according to an embodiment.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. Since the present invention can make various changes and have various embodiments, specific embodiments will be illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the present invention to specific embodiments, and should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. Like reference numerals have been used for like elements throughout the description of each figure.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. Terms such as first, second, A, and B may be used to describe various components, but the components should not be limited by the terms. These terms are only used for the purpose of distinguishing one component from another. For example, a first element may be termed a second element, and similarly, a second element may be termed a first element, without departing from the scope of the present invention. The terms and/or include any combination of a plurality of related recited items or any of a plurality of related recited items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. It is understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, but other elements may exist in the middle. It should be. On the other hand, when an element is referred to as “directly connected” or “directly connected” to another element, it should be understood that no other element exists in the middle.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Terms used in this application are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly dictates otherwise. In this application, the terms "include" or "have" are intended to designate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, but one or more other features It should be understood that the presence or addition of numbers, steps, operations, components, parts, or combinations thereof is not precluded.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which the present invention belongs. Terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the related art, and unless explicitly defined in the present application, they should not be interpreted in an ideal or excessively formal meaning. don't

이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 일 실시예에 따른 가우시안 혼합 모델을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 방법이 수행되는 환경을 나타낸 개념도이다.1 is a conceptual diagram illustrating an environment in which a learning amount recommendation method using artificial intelligence and clustering using a Gaussian mixture model at the same time according to an embodiment is performed.

도 1을 참조하면, 가우시안 혼합 모델을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 방법은, 이하에서 설명하는 학습량 추천 서버(100, 가우시안 혼합 모델을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 장치로도 혼용하여 지칭될 수 있음)에 의해 수행될 수 있다.Referring to FIG. 1, the learning amount recommendation method using clustering using a Gaussian mixture model and artificial intelligence at the same time is described below. (which may also be referred to interchangeably) may be performed by.

학습량 추천 서버(100)는, 다수의 학생 단말들(200a~200n)과 연동하여 학습 데이터를 수집할 수 있다. The learning amount recommendation server 100 may collect learning data in association with a plurality of student terminals 200a to 200n.

학생 단말들(200a~200n) 각각에는 미리 배포된 학습용 애플리케이션이 설치되어 구동될 수 있으며, 학습용 애플리케이션이 실행됨에 따라 학생 단말들(200a~200n) 각각은 교육과정에 따른 다수의 학습 문제들을 선정하여 학생 단말(200)의 사용자에게 제공하고, 사용자의 문제 풀이 결과를 저장할 수 있다.Each of the student terminals 200a to 200n may have a pre-distributed learning application installed and run, and as the learning application is executed, each of the student terminals 200a to 200n selects a plurality of learning problems according to the curriculum and It may be provided to the user of the student terminal 200 and the user's problem solving result may be stored.

학생 단말(200)의 사용자는 미리 학생 단말(200)을 이용하여 학습량 추천 서버(100)에 접속하고, 사용자 인증 절차를 통해 사용자 정보를 학습량 추천 서버(100)에 등록(registration)할 수 있다. 사용자 정보는 자신의 나이, 학년, 학교 등을 포함할 수 있다.The user of the student terminal 200 accesses the learning volume recommendation server 100 using the student terminal 200 in advance and registers user information in the learning volume recommendation server 100 through a user authentication procedure. User information may include the user's age, grade, school, and the like.

또한, 학생 단말들(200a~200n) 각각은 학생 단말(200)의 사용자에게 제공된 학습 문제들에 따른 문제 풀이 결과를 나타내는 학습 데이터를 실시간으로 또는 미리 지정된 주기마다 또는 미리 지정된 시기들마다 학습량 추천 서버(100)에 제공할 수 있다.In addition, each of the student terminals 200a to 200n transfers learning data representing problem solving results according to the learning problems provided to the user of the student terminal 200 in real time, at predetermined intervals, or at predetermined time intervals as a learning amount recommendation server. (100) can be provided.

구체적으로, 학습 데이터는, 주별 또는 일별로 교육 과정(ex: 덧셈 과정)에 따라 적어도 하나의 레슨(lesson)에 대하여 제공되는 학습 문제들에 대한 풀이 결과들을 의미할 수 있다. 교육 과정은, 커리큘럼에 따라 제공되는 학습과제 대분류에 해당할 수 있으며, 레슨은 특정 교육 과정 내에서 제공되는 학습과제 소분류에 해당할 수 있다. 예를 들어, 교육 과정은, 덧셈 기초 과정, 덧셈 심화 과정, 뺄셈 기초 과정, 뺄셈 심화 과정 등으로서, 미리 정해진 순서를 가질 수 있다. 구체적으로, 덧셈 기초 과정 다음에 학습할 교육 과정이 덧셈 심화 과정일 수 있고, 덧셈 심화 과정 다음에 학습할 교육 과정이 뺄셈 기초 과정일 수 있다.Specifically, the learning data may mean solution results for learning problems provided for at least one lesson according to a weekly or daily educational process (eg, an addition process). The educational process may correspond to a large classification of learning tasks provided according to a curriculum, and the lessons may correspond to a small classification of learning tasks provided within a specific education course. For example, the educational process may have a predetermined order, such as a basic addition course, an advanced addition course, a basic subtraction course, an advanced subtraction course, and the like. Specifically, a curriculum to be learned after the basic course of addition may be an advanced course of addition, and a curriculum to be learned after the advanced course of addition may be a basic course of subtraction.

예를 들어, 덧셈 기초 과정에 대한 레슨으로는 한자리 수에 대한 덧셈, 두자리 수에 대한 덧셈 등을 포함할 수 있고, 덧셈 심화 과정에 대한 레슨으로는 세자리 수에 대한 덧셈, 3개 이상의 수들 전체에 대한 덧셈 등을 포함할 수 있다.For example, lessons on the basic course of addition may include addition to single-digit numbers, addition to two-digit numbers, and so on, and lessons on the advanced course of addition may include addition to three-digit numbers, addition to all three or more numbers. It may include addition to .

학습량 추천 서버(100)는, 다수의 학생 단말들(200a~200n)로부터 다수의 과거 학습 데이터들을 수집하고, 수집된 과거 학습 데이터들을 기초로, 학생 단말들(200a~200n) 각각의 사용자들을 머신러닝 엔진(10)을 이용하여 군집화(clustering)함으로써, 사용자들 각각에 대응하는 학업성취능력 타입을 결정할 수 있다.The learning amount recommendation server 100 collects a plurality of past learning data from the plurality of student terminals 200a to 200n and, based on the collected past learning data, sets each user of the student terminals 200a to 200n as a machine. By clustering using the learning engine 10, it is possible to determine the type of academic achievement capability corresponding to each user.

여기서, 머신러닝 엔진(10)은, 가우시안 혼합 모델 (Gaussian Mixture Model, GMM) 기반으로 동작하는 군집화 엔진(102a)을 포함할 수 있다. 군집화 엔진(102a)은 가우시안 혼합 모델(GMM)을 소프트웨어 상으로 구현한 일종의 소스코드 또는 소스코드의 동작 프로그램에 해당할 수 있다.Here, the machine learning engine 10 may include a clustering engine 102a that operates based on a Gaussian Mixture Model (GMM). The clustering engine 102a may correspond to a kind of source code that implements a Gaussian Mixture Model (GMM) in software or an operation program of the source code.

사람마다 각자 타고난 재능이나 기억력, 수학 연산 능력 등이 상이하기 때문에, 사용자들 마다 동일한 문제를 제공받더라도 쉽게 풀수 있는 사람과 쉽게 풀기 어려운 사람이 나뉜다. 또한, 동일한 학업성취수준을 갖고있는 사용자들이라고 하더라도, 특정인은 수학을 잘 하는 반면에 국어에 약한 반면 다른 특정인은 수학을 국어보다 상대적으로 못하는 경향성도 있다. Since each person has a different innate talent, memory, mathematical calculation ability, etc., users are divided into those who can solve easily and those who cannot easily solve even if they are provided with the same problem. In addition, even among users with the same academic achievement level, there is a tendency that a specific person is good at math but weak in Korean language, while another specific person is relatively poor at math than Korean language.

본 발명의 일 실시예에서는 이처럼 사람마다 각자 학업성취능력이 상이한 점을 고려하여, 학업성취능력에 따라 가장 적합한 학습량을 추천할 수 있도록, 사용자들을 군집화하여 다수의 클러스터들(clusters)을 구성하고, 구성된 클러스터들 각각에 대응하는 학업성취능력 타입을 결정한다. 여기서, 학업성취능력 타입은 사용자가 속한 클러스터마다 개별적으로 부여되는 일종의 식별 기호로서 예를 들어, A, B, C 등과 같이 우열 없이 결정되는 기호를 사용하거나 그밖에 다양한 형태의 고유 식별 기호를 사용할 수 있다. 즉, 학업성취능력 타입은 해당 클러스터에 속하는 사용자들의 학업성취능력을 대표하는 의미로서 사용된다.In an embodiment of the present invention, in consideration of the fact that each person has a different academic achievement ability, a plurality of clusters are formed by clustering users to recommend the most suitable amount of learning according to the academic achievement ability, A type of academic achievement capability corresponding to each of the configured clusters is determined. Here, the academic achievement ability type is a kind of identification symbol that is individually assigned to each cluster to which the user belongs. For example, symbols that are determined without superiority or inferiority such as A, B, C, etc., or various other types of unique identification symbols can be used. . That is, the academic achievement ability type is used as a meaning representing the academic achievement ability of users belonging to the corresponding cluster.

군집화를 통해 사용자들 각각에 대응하는 학업성취능력 타입이 결정되면, 학습량 추천 서버(100)는, 사용자들에 대한 학습 데이터들을 학업성취능력 타입과 과거에 수행된 학습량에 따라 분류하고, 전처리함으로써 학습량 테이블(20)을 생성할 수 있다.When the academic achievement type corresponding to each user is determined through clustering, the learning amount recommendation server 100 classifies the learning data of the users according to the academic achievement type and the past learning amount, and pre-processes the learning amount. Table 20 can be created.

여기서 생성되는 학습량 테이블(20)은 추후에 특정 사용자를 위한 추천 학습량을 결정하기 위한 빅데이터로서 사용되며, 최대한 많은 사용자들을 대상으로 학습 데이터들을 수집하고, 사용자들 각각에 대응하는 학업성취능력 타입을 결정함으로써 최대한 방대한 빅데이터(big data) 기반의 학습량 테이블(20)을 구성하는 것이 바람직할 수 있다.The learning amount table 20 generated here is used as big data to determine the recommended amount of learning for a specific user in the future, and learning data is collected for as many users as possible, and the academic achievement ability type corresponding to each user is determined. It may be desirable to configure the learning amount table 20 based on the largest amount of big data by determining.

군집화를 통해 학습량 테이블(20)이 생성되면, 학습량 추천 서버(100)는, 특정인에 대한 추천 학습량을 제공하도록 동작할 수 있다.When the learning amount table 20 is generated through clustering, the learning amount recommendation server 100 may operate to provide a recommended learning amount for a specific person.

먼저, 학습량 추천 서버(100)는, 사용자들 중 타겟 사용자의 학생 단말(200)로부터 타겟 학습 데이터를 수신할 수 있고, 수신된 타겟 학습 데이터를 기반으로 머신러닝 엔진(10)을 이용하여 타겟 사용자와 대응하는 학업성취능력 타입을 예측할 수 있다.First, the learning amount recommendation server 100 may receive target learning data from the student terminal 200 of a target user among users, and use the machine learning engine 10 based on the received target learning data to target the target user. It is possible to predict the type of academic achievement ability corresponding to

이때, 머신러닝 엔진(10)으로는 전술한 군집화 엔진(102a)이 사용될 수 있으나, 이에 한정되지 않는다.In this case, the aforementioned clustering engine 102a may be used as the machine learning engine 10, but is not limited thereto.

예를 들어, 머신러닝 엔진(10)으로 심층 신경망(deep neural network) 기반의 인공신경망 엔진(102b)이 사용될 수도 있다. 인공신경망 엔진(102b)은 훈련 입력값과 훈련 출력값의 셋트(set)로 구성되는 훈련 데이터를 이용하여, 특정 사용자의 학습 데이터를 입력받으면, 해당 특정 사용자와 대응하는 학업성취능력 타입을 지시하는 출력값을 출력하도록 미리 지도학습(supervised learning)될 수 있다.For example, an artificial neural network engine 102b based on a deep neural network may be used as the machine learning engine 10 . When the artificial neural network engine 102b receives learning data of a specific user using training data consisting of a set of training input values and training output values, an output value indicating an academic achievement type corresponding to the specific user It may be supervised learning in advance to output.

따라서, 학습량 추천 서버(100)는, 군집화 엔진(102a)을 이용하여 타겟 학습 데이터를 기반으로 타겟 사용자가 속하는 클러스터와 대응하는 학업성취능력 타입을 예측하거나, 인공신경망 엔진(102b)을 이용하여 타겟 학습 데이터를 기반으로 타겟 사용자와 대응하는 학업성취능력 타입을 예측할 수 있도록 구성될 수 있다.Therefore, the learning amount recommendation server 100 predicts the cluster to which the target user belongs and the corresponding academic achievement type based on the target learning data using the clustering engine 102a, or uses the artificial neural network engine 102b to predict the target user 102b. Based on the learning data, it can be configured to predict the type of academic achievement ability corresponding to the target user.

학습량 추천 서버(100)는, 예측된 학업성취능력 타입을 기반으로 학습량 테이블(20)을 분석하여 예측된 학업성취능력 타입에 따른 타겟 사용자를 위한 추천 학습량을 결정할 수 있다.The learning amount recommendation server 100 may analyze the learning amount table 20 based on the predicted academic achievement type to determine a recommended learning amount for a target user according to the predicted academic achievement type.

예를 들어, 추천 학습량(또는 학습량)은, 타겟 학습 데이터에 따른 타겟 사용자의 현재 교육 과정 이후에 학습할 다음 교육 과정(도면상의 뺄셈 과정) 및 주별 학습 횟수 및 일별 레슨 개수 등을 의미할 수 있다.For example, the recommended learning amount (or learning amount) may mean the next education course (subtraction process on the drawing) to be learned after the target user's current education course according to the target learning data, the number of learning per week, and the number of lessons per day. .

학습량 추천 서버(100)는, 결정된 추천 학습량을 타겟 사용자의 학생 단말(200)에 전송할 수 있다.The learning amount recommendation server 100 may transmit the determined recommended learning amount to the student terminal 200 of the target user.

타겟 사용자는, 학생 단말(200)로 자신의 학업성취능력 타입에서 가장 높은 성과를 달성할 것으로 예상되는 추천 학습량을 제공받기 때문에, 추천 학습량에 따라 학습을 진행함으로써 최적의 학업성취 결과를 달성할 가능성이 높아지게 될 수 있다.Since the target user is provided with the student terminal 200 with the recommended amount of learning that is expected to achieve the highest level of achievement in their academic achievement ability type, the possibility of achieving optimal academic achievement results by proceeding with learning according to the recommended amount of learning this may increase

도 2는 도 1에 따른 가우시안 혼합 모델을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 장치의 기능적 구성요소들을 나타낸 블록도이다. 도 3은 도 1에 따른 학습량 테이블의 구성을 예시적으로 나타낸 도면이다. 도 4는 도 2에 따른 학습량 테이블을 참조하여 가중점수를 산출한 결과를 나타낸 도면이다.FIG. 2 is a block diagram showing functional components of an apparatus for recommending a learning amount using artificial intelligence and clustering using a Gaussian mixture model according to FIG. 1 at the same time. 3 is a diagram showing the configuration of the learning amount table according to FIG. 1 by way of example. 4 is a diagram showing the result of calculating the weighted score with reference to the learning amount table according to FIG. 2 .

도 2를 참조하면, 학습량 추천 서버(100)는, 다수의 사용자들에 대응하는 학생 단말(200)들 각각으로부터 학습 데이터를 수집하는 학습 데이터 수집부(101), 학생 단말(200)들로부터 수집된 다수의 학습 데이터들을 이용하여 학생 단말(200)들 각각의 사용자들과 대응하는 학업성취능력 타입을 예측하는 학업성취능력 예측부(102), 예측된 학업성취능력 타입에 따라 학습 데이터들을 전처리(pre-processing)하여 학습량 테이블을 생성하는 학습량 테이블 생성부(103), 및 학습량 테이블을 참조하여 타겟 사용자에 대응하는 추천 학습량을 결정하고, 결정된 추천 학습량을 타겟 사용자의 학생 단말(200)에 제공하는 추천 학습량 결정부(104)를 포함할 수 있다.Referring to FIG. 2 , the learning amount recommendation server 100 includes a learning data collection unit 101 that collects learning data from each of the student terminals 200 corresponding to a plurality of users, and collection from the student terminals 200. The academic achievement predicting unit 102 predicts the academic achievement ability type corresponding to each user of the student terminals 200 using a plurality of learning data, and preprocesses the learning data according to the predicted academic achievement ability type ( A learning amount table generation unit 103 for generating a learning amount table by pre-processing, and determining a recommended learning amount corresponding to a target user by referring to the learning amount table, and providing the determined recommended learning amount to the student terminal 200 of the target user A recommended learning amount determining unit 104 may be included.

학습 데이터 수집부(101)는, 다수의 학생 단말(200)들과 연동하여 학습 데이터를 수집할 수 있다. 이를 위해 학생 단말(200)들과 주기적으로 유선 또는 무선 네트워크를 통해 통신함으로써 학습 데이터를 획득할 수 있다. 예를 들어, 학생 단말(200)들 각각에서 교육 과정에 따른 학습이 완료되면, 학생 단말(200)들 각각이 학습 데이터 수집부(101)로 학습 완료에 따른 학습 데이터를 전송할 수 있다.The learning data collection unit 101 may collect learning data in association with a plurality of student terminals 200 . To this end, learning data may be obtained by periodically communicating with the student terminals 200 through a wired or wireless network. For example, when learning according to an educational process is completed in each of the student terminals 200, each of the student terminals 200 may transmit learning data according to completion of learning to the learning data collection unit 101.

학업성취능력 예측부(102)는, 학습 데이터들을 이용하여 사용자들 각각과 대응하는 학업성취능력 타입을 예측하여 학습량 테이블 생성부(103)에 제공할 수 있다. The academic achievement ability prediction unit 102 may predict an academic achievement ability type corresponding to each user by using the learning data, and provide the result to the learning amount table generation unit 103 .

구체적으로, 학업성취능력 예측부(102)는, 학습 데이터들 각각에 대응하는 사용자들을 클러스터링함으로써, 사용자들 각각과 대응하는 클러스터를 결정하고, 결정된 클러스터에 부여되는 학업성취능력 타입을 결정하는 군집화 엔진(102a)을 포함할 수 있다.Specifically, the academic achievement predictor 102 determines a cluster corresponding to each user by clustering users corresponding to each of the learning data, and a clustering engine that determines the academic achievement type assigned to the determined cluster. (102a).

예를 들어, 군집화 엔진(102a)은, 가우시안 혼합 모델(Gaussian Mixture Model, GMM)에 따른 클러스터링 또는 K-평균 알고리즘에 따른 클러스터링을 수행할 수 있다.For example, the clustering engine 102a may perform clustering according to a Gaussian Mixture Model (GMM) or clustering according to a K-means algorithm.

여기서, K-평균 알고리즘은 가우시안 혼합 모델과 달리 비지도학습에 속하는 머신러닝 기반의 클러스터링 기법일 수 있다. 구체적으로 K-평균 알고리즘은 K개의 클러스터들 각각에 대한 초기 중심점에 해당하는 벡터값을 설정한 후, 사용자들 각각을 대표하는 학습 특징 벡터와 가까운 초기 중심점을 가진 클러스터에 사용자들을 할당한다.Here, the K-means algorithm may be a machine learning-based clustering technique belonging to unsupervised learning, unlike the Gaussian mixture model. Specifically, the K-means algorithm sets a vector value corresponding to an initial center point for each of the K clusters, and then assigns users to a cluster having an initial center point close to a learning feature vector representing each user.

다음으로, 모든 사용자들에 대한 클러스터 할당이 끝나면, 해당 클러스터에 속하는 사용자들의 학습 특징 벡터들의 중간값 또는 평균값으로 각 클러스터의 중심점을 재설정하고, 재설정된 중심점을 기준으로 모든 사용자들의 클러스터 할당을 다시 시행한다.Next, after cluster assignment to all users is completed, the center point of each cluster is reset to the median or average value of the learning feature vectors of users belonging to the cluster, and cluster assignment to all users is performed again based on the reset center point. do.

상술하는 중심점 재설정과 클러스터 재할당을 중심점의 변동이 없을 때까지 반복함으로써 사용자들을 클러스터들에 할당할 수 있다.Users can be assigned to clusters by repeating the above-described center point resetting and cluster reallocation until there is no change in the center point.

학습량 테이블 생성부(103)는, 군집화 엔진(102a)에 의해 결정되는 학업성취능력 타입에 따라 학습 데이터들을 전처리하여 학습량 테이블(20)을 생성할 수 있다.The learning amount table generator 103 may generate the learning amount table 20 by pre-processing the learning data according to the academic achievement type determined by the clustering engine 102a.

구체적으로, 학습량 테이블 생성부(103)는, 사용자의 현재 교육 과정에 따른 학습 데이터들을 기초로 군집화 엔진(102a)에 의해 결정되는 학업성취능력 타입과 현재 교육 과정 이후의 다음 교육 과정에서 수행된 학습량에 따라 분류하고, 분류된 학업성취능력 타입과 학습량에 대응하는 학습 데이터들에 대한 통계 데이터를 산출함으로써 학습 데이터들을 전처리할 수 있다.Specifically, the learning amount table generator 103 determines the academic achievement type determined by the clustering engine 102a based on the learning data according to the user's current education course and the amount of learning performed in the next education course after the current education course. The learning data may be pre-processed by classifying according to the classification and calculating statistical data on the learning data corresponding to the classified academic achievement type and amount of learning.

즉, 학업성취능력 타입은 사용자의 현재 교육 과정에 따른 학습 데이터들을 기초로 군집화 엔진(102a)에 의해 예측된다.That is, the academic achievement type is predicted by the clustering engine 102a based on learning data according to the user's current educational process.

도 3을 참조하면, 학습량 테이블(20)은, 학업성취능력 타입과 학습량에 따라 현재 교육 과정에 따른 학습 데이터들을 분류하고, 분류된 학습 데이터들에 대한 통계 연산 처리를 통해 얻어진 통계 데이터로서, 분류된 학습 데이터들에 대한 평가 통과율, 평가점수 평균 등을 포함할 수 있다.Referring to FIG. 3 , the learning amount table 20 classifies learning data according to the current educational process according to the type of academic achievement ability and the amount of learning, and is statistical data obtained through statistical calculation processing on the classified learning data. It may include the evaluation passing rate and the average evaluation score for the obtained training data.

여기서, 학습량은 해당 학업성취능력 타입의 사용자들의 다음 교육과정에서 수행한 주별 학습 횟수 및 일별 학습레슨 개수를 의미할 수 있다. 또 다른 예시로 학습량은 다음 교육과정에서 수행한 주별 학습일수와 학습시간을 의미할 수도 있다. 여기서 학습량은 그 지표를 설정되는 기준에 따라 시간, 일, 또는 월 단위로 설정될 수 있거나 그 혼용된 단위로 설정될 수도 있으며 이는 통상의 기술자의 용이 변형 사항에 해당하므로 자세한 설명은 생략한다.Here, the amount of learning may mean the number of learning per week and the number of daily learning lessons performed in the next curriculum of users of the corresponding academic achievement ability type. As another example, the amount of learning may mean the number of learning days and learning time per week performed in the next curriculum. Here, the amount of learning may be set in units of hours, days, or months according to the criteria for setting the indicator, or may be set in units of a mixture thereof, and since this corresponds to a modification easily performed by a person skilled in the art, a detailed description thereof will be omitted.

여기서, 평가 통과율은 해당 학업성취능력 타입으로 결정된 사용자들을 대상으로, 다음 교육과정에서 제공된 학습량에 따른 풀이 결과가 특정 기준 점수를 초과하는 사용자들의 비율일 수 있다.Here, the evaluation passing rate may be a ratio of users whose solution result according to the amount of learning provided in the next curriculum exceeds a specific reference score, targeting users determined to have the corresponding academic achievement type.

평가점수 평균은 해당 학업성취능력 타입으로 결정된 사용자들을 대상으로, 다음 교육과정에서 제공된 학습량에 따른 풀이 결과에서 평가점수들의 평균값일 수 있다.The average evaluation score may be an average value of evaluation scores in a solution result according to an amount of learning provided in a next curriculum targeting users determined to have a corresponding academic achievement type.

도 3을 참조하면, 현재 교육과정에서의 학업성취능력 타입이 클러스터 A에 속하는 사용자들 중에서, 다음 교육과정으로 제공된 학습량에 따른 주별 학습횟수가 3회이고, 일별 학습레슨 개수가 3개인 사용자들이 169명이고, 169명인 사용자들을 대상으로 다음 교육과정으로 제공된 학습량에 대한 평가 통과율이 92%이며, 학습량에 대한 평가점수 평균은 94점인 것을 확인할 수 있다.Referring to FIG. 3, among users whose academic achievement ability type in the current curriculum belongs to cluster A, users who have 3 weekly learning times and 3 daily learning lessons according to the amount of learning provided to the next curriculum are 169 , and 169 users, it can be confirmed that the evaluation pass rate for the amount of learning provided in the next curriculum is 92%, and the average evaluation score for the amount of learning is 94 points.

이와 같이, 학습량 테이블(20)은, 매우 방대한 다수의 사용자들의 현재 교육과정에 따른 학습 데이터들을 대상으로 사용자들 각각에 대응하는 학업성취능력 타입을 군집화 엔진(102a)을 이용하여 예측하고, 예측된 학업성취능력 타입에 따라 다음 교육과정에 따른 학습 데이터들에 대한 통계 데이터를 산출하는 방식으로 구성될 수 있다.In this way, the learning amount table 20 predicts, using the clustering engine 102a, the academic achievement ability type corresponding to each user, targeting the learning data according to the current curriculum of a very large number of users, and predicts the predicted Depending on the type of academic achievement ability, it may be configured in a way of calculating statistical data for learning data according to the next curriculum.

이와 같이 학습량 테이블(20)이 현재 교육과정에 따른 학습 데이터들을 기반으로 예측된 학업성취능력 타입에 따라 분류되어 있어, 특정 타겟 사용자의 현재 교육과정에 따른 학습데이터들을 기초로 다음 교육과정에 따른 학습량을 추천하는 것이 용이하다.In this way, the learning amount table 20 is classified according to the predicted academic achievement ability type based on the learning data according to the current curriculum, and the learning amount according to the next curriculum based on the learning data according to the current curriculum of a specific target user It is easy to recommend

학습량 테이블(20)이 생성되면 추천 학습량을 제공하는 기능이 활성화된다.When the learning amount table 20 is created, a function of providing a recommended learning amount is activated.

구체적으로, 학습 데이터 수집부(101)는, 타겟 사용자의 학생 단말(200)로부터 타겟 사용자의 현재 교육과정에 따른 타겟 학습 데이터를 획득할 수 있다. 여기서 현재 교육과정이란 타겟 사용자가 현재 진행하고 있는 교육과정의 단계를 의미할 수 있다.Specifically, the learning data collection unit 101 may obtain target learning data according to the current curriculum of the target user from the student terminal 200 of the target user. Here, the current curriculum may refer to a level of a curriculum that the target user is currently progressing.

학업성취능력 예측부(102)는, 현재 교육과정에 따른 타겟 학습 데이터를 기반으로 타겟 사용자에 대응하는 학업성취능력 타입을 예측할 수 있다. The academic achievement ability prediction unit 102 may predict the academic achievement ability type corresponding to the target user based on the target learning data according to the current curriculum.

일 실시예에서, 학업성취능력 예측부(102)는, 군집화 엔진(102a)을 이용하여 타겟 사용자와 대응하는 클러스터를 결정하고, 결정된 클러스터에 부여된 학업성취능력 타입을 타겟 사용자에 대응하는 학업성취능력 타입으로 예측할 수 있다.In an embodiment, the academic achievement ability prediction unit 102 determines a cluster corresponding to the target user by using the clustering engine 102a, and sets the academic achievement capability type assigned to the determined cluster to the academic achievement corresponding to the target user. It can be predicted by ability type.

다른 일 실시예에서, 학업성취능력 예측부(102)는, 딥러닝 기반의 인공신경망 엔진(102b)을 이용하여 타겟 사용자와 대응하는 학업성취능력 타입을 예측할 수도 있다. 인공신경망 엔진(102b)은, 훈련 데이터를 이용하여 미리 지도학습될 수 있다.In another embodiment, the academic achievement predictor 102 may predict the academic achievement type corresponding to the target user by using the deep learning-based artificial neural network engine 102b. The artificial neural network engine 102b may be pre-supervised learning using training data.

이때, 훈련 데이터를 구성하는 훈련 입력값은 다수의 사용자들 각각으로부터 수집된 학습 데이터를 이용하여 생성된 학습 특징 벡터일 수 있고, 훈련 출력값은 군집화 엔진(102a)을 이용하여 사용자들 각각에 대응하는 클러스터에 대하여 부여된 학업성취능력 타입일 수 있다.In this case, the training input value constituting the training data may be a learning feature vector generated using learning data collected from each of a plurality of users, and the training output value corresponds to each user using the clustering engine 102a. It may be a type of academic achievement ability granted to the cluster.

즉, 인공신경망 엔진(102b)은, 군집화 엔진(102a)을 통해 학업성취능력 타입이 라벨링(labeling)된 훈련 출력값을 제공받기 때문에, 인공신경망을 지도학습하기 위한 방대한 학습 데이터 수집의 어려움을 해소할 수 있다.That is, since the artificial neural network engine 102b receives training output values labeled with academic achievement types through the clustering engine 102a, it is possible to solve the difficulty of collecting massive learning data for supervising the artificial neural network. can

게다가, 군집화 엔진(102a)이, 머신러닝 기반의 가우시안 혼합 모델을 이용하여 구현되기 때문에 군집화 엔진(102a)을 통해 라벨링된 훈련 출력값을 사용하더라도 통계적으로 유의미하게 라벨링될 수 있어 이를 통해 학습된 인공신경망 엔진(102b)의 학업성취능력 타입에 대한 예측 정확도가 비교적 정확하게 구현된다.In addition, since the clustering engine 102a is implemented using a machine learning-based Gaussian mixture model, even if the training output value labeled through the clustering engine 102a is used, it can be statistically meaningfully labeled, and thus the learned artificial neural network The predictive accuracy of the engine 102b for the academic achievement type is implemented relatively accurately.

추천 학습량 결정부(104)는, 학습량 테이블(20)에서 타겟 사용자에 대하여 예측된 학업성취능력 타입에 대응하는 학습량 별 통계 데이터를 이용하여 미리 지정된 수학식에 따른 가중점수를 산출하고, 산출된 가중점수에 기초하여 추천 학습량을 결정할 수 있다.The recommended learning amount determining unit 104 calculates a weighted score according to a predetermined mathematical formula using statistical data for each learning amount corresponding to the type of academic achievement ability predicted for the target user in the learning amount table 20, and calculates the weighted Based on the score, a recommended amount of learning may be determined.

예를 들어, 가중점수는 도 4에 도시된 것과 같이 학업성취능력 타입과 학습량에 따른 통계 데이터들을 대상으로 산출되며, 구체적으로 하기 수학식 1에 따라 산출될 수 있다. For example, as shown in FIG. 4 , the weighted score is calculated for statistical data according to the type of academic achievement ability and the amount of learning, and can be specifically calculated according to Equation 1 below.

수학식 1을 참조하면, N은 학업성취능력 타입과 학습량에 해당하는 학습인원들의 수이고, Nmin은 미리 학습능력 타입과 학습량에 따라 개별적으로 정의되는 최소 학습인원의 수이고, PP는 학업성취능력 타입과 학습량에 해당하는 학습인원들의 평가 통과율이고, acSC는 학업성취능력 타입과 학습량에 해당하는 학습인원들의 평가점수의 평균이고, k는 미리 학습성취능력 타입과 학습량에 따라 개별적으로 정의되는 가중치 상수이고, avgN은 학업성취능력 타입별 학습인원들의 수에 대한 평균값일 수 있다.Referring to Equation 1, N is the number of learners corresponding to the type and amount of learning ability, Nmin is the minimum number of learners individually defined according to the type and amount of learning ability, and PP is the amount of learning ability. The evaluation pass rate of the number of learners corresponding to the type and amount of learning, acSC is the average of the evaluation scores of the number of learners corresponding to the type of academic achievement ability and the amount of learning, and k is a weight constant defined individually according to the type of learning achievement ability and the amount of learning , and avgN may be an average value of the number of learners for each type of academic achievement ability.

예를 들어, 타겟 사용자에 대하여 예측된 학업성취능력 타입이 클러스터 A에 해당하는 경우, 도 4에 도시된 것과 같이 학업성취능력 타입이 클러스터 A에 대응하는 다수의 학습량들 각각에 대한 통계 데이터들을 이용하여 학습량들 각각에 대하여 수학식 1에 따른 가중점수를 산출할 수 있다.For example, when the academic achievement type predicted for the target user corresponds to cluster A, as shown in FIG. Thus, a weighted score according to Equation 1 can be calculated for each of the learning amounts.

이때, 추천 학습량 결정부(104)는, 수학식 1에 따라 학습량들 각각에 대하여 산출된 가중점수들 중에서, 가장 높게 산출된 가중점수와 대응하는 학습량을 추천 학습량으로서 결정할 수 있다.At this time, the recommended learning amount determining unit 104 may determine, as the recommended learning amount, a learning amount corresponding to the highest calculated weight score among the weighted scores calculated for each learning amount according to Equation 1.

즉, 도 4에서의 경우, 가중점수가 학습량으로서 주별 학습횟수가 3회이고, 일별 학습레슨의 개수가 3개일 때 가장 높은 값으로 산출되었기 때문에, 다음 교육과정에서의 추천 학습량은 주별 학습횟수가 3회이고, 일별 학습레슨의 개수가 3개인 학습량으로 결정된다.That is, in the case of FIG. 4, since the weighted score is calculated as the highest value when the number of learning times per week is 3 as the learning amount and the number of daily learning lessons is 3, the recommended learning amount in the next curriculum is the number of learning times per week 3 times, and the number of learning lessons per day is determined by the learning amount of 3 individuals.

도 5는 도 2에 따른 군집화 엔진의 동작을 설명하기 위한 도면이다.FIG. 5 is a diagram for explaining the operation of the clustering engine according to FIG. 2 .

군집화 엔진(102a)은 사용자별로 수집되는 학습 데이터들을 이용하여 사용자의 현재 교육과정을 대표하는 학습 특징 벡터를 생성할 수 있다.The clustering engine 102a may generate a learning feature vector representing the user's current educational process using learning data collected for each user.

예를 들어, 도 5를 참조하면, 군집화 엔진(102a)은, 사용자별 수집되는 현재 교육과정에 따른 학습 데이터들을 이용하여 현재 교육과정과 레슨에 따른 문제풀이 횟수와 평가 통과 횟수, 현재 교육과정에서의 평균 통과 횟수, 현재 교육과정에서의 평균 점수, 및 레슨에서의 테스트 점수를 포함하는 전처리 학습 데이터를 획득할 수 있다.For example, referring to FIG. 5 , the clustering engine 102a uses learning data according to the current curriculum collected for each user to solve problems according to the current curriculum and lessons, the number of times of passing the evaluation, and the current curriculum. Preprocessing learning data including the average number of passes, the average score in the current curriculum, and the test score in the lesson may be obtained.

군집화 엔진(102a)은 획득된 전처리 학습 데이터에 포함된 지표들 중 적어도 일부를 이용하여 사용자에 대응하는 학습 특징 벡터를 생성할 수 있다.The clustering engine 102a may generate a learning feature vector corresponding to the user by using at least some of the indices included in the obtained preprocessing learning data.

예를 들어, 군집화 엔진(102a)은, 현재 교육과정에서 레슨의 식별기호, 전처리 학습 데이터에서 문제풀이 횟수, 평가 통과 횟수, 평균 통과 횟수, 평균 점수, 및 레슨에서의 테스트 점수 각각을 성분값으로 하는 학습 특징 벡터를 생성할 수 있다.For example, the clustering engine 102a takes the identifier of the lesson in the current curriculum, the number of problem solving in the preprocessing learning data, the number of passing the evaluation, the average number of passing, the average score, and each of the test scores in the lesson as component values. You can create a learning feature vector that

예를 들어, 학습 특징 벡터는, 현재 교육과정에 속하는 레슨들마다 각각 하나씩 생성될 수 있다.For example, one learning feature vector may be generated for each lesson belonging to the current curriculum.

군집화 엔진(102a)은 사용자들 각각의 현재 교육과정에 따른 적어도 하나의 학습 특징 벡터를 이용하여 사용자들 각각을 다수의 클러스터들 중 하나로 분류(classify)할 수 있다. 예를 들어, 가우시안 혼합 모델(GMM)의 경우, 미리 지정된 K(K는 1보다 큰 자연수)개의 가우시안 분포들 각각이 클러스터와 대응하며. 사용자들을 K개의 가우시안 분포들 중 하나로 분류하도록 동작한다.The clustering engine 102a may classify each of the users into one of a plurality of clusters using at least one learning feature vector according to the current curriculum of each user. For example, in the case of a Gaussian Mixture Model (GMM), each of a predetermined K (K is a natural number greater than 1) Gaussian distributions corresponds to a cluster. It operates to classify users into one of K Gaussian distributions.

구체적으로, 군집화 엔진(102a)의 경우, 베이즈 정리(Bayes' theorem)를 이용하여 K개의 가우시안 분포들 중에서 하기 수학식 2에 따른 가우시안 분포 선택함수(γ)의 결과값이 가장 높은 가우시안 분포를 선정하고, 선정된 가우시안 분포를 해당 사용자의 현재 교육과정에 대응하는 학업성취능력 타입으로 결정한다. Specifically, in the case of the clustering engine 102a, a Gaussian distribution having the highest result value of the Gaussian distribution selection function (γ) according to Equation 2 below is selected from K Gaussian distributions using Bayes' theorem. and the selected Gaussian distribution is determined as the academic achievement ability type corresponding to the user's current curriculum.

수학식 2에서 (γ)는 선택함수이고, xn은 해당 교육과정에서 n번째 레슨에 따른 학습 특징 벡터이고, znk는 학습 특징 벡터가 주어졌을 때 가우시안 혼합 모델에서 k(k는 1과 K 사이의 자연수)번째 가우시안 분포가 선택되면 1이고, 아니면 0의 값을 갖는 2진 변수이다. 또한 수학식 2에서 μ와 Σ는 가우시안 혼합 모델에 따른 파라미터로서 미리 가우시안 혼합 모델에 대한 학습 과정을 통해 확정되는 값이다. 가우시안 혼합 모델에 따른 파라미터를 결정하기 위한 학습 과정에 대해서는 Christopher Bishop의 Pattern Recognition and Machine Learning, 2008.03.18 을 참조하면 이해할 수 있으므로 구체적인 설명은 생략한다.In Equation 2, (γ) is a selection function, x n is the learning feature vector according to the nth lesson in the corresponding curriculum, and z nk is k in the Gaussian mixture model when the learning feature vector is given (k is 1 and K It is a binary variable with a value of 1, otherwise it is 1 if the natural number between)th Gaussian distribution is selected. Also, μ and Σ in Equation 2 are parameters according to the Gaussian mixture model, and are values determined through a learning process for the Gaussian mixture model in advance. The learning process for determining the parameters according to the Gaussian mixture model can be understood by referring to Christopher Bishop's Pattern Recognition and Machine Learning, 2008.03.18, so a detailed description is omitted.

도 6은 도 2에 따른 인공신경망 엔진의 동작을 설명하기 위한 도면이다. 도 7은 도 6에 따른 인공신경망 엔진의 구조를 구체적으로 도시한 도면이다. 도 8은 일 실시예에 따른 자가주의집중계층에서의 K벡터를 결정하는 방법을 설명하기 위한 도면이다.6 is a diagram for explaining the operation of the artificial neural network engine according to FIG. 2; FIG. 7 is a diagram showing the structure of the artificial neural network engine according to FIG. 6 in detail. 8 is a diagram for explaining a method of determining a K vector in a self-attention layer according to an embodiment.

도 6을 참조하면, 딥러닝 기반의 인공신경망 엔진(102b)은, 훈련 데이터를 구성하는 훈련 입력값으로 현재 교육과정에 따른 레슨 별 학습 특징 벡터들을 순차적으로 입력받았을 때, 인공신경망 엔진(102b)의 출력값으로 얻어지는 학업성취능력 타입을 훈련출력값과 서로 비교하고 비교 결과에 따라 인공신경망 엔진(102b)을 구성하는 파라미터들(parameters)을 조정(tuning)하는 방식으로 지도학습된다.Referring to FIG. 6, when the deep learning-based artificial neural network engine 102b sequentially receives learning feature vectors for each lesson according to the current curriculum as training input values constituting training data, the artificial neural network engine 102b Supervised learning is performed by comparing the academic achievement ability type obtained as the output value of with the training output value and tuning the parameters constituting the artificial neural network engine 102b according to the comparison result.

구체적으로, 딥러닝 기반의 인공신경망 엔진(102b)은, 인공신경망 엔진(102b)의 출력값으로 얻어지는 학업성취능력 타입을 지시하는 출력벡터와 훈련출력값에 따른 학업성취능력 타입을 지시하는 훈련출력벡터를 이용하여 미리 정의된 손실함수(loss function)에 따라 산출하고, 산출된 손실함수의 결과값이 최소화되도록 인공신경망 엔진(102b)을 구성하는 파라미터들을 조정할 수 있다.Specifically, the deep learning-based artificial neural network engine 102b generates an output vector indicating the type of academic achievement obtained as an output value of the artificial neural network engine 102b and a training output vector indicating the type of academic achievement according to the training output value. Parameters constituting the artificial neural network engine 102b may be adjusted so that the resultant value of the calculated loss function is minimized.

이때, 손실함수는 크로스 엔트로피(Cross Entropy) 함수일 수 있다.In this case, the loss function may be a cross entropy function.

도 7을 참조하면, 인공 신경망 엔진(102b)은, 학습 특징 벡터(X)를 입력받고, 입력받은 학습 특징 벡터의 성분값 개수와 동일한 개수(N)의 입력 노드들로 구성되는 입력층(11), 입력층(11)으로부터 전달받은 출력값들을 이용하여 산출된 출력 벡터(Y`)를 출력층(13)에 전달하는 은닉층(12), 및 출력 벡터(Y`)에 활성화 함수를 적용하여 출력 벡터(Y`)에 대응하는 확률(p)을 결정하고, 결정된 확률(p)이 가장 높은 출력 벡터(Y`)를 출력하는 출력층(13)을 포함할 수 있다. 본 발명에서 인공 신경망 엔진(102b)을 구성하는 노드들 각각은 본 발명이 속하는 기술분야에서 흔히 사용하는 표현인 뉴런(neuron)이라는 용어로도 혼용하여 지칭될 수 있다.Referring to FIG. 7 , the artificial neural network engine 102b receives a learning feature vector (X) and inputs an input layer 11 composed of the same number (N) of input nodes as the number of component values of the received learning feature vector. ), the hidden layer 12 that transfers the output vector Y′ calculated using the output values received from the input layer 11 to the output layer 13, and the output vector Y′ by applying an activation function to the output vector It may include an output layer 13 that determines a probability p corresponding to (Y′) and outputs an output vector Y′ having the highest probability p. In the present invention, each of the nodes constituting the artificial neural network engine 102b may be interchangeably referred to as a neuron, which is an expression commonly used in the art to which the present invention belongs.

구체적으로, 인공 신경망 엔진(102b)은, 훈련 입력값으로 제공된 학습 특징 벡터(X)를 입력받으면, 은닉층(12)의 출력으로서 획득되는 출력 벡터(Y`)와 훈련 출력값으로 제공받은 학업성취능력 타입을 지시하는 훈련출력벡터(Y)를 사용하여 손실함수(loss function)을 연산하고, 연산된 손실함수의 결과값이 최소화되도록 지도학습된다.Specifically, when the artificial neural network engine 102b receives the learning feature vector (X) provided as a training input value, the output vector (Y`) obtained as an output of the hidden layer 12 and the academic achievement capability provided as the training output value A loss function is calculated using the training output vector (Y) indicating the type, and supervised learning is performed so that the resulting value of the calculated loss function is minimized.

예를 들어, 손실 함수(H(Y,Y`))는, 크로스 엔트로피(Cross Entropy) 함수일 수 있다. 출력 벡터(Y`)와 훈련출력벡터(Y) 사이의 크로스 엔트로피(H(Y,Y`))는 다음의 수학식 3과 같이 정의될 수 있다.For example, the loss function H(Y,Y′) may be a cross entropy function. The cross entropy (H(Y,Y`)) between the output vector (Y`) and the training output vector (Y) can be defined as in Equation 3 below.

수학식 3에서 Ym은 훈련출력벡터(Y)의 m(m은 1 이상의 자연수)번째 성분이고, Y`m은 출력 벡터(Y`)의 m번째 성분일 수 있다.In Equation 3, Ym is the mth component (m is a natural number greater than or equal to 1) of the training output vector Y, and Y`m may be the mth component of the output vector Y′.

입력층(11)은 학습 특징 벡터(X)를 입력받고, 입력받은 학습 특징 벡터(X)의 성분들 각각에 대하여, 입력 노드들과 대응하는 하나 이상의 연결 강도값들을 적용하여 은닉층(12)에 전달할 수 있다.The input layer 11 receives a learning feature vector (X) and applies one or more connection strength values corresponding to the input nodes to each of the components of the input learning feature vector (X) so that the hidden layer (12) can be conveyed

예를 들어, 입력 노드들 각각에 대응하는 하나 이상의 연결 강도값들은 N×M의 크기를 갖는 제1 연결강도 행렬(WN×M)로 표현할 수 있다. 이때, N은 입력노드들과 동일한 개수일 수 있고, M은 N보다 1/10 배 이하로 충분히 작게 설정된다. 제1 연결강도 행렬(WN×M)은 임의의 초기값으로 설정된 후 지도학습을 통해 지속적으로 갱신되는 파라미터일 수 있다.For example, one or more connection strength values corresponding to each of the input nodes may be expressed as a first connection strength matrix (W N×M ) having a size of N×M. At this time, N may be the same number as the input nodes, and M is set sufficiently smaller than N by 1/10 times or less. The first connection strength matrix (W N×M ) may be a parameter that is continuously updated through supervised learning after being set to a random initial value.

종합하면, 입력층(11)은 입력받은 학습 특징 벡터(X)에 제1 연결강도 행렬(WN×M)을 행렬곱 연산하여 얻어진 중간 연산 벡터(X)을 은닉층(12)에 전달할 수 있다.In summary, the input layer 11 may transfer the intermediate operation vector (X) obtained by matrix multiplication of the first connection strength matrix (W N×M ) to the input learning feature vector (X) to the hidden layer (12). .

은닉층(12)은, 입력층(11)으로부터 전달받은 중간 연산 벡터(X)에서 획득되는 특징 벡터(feature vector, F)에 은닉 노드들 각각에 대응하는 하나 이상의 연결 강도를 적용하여 출력 벡터(Y`)를 생성하고, 생성된 출력 벡터(Y`)를 출력층(13)에 전달할 수 있다. The hidden layer 12 applies one or more connection strengths corresponding to each of the hidden nodes to a feature vector (F) obtained from an intermediate operation vector (X) received from the input layer 11 to obtain an output vector (Y `) can be generated, and the generated output vector (Y`) can be transmitted to the output layer 13.

예를 들어, 은닉층(12)은, 중간 연산 벡터(X)로부터 아래 수학식 4를 만족하는 대각 행렬(diagonal matrix)인 특징 벡터(F)를 획득할 수 있다.For example, the hidden layer 12 may obtain a feature vector F, which is a diagonal matrix that satisfies Equation 4 below, from an intermediate operation vector X.

수학식 4에서, R는 대각 행렬인 특징 벡터(F)와 중간 연산 벡터(X) 사이에 수학식4에 따른 관계를 가역적으로 만족시키는 행렬로서, 좌표변환행렬에 해당한다. 수학식 4에 따른 연산은 대각화 연산의 하나로 지칭될 수 있으며, 통상의 기술자에게 쉽게 이해될 수 있으므로 구체적인 설명은 생략한다.In Equation 4, R is a matrix that reversibly satisfies the relationship according to Equation 4 between the feature vector (F), which is a diagonal matrix, and the intermediate operation vector (X), and corresponds to the coordinate transformation matrix. The operation according to Equation 4 may be referred to as one of the diagonalization operations, and since it can be easily understood by those skilled in the art, a detailed description thereof will be omitted.

이때, 은닉 노드들 각각에 대응하는 하나 이상의 연결 강도값들은 M×Q의 크기를 갖는 제2 연결강도 행렬(UM×Q)로 표현할 수 있다. 즉, 제2 연결강도 행렬(UM×Q)은 M개의 차원으로 사상된 특징 벡터(F)를 다시 Q개의 차원으로 늘린다. Q는 M보다 10배 이상 충분히 큰 값으로 설정된다.In this case, one or more connection strength values corresponding to each of the hidden nodes may be expressed as a second connection strength matrix (U M×Q ) having a size of M×Q. That is, the second connection strength matrix (UM×Q) increases the feature vector (F) mapped in M dimensions to Q dimensions again. Q is set to a value that is at least 10 times larger than M.

한편, 제2 연결강도 행렬(UM×Q)의 초기값은 임의의 값으로 설정된 후, 특징 벡터(F)와 제2 연결강도 행렬(UM×Q) 사이의 행렬곱 연산하여 생성된 출력 벡터(Y`)가 훈련 출력값인 훈련출력벡터(Y)가 되도록 지속적으로 갱신될 수 있다. 즉, 제2 연결강도 행렬(UM×Q)도 훈련 데이터를 지속적으로 지도학습함에 따라 갱신되는 파라미터일 수 있다.Meanwhile, after the initial value of the second coupling strength matrix (U M×Q ) is set to an arbitrary value, an output generated by performing a matrix multiplication operation between the feature vector (F) and the second coupling strength matrix (U M×Q ) The vector (Y′) can be continuously updated to become the training output vector (Y), which is a training output value. That is, the second connection strength matrix (U M×Q ) may also be a parameter that is updated as training data is continuously supervised.

즉, 은닉층(12)은, 입력층(11)으로부터 전달받은 중간 연산 벡터(X)를 특징 벡터로 변환하고, 특징 벡터에 대하여 연결강도를 적용하여 출력 벡터(Y`)를 생성하므로, 마치 CNN(convolutional neural network)의 특징 추출을 담당하는 컨볼루셔널 레이어와 유사한 기능을 은닉층(12)에서 수행하도록 구성할 수 있다.That is, since the hidden layer 12 converts the intermediate operation vector (X) received from the input layer 11 into a feature vector and applies the connection strength to the feature vector to generate an output vector (Y`), it is like a CNN The hidden layer 12 may perform a function similar to a convolutional layer responsible for extracting features of a convolutional neural network.

출력층(13)은, 은닉층(12)으로부터 전달받은 출력 벡터(Y`)에 활성화 함수를 적용함으로써 출력 벡터(Y`)에 대응하는 확률(p)을 결정하고, 결정된 확률(p)이 가장 높은 출력 벡터(Y`)를 출력할 수 있다. 활성화 함수는 다양한 범위를 가지는 값들을 0과 1 사이의 값으로 확대 또는 축소함으로써 확률로 변환하는 효과가 있다. 예를 들어, 활성화 함수는, ReLU 함수 또는 Softmax 함수일 수 있으나 이에 한정되는 것은 아니다.The output layer 13 determines the probability p corresponding to the output vector Y′ by applying an activation function to the output vector Y′ received from the hidden layer 12, and the determined probability p is the highest. An output vector (Y`) can be output. The activation function has the effect of converting values having various ranges into probabilities by expanding or reducing values between 0 and 1. For example, the activation function may be a ReLU function or a Softmax function, but is not limited thereto.

한편, 일 실시예에서 입력층(11)과 은닉층(12) 사이에 2의 8제곱에 해당하는 값인 256의 p 배수(p는 2 이상의 자연수로서 예를 들면 3)에 해당하는 개수의 뉴런들로 구성되는 자가주의집중 계층(14)이 더 포함될 수 있다. 자가주의집중계층(14, self-attention layer)은, 자기집중 메커니즘(self-attention mechanism)에 따른 기법을 수행하는 계층으로서, 입력층(11)으로부터 전달되는 시퀀스로부터 정보를 통합하는 신경망 구조의 한 종류이다. On the other hand, in one embodiment, between the input layer 11 and the hidden layer 12, the number of neurons corresponding to p multiples of 256 (p is a natural number of 2 or more, for example 3), which is a value corresponding to the 8th power of 2 A configured self-attention layer 14 may be further included. A self-attention layer (14) is a layer that performs a technique according to a self-attention mechanism, and is one of the neural network structures that integrates information from a sequence transmitted from the input layer (11). It is kind.

자가집중 메커니즘에 대해서는 Vaswani , output probability to another component or to another sys- A. , Shazeer , N. , Parmar , N. , Uszkoreit , J. , Jones , L. , Gomez , tem , and the like . Examples of the output terminal may 45 A. N. , Kaiser , L. and Polosukhin , I. , 2017.을 참조하여 이해될 수 있으므로, 기본적인 설명은 간략히 하였다.For self-focusing mechanisms, Vaswani, output probability to another component or to another sys-A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, tem, and the like. Since it can be understood by referring to Examples of the output terminal may 45 A. N., Kaiser, L. and Polosukhin, I., 2017., the basic description has been simplified.

한편, 본 발명의 일 실시예에서 자가주의집중계층(14)은, 입력층(11)의 출력으로 제공되는 중간 연산 벡터(X)들 각각의 중요도를 판별하여 중요도가 상대적으로 낮은 정보를 배제시켜 은닉층(12)으로 전달하도록 동작함으로써 예측 결과를 높일 수 있는 역할을 한다. 특히, 입력층(11)으로 하나의 교육 과정에 따른 레슨 별 학습 특징 벡터(X)가 순차적으로 입력될 경우, 다음 교육 과정에 영향이 큰 레슨과 영향이 적은 레슨이 구별되기 때문에 이를 고려하여 은닉층(12)에 전달함으로써 예측 성공율을 높이도록 구성하는 것이 바람직하다.On the other hand, in one embodiment of the present invention, the self-attention layer 14 determines the importance of each of the intermediate operation vectors X provided as the output of the input layer 11, and excludes information of relatively low importance. By operating to transfer to the hidden layer 12, it serves to increase the prediction result. In particular, when the learning feature vector (X) for each lesson according to one educational process is sequentially input into the input layer 11, lessons that have a large impact on the next training process and lessons that have a small impact are distinguished. Considering this, the hidden layer It is preferable to configure to increase the prediction success rate by passing to (12).

구체적으로, 자가주의집중계층(14)은, 쿼리(query)와 키(key), 값(value)이라고 하는 3개의 변수들 각각과 대응하는 벡터들을 이용하여 입력층(11)에서 전달받는 중간 연산 벡터(X)들 마다 중요도를 나타내는 자가주의집중 값(α)을 산출한 뒤, 입력층(11)에서 전달받은 중간 연산 벡터(X)들 중에서, 산출된 자가주의집중 값이 가장 높게 산출되는 중간 연산 벡터(X)를 선정하여 은닉층(12)으로 전달하도록 구성될 수 있다.Specifically, the self-attention-focused layer 14 performs an intermediate operation received from the input layer 11 using vectors corresponding to each of three variables called a query, a key, and a value. After calculating the self-attention value (α) indicating the importance for each vector (X), among the intermediate calculation vectors (X) transmitted from the input layer 11, the middle in which the calculated self-attention value is the highest It may be configured to select an operation vector (X) and pass it to the hidden layer (12).

자가주의집중 값(α)을 산출하기 위하여, 쿼리(query) 변수와 대응하는 q벡터, 키(key) 변수와 대응하는 K벡터, 값(value) 변수와 대응하는 V 벡터가 먼저 결정되어야 한다. 여기서, q벡터는 중요도를 판별하고자 하는 대상으로서, 본 발명에서는 입력층(11)의 출력으로 제공되는 중간 연산 벡터(X)일 수 있다. K벡터는 q벡터와 연산됨으로써 중요도 판별의 기준값을 도출하는 역할을 할 수 있다. V벡터는 K벡터와 q벡터 사이의 연산 결과로 얻어지는 확률값에 대해 적절한 크기의 자가주의집중 값(α)을 도출하는 역할을 한다. q벡터, K벡터, 및 v벡터는 모두 동일한 차원을 갖는 벡터이다.In order to calculate the self-attention value (α), a q vector corresponding to a query variable, a K vector corresponding to a key variable, and a V vector corresponding to a value variable must first be determined. Here, the q vector is an object to be determined for importance, and may be an intermediate operation vector (X) provided as an output of the input layer 11 in the present invention. The K vector may play a role in deriving a reference value for determining the importance by being operated with the q vector. The V vector serves to derive the self-attention value (α) of an appropriate size for the probability value obtained as a result of the operation between the K vector and the q vector. The q vector, K vector, and v vector are all vectors having the same dimension.

도 8을 참조하면, 일 실시예에서 K 벡터는 현재 교육과정에 따른 레슨의 총 개수, 레슨에서 문제풀이 횟수에 따른 평가 통과 횟수의 비율, 및 현재 교육과정에서 평균 통과 횟수에 따른 평균 점수의 비율 각각을 성분값으로 갖는 초기 K벡터가 구성될 수 있다.Referring to FIG. 8, in one embodiment, K vector is the ratio of the total number of lessons according to the current curriculum, the ratio of the number of passing evaluations according to the number of problem solving in the lesson, and the ratio of the average score according to the average number of passing in the current curriculum An initial K vector having each of the component values may be constructed.

다음으로, 초기 K벡터가 q벡터와 대응하는 차원을 갖도록 미리 설정된 기준값을 이용하여 패딩(padding) 처리되고, 마스크 벡터(mask vecter)와 쉬프트 내적 연산된 결과값으로서 K벡터가 결정될 수 있다. 마스크 벡터는 연산 대상이 되는 성분값들에 대한 데이터 평활화(data smoothing)을 하는 벡터로서, 다양한 형태의 스무딩용 벡터들이 존재하므로 통상의 기술자는 주지된 스무딩 벡터들 중 하나를 선택적으로 활용할 수 있다.Next, the initial K vector may be padded using a preset reference value to have a dimension corresponding to the q vector, and the K vector may be determined as a result of shift dot product operation with a mask vector. A mask vector is a vector for data smoothing on component values to be operated, and since various types of smoothing vectors exist, a person skilled in the art can selectively utilize one of well-known smoothing vectors.

쉬프트 내적 연산은 마스크 벡터가 하나의 성분값씩 이동하면서 패딩 처리된 초기 K벡터와의 내적(dot)연산을 순차적으로 수행하는 것을 의미할 수 있다. 즉, 내적 연산이 수행될 때마다 순차적으로 얻어지는 결과값들이 K벡터의 성분값들이 된다. The shift dot product operation may mean sequentially performing a dot operation with the padded initial K vector while the mask vector is shifted by one component value. That is, the result values sequentially obtained each time the dot product operation is performed become component values of the K vector.

V 벡터는 관리자에 의해 미리 설정되는 고정된 성분값을 갖는 벡터일 수 있다.The V vector may be a vector with fixed component values preset by an administrator.

결정된 q벡터, K벡터, V벡터를 기반으로 하기 수학식에 따른 자가주의집중 값(α)이 다음과 같이 산출될 수 있다.Based on the determined q vector, K vector, and V vector, the self attention value (α) according to the following equation can be calculated as follows.

상기 수학식 5를 참조하면, activate는 입력값에 대한 확률값을 출력하는 활성화함수로서 전술한 ReLU 함수 또는 Softmax 함수일 수 있다. q는 상기 q벡터이고, K는 상기 K벡터이고, V는 상기 V벡터이고, d는 q벡터와 K벡터 사이의 연산 결과를 미리 설정된 크기의 값 이하로 낮춰주는 상수로서 미리 설정되는 값일 수 있다. Referring to Equation 5 above, activate is an activation function that outputs a probability value for an input value, and may be the aforementioned ReLU function or Softmax function. q is the q vector, K is the K vector, V is the V vector, and d is a constant that lowers the operation result between the q vector and the K vector to a value of a preset magnitude or less, and may be a preset value. .

본 발명의 일 실시예에서 은닉층(12)은, 동일한 개수의 뉴런들을 가지며, 서로 다르고 순차적으로 연결된 복수의 은닉층들로 구성될 수 있다. 예를 들어, 은닉층(12)은 서로 다르고 순차적으로 연결된 제1 은닉층, 제2 은닉층, 제3 은닉층, 및 제4 은닉층으로 구성될 수 있다. 이때, 제1 내지 제4 은닉층은 선형 레이어(linear layer)일 수 있으며, 제1 내지 제4 은닉층들 중에서 적어도 하나는 밀집 레이어(dense layer)일 수 있다. 여기서 선형 레이어 또는 밀집 레이어의 지정은 Tensorflow에서 미리 정의된 함수를 통해 간단하게 설정될 수 있으므로 설명은 생략한다.In one embodiment of the present invention, the hidden layer 12 may be composed of a plurality of hidden layers having the same number of neurons, different from each other and sequentially connected. For example, the hidden layer 12 may be composed of a first hidden layer, a second hidden layer, a third hidden layer, and a fourth hidden layer that are different from each other and sequentially connected. In this case, the first to fourth hidden layers may be linear layers, and at least one of the first to fourth hidden layers may be a dense layer. The designation of the linear layer or the dense layer here can be easily set through a predefined function in Tensorflow, so the description is omitted.

또한, 제1 내지 제4 은닉층들 중에서 적어도 하나는 은닉층들의 개수와 은닉층들 각각이 갖는 뉴런들의 수에 따라 결정되는 확률(p)에 따라 드랍아웃(drop out)이 적용될 수 있다.In addition, dropout may be applied to at least one of the first to fourth hidden layers according to a probability p determined according to the number of hidden layers and the number of neurons each of the hidden layers has.

본 발명의 일 실시예에서, 드랍아웃이란, 해당 계층을 구성하는 뉴런들 중에서 확률(p)에 따라 무작위로 선택된 적어도 일부의 뉴런들의 가중치를 0 또는 미리 정의된 상수로 설정함으로써 해당 일부의 뉴런들을 비활성화하거나 방해하도록 구성하는 것을 의미할 수 있다.In one embodiment of the present invention, dropout refers to setting the weights of at least some neurons randomly selected according to a probability (p) from among the neurons constituting the layer to 0 or a predefined constant so that some neurons are It can mean disabling or configuring it to interfere.

예를 들어, 제1 은닉층이 768개의 뉴런들로 구성되고, 확률(p)이 0.2인 경우, 768개의 뉴런들 중 무작위로 선택된 20%의 뉴런들(즉, 768/5 개의 뉴런들)에 대한 가중치가 0 또는 미리 정의된 상수로 설정될 수 있다.For example, if the first hidden layer is composed of 768 neurons and the probability (p) is 0.2, for 20% of neurons (i.e., 768/5 neurons) randomly selected among the 768 neurons, The weight can be set to 0 or a predefined constant.

예를 들어, 확률(p)는 다음의 수학식 6과 같이 정의될 수 있다.For example, probability p may be defined as in Equation 6 below.

수학식 6에서 NRn은 제1 내지 제4 은닉층들에 포함된 뉴런들의 평균 개수일 수 있고, HDn은 은닉층들의 전체 개수로서 제1 내지 제4 은닉층들로 구성될 경우 4일 수 있다. In Equation 6, NRn may be the average number of neurons included in the first to fourth hidden layers, and HDn is the total number of hidden layers, which may be 4 when the first to fourth hidden layers are included.

이처럼, 제1 내지 제4 은닉층들 중에서 적어도 하나에 대하여 드랍아웃을 적용할 경우, 은닉층들의 수와 각 뉴런들의 수가 증가함에 따라 발생할 수 있는 과적합 경향성을 보상하거나 상쇄할 수 있어 더 높은 예측 효과를 가져오는 데 도움이 될 수 있다. As such, when dropout is applied to at least one of the first to fourth hidden layers, it is possible to compensate or offset the overfitting tendency that may occur as the number of hidden layers and each neuron increases, resulting in a higher prediction effect. can help bring

일 실시예에서, 제1 내지 제4 은닉층들 중에서 제1 은닉층 및 제3 은닉층 내지 제4 은닉층 각각은 서로 동일한 뉴런들의 수로 구성될 수 있다. 예를 들어, 각각 768개의 뉴런들로 구성될 수 있다.In one embodiment, each of the first hidden layer and the third to fourth hidden layers among the first to fourth hidden layers may include the same number of neurons. For example, each may consist of 768 neurons.

이때, 제1 은닉층 뒤에 연결되는 제2 은닉층을 구성하는 뉴런들의 수는 다른 은닉층들 각각이 갖는 뉴런들의 수보다 적어도 4 배이상 클 수 있다. 제2 은닉층을 구성하는 뉴런들의 수를 다른 은닉층들 각각이 갖는 뉴런들의 수보다 기준치 이상 크게 설정할 경우, 인공 신경망 엔진(102b)이 과적합되는 경향성이 줄어들 수 있는 장점이 있다.In this case, the number of neurons constituting the second hidden layer connected behind the first hidden layer may be at least four times greater than the number of neurons each of the other hidden layers has. When the number of neurons constituting the second hidden layer is set to be larger than the reference value or more than the number of neurons of each of the other hidden layers, there is an advantage in that the overfitting tendency of the artificial neural network engine 102b can be reduced.

도 9는 일 실시예에 따른 가우시안 혼합 모델을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 장치의 하드웨어 구성을 예시적으로 나타낸 도면이다.9 is a diagram showing the hardware configuration of an apparatus for recommending a learning amount using artificial intelligence and clustering using a Gaussian mixture model at the same time according to an embodiment by way of example.

도 9를 참조하면, 학습량 추천 서버(100)는, 적어도 하나의 프로세서(110), 상기 적어도 하나의 프로세서(110)가 적어도 하나의 동작(operation)을 수행하도록 지시하는 명령어들(instructions)을 저장하는 메모리(memory, 120)를 포함할 수 있다.Referring to FIG. 9, the learning amount recommendation server 100 stores at least one processor 110 and instructions instructing the at least one processor 110 to perform at least one operation. It may include a memory (memory, 120) to.

여기서, 적어도 하나의 동작은 전술한 학습량 추천 서버(100)이 동작이나 기능들 중에서 적어도 일부를 포함하는 것으로 해석되며, 중복 설명을 방지하기 위하여 구체적인 설명은 생략된다.Here, at least one operation is interpreted as including at least some of the operations or functions of the aforementioned learning amount recommendation server 100, and detailed descriptions are omitted to prevent redundant descriptions.

여기서 적어도 하나의 프로세서(110)는 중앙 처리 장치(central processing unit, CPU), 그래픽 처리 장치(graphics processing unit, GPU), 또는 본 발명의 실시예들에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 메모리(120)는 휘발성 저장 매체 및 비휘발성 저장 매체 중에서 적어도 하나로 구성될 수 있다. Here, the at least one processor 110 may mean a central processing unit (CPU), a graphics processing unit (GPU), or a dedicated processor for performing methods according to embodiments of the present invention. can The memory 120 may include at least one of volatile storage media and non-volatile storage media.

학습량 추천 서버(100)는, 적어도 하나의 동작을 수행함에 따른 입력 데이터, 중간 처리 데이터, 임시 데이터, 출력 데이터 등을 비일시적으로 저장하기 위한 저장 장치(160)를 더 포함할 수 있다.The learning amount recommendation server 100 may further include a storage device 160 for non-temporarily storing input data, intermediate processing data, temporary data, and output data according to performing at least one operation.

예를 들어, 메모리(120)는 읽기 전용 메모리(read only memory, ROM) 및 랜덤 액세스 메모리(random access memory, RAM) 중 하나일 수 있고, 저장 장치(160)는, 플래시메모리(flash-memory), 하드디스크 드라이브(HDD), 솔리드 스테이트 드라이브(SSD), 또는 각종 메모리 카드(예를 들어, micro SD 카드) 등일 수 있다.For example, the memory 120 may be one of a read only memory (ROM) and a random access memory (RAM), and the storage device 160 may be a flash-memory. , a hard disk drive (HDD), a solid state drive (SSD), or various memory cards (eg, a micro SD card).

또한, 학습량 추천 서버(100)는, 무선 네트워크를 통해 통신을 수행하는 송수신 장치(transceiver)(130)를 더 포함할 수 있다. 또한, 학습량 추천 서버(100)는 입력 인터페이스 장치(140), 출력 인터페이스 장치(150) 등을 더 포함할 수 있다. 학습량 추천 서버(100)에 포함된 각각의 구성 요소들은 버스(bus)(170)에 의해 연결되어 서로 통신을 수행할 수 있다.In addition, the learning amount recommendation server 100 may further include a transceiver 130 that performs communication through a wireless network. In addition, the learning amount recommendation server 100 may further include an input interface device 140 and an output interface device 150. Each component included in the learning amount recommendation server 100 is connected by a bus 170 to communicate with each other.

학습량 추천 서버(100)의 예를 들면, 통신 가능한 데스크탑 컴퓨터(desktop computer), 랩탑 컴퓨터(laptop computer), 노트북(notebook), 스마트폰(smart phone), 태블릿 PC(tablet PC), 모바일폰(mobile phone), 스마트 워치(smart watch), 스마트 글래스(smart glass), e-book 리더기, PMP(portable multimedia player), 휴대용 게임기, 네비게이션(navigation) 장치, 디지털 카메라(digital camera), DMB(digital multimedia broadcasting) 재생기, 디지털 음성 녹음기(digital audio recorder), 디지털 음성 재생기(digital audio player), 디지털 동영상 녹화기(digital video recorder), 디지털 동영상 재생기(digital video player), PDA(Personal Digital Assistant) 등일 수 있다.For example, the learning amount recommendation server 100 may include a communicable desktop computer, a laptop computer, a notebook, a smart phone, a tablet PC, and a mobile phone. phone), smart watch, smart glass, e-book reader, portable multimedia player (PMP), portable game device, navigation device, digital camera, digital multimedia broadcasting (DMB) ) player, digital audio recorder, digital audio player, digital video recorder, digital video player, personal digital assistant (PDA), and the like.

도 10은 일 실시예에 따른 가우시안 혼합 모델을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 방법 및 장치의 효과를 확인할 수 있는 통계 분석 결과를 나타낸 그래프이다.10 is a graph showing statistical analysis results for confirming the effect of a learning amount recommendation method and apparatus using artificial intelligence and clustering using a Gaussian mixture model at the same time according to an embodiment.

도 10을 참조하면, 본 발명의 일 실시예에 따른 가우시안 혼합 모델을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 방법 또는 가우시안 혼합 모델을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 장치에서 제공되는 추천 학습량으로 다음 교육과정에서의 학습을 실시한 제1 사용자 그룹에 대한 평가성적(Xi)에 따른 확률분포(with AI)가 도시된다.Referring to FIG. 10, provided by a learning amount recommendation method using both clustering and artificial intelligence using a Gaussian mixture model according to an embodiment of the present invention or a learning amount recommendation device using clustering and artificial intelligence using a Gaussian mixture model at the same time The probability distribution (with AI) according to the evaluation scores (X i ) for the first user group, which has learned in the next curriculum with the recommended amount of learning, is shown.

또한, 도 10을 참조하면, 본 발명의 일 실시예에 따라 제공되는 추천 학습량으로 다음 교육과정에서의 학습을 실시하지 않고, 사용자들 각자의 선택에 따른 학습량으로 다음 교육과정에서의 학습을 실시한 제2 사용자 그룹에 대한 평가성적(Xi)에 따른 확률분포(General)가 도시된다.In addition, referring to FIG. 10, learning in the next curriculum is not performed with the recommended learning amount provided according to an embodiment of the present invention, but learning in the next curriculum is performed with the learning amount selected by each user. A probability distribution (General) according to evaluation scores (X i ) for 2 user groups is shown.

여기서, 제1 사용자 그룹과 제2 사용자 그룹이 수행한 현재 교육과정과 다음 교육과정은 동일하며, 각 그룹에 속하는 사용자들의 수는 동일하다. 도면에서 곱셉, 나눗셈, 분수/소수는 각각 다음 교육과정을 의미하며, 덧셈 -> 곱셈 -> 나눗셈 -> 분수/소수의 교육과정 순서를 가진다.Here, the current training course and the next training course performed by the first user group and the second user group are the same, and the number of users belonging to each group is the same. In the drawing, multiplication, division, and fraction/decimal mean the next curriculum, respectively, and have the curriculum order of addition -> multiplication -> division -> fraction/decimal.

이때, 도 9에 도시된 것과 같이 학업성취능력 타입이 D 타입이고, 다음 교육과정이 분수/소수인 경우를 제외한 거의 모든 학업성취능력 타입에 따른 다음 교육과정에서 모두 본 발명의 일 실시예에 따른 추천 학습량을 실시하였을 때 더 높은 평가성적을 갖는 것이 확인된다.At this time, as shown in FIG. 9, all of the following curriculum according to the academic achievement ability type, except for the case where the academic achievement ability type is D type and the next curriculum is fractional/decimal, are all according to an embodiment of the present invention. It is confirmed that it has a higher evaluation score when the recommended learning amount is implemented.

따라서, 본 발명의 일 실시예에 따라 제공되는 추천 학습량으로 학습할 경우 학습 효과가 더욱 높아질 수 있어 학업 효율이 크게 증가할 수 있는 장점이 있다. 또한 자신의 학습량을 스스로 선택하거나 계획하기 힘든 어린 학생일수록, 추천 학습량을 제공받았을 때 더욱 높은 학업 성취도 증가 효과가 나타날 수 있다.Therefore, in the case of learning with the recommended learning amount provided according to an embodiment of the present invention, the learning effect can be further enhanced, and thus the study efficiency can be greatly increased. In addition, for young students who have difficulty choosing or planning their own learning volume, a higher academic achievement increase effect may appear when they are provided with the recommended learning volume.

본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.The methods according to the present invention may be implemented in the form of program instructions that can be executed by various computer means and recorded on a computer readable medium. Computer readable media may include program instructions, data files, data structures, etc. alone or in combination. Program instructions recorded on a computer readable medium may be specially designed and configured for the present invention or may be known and usable to those skilled in computer software.

컴퓨터 판독 가능 매체의 예에는 롬(ROM), 램(RAM), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Examples of computer readable media may include hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions may include not only machine language codes generated by a compiler but also high-level language codes that can be executed by a computer using an interpreter and the like. The hardware device described above may be configured to operate with at least one software module to perform the operations of the present invention, and vice versa.

또한, 상술한 방법 또는 장치는 그 구성이나 기능의 전부 또는 일부가 결합되어 구현되거나, 분리되어 구현될 수 있다. In addition, the above-described method or device may be implemented by combining all or some of its components or functions, or may be implemented separately.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. Although the above has been described with reference to preferred embodiments of the present invention, those skilled in the art will variously modify and change the present invention within the scope not departing from the spirit and scope of the present invention described in the claims below. You will understand that it can be done.

삭제delete

Claims (8)

K-평균 알고리즘을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 장치로서,
다수의 사용자들에 대응하는 학생 단말들로부터 다수의 학습 데이터들을 수집하는 학습 데이터 수집부;
상기 다수의 학습 데이터들을 이용하여 상기 학생 단말들 각각의 사용자와 대응하는 학업성취능력 타입을 예측하는 학업성취능력 예측부;
예측된 학업성취능력 타입에 따라 상기 학습 데이터들을 전처리(pre-processing)하여 학습량 테이블을 생성하는 학습량 테이블 생성부; 및
상기 학습량 테이블을 참조하여 타겟 사용자에 대응하는 추천 학습량을 결정하고, 결정된 상기 추천 학습량을 상기 타겟 사용자의 학생 단말에 제공하는 추천 학습량 결정부;를 포함하고,
상기 학업성취능력 예측부는,
K-평균 알고리즘을 이용하여 현재 교육과정에 따른 학습 데이터들 각각에 대응하는 사용자들을 클러스터링함으로써, 사용자들 각각에 대응하는 클러스터(cluster)를 결정하고, 결정된 클러스터에 부여된 학업성취능력 타입을 해당 클러스터에 속하는 사용자의 학업성취능력 타입으로 예측하는 군집화 엔진; 및
상기 사용자들 각각의 학습 데이터와 대응하는 훈련 입력값 및 상기 군집화 엔진을 통해 학업성취능력 타입이 라벨링된 훈련 출력값으로 구성되는 훈련 데이터를 이용하여 지도학습(supervised-learning)되고, 딥러닝 기반으로 상기 타겟 사용자에 대응하는 학업성취능력 타입을 예측하는 인공신경망 엔진;을 포함하고,
상기 인공신경망 엔진은,
상기 사용자들 각각의 현재 교육과정에 따른 학습 데이터를 변환하여 획득되는 학습 특징 벡터를 입력받고, 상기 학습 특징 벡터의 성분값 개수와 동일한 개수의 뉴런들로 구성되는 입력층;
상기 입력층으로부터 전달받은 출력값들을 이용하여 산출된 출력 벡터를 출력층에 전달하는 복수의 은닉층들;
상기 출력 벡터에 활성화함수(activation function)를 적용하여 상기 출력 벡터에 대응하는 확률을 결정하고, 결정된 확률이 가장 높은 출력 벡터를 출력하는 출력층; 및
상기 입력층과 상기 은닉층 사이에 자기집중 메커니즘(self-attention mechanism)에 따른 기법을 수행하는 자가주의 집중계층(self-attention layer)을 포함하고,
상기 자가주의 집중계층은, 상기 입력층(11)의 출력값들로서 제공되는 중간 연산 벡터들 각각에 대하여 자가주의집중값(α)을 산출하고, 산출된 상기 자가주의집중값이 가장 높은 중간 연산 벡터를 선정하여 상기 은닉층으로 전달하되,
상기 자가주의집중값(α)은 하기 수학식에 따라 산출되고,

상기 수학식에서 activate는 입력값에 대한 확률값을 출력하는 활성화함수로서 ReLU 함수 또는 Softmax 함수이고, q는 상기 입력층의 출력값들로서 제공되는 중간 연산 벡터들 각각을 나타내는 q벡터이고, V는 관리자에 의해 미리 설정되는 고정된 성분값을 갖는 V벡터이고, K는 초기 K벡터에 대한 패딩(padding) 처리 후 마스크 벡터(mask vector)와의 쉬프트 내적 연산의 결과값으로 도출되는 K벡터이며,
상기 초기 K벡터는, 현재 교육과정에 따른 레슨의 총 개수, 레슨에서 문제풀이 횟수에 따른 평가 통과 횟수의 비율, 및 현재 교육과정에서 평균 통과 횟수에 따른 평균 점수의 비율 각각을 성분값으로 갖는 벡터이고,
상기 K-평균 알고리즘은, 비지도 학습에 속하는 머신러닝 기반의 클러스터링 기법으로서, K개의 클러스터들 각각에 대해 초기 중심점에 해당하는 벡터값을 설정하고, 상기 사용자들 각각을 대표하는 상기 학습 특징 벡터와 가장 가까운 초기 중심점을 갖는 클러스터로 상기 사용자들 각각을 할당하되,
상기 군집화 엔진은, 상기 사용자들 각각에 대해 수집되는 현재 교육과정에 따른 학습 데이터들을 이용하여 현재 교육과정과 레슨에 따른 문제풀이 횟수, 평가 통과 횟수, 교육과정에서의 평균 통과 횟수, 교육과정에서의 평균 점수, 및 레슨에서의 테스트 점수를 포함하는 전처리 학습 데이터를 획득하고,
상기 학습 특징 벡터는, 상기 사용자들 각각에 대한 현재 교육과정에서 레슨의 식별기호, 상기 전처리 학습 데이터에서 문제풀이 횟수, 평가 통과 횟수, 평균 통과 횟수, 평균 점수, 및 레슨에서의 테스트 점수 각각을 성분값으로 하고, 상기 현재 교육과정에 속하는 레슨들마다 각각 하나씩 생성되고,
상기 은닉층들은,
서로 순차적으로 연결된 제1 은닉층, 제2 은닉층, 제3 은닉층, 및 제4 은닉층을 포함하고,
상기 제1 내지 제4 은닉층은 선형 레이어(linear layer)이고, 상기 제1 내지 제4 은닉층들 중에서 적어도 하나는 밀집 레이어(dense layer)이며,
상기 제1 내지 제4 은닉층 중 적어도 하나는 상기 은닉층들의 개수와 상기 은닉층들 각각이 갖는 뉴런들의 개수에 따라 결정되는 확률에 기초하여 드랍아웃이 적용되되,
상기 드랍아웃은 상기 제1 내지 제4 은닉층 중 적어도 하나를 구성하는 뉴런들 중에서 상기 확률에 따라 무작위로 선택된 뉴런들의 가중치가 미리 정의된 상수로 설정되는 동작인, K-평균 알고리즘을 이용한 클러스터링과 인공지능을 동시에 활용한 학습량 추천 장치.
As a learning amount recommendation device that simultaneously utilizes clustering using the K-means algorithm and artificial intelligence,
a learning data collection unit that collects a plurality of learning data from student terminals corresponding to a plurality of users;
an academic achievement predictor predicting an academic achievement ability type corresponding to a user of each of the student terminals by using the plurality of learning data;
a learning amount table generation unit generating a learning amount table by pre-processing the learning data according to the predicted academic achievement ability type; and
A recommended learning amount determining unit for determining a recommended learning amount corresponding to a target user by referring to the learning amount table and providing the determined recommended learning amount to a student terminal of the target user;
The Academic Achievement Ability Prediction Unit,
By clustering users corresponding to each of the learning data according to the current curriculum using the K-means algorithm, a cluster corresponding to each user is determined, and the academic achievement type assigned to the determined cluster is selected as the corresponding cluster. a clustering engine that predicts the user's academic achievement ability type belonging to; and
Supervised-learning is performed using training data composed of training input values corresponding to the learning data of each of the users and training output values labeled with academic achievement types through the clustering engine, and the learning is performed based on deep learning. An artificial neural network engine that predicts the type of academic achievement ability corresponding to the target user;
The artificial neural network engine,
an input layer that receives a learning feature vector obtained by converting learning data according to the current curriculum of each of the users and is composed of the same number of neurons as the number of component values of the learning feature vector;
a plurality of hidden layers for transmitting an output vector calculated using the output values received from the input layer to an output layer;
an output layer which determines a probability corresponding to the output vector by applying an activation function to the output vector, and outputs an output vector having the highest determined probability; and
A self-attention layer performing a technique according to a self-attention mechanism between the input layer and the hidden layer,
The self-attention concentration layer calculates a self-attention concentration value α for each of the intermediate calculation vectors provided as output values of the input layer 11, and selects an intermediate calculation vector having the highest calculated self-attention concentration value. Selected and delivered to the hidden layer,
The self-attention value (α) is calculated according to the following equation,

In the above equation, activate is a ReLU function or Softmax function as an activation function that outputs a probability value for an input value, q is a q vector representing each of intermediate operation vectors provided as output values of the input layer, and V is a previously set by a manager. A V vector having fixed component values to be set, K is a K vector derived as a result of a shift dot product operation with a mask vector after padding on the initial K vector,
The initial K vector is a vector having as component values each of the total number of lessons according to the current curriculum, the ratio of the number of passing evaluations according to the number of problem solving in the lesson, and the ratio of the average score according to the average number of passages in the current curriculum. ego,
The K-means algorithm is a machine learning-based clustering technique belonging to unsupervised learning, which sets a vector value corresponding to an initial center point for each of the K clusters, and sets the learning feature vector representing each of the users and assign each of the users to the cluster with the closest initial centroid;
The clustering engine, using the learning data according to the current curriculum collected for each of the users, the number of problem solving according to the current curriculum and lessons, the number of passing the evaluation, the average number of passing the curriculum, Obtain pre-processing training data including average scores and test scores in lessons;
The learning feature vector includes the identifier of the lesson in the current curriculum for each of the users, the number of problem solving in the preprocessing learning data, the number of passing the evaluation, the average number of passing, the average score, and each of the test scores in the lesson. value, and one is created for each lesson belonging to the current curriculum,
The hidden layers are
Including a first hidden layer, a second hidden layer, a third hidden layer, and a fourth hidden layer sequentially connected to each other,
The first to fourth hidden layers are linear layers, and at least one of the first to fourth hidden layers is a dense layer,
Dropout is applied to at least one of the first to fourth hidden layers based on a probability determined according to the number of hidden layers and the number of neurons each of the hidden layers has,
The dropout is an operation in which weights of neurons randomly selected according to the probability are set to a predefined constant among neurons constituting at least one of the first to fourth hidden layers, K-means clustering and artificial Learning amount recommendation device that utilizes intelligence at the same time.
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete
KR1020220066793A 2021-12-03 2022-05-31 Method and apparatus for recommending learning amount using artificial intelligence and clustering using k-means algorithm at the same time KR102563986B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220066793A KR102563986B1 (en) 2021-12-03 2022-05-31 Method and apparatus for recommending learning amount using artificial intelligence and clustering using k-means algorithm at the same time

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210171998A KR102405828B1 (en) 2021-12-03 2021-12-03 Method and apparatus for recommending learning amount using clustering and artificial intelligence using gaussian mixed model at the same time
KR1020220066793A KR102563986B1 (en) 2021-12-03 2022-05-31 Method and apparatus for recommending learning amount using artificial intelligence and clustering using k-means algorithm at the same time

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020210171998A Division KR102405828B1 (en) 2021-12-03 2021-12-03 Method and apparatus for recommending learning amount using clustering and artificial intelligence using gaussian mixed model at the same time

Publications (2)

Publication Number Publication Date
KR20230101668A KR20230101668A (en) 2023-07-06
KR102563986B1 true KR102563986B1 (en) 2023-08-07

Family

ID=81987019

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020210171998A KR102405828B1 (en) 2021-12-03 2021-12-03 Method and apparatus for recommending learning amount using clustering and artificial intelligence using gaussian mixed model at the same time
KR1020220066793A KR102563986B1 (en) 2021-12-03 2022-05-31 Method and apparatus for recommending learning amount using artificial intelligence and clustering using k-means algorithm at the same time
KR1020220066795A KR20230083989A (en) 2021-12-03 2022-05-31 Method and apparatus for recommending learning amount using clustering and artificial intelligence using gaussian mixed model at the same time

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020210171998A KR102405828B1 (en) 2021-12-03 2021-12-03 Method and apparatus for recommending learning amount using clustering and artificial intelligence using gaussian mixed model at the same time

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020220066795A KR20230083989A (en) 2021-12-03 2022-05-31 Method and apparatus for recommending learning amount using clustering and artificial intelligence using gaussian mixed model at the same time

Country Status (1)

Country Link
KR (3) KR102405828B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117112832B (en) * 2023-09-12 2024-03-19 社培科技(广东)有限公司 Teaching method and system based on combination of online monitoring and offline guidance
CN117132003B (en) * 2023-10-26 2024-02-06 云南师范大学 Early prediction method for student academic performance of online learning platform based on self-training and semi-supervised learning

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102040506B1 (en) 2018-11-06 2019-11-05 주식회사 대교 Individually costomized learning workload prediction system and method
KR102400582B1 (en) * 2021-12-03 2022-05-20 주식회사 대교씨엔에스 Method and device for personalized learning amount recommendation based on big data and artificial intelligence

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101573601B1 (en) * 2014-03-10 2015-12-04 단국대학교 산학협력단 Apparatus and method for hybrid filtering content recommendation using user profile and context information based on preference
KR20180102786A (en) * 2017-03-08 2018-09-18 김동희 Customized learning service providing method based on big data associated with learning
KR102592677B1 (en) * 2017-05-23 2023-10-23 구글 엘엘씨 Attention-based sequence transduction neural networks
KR102258370B1 (en) * 2019-05-31 2021-05-31 이화여자대학교 산학협력단 Method and apparatus of prediction model for learning outcomes with perceived affordances in video-based learning environment
KR102334387B1 (en) * 2019-12-31 2021-12-02 주식회사 달공 Metacognitive based education content curation system
KR102213478B1 (en) * 2020-02-18 2021-02-08 (주)뤼이드 A system for tracking user knowledge based on artificial intelligence learning and method thereof
KR20210108319A (en) * 2020-02-25 2021-09-02 한국전자통신연구원 Method and system for automatic classification based on machine learning

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102040506B1 (en) 2018-11-06 2019-11-05 주식회사 대교 Individually costomized learning workload prediction system and method
KR102400582B1 (en) * 2021-12-03 2022-05-20 주식회사 대교씨엔에스 Method and device for personalized learning amount recommendation based on big data and artificial intelligence

Also Published As

Publication number Publication date
KR20230101668A (en) 2023-07-06
KR20230083989A (en) 2023-06-12
KR102405828B1 (en) 2022-06-07

Similar Documents

Publication Publication Date Title
KR102506132B1 (en) Method and device for personalized learning amount recommendation based on self-attention mechanism
Spratling Predictive coding as a model of cognition
Qiao et al. Data mining techniques in analyzing process data: A didactic
Silva-Ramírez et al. Single imputation with multilayer perceptron and multiple imputation combining multilayer perceptron and k-nearest neighbours for monotone patterns
Wang et al. Predicting construction cost and schedule success using artificial neural networks ensemble and support vector machines classification models
Zafra et al. Multiple instance learning for classifying students in learning management systems
KR102563986B1 (en) Method and apparatus for recommending learning amount using artificial intelligence and clustering using k-means algorithm at the same time
US11468337B2 (en) System and methods for facilitating pattern recognition
Dhurandhar et al. Tip: Typifying the interpretability of procedures
Du et al. An integrated framework based on latent variational autoencoder for providing early warning of at-risk students
CN110852390A (en) Student score classification prediction method and system based on campus behavior sequence
CN117540104B (en) Learning group difference evaluation method and system based on graph neural network
Lima et al. Evaluating deep models for absenteeism prediction of public security agents
KR102473188B1 (en) Method and apparatus for recommending learning amount based on artificial intelligence and weighted score for statistical learning amount
Zhang et al. Predicting academic performance using tree-based machine learning models: A case study of bachelor students in an engineering department in China
Sun Predictive analysis and simulation of college sports performance fused with adaptive federated deep learning algorithm
Gambo et al. Performance comparison of convolutional and multiclass neural network for learning style detection from facial images
Lu et al. Application of neighborhood components analysis to process and survey data to predict student learning of statistics
KR102509367B1 (en) Learning amount recommendation method and apparatus using deep learning-based artificial intelligence composed of a plurality of hidden layers that compensate for overfitting tendencies through dropout
CN116029760A (en) Message pushing method, device, computer equipment and storage medium
Jiang et al. Applying AdaBoost to improve diagnostic accuracy
Jiang et al. Learning analytics in a blended computer education course
Lafi et al. Classification of Apple Diseases Using Deep Learning
Dhumal et al. Automatic Handwriting Analysis and Personality Trait Detection using Multi-Task Learning Technique
Cao et al. Learner behavioral feature refinement and augmentation using GANs

Legal Events

Date Code Title Description
AMND Amendment
AMND Amendment
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant