WO2022196955A1 - 인공지능 모델을 사전 학습시키는 방법 및 장치 - Google Patents

인공지능 모델을 사전 학습시키는 방법 및 장치 Download PDF

Info

Publication number
WO2022196955A1
WO2022196955A1 PCT/KR2022/002221 KR2022002221W WO2022196955A1 WO 2022196955 A1 WO2022196955 A1 WO 2022196955A1 KR 2022002221 W KR2022002221 W KR 2022002221W WO 2022196955 A1 WO2022196955 A1 WO 2022196955A1
Authority
WO
WIPO (PCT)
Prior art keywords
model
sequence
user
score
learning
Prior art date
Application number
PCT/KR2022/002221
Other languages
English (en)
French (fr)
Inventor
김병수
Original Assignee
(주)뤼이드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020210094882A external-priority patent/KR102396981B1/ko
Application filed by (주)뤼이드 filed Critical (주)뤼이드
Priority to US17/776,798 priority Critical patent/US20240169249A1/en
Publication of WO2022196955A1 publication Critical patent/WO2022196955A1/ko

Links

Images

Classifications

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

Definitions

  • the present specification relates to a pre-learning method of an artificial intelligence model for predicting a user's score, and an apparatus therefor.
  • Transfer learning refers to the use of recalibrating the weights of a model trained on a large data set according to the task to be solved. Through this, it is possible to train an artificial intelligence model to solve the problem to be solved even with a relatively small number of data.
  • the AI model is pre-trained by using another task B with sufficient training data related to task A. Then, transfer learning, in which the pre-trained model is trained again as task B, is a topic that is being actively researched in the field of machine learning in order to solve the problem of data shortage.
  • TOEIC test score data is needed.
  • students In order to obtain TOEIC test score data, students must pay to register for the test, go to the test center to take the test, and report the test score is required.
  • the TOEIC test score data collection process is difficult, there may be a problem in that the amount of data that can be collected is not large.
  • An object of the present specification is to propose a pre-learning method of an artificial intelligence model for predicting a user's score and an apparatus therefor.
  • an object of the present specification is to propose a method of predicting a user's score with high accuracy through a pre-trained artificial intelligence model.
  • An aspect of the present specification is a method in which a server pre-trains an artificial intelligence model for predicting a user's score, generating a first sequence for training a first model, wherein the first sequence is including a masked element associated with an exercise for predicting the user's score; inputting the first sequence into the first model to train the first model; and inputting a second sequence predicted by the first model to the second model based on the first sequence to train a second model; Including, the second model may be learned by comparing the first sequence with the third sequence predicted through the second model based on the second sequence.
  • the first sequence may include (1) an identifier of the exercise problem, (2) a specific part indicating the type of the exercise problem, and (3) an element indicating the user's answer to the exercise problem.
  • the masked element may be an element indicating the user's answer to the exercise problem.
  • the first sequence including the masked element may be randomly determined.
  • removing the first model; generating, with the second model, a fourth sequence for fine tuning the second model; and fine-tuning the second model using the fourth sequence may include.
  • the fine-tuned second model may be pre-trained to predict the user's score.
  • the fine-tuned second model is based on a third loss function that is the sum of the first loss function related to the output value of the first model and the second loss function related to the output value of the model with reference to Equation 3 above. , it is possible to predict the test score of the user.
  • a server for pre-training an artificial intelligence model for predicting a user's score comprising: a communication module; Memory; a processor, wherein the processor generates a first sequence for training a first model, the first sequence comprising a masked element associated with a practice problem for predicting the user's score, the first sequence comprising: To train a first model, the first sequence is input to the first model, and to train a second model, a second sequence predicted by the first model is applied to the second model based on the first sequence. It is input to a model, and the second model may be learned by comparing the first sequence with a third sequence predicted through the second model based on the second sequence.
  • FIG. 1 is a block diagram illustrating an electronic device related to the present specification.
  • FIG. 2 is a block diagram of an AI device according to an embodiment of the present specification.
  • FIG. 3 illustrates a general method of prior learning to which the present specification can be applied.
  • the electronic device 100 includes a wireless communication unit 110 , an input unit 120 , a sensing unit 140 , an output unit 150 , an interface unit 160 , a memory 170 , a control unit 180 , and a power supply unit 190 . ) and the like.
  • the components shown in FIG. 1 are not essential for implementing the electronic device, and thus the electronic device described herein may have more or fewer components than those listed above.
  • the wireless communication unit 110 among the components, between the electronic device 100 and the wireless communication system, between the electronic device 100 and another electronic device 100, or the electronic device 100 and an external server It may include one or more modules that enable wireless communication between them. Also, the wireless communication unit 110 may include one or more modules for connecting the electronic device 100 to one or more networks.
  • the wireless communication unit 110 may include at least one of a broadcast reception module 111 , a mobile communication module 112 , a wireless Internet module 113 , a short-range communication module 114 , and a location information module 115 . .
  • the input unit 120 includes a camera 121 or an image input unit for inputting an image signal, a microphone 122 or an audio input unit for inputting an audio signal, and a user input unit 123 for receiving information from a user, for example, , a touch key, a push key, etc.).
  • the voice data or image data collected by the input unit 120 may be analyzed and processed as a user's control command.
  • the sensing unit 140 may include one or more sensors for sensing at least one of information within the electronic device, surrounding environment information surrounding the electronic device, and user information.
  • the sensing unit 140 may include a proximity sensor 141, an illumination sensor 142, an illumination sensor, a touch sensor, an acceleration sensor, a magnetic sensor, and gravity.
  • G-sensor gyroscope sensor
  • motion sensor RGB sensor
  • infrared sensor IR sensor: infrared sensor
  • fingerprint sensor fingerprint sensor
  • ultrasonic sensor ultrasonic sensor
  • optical sensors eg, cameras (see 121)
  • microphones see 122
  • battery gauges environmental sensors (eg, barometers, hygrometers, thermometers, radiation sensors, It may include at least one of a thermal sensor, a gas sensor, etc.) and a chemical sensor (eg, an electronic nose, a healthcare sensor, a biometric sensor, etc.).
  • the electronic device disclosed in the present specification may combine and utilize information sensed by at least two or more of these sensors.
  • the output unit 150 is for generating an output related to visual, auditory or tactile sense, and includes at least one of a display unit 151 , a sound output unit 152 , a haptip module 153 , and an optical output unit 154 . can do.
  • the display unit 151 may implement a touch screen by forming a layer structure with the touch sensor or being formed integrally with the touch sensor. Such a touch screen may function as the user input unit 123 providing an input interface between the electronic device 100 and the user, and may provide an output interface between the electronic device 100 and the user.
  • the interface unit 160 serves as a passage with various types of external devices connected to the electronic device 100 .
  • Such an interface unit 160 a wired / wireless headset port (port), an external charger port (port), a wired / wireless data port (port), a memory card (memory card) port, for connecting a device equipped with an identification module It may include at least one of a port, an audio I/O (Input/Output) port, a video I/O (Input/Output) port, and an earphone port.
  • the electronic device 100 may perform appropriate control related to the connected external device.
  • the memory 170 stores data supporting various functions of the electronic device 100 .
  • the memory 170 may store a plurality of application programs (or applications) driven in the electronic device 100 , data for operation of the electronic device 100 , and commands. At least some of these application programs may be downloaded from an external server through wireless communication. In addition, at least some of these application programs may exist on the electronic device 100 from the time of shipment for basic functions (eg, incoming calls, outgoing functions, message reception, and outgoing functions) of the electronic device 100 . Meanwhile, the application program may be stored in the memory 170 , installed on the electronic device 100 , and driven to perform an operation (or function) of the electronic device by the controller 180 .
  • the controller 180 In addition to the operation related to the application program, the controller 180 generally controls the overall operation of the electronic device 100 .
  • the controller 180 may provide or process appropriate information or functions to the user by processing signals, data, information, etc. input or output through the above-described components or by driving an application program stored in the memory 170 .
  • controller 180 may control at least some of the components discussed with reference to FIG. 1 in order to drive an application program stored in the memory 170 . Furthermore, in order to drive the application program, the controller 180 may operate at least two or more of the components included in the electronic device 100 in combination with each other.
  • the power supply unit 190 receives external power and internal power under the control of the control unit 180 to supply power to each component included in the electronic device 100 .
  • the power supply unit 190 includes a battery, and the battery may be a built-in battery or a replaceable battery.
  • At least some of the respective components may operate cooperatively to implement an operation, control, or control method of an electronic device according to various embodiments described below.
  • the operation, control, or control method of the electronic device may be implemented on the electronic device by driving at least one application program stored in the memory 170 .
  • the electronic device 100 may be collectively referred to as a terminal.
  • FIG. 2 is a block diagram of an AI device according to an embodiment of the present specification.
  • the AI device 20 may include an electronic device including an AI module capable of performing AI processing, or a server including the AI module. Also, the AI device 20 may be included as a component of at least a part of the electronic device 100 shown in FIG. 1 to perform at least a part of AI processing together.
  • the AI device 20 may include an AI processor 21 , a memory 25 and/or a communication unit 27 .
  • the AI device 20 is a computing device capable of learning a neural network, and may be implemented in various electronic devices such as a server, a desktop PC, a notebook PC, and a tablet PC.
  • the AI processor 21 may learn the neural network using a program stored in the memory 25 .
  • the AI processor 21 may train a neural network to recognize data for test score prediction.
  • the AI processor 21 performing the above-described functions may be a general-purpose processor (eg, CPU), but may be an AI-only processor (eg, GPU) for AI learning.
  • a general-purpose processor eg, CPU
  • an AI-only processor eg, GPU
  • the memory 25 may store various programs and data necessary for the operation of the AI device 20 .
  • the memory 25 may be implemented as a non-volatile memory, a volatile memory, a flash-memory, a hard disk drive (HDD), or a solid state drive (SDD).
  • the memory 25 is accessed by the AI processor 21 , and reading/writing/modification/deletion/update of data by the AI processor 21 may be performed.
  • the memory 25 may store a neural network model (eg, a deep learning model) generated through a learning algorithm for data classification/recognition according to an embodiment of the present specification.
  • the AI processor 21 may include a data learning unit that learns a neural network for data classification/recognition.
  • the data learning unit may learn the deep learning model by acquiring learning data to be used for learning, and applying the acquired learning data to the deep learning model.
  • the communication unit 27 may transmit the AI processing result by the AI processor 21 to an external electronic device.
  • the external electronic device may include other terminals and servers.
  • AI device 20 shown in FIG. 2 has been functionally divided into the AI processor 21, the memory 25, the communication unit 27, and the like, the above-described components are integrated into one module and the AI module Alternatively, it may be called an artificial intelligence (AI) model.
  • AI artificial intelligence
  • FIG. 3 illustrates a general method of prior learning to which the present specification can be applied.
  • Transfer learning is also being actively studied in the field of natural language processing, and ELECTRA (Pre-training Text Encoders as Discriminators Rather Than Generators) can exhibit better performance while using fewer computing resources than existing transfer learning methods.
  • ELECTRA Pre-training Text Encoders as Discriminators Rather Than Generators
  • the generator 310 may receive an input sequence in which a part is masked as an input, and learn to predict what the masked part is.
  • the discriminator 320 receives the output sequence of the Generator 310 as an input and determines whether each token of the input sequence is the output of the Generator 310 (eg, replaced) or whether it was in the original input sequence (eg, original ) can be learned to predict. After the pre-learning is finished, fine tuning may be performed using the learned discriminator 320 .
  • the AI model of the server includes a Generator 410 and a Discriminator 420 .
  • the server may configure the tokens of the input sequence of the generator 410 as a tuple.
  • Table 1 below illustrates tokens of an input sequence to which this specification can be applied.
  • Token name Descriptions eid ID of the exercise part A specific part that indicates the type of exercise response
  • the user's answer to the practice question (for example, the user's answer to 'a', 'b', 'c' or 'd' if the practice question is TOEIC) correctness Whether the practice question answered by the user is correct or not elapsed_time
  • the amount of time it took for users to complete the exercises timeline Whether the user solved the exercises in the time limit exp_time Time spent studying user-solved exercises inactive_time Time interval between the current exercise and the previous exercise
  • the server may normalize the values of elapsed_time, exp_time, and inactive_time to values between 0 and 1 in order to stabilize the learning process.
  • Generator 410 is an input sequence to the interaction embedding layer (InterEmbedding), a point-wise feed-forward layer (GenFeedForward1), the Performer encoder (GenPerformerEncoder), and another point-twise feed-forward layer (GenFeedForward2), can be calculated.
  • Table 2 is an example of InterEmbedding, GenFeedForward1, GenPerformerEncoder, and GenFeedForward2 to which this specification can be applied.
  • the server receives the input sequence [(e419, part4, b), (e23, part3, c), (e4324, part3, a), (e5233) of the Generator 410 composed of eid/part/response , part1, a)].
  • the server can decide which input sequence to mask among them. For example, the server may randomly determine an input sequence to be masked among a plurality of input sequences, and mask a response element included in the determined input sequence. In more detail, the server decides to mask the second and third input sequences, and masks the response elements included in the input sequence to mask the masked sequences [(e419, part4, b), (e23, part3, mask ) , (e4324, part3, mask ), (e5233, part1, a)].
  • the server can learn the Generator 410 by inputting the Masked Sequence to the Generator 410 .
  • the generator 410 may output a Replaced Sequence in which the masked token is replaced by taking the Masked Sequence as an input value and using the masked token as a predicted value.
  • the server may train the generator 410 by using a loss function in which a Replaced Sequence that is an output of the Generator 410 and an unmasked input sequence (original) are compared.
  • the generator 410 may calculate the output differently depending on whether the masked element is a categorical variable or a continuous variable. For example, when the masked element is a categorical variable, it may be sampled from a probability distribution defined by the softmax layer according to Equation 1 below.
  • an output may be calculated by the sigmoid layer according to Equation 2 below.
  • the output may be sampled.
  • the Replaced Sequence output from the Generator 410 through the input sequence is [(e419, part4, b), (e23, part3, b), (e4324, part3, a), (e5233, part1, a)].
  • the server may be trained to input the Replaced Sequence into the Discriminator 420 to predict whether each token is an output of the Generator 410 (replaced) or was in the original input sequence (original).
  • Discriminator (420) The output of the interaction sequence replaced a series of interaction embedding layers (InterEmbedding), a point-wise feed-forward layer (DisFeedForward1), the Performer encoder (DisPerformerEncoder), and another point-wise feed-forward layer (DisFeedForward2).
  • InterEmbedding a series of interaction embedding layers
  • DisFeedForward1 a point-wise feed-forward layer
  • DisPerformerEncoder the Performer encoder
  • DisFeedForward2 another point-wise feed-forward layer
  • Table 3 below is an example of InterEmbedding, DisFeedForward1, DisPerformerEncoder, and DisFeedForward2.
  • the server may modify the discriminator 420 by replacing the last layer with a layer with appropriate dimensions for predicting test scores.
  • Equation 3 is an example of a loss function to which this specification can be applied.
  • GenLoss is a cross entropy or mean squared error loss function when the masked element is a categorical variable or a continuous variable
  • DisLoss is a binary cross entropy loss function
  • the generator 410 may be trained with a multi-task leaning scheme.
  • the server may remove the generator 410 to further increase the accuracy of the pre-trained discriminator 430 and fine-tune the pre-learned discriminator 430 .
  • the server may input an input sequence to the pre-trained discriminator 430 to train the pre-trained discriminator 430 to predict the user's test score.
  • the above embodiment is not limited to the task of predicting test scores, and the pre-learning can be applied to various tasks in the field of artificial intelligence related to education, such as predicting the learning session churn rate, predicting whether to accept learning content recommendations, and predicting lecture viewing time.
  • the pre-learning can be applied to various tasks in the field of artificial intelligence related to education, such as predicting the learning session churn rate, predicting whether to accept learning content recommendations, and predicting lecture viewing time.
  • Table 4 below is an example of test score prediction performance measured for each task of prior learning.
  • the AI model of the server may include a generator 410 and a discriminator 420 , the generator 410 may correspond to the first model, and the discriminator 420 may correspond to the second model.
  • the server generates a first sequence for learning the first model (S510).
  • the first sequence may include the elements of Table 1 described above.
  • the first sequence may include (1) an identifier of a practice question, (2) a specific part indicating the type of the practice question, and (3) an element indicating the user's answer to the practice question.
  • the first sequence may include a masked element related to an exercise for predicting a user's score.
  • the masked element may be an element representing the user's answer to the exercise question.
  • the server may randomly determine the first sequence including the masked element.
  • the server inputs the first sequence to the first model ( S520 ).
  • the first model may generate the second sequence by using the first sequence as an input.
  • the server may train the first model by comparing the second sequence with the first sequence.
  • the server inputs the second sequence predicted by the first model to the second model based on the first sequence (S530).
  • the second model may be learned by comparing the first sequence with the third sequence predicted through the second model based on the second sequence.
  • the server may remove the first model, generate a fourth sequence, and input it as the second model.
  • the fourth sequence may include the same or similar elements as the first sequence.
  • the fine-tuned second model may be a model that has been pre-trained for predicting a user score of an exercise problem.
  • the second fine-tuned model is based on the third loss function that is the sum of the first loss function related to the output value of the first model and the second loss function related to the output value of the model, referring to Equation 3 above.
  • the third loss function that is the sum of the first loss function related to the output value of the first model and the second loss function related to the output value of the model, referring to Equation 3 above.
  • the above-described specification can be implemented as computer-readable code on a medium in which a program is recorded.
  • the computer readable medium includes all kinds of recording devices in which data readable by a computer system is stored. Examples of computer-readable media include Hard Disk Drive (HDD), Solid State Disk (SSD), Silicon Disk Drive (SDD), ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, etc.
  • HDD Hard Disk Drive
  • SSD Solid State Disk
  • SDD Silicon Disk Drive
  • ROM Read Only Memory
  • RAM Compact Disk Drive
  • CD-ROM Compact Disk Read Only Memory
  • magnetic tape floppy disk
  • optical data storage device etc.
  • carrier wave eg, transmission over the Internet

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Tourism & Hospitality (AREA)
  • Educational Administration (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Primary Health Care (AREA)
  • Marketing (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Educational Technology (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

본 명세서에서, 서버가 사용자의 점수 예측을 위한 인공지능 모델을 사전 학습시키는 방법에 있어서, 제1 모델을 학습시키기 위한 제1 시퀀스 (Sequence)를 생성하고, 상기 제1 시퀀스는 상기 사용자의 점수 예측을 위한 연습 문제와 관련된 마스킹(masking)된 요소를 포함하며, 상기 제1 모델을 학습시키기 위해, 상기 제1 시퀀스를 상기 제1 모델에 입력하고, 제2 모델을 학습시키기 위해, 상기 제1 시퀀스에 근거하여, 상기 제1 모델이 예측한 제2 시퀀스 를 상기 제2 모델에 입력하며, 상기 제2 모델은 상기 제2 시퀀스에 근거하여, 상기 제2 모델을 통해 예측된 제3 시퀀스와 상기 제1 시퀀스의 비교를 통해 학습될 수 있다.

Description

인공지능 모델을 사전 학습시키는 방법 및 장치
본 명세서는 사용자의 점수 예측을 위한 인공지능 모델의 사전 학습 방법 및 이를 위한 장치에 관한 것이다.
전이학습(transfer learning)이란, 큰 데이터셋으로 훈련된 모델의 가중치를 해결하고자 하는 과제에 맞게 재보정해서 사용하는 것을 의미한다. 이를 통해, 비교적 적은 수의 데이터를 가지고도 해결하고자 하는 과제를 해결하기 위한 인공지능 모델을 훈련시킬 수 있다.
특정 과제 A를 위한 인공지능 모델을 학습시키는데 필요한 데이터가 충분하지 않을 경우, 과제 A와 관련 있는, 학습 데이터가 충분히 존재하는 다른 과제 B를 이용하여, 인공지능 모델을 사전 학습(pre-training)시킨 후, 사전 학습된 모델을 다시 과제 B로 학습시키는 전이 학습은 데이터 부족 문제를 해결하기 위해 최근 기계학습 분야에서 활발히 연구되고 있는 주제이다.
교육과 관련된 인공지능 분야에서도 인공지능 모델 학습을 위한 데이터 부족 문제가 발생한다. 예를 들어, 학생들의 토익 시험 점수를 예측하는 과제를 위한 모델을 학습시키기 위해서는 토익 시험 점수 데이터가 필요하다. 하지만, 토익 시험 점수 데이터를 얻기 위해서는 학생들이 시험 등록을 위해 돈을 지불하고, 직접 시험장에 가서 시험을 치뤄야 하며, 시험 점수를 리포트해야 하는 과정이 요구된다. 이와 같이, 토익 시험 점수 데이터는 수집 과정이 까다롭기 때문에 수집될 수 있는 데이터의 양이 많지 않는 문제가 발생할 수 있다.
본 명세서의 목적은, 사용자의 점수 예측을 위한 인공지능 모델의 사전 학습 방법 및 이를 위한 장치를 제안한다.
또한, 본 명세서의 목적은, 사전 학습된 인공지능 모델을 통해, 정확도 높은 사용자의 점수 예측 방법을 제안한다.
본 명세서가 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 이하의 명세서의 상세한 설명으로부터 본 명세서가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 명세서의 일 양상은, 서버가 사용자의 점수 예측을 위한 인공지능 모델을 사전 학습시키는 방법에 있어서, 제1 모델을 학습시키기 위한 제1 시퀀스 (Sequence)를 생성하는 단계로서, 상기 제1 시퀀스는 상기 사용자의 점수 예측을 위한 연습 문제와 관련된 마스킹(masking)된 요소를 포함함; 상기 제1 모델을 학습시키기 위해, 상기 제1 시퀀스를 상기 제1 모델에 입력하는 단계; 및 제2 모델을 학습시키기 위해, 상기 제1 시퀀스에 근거하여, 상기 제1 모델이 예측한 제2 시퀀스 를 상기 제2 모델에 입력하는 단계; 를 포함하며, 상기 제2 모델은 상기 제2 시퀀스에 근거하여, 상기 제2 모델을 통해 예측된 제3 시퀀스와 상기 제1 시퀀스의 비교를 통해 학습될 수 있다.
또한, 상기 제1 시퀀스는 (1) 연습 문제의 식별자, (2) 상기 연습 문제의 타입을 나타내는 특정 파트, 및 (3) 상기 연습 문제에 대한 상기 사용자의 답변을 나타내는 요소를 포함할 수 있다.
또한, 상기 마스킹된 요소는 상기 연습 문제에 대한 상기 사용자의 답변을 나타내는 요소일 수 있다.
또한, 복수개의 제1 시퀀스가 생성되는 것에 근거하여, 상기 마스킹된 요소가 포함되는 상기 제1 시퀀스는 랜덤하게 결정될 수 있다.
또한, 상기 제1 모델을 제거하는 단계; 상기 제2 모델로, 상기 제2 모델을 미세 조정(fine tuning)하기 위한, 제4 시퀀스를 생성하는 단계; 및 상기 제4 시퀀스를 이용하여, 상기 제2 모델을 미세 조정하는 단계; 를 포함할 수 있다.
또한, 상기 미세 조정된 제2 모델은 상기 사용자의 점수를 예측하기 위해 사전 학습이 완료될 수 있다.
또한, 상기 미세 조정된 제2 모델은 전술한 수학식 3을 참조하면, 제1 모델의 출력값과 관련된 제1 손실함수 및 상기 모델의 출력값과 관련된 제2 손실함수의 합인 제3 손실함수에 근거하여, 상기 사용자의 시험 점수를 예측할 수 있다.
본 명세서의 또 다른 일 양상은, 사용자의 점수 예측을 위한 인공지능 모델을 사전 학습시키는 서버에 있어서, 통신모듈(communication module); 메모리; 프로세서를 포함하고, 상기 프로세서는 제1 모델을 학습시키기 위한 제1 시퀀스를 생성하고, 상기 제1 시퀀스는 상기 사용자의 점수 예측을 위한 연습 문제와 관련된 마스킹(masking)된 요소를 포함하며, 상기 제1 모델을 학습시키기 위해, 상기 제1 시퀀스를 상기 제1 모델에 입력하고, 제2 모델 을 학습시키기 위해, 상기 제1 시퀀스에 근거하여, 상기 제1 모델이 예측한 제2 시퀀스 를 상기 제2 모델에 입력하며, 상기 제2 모델은 상기 제2 시퀀스에 근거하여, 상기 제2 모델을 통해 예측된 제3 시퀀스와 상기 제1 시퀀스의 비교를 통해 학습될 수 있다.
본 명세서의 실시예에 따르면, 사용자의 점수 예측을 위한 인공지능 모델의 사전 학습 방법 및 이를 위한 장치를 구현할 수 있다.
또한, 본 명세서의 실시예에 따르면, 사전 학습된 인공지능 모델을 통해, 사용자의 점수 예측을 정확도 높게 수행할 수 있다.
본 명세서에서 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 명세서가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 명세서와 관련된 전자 기기를 설명하기 위한 블록도이다.
도 2는 본 명세서의 일 실시예에 따른 AI 장치의 블록도이다.
도 3은 본 명세서가 적용될 수 있는 사전 학습의 일반적인 방법을 예시한다.
도 4는 본 명세서가 적용될 수 있는 일 실시예이다.
도 5는 본 명세서가 적용될 수 있는 서버의 일 실시예이다.
본 명세서에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되는, 첨부 도면은 본 명세서에 대한 실시예를 제공하고, 상세한 설명과 함께 본 명세서의 기술적 특징을 설명한다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 명세서의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
도 1은 본 명세서와 관련된 전자 기기를 설명하기 위한 블록도이다.
상기 전자 기기(100)는 무선 통신부(110), 입력부(120), 센싱부(140), 출력부(150), 인터페이스부(160), 메모리(170), 제어부(180) 및 전원 공급부(190) 등을 포함할 수 있다. 도 1에 도시된 구성요소들은 전자 기기를 구현하는데 있어서 필수적인 것은 아니어서, 본 명세서 상에서 설명되는 전자 기기는 위에서 열거된 구성요소들 보다 많거나, 또는 적은 구성요소들을 가질 수 있다.
보다 구체적으로, 상기 구성요소들 중 무선 통신부(110)는, 전자 기기(100)와 무선 통신 시스템 사이, 전자 기기(100)와 다른 전자 기기(100) 사이, 또는 전자 기기(100)와 외부서버 사이의 무선 통신을 가능하게 하는 하나 이상의 모듈을 포함할 수 있다. 또한, 상기 무선 통신부(110)는, 전자 기기(100)를 하나 이상의 네트워크에 연결하는 하나 이상의 모듈을 포함할 수 있다.
이러한 무선 통신부(110)는, 방송 수신 모듈(111), 이동통신 모듈(112), 무선 인터넷 모듈(113), 근거리 통신 모듈(114), 위치정보 모듈(115) 중 적어도 하나를 포함할 수 있다.
입력부(120)는, 영상 신호 입력을 위한 카메라(121) 또는 영상 입력부, 오디오 신호 입력을 위한 마이크로폰(microphone, 122), 또는 오디오 입력부, 사용자로부터 정보를 입력받기 위한 사용자 입력부(123, 예를 들어, 터치키(touch key), 푸시키(mechanical key) 등)를 포함할 수 있다. 입력부(120)에서 수집한 음성 데이터나 이미지 데이터는 분석되어 사용자의 제어명령으로 처리될 수 있다.
센싱부(140)는 전자 기기 내 정보, 전자 기기를 둘러싼 주변 환경 정보 및 사용자 정보 중 적어도 하나를 센싱하기 위한 하나 이상의 센서를 포함할 수 있다. 예를 들어, 센싱부(140)는 근접센서(141, proximity sensor), 조도 센서(142, illumination sensor), 터치 센서(touch sensor), 가속도 센서(acceleration sensor), 자기 센서(magnetic sensor), 중력 센서(G-sensor), 자이로스코프 센서(gyroscope sensor), 모션 센서(motion sensor), RGB 센서, 적외선 센서(IR 센서: infrared sensor), 지문인식 센서(finger scan sensor), 초음파 센서(ultrasonic sensor), 광 센서(optical sensor, 예를 들어, 카메라(121 참조)), 마이크로폰(microphone, 122 참조), 배터리 게이지(battery gauge), 환경 센서(예를 들어, 기압계, 습도계, 온도계, 방사능 감지 센서, 열 감지 센서, 가스 감지 센서 등), 화학 센서(예를 들어, 전자 코, 헬스케어 센서, 생체 인식 센서 등) 중 적어도 하나를 포함할 수 있다. 한편, 본 명세서에 개시된 전자 기기는, 이러한 센서들 중 적어도 둘 이상의 센서에서 센싱되는 정보들을 조합하여 활용할 수 있다.
출력부(150)는 시각, 청각 또는 촉각 등과 관련된 출력을 발생시키기 위한 것으로, 디스플레이부(151), 음향 출력부(152), 햅팁 모듈(153), 광 출력부(154) 중 적어도 하나를 포함할 수 있다. 디스플레이부(151)는 터치 센서와 상호 레이어 구조를 이루거나 일체형으로 형성됨으로써, 터치 스크린을 구현할 수 있다. 이러한 터치 스크린은, 전자 기기(100)와 사용자 사이의 입력 인터페이스를 제공하는 사용자 입력부(123)로써 기능함과 동시에, 전자 기기(100)와 사용자 사이의 출력 인터페이스를 제공할 수 있다.
인터페이스부(160)는 전자 기기(100)에 연결되는 다양한 종류의 외부 기기와의 통로 역할을 수행한다. 이러한 인터페이스부(160)는, 유/무선 헤드셋 포트(port), 외부 충전기 포트(port), 유/무선 데이터 포트(port), 메모리 카드(memory card) 포트, 식별 모듈이 구비된 장치를 연결하는 포트(port), 오디오 I/O(Input/Output) 포트(port), 비디오 I/O(Input/Output) 포트(port), 이어폰 포트(port) 중 적어도 하나를 포함할 수 있다. 전자 기기(100)에서는, 상기 인터페이스부(160)에 외부 기기가 연결되는 것에 대응하여, 연결된 외부 기기와 관련된 적절할 제어를 수행할 수 있다.
또한, 메모리(170)는 전자 기기(100)의 다양한 기능을 지원하는 데이터를 저장한다. 메모리(170)는 전자 기기(100)에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 전자 기기(100)의 동작을 위한 데이터들, 명령어들을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는, 무선 통신을 통해 외부 서버로부터 다운로드 될 수 있다. 또한 이러한 응용 프로그램 중 적어도 일부는, 전자 기기(100)의 기본적인 기능(예를 들어, 전화 착신, 발신 기능, 메시지 수신, 발신 기능)을 위하여 출고 당시부터 전자 기기(100)상에 존재할 수 있다. 한편, 응용 프로그램은, 메모리(170)에 저장되고, 전자 기기(100) 상에 설치되어, 제어부(180)에 의하여 상기 전자 기기의 동작(또는 기능)을 수행하도록 구동될 수 있다.
제어부(180)는 상기 응용 프로그램과 관련된 동작 외에도, 통상적으로 전자 기기(100)의 전반적인 동작을 제어한다. 제어부(180)는 위에서 살펴본 구성요소들을 통해 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나 메모리(170)에 저장된 응용 프로그램을 구동함으로써, 사용자에게 적절한 정보 또는 기능을 제공 또는 처리할 수 있다.
또한, 제어부(180)는 메모리(170)에 저장된 응용 프로그램을 구동하기 위하여, 도 1과 함께 살펴본 구성요소들 중 적어도 일부를 제어할 수 있다. 나아가, 제어부(180)는 상기 응용 프로그램의 구동을 위하여, 전자 기기(100)에 포함된 구성요소들 중 적어도 둘 이상을 서로 조합하여 동작시킬 수 있다.
전원공급부(190)는 제어부(180)의 제어 하에서, 외부의 전원, 내부의 전원을 인가받아 전자 기기(100)에 포함된 각 구성요소들에 전원을 공급한다. 이러한 전원공급부(190)는 배터리를 포함하며, 상기 배터리는 내장형 배터리 또는 교체가능한 형태의 배터리가 될 수 있다.
상기 각 구성요소들 중 적어도 일부는, 이하에서 설명되는 다양한 실시 예들에 따른 전자 기기의 동작, 제어, 또는 제어방법을 구현하기 위하여 서로 협력하여 동작할 수 있다. 또한, 상기 전자 기기의 동작, 제어, 또는 제어방법은 상기 메모리(170)에 저장된 적어도 하나의 응용 프로그램의 구동에 의하여 전자 기기 상에서 구현될 수 있다.
본 명세서에서 전자기기(100)는 단말로 통칭될 수 있다.
도 2는 본 명세서의 일 실시예에 따른 AI 장치의 블록도이다.
상기 AI 장치(20)는 AI 프로세싱을 수행할 수 있는 AI 모듈을 포함하는 전자 기기 또는 상기 AI 모듈을 포함하는 서버 등을 포함할 수 있다. 또한, 상기 AI 장치(20)는 도 1에 도시된 전자기기(100)의 적어도 일부의 구성으로 포함되어 AI 프로세싱 중 적어도 일부를 함께 수행하도록 구비될 수도 있다.
상기 AI 장치(20)는 AI 프로세서(21), 메모리(25) 및/또는 통신부(27)를 포함할 수 있다.
상기 AI 장치(20)는 신경망을 학습할 수 있는 컴퓨팅 장치로서, 서버, 데스크탑 PC, 노트북 PC, 태블릿 PC 등과 같은 다양한 전자 장치로 구현될 수 있다.
AI 프로세서(21)는 메모리(25)에 저장된 프로그램을 이용하여 신경망을 학습할 수 있다. 특히, AI 프로세서(21)는 시험 점수 예측을 위한 데이터를 인식하기 위해, 신경망을 학습할 수 있다.
한편, 전술한 바와 같은 기능을 수행하는 AI 프로세서(21)는 범용 프로세서(예를 들어, CPU)일 수 있으나, 인공지능 학습을 위한 AI 전용 프로세서(예를 들어, GPU)일 수 있다.
메모리(25)는 AI 장치(20)의 동작에 필요한 각종 프로그램 및 데이터를 저장할 수 있다. 메모리(25)는 비 휘발성 메모리, 휘발성 메모리, 플래시 메모리(flash-memory), 하드디스크 드라이브(HDD) 또는 솔리드 스테이트 드라이브(SDD) 등으로 구현할 수 있다. 메모리(25)는 AI 프로세서(21)에 의해 액세스되며, AI 프로세서(21)에 의한 데이터의 독취/기록/수정/삭제/갱신 등이 수행될 수 있다. 또한, 메모리(25)는 본 명세서의 일 실시예에 따른 데이터 분류/인식을 위한 학습 알고리즘을 통해 생성된 신경망 모델(예를 들어, 딥 러닝 모델)을 저장할 수 있다.
한편, AI 프로세서(21)는 데이터 분류/인식을 위한 신경망을 학습하는 데이터 학습부를 포함할 수 있다. 예를 들어, 데이터 학습부는 학습에 이용될 학습 데이터를 획득하고, 획득된 학습데이터를 딥러닝 모델에 적용함으로써, 딥러닝 모델을 학습할 수 있다.
통신부(27)는 AI 프로세서(21)에 의한 AI 프로세싱 결과를 외부 전자 기기로 전송할 수 있다.
여기서 외부 전자 기기는 다른 단말, 서버를 포함할 수 있다.
한편, 도 2에 도시된 AI 장치(20)는 AI 프로세서(21)와 메모리(25), 통신부(27) 등으로 기능적으로 구분하여 설명하였지만, 전술한 구성요소들이 하나의 모듈로 통합되어 AI 모듈 또는 인공지능(AI) 모델로 호칭될 수도 있다.
도 3은 본 명세서가 적용될 수 있는 사전 학습의 일반적인 방법을 예시한다.
전이 학습은 자연어 처리 분야에서도 활발히 연구되고 있으며, ELECTRA(Pre-training Text Encoders as Discriminators Rather Than Generators)는 기존의 전이 학습 방법들보다 적은 컴퓨팅 리소스를 사용하면서 더 나은 성능을 발휘할 수 있다.
도 3을 참조하면, Generator(310)는 일부분이 masking된 input sequence를 입력으로 받아서, masking 된 부분이 무엇이었는지 예측하도록 학습될 수 있다. Discriminator(320)는 Generator(310)의 output sequence를 입력으로 받아서 input sequence의 각 token이 Generator(310)의 output인지 (예를 들어, replaced), 원래 input sequence에 있었던 것인지를 (예를 들어, original) 예측하도록 학습될 수 있다. 이러한 사전 학습이 끝난 후에는 학습된 Discriminator(320)를 이용하여, 미세 조정(Fine tuning)을 수행할 수 있다.
도 4는 본 명세서가 적용될 수 있는 일 실시예이다.
도 4를 참조하면, 서버의 AI 모델은 Generator(410) 및 Discriminator(420)을 포함한다.
(1) 사전 학습(Pre-traning) (S4010) :
서버는 Generator(410)의 입력 시퀀스의 토큰들을 tuple로 구성할 수 있다.
다음의 표 1은 본 명세서가 적용될 수 있는 입력 시퀀스의 토큰들을 예시한다.
Token name Descriptions
eid 연습 문제의 ID
part 연습 문제의 타입을 나타내는 특정 파트
response 연습 문제에 대한 사용자의 답변(예를 들어, 연습 문제가 TOEIC인 경우, 'a','b','c'또는 'd'에 대한, 사용자의 답변)
correctness 사용자가 답변한 연습 문제의 정답 여부
elapsed_time 사용자가 연습 문제를 풀기까지 걸린 시간
timeliness 사용자가 연습 문제를 제한 시간에 풀었는 지 여부
exp_time 사용자가 푼 연습 문제를 공부하는 데 소비한 시간
inactive_time 현재 연습 문제와 직전 연습 문제 사이의 시간 간격
예를 들어, 서버는 학습 프로세스의 안정화를 위해, elapsed_time, exp_time 및 inactive_time의 값들을 0과 1 사이의 값들로 nomalize를 할 수 있다. Generator(410)은 입력 시퀀스
Figure PCTKR2022002221-appb-img-000001
를 interaction embedding layer(InterEmbedding), a point-wise feed-forward layer (GenFeedForward1), the Performer encoder (GenPerformerEncoder), 및 another poin-twise feed-forward layer (GenFeedForward2)에 공급하여, hidden representations인
Figure PCTKR2022002221-appb-img-000002
를 계산할 수 있다.
표 2는 본 명세서가 적용될 수 있는 InterEmbedding, GenFeedForward1, GenPerformerEncoder, 및 GenFeedForward2의 예시이다.
Figure PCTKR2022002221-appb-img-000003
표 2를 참조하면,
Figure PCTKR2022002221-appb-img-000004
이고,
Figure PCTKR2022002221-appb-img-000005
이다.
다시 도 4를 참조하면, 서버는 eid/part/response로 구성된 Generator(410)의 입력 시퀀스 [(e419, part4, b), (e23, part3, c), (e4324, part3, a), (e5233, part1, a)]를 생성할 수 있다.
서버는 이 중 masking 할 입력 시퀀스를 결정할 수 있다. 예를 들어, 서버는 랜덤하게 복수개의 입력 시퀀스 중 masking 할 입력 시퀀스를 결정하고, 결정된 입력 시퀀스에 포함된 response 요소를 masking 할 수 있다. 보다 자세하게, 서버는 2번째, 3번째 입력 시퀀스를 masking 하기로 결정하고, 당해 입력 시퀀스에 포함된 response 요소를 masking 하여, Masked Sequence 인 [(e419, part4, b), (e23, part3, mask), (e4324, part3, mask), (e5233, part1, a)]를 생성할 수 있다.
서버는 Masked Sequence를 Generator(410)에 입력하여, Generator(410)를 학습시킬 수 있다. Generator(410)는 Masked Sequence를 입력값으로 하고, masking 된 token을 예측한 값으로 하여, masking 된 token이 대체된, Replaced Sequence를 출력할 수 있다. 또한, 서버는 Generator(410)의 output인 Replaced Sequence와 마스킹되지 않은 입력 시퀀스(original)를 비교한 손실 함수를 이용하여, Generator(410)를 학습시킬 수 있다.
Generator(410)는 masking된 요소가 categorical 변수 또는 continuous 변수 인지에 따라, output을 다르게 계산할 수 있다. 예를 들어, masking 된 요소가 categorical 변수인 경우, 다음의 수학식 1에 따른 softmax 레이어에 의해 정의된 확률 분포에서 샘플링 될 수 있다.
Figure PCTKR2022002221-appb-img-000006
만일 masking 된 요소가 continuous 변수인 경우, 다음의 수학식 2에 따른 sigmoid 레이어에 의해, output이 계산될 수 있다.
Figure PCTKR2022002221-appb-img-000007
보다 자세하게, categorical 변수와 마찬가지로, masking 된 요소가 continuous 변수인 경우,
Figure PCTKR2022002221-appb-img-000008
및 Generator(410)의 파라미터에 의해 정의된 확률 분포에 근거하여, output이 샘플링 될 수 있다.
예를 들어, masking 된 토큰이 'b'와 'a'로 예측된 경우, 상기 입력 시퀀스를 통해, Generator(410)에서 출력되는 Replaced Sequence는 [(e419, part4, b), (e23, part3, b), (e4324, part3, a), (e5233, part1, a)] 일 수 있다.
서버는 Replaced Sequence를 Discriminator(420)에 입력하여, 각 token이 Generator(410)의 출력인지(replaced), 원래 입력 시퀀스에 있었던 것인지(original)를 예측하도록 학습될 수 있다.
예를 들어, Discriminator(420)
Figure PCTKR2022002221-appb-img-000009
의 출력은 일련의 interaction embedding layer (InterEmbedding), a point-wise feed-forward layer (DisFeedForward1), the Performer encoder (DisPerformerEncoder), 및 다른 point-wise feed-forward layer(DisFeedForward2)를 replaced interaction sequence
Figure PCTKR2022002221-appb-img-000010
에 적용하여, 계산될 수 있다.
다음의 표 3은 InterEmbedding, DisFeedForward1, DisPerformerEncoder 및 DisFeedForward2의 예시이다.
Figure PCTKR2022002221-appb-img-000011
표 3을 참조하면,
Figure PCTKR2022002221-appb-img-000012
이고, sigmoid는 Discriminator(420)의 마지막 layer에 적용될 수 있다. 사전 훈련 후, 서버는 마지막 계층을 시험 점수를 예측하기 위한 적절한 차원을 가진 계층으로 교체하여 Discriminator(420)를 수정할 수 있다.
이러한 사전 학습(Pre-traning) (S4010)의 목적은 손실 함수(4011)를 최소화하는 데에 있다. 다음의 수학식 3은 본 명세서가 적용될 수 있는 손실 함수(loss function)의 예시이다.
Figure PCTKR2022002221-appb-img-000013
수학식 3을 참조하면, 예를 들어, GenLoss는 masking 된 요소가 categorical 변수 또는 continuous 변수인 경우, cross entropy 또는 mean squared error 손실 함수이고, DisLoss는 binary cross entropy 손실 함수이고,
Figure PCTKR2022002221-appb-img-000014
은 identity 함수 일 수 있다. 만일, masking 된 요소가 두개 이상인 경우, Generator(410)는 multi-task leaning 스킴으로 훈련될 수 있다.
(2) 미세 조정(Fine-tuning) (S4020) :
서버는 사전 학습이 종료되면, 추가적으로 사전 학습된 Discriminator(430)의 정확도를 높이기 위해, Generator(410)를 제거하고, 사전 학습된 Discriminator(430)를 미세 조정할 수 있다. 예를 들어, 서버는 점수 예측 과제를 수행하기 위해, 사전 학습된 Discriminator(430)에 입력 시퀀스를 입력하여, 사전 학습된 Discriminator(430)가 사용자의 시험 점수를 예측하도록 학습시킬 수 있다.
상기에서의 실시 예는 시험 점수를 예측하는 과제에 한정되지 않으며, 사전 학습은 학습 세션 이탈율 예측, 학습 컨텐츠 추천 수락여부 예측, 강의 시청 시간 예측과 같은 교육과 관련된 인공지능 분야의 여러 과제에도 적용될 수 있다.
다음의 표 4는 사전 학습의 과제 별로 측정된 시험 점수 예측 성능의 예시이다.
Figure PCTKR2022002221-appb-img-000015
표 3를 참조하면, 서버가 사전 학습을 위해 response 만을 masking 하는 경우, 점수 예측의 정확성 MAE(Mean. Absolute Error)는 최상의 결과를 얻을 수 있다.
도 5는 본 명세서가 적용될 수 있는 서버의 일 실시예이다.
도 5를 참조하면, 서버의 AI 모델은 Generator(410) 및 Discriminator(420)을 포함할 수 있으며, Generator(410)는 제1 모델, Discriminator(420)은 제2 모델과 대응될 수 있다.
서버는 제1 모델을 학습시키기 위한 제1 시퀀스를 생성한다(S510). 예를 들어, 제1 시퀀스는 전술한 표 1의 요소를 포함할 수 있다. 보다 자세하게, 제1 시퀀스는 (1) 연습 문제의 식별자, (2) 상기 연습 문제의 타입을 나타내는 특정 파트, 및 (3) 상기 연습 문제에 대한 상기 사용자의 답변을 나타내는 요소를 포함할 수 있다. 또한, 제1 시퀀스는 사용자의 점수 예측을 위한 연습 문제와 관련된 마스킹(masking)된 요소를 포함할 수 있다. 예를 들어, 마스킹된 요소는 상기 연습 문제에 대한 상기 사용자의 답변을 나타내는 요소일 수 있다. 보다 자세하게, 복수개의 제1 시퀀스가 생성되는 경우, 서버는 마스킹된 요소가 포함되는 제1 시퀀스를 랜덤하게 결정할 수 있다.
서버는 제1 모델을 학습시키기 위해, 제1 시퀀스를 제1 모델에 입력한다(S520). 예를 들어, 제1 모델은 제1 시퀀스를 입력으로하여, 제2 시퀀스를 생성할 수 있다. 서버는 제2 시퀀스와 제1 시퀀스의 비교를 통해, 제1 모델을 학습시킬 수 있다.
서버는 제2 모델을 학습시키기 위해, 제1 시퀀스에 근거하여, 제1 모델이 예측한 제2 시퀀스를 제2 모델에 입력한다(S530). 예를 들어, 제2 모델은 제2 시퀀스에 근거하여, 제2 모델을 통해 예측된 제3 시퀀스와 제1 시퀀스의 비교를 통해 학습될 수 있다.
또한, 서버는 제2 모델의 미세 조정을 위해, 제1 모델을 제거하고, 제4 시퀀스를 생성하여, 제2 모델로 입력할 수 있다. 제4 시퀀스는 제1 시퀀스와 동일 또는 유사한 요소를 포함할 수 있다. 미세 조정된 제2 모델은 연습 문제의 사용자 점수를 예측하기 위한 사전 학습이 완료된 모델일 수 있다.
예를 들어, 미세 조정된 제2 모델은 전술한 수학식 3을 참조하면, 제1 모델의 출력값과 관련된 제1 손실함수 및 상기 모델의 출력값과 관련된 제2 손실함수의 합인 제3 손실함수에 근거하여, 상기 사용자의 시험 점수를 예측할 수 있다.
전술한 본 명세서는, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 명세서의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 명세서의 등가적 범위 내에서의 모든 변경은 본 명세서의 범위에 포함된다.
또한, 이상에서 서비스 및 실시 예들을 중심으로 설명하였으나 이는 단지 예시일 뿐 본 명세서를 한정하는 것이 아니며, 본 명세서가 속하는 분야의 통상의 지식을 가진 자라면 본 서비스 및 실시 예의 본질적인 특성을 벗어나지 않는 범위에서 이상에 예시되지 않은 여러 가지의 변형과 응용이 가능함을 알 수 있을 것이다. 예를 들어, 실시 예들에 구체적으로 나타난 각 구성 요소는 변형하여 실시할 수 있는 것이다. 그리고 이러한 변형과 응용에 관계된 차이점들은 첨부한 청구 범위에서 규정하는 본 명세서의 범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (10)

  1. 서버가 사용자의 점수 예측을 위한 인공지능 모델을 사전 학습시키는 방법에 있어서,
    제1 모델을 학습시키기 위한 제1 시퀀스(Sequence)를 생성하는 단계로서, 상기 제1 시퀀스는 상기 사용자의 점수 예측을 위한 연습 문제와 관련된 마스킹(masking)된 요소를 포함함;
    상기 제1 모델을 학습시키기 위해, 상기 제1 시퀀스를 상기 제1 모델에 입력하는 단계; 및
    제2 모델을 학습시키기 위해, 상기 제1 시퀀스에 근거하여, 상기 제1 모델이 예측한 제2 시퀀스를 상기 제2 모델에 입력하는 단계;
    를 포함하며,
    상기 제2 모델은 상기 제2 시퀀스에 근거하여, 상기 제2 모델을 통해 예측된 제3 시퀀스와 상기 제1 시퀀스의 비교를 통해 학습되는, 사전 학습 방법.
  2. 제1항에 있어서,
    상기 제1 시퀀스는
    (1) 연습 문제의 식별자, (2) 상기 연습 문제의 타입을 나타내는 특정 파트, 및 (3) 상기 연습 문제에 대한 상기 사용자의 답변을 나타내는 요소를 포함하는, 사전 학습 방법.
  3. 제2항에 있어서,
    상기 마스킹된 요소는
    상기 연습 문제에 대한 상기 사용자의 답변을 나타내는 요소인, 사전 학습 방법.
  4. 제3항에 있어서,
    복수개의 제1 시퀀스가 생성되는 것에 근거하여, 상기 마스킹된 요소가 포함되는 상기 제1 시퀀스는 랜덤하게 결정되는, 사전 학습 방법.
  5. 제1항에 있어서,
    상기 제1 모델을 제거하는 단계;
    상기 제2 모델로, 상기 제2 모델을 미세 조정(fine tuning)하기 위한, 제4 시퀀스를 생성하는 단계; 및
    상기 제4 시퀀스를 이용하여, 상기 제2 모델을 미세 조정하는 단계;
    를 포함하는, 사전 학습 방법.
  6. 제5항에 있어서,
    상기 미세 조정된 제2 모델은
    상기 사용자의 점수를 예측하기 위해 사전 학습이 완료된, 사전 학습 방법.
  7. 사용자의 점수 예측을 위한 인공지능 모델을 사전 학습시키는 서버에 있어서,
    통신모듈(communication module);
    메모리;
    프로세서를 포함하고,
    상기 프로세서는
    제1 모델을 학습시키기 위한 제1 시퀀스를 생성하고, 상기 제1 시퀀스는 상기 사용자의 점수 예측을 위한 연습 문제와 관련된 마스킹(masking)된 요소를 포함하며,
    상기 제1 모델을 학습시키기 위해, 상기 제1 시퀀스를 상기 제1 모델에 입력하고, 제2 모델을 학습시키기 위해, 상기 제1 시퀀스에 근거하여, 상기 제1 모델이 예측한 제2 시퀀스를 상기 제2 모델에 입력하며,
    상기 제2 모델은 상기 제2 시퀀스에 근거하여, 상기 제2 모델을 통해 예측된 제3 시퀀스와 상기 제1 시퀀스의 비교를 통해 학습되는, 장치.
  8. 제7항에 있어서,
    상기 제1 시퀀스는
    (1) 연습 문제의 식별자, (2) 상기 연습 문제의 타입을 나타내는 특정 파트, 및 (3) 상기 연습 문제에 대한 상기 사용자의 답변을 나타내는 요소를 포함하는, 장치
  9. 제8항에 있어서,
    상기 마스킹된 요소는
    상기 연습 문제에 대한 상기 사용자의 답변을 나타내는 요소인, 장치.
  10. 제6항에 있어서,
    상기 미세 조정된 제2 모델은
    상기 제1 모델의 출력값과 관련된 제1 손실함수 및 상기 제2 모델의 출력값과 관련된 제2 손실함수의 합인 제3 손실함수에 근거하여, 상기 사용자의 시험 점수를 예측하는, 사전 학습 방법.
PCT/KR2022/002221 2021-03-15 2022-02-15 인공지능 모델을 사전 학습시키는 방법 및 장치 WO2022196955A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/776,798 US20240169249A1 (en) 2021-03-15 2022-02-15 Method and apparatus for pre-training artificial intelligence models

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2021-0033271 2021-03-15
KR20210033271 2021-03-15
KR10-2021-0094882 2021-07-20
KR1020210094882A KR102396981B1 (ko) 2021-07-20 2021-07-20 인공지능 모델을 사전 학습시키는 방법 및 장치

Publications (1)

Publication Number Publication Date
WO2022196955A1 true WO2022196955A1 (ko) 2022-09-22

Family

ID=83320740

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2022/002221 WO2022196955A1 (ko) 2021-03-15 2022-02-15 인공지능 모델을 사전 학습시키는 방법 및 장치

Country Status (2)

Country Link
US (1) US20240169249A1 (ko)
WO (1) WO2022196955A1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110111803A (zh) * 2019-05-09 2019-08-09 南京工程学院 基于自注意多核最大均值差异的迁移学习语音增强方法
KR20190101692A (ko) * 2018-02-23 2019-09-02 주식회사 삼알글로벌 학습 전이 기반의 비디오 감시 방법
KR20200057291A (ko) * 2018-11-16 2020-05-26 한국전자통신연구원 전이 학습 모델 생성 방법 및 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190101692A (ko) * 2018-02-23 2019-09-02 주식회사 삼알글로벌 학습 전이 기반의 비디오 감시 방법
KR20200057291A (ko) * 2018-11-16 2020-05-26 한국전자통신연구원 전이 학습 모델 생성 방법 및 장치
CN110111803A (zh) * 2019-05-09 2019-08-09 南京工程学院 基于自注意多核最大均值差异的迁移学习语音增强方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CLARK KEVIN, LUONG MINH-THANG, BRAIN GOOGLE, LE QUOC V, MANNING CHRISTOPHER D: "ELECTRA: PRE-TRAINING TEXT ENCODERS AS DISCRIMINATORS RATHER THAN GENERATORS", 1 March 2020 (2020-03-01), XP055967912, Retrieved from the Internet <URL:https://arxiv.org/pdf/2003.10555.pdf> [retrieved on 20221004] *
LEE, JUHONG: "Meticulous and easy to understand ELECTRA paper review", ELECTRA, 8 May 2020 (2020-05-08), XP055967911, Retrieved from the Internet <URL:https://tech.scatterlab.co.kr/electra-review/> [retrieved on 20221004] *

Also Published As

Publication number Publication date
US20240169249A1 (en) 2024-05-23

Similar Documents

Publication Publication Date Title
WO2020122669A1 (en) Distributed training of machine learning models for personalization
WO2023003262A1 (ko) 시험 점수를 예측하는 방법 및 장치
WO2020258657A1 (zh) 异常检测方法、装置、计算机设备及存储介质
WO2022163996A1 (ko) 자기주의 기반 심층 신경망 모델을 이용한 약물-표적 상호작용 예측 장치 및 그 방법
WO2018212584A2 (ko) 딥 뉴럴 네트워크를 이용하여 문장이 속하는 클래스를 분류하는 방법 및 장치
WO2019054846A1 (en) DYNAMIC INTERACTION METHOD AND ELECTRONIC DEVICE THEREOF
WO2019177373A1 (en) Electronic device for controlling predefined function based on response time of external electronic device on user input, and method thereof
WO2022114437A1 (ko) 클라우드 환경에서 음성 인식을 통하여 인공지능 제어기술을 수행하는 전자 칠판 시스템
WO2024090713A1 (ko) 공감 심리학 기반의 챗봇 서비스를 통한 유저 심리 관리 시스템
WO2022145829A1 (ko) 잠재인자에 기반한 협업 필터링을 사용하여 사용자의 정답확률을 예측하는 학습 컨텐츠 추천 시스템 및 그것의 동작방법
KR102396981B1 (ko) 인공지능 모델을 사전 학습시키는 방법 및 장치
WO2022270840A1 (ko) 외국어 학습자의 어휘 실력 예측과 향상을 위한 딥러닝 기반의 단어 추천 시스템
WO2022196955A1 (ko) 인공지능 모델을 사전 학습시키는 방법 및 장치
WO2022114913A1 (ko) 인공지능 기술을 이용한 적층형 저항 변화 메모리 소자의 계층 최적화 시스템 및 그 방법
WO2022080666A1 (ko) 인공 지능 학습 기반의 사용자 지식 추적 장치, 시스템 및 그것의 동작 방법
WO2023022406A1 (ko) 학습 실력 평가 방법, 학습 실력 평가 장치 및 학습 실력 평가 시스템
WO2023146030A1 (ko) 감성, 집중도, 대화를 통합한 인공지능 기반 상호작용 장치, 방법 및 프로그램
WO2023282537A1 (ko) 학습 능력 평가 방법, 학습 능력 평가 장치, 및 학습 능력 평가 시스템
WO2022071708A1 (ko) 컨텐츠 추천 서비스를 제공하는 전자 장치 및 그 방법
KR102445226B1 (ko) 지식 추적을 위한 모델 경량화 방법
WO2023022405A1 (ko) 사전 학습을 위한 자동화 머신 러닝
WO2022270841A1 (ko) 외국어 학습자의 어휘 실력 예측과 향상을 위한 딥러닝 기반의 단어 추천 방법
WO2022260450A1 (ko) 오디오 음질 변환 장치 및 그의 제어방법
WO2023182605A1 (ko) 수학식 음독 기술을 활용한 수학관련 인공지능 모델 성능 개선 및 검색 용이성 확대 방법
WO2024075870A1 (ko) 비주얼 코딩 방법 및 이를 위한 장치

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 17776798

Country of ref document: US

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

Ref document number: 22771621

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22771621

Country of ref document: EP

Kind code of ref document: A1