WO2023113295A1 - 모델 갱신 장치 및 방법 - Google Patents

모델 갱신 장치 및 방법 Download PDF

Info

Publication number
WO2023113295A1
WO2023113295A1 PCT/KR2022/018895 KR2022018895W WO2023113295A1 WO 2023113295 A1 WO2023113295 A1 WO 2023113295A1 KR 2022018895 W KR2022018895 W KR 2022018895W WO 2023113295 A1 WO2023113295 A1 WO 2023113295A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
model
output
learning
input
Prior art date
Application number
PCT/KR2022/018895
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 KR1020210180535A external-priority patent/KR20230091429A/ko
Priority claimed from KR1020210180534A external-priority patent/KR20230091428A/ko
Priority claimed from KR1020210180533A external-priority patent/KR20230091427A/ko
Application filed by 주식회사 씨에스리 filed Critical 주식회사 씨에스리
Publication of WO2023113295A1 publication Critical patent/WO2023113295A1/ko

Links

Images

Classifications

    • 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
    • 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
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Definitions

  • the present invention relates to improving the performance of an artificial intelligence model, and more particularly, to a technique for improving the performance of an artificial intelligence model, a technique for updating an artificial intelligence model, and a technique for updating a model according to additional learning data.
  • Training data including appropriate labels are required for training of artificial intelligence models. Labels may be directly matched by a person for each data or automatically set corresponding to each data according to a preset algorithm.
  • the performance of AI models improves when appropriate learning is performed.
  • a new training data set for the corresponding process is required, but it is difficult to secure a training data set corresponding to a pattern of the changed input data.
  • the present invention provides a model updating apparatus and method capable of reducing the cost of data collection for model generation and updating, and improving model performance by constructing learning data through data generated in actual services.
  • a model updating device is provided.
  • a model updating apparatus outputs a learning data collection unit that monitors input data and output data generated in a service through a model and outputs from the model when the learning data used for learning the model is used as an input.
  • a model correction unit correcting data input to or output from the model according to a deviation between the first output and the second output output from the model through input of input data having a similarity with the pre-learning data equal to or greater than a specified threshold.
  • a method for updating a model and a computer program for executing the same are provided.
  • a method for updating a model and a computer program executing the same monitors input data and output data generated from a service through a model, and when the previously learned data used for learning the model is used as an input, the model Correcting data input to or output from the model according to a deviation between a first output output from and a second output output from the model through input of input data having a degree of similarity with pre-learning data equal to or greater than a specified threshold.
  • a specified threshold can include
  • the performance of a model can be improved through data generated from a service without newly learning an artificial intelligence model through new data.
  • the update time of the model can be determined while managing the input data of the artificial intelligence model in service as learning data.
  • the cost required for labeling can be reduced by excluding data similar to pre-learned data from the learning data.
  • imbalance between classes can be alleviated by matching the ratio with the underclass by adjusting the ratio through oversized class sampling.
  • a data set close to data with low information loss and strong against data noise can be constructed.
  • FIG. 1 is a block diagram illustrating a model updating apparatus according to an embodiment of the present invention.
  • FIG. 2 is a block diagram illustrating a labeler of a model updating device according to an embodiment of the present invention.
  • FIG. 3 is a block diagram illustrating a model learning unit of a model updating apparatus according to an embodiment of the present invention.
  • FIG. 4 is a block diagram illustrating the structure of a learning data providing unit of a model updating device according to an embodiment of the present invention.
  • FIG. 5 is a flowchart illustrating a method for performing labeling by a model updating apparatus according to an embodiment of the present invention
  • FIG. 6 is a flowchart illustrating a process of labeling training data by a model updating apparatus according to an embodiment of the present invention
  • FIG. 7 is a flowchart illustrating a process of sampling learning data by a model updating apparatus according to an embodiment of the present invention
  • FIG. 1 is a block diagram illustrating a model updating apparatus according to an embodiment of the present invention.
  • a model updating device 10 includes a labeler 100, a model learning unit 200, a learning data providing unit 300, a learning data collecting unit 400, and A model correction unit 500 is included.
  • the labeler 100 receives unlabeled data from the outside, and data having a similarity with pre-learned learning data stored in the training data providing unit 300 (hereinafter, referred to as pre-learning data) equal to or greater than a predetermined first threshold. Excluding from the learning data, labeling is performed on the remaining data and transmitted to the learning data providing unit 300.
  • pre-learning data pre-learned learning data stored in the training data providing unit 300
  • labeling is performed on the remaining data and transmitted to the learning data providing unit 300.
  • FIG. 2 is a block diagram illustrating a labeler of a model updating device according to an embodiment of the present invention.
  • the labeler 100 includes a clustering unit 110 , a similarity calculating unit 120 and a labeling unit 130 .
  • the clustering unit 110 When receiving unlabeled data (hereinafter, referred to as unlabeled data), the clustering unit 110 performs clustering on each unlabeled data according to a predetermined pattern to form one or more clusters. At this time, the clustering unit 110 may form clusters through techniques such as K-means, hierarchical clustering, spectral clustering, and DBSCAN. For example, when receiving unlabeled data including ⁇ swimsuit, seawater, echo ⁇ , the clustering unit 110 performs clustering on the corresponding data to form a first cluster ⁇ swimsuit, seawater ⁇ and a second cluster. Can form ⁇ echo ⁇ .
  • the similarity calculation unit 120 calculates the similarity between each cluster and the pre-learning data used for model learning. For example, the learning data providing unit (300 ) is stored in The similarity calculating unit 120 may calculate a similarity between ⁇ swimsuit, seawater ⁇ , which is the first cluster, and the clusters of pre-trained data classified into each class. Also, the similarity calculating unit 120 may calculate a similarity between ⁇ echo ⁇ , which is the second cluster, and the clusters of pre-trained data classified into each class. The similarity calculation unit 120 may calculate the similarity through techniques such as cosine similarity, Jacquard similarity, and Euclidean similarity techniques. The similarity calculating unit 120 transmits each similarity to the labeling unit 130 .
  • the labeling unit 130 excludes the corresponding unlabeled data cluster from the training data when a similarity between the unlabeled data cluster and one or more clusters of the previously trained data is greater than or equal to a first threshold value. That is, the labeling unit 130 performs labeling on clusters of unlabeled data whose similarity with all clusters is less than a first threshold value among the previously learned data, and uses the labeled data as new training data.
  • the training data providing unit 300 save to
  • the labeling unit 130 may determine the similarity between ⁇ swimsuit, seawater ⁇ , which is the first group of unlabeled data, and ⁇ water, wave, swimming, etc. ⁇ , which is data classified as "sea" (eg, each classification When the average of similarities between data) is greater than or equal to the first threshold, data of the first cluster may be excluded from the training data.
  • the labeling unit 130 performs labeling on the second cluster ⁇ echo ⁇ when the similarity between the second cluster ⁇ echo ⁇ and the cluster of pre-learning data is less than the first threshold value, and provides the learning data as training data ( 300).
  • the labeling unit 130 determines whether the similarity between the second cluster ⁇ echo ⁇ and the pre-learning data is less than the first threshold and greater than or equal to the second threshold (in this case, the first threshold is equal to or greater than the second threshold). greater natural number), the label for the data of the second cluster may be automatically set to the same label as the cluster of the class having the most similarity with each data of the second cluster.
  • the labeling unit 130 performs labeling by directly receiving a new label for each data of the second cluster from the user when the similarity between ⁇ echo ⁇ , which is the second cluster, and the clusters of the previously learned data is less than the second threshold. can do.
  • the labeler 100 prevents overfitting for a specific class by preventing unlabeled data having a very high similarity to the pre-learning data from being used as training data among unlabeled data, and By performing automatic labeling on labeled data, the number of unlabeled data to which new labels are added can be reduced, thereby reducing the load of the labeling task.
  • the model learning unit 200 learns a model constituting artificial intelligence through learning data stored in the learning data providing unit 300 .
  • the model may be a model implemented by a system such as a neural network constituting artificial intelligence.
  • the model learning unit 200 compares patterns of the pre-learning data (data and labels) with patterns of the additional training data.
  • the model learning unit 200 updates the model through the additional training data when the similarity between the pattern of the pre-learning data and the pattern of the additional training data is less than a predetermined threshold.
  • model learning unit 200 does not update the model through the additional training data when the similarity between the pattern of the pre-learning data and the pattern of the additional training data is greater than or equal to a predetermined threshold.
  • a detailed structure of the model learning unit 200 will be described with reference to FIG. 3 .
  • FIG. 3 is a block diagram illustrating a model learning unit of a model updating apparatus according to an embodiment of the present invention.
  • the model learning unit 200 includes a pattern storage unit 210 , an update determination unit 220 and a learning unit 230 .
  • the pattern storage unit 210 stores patterns of learning data. For example, when a model for predicting a season according to clothing is generated with a training data set using clothing training data and a season label, the pattern storage unit 210 stores ⁇ short sleeve - summer>, ⁇ long sleeve - winter> and Similarly, you can store patterns that associate clothing with seasons.
  • the update determination unit 220 updates the model through the additional training data when the pattern similarity between the additional training data and the pre-learning data is less than or equal to a designated threshold when receiving an additional training data pattern from the training data providing unit 300. is performed through the learning unit 230. For example, when the pattern of the additional learning data is ⁇ Short Sleeve - Summer>, since the pattern of the pre-learning data and the pattern of the additional learning data are the same, the update determining unit 220 performs an update according to ⁇ Short Sleeve - Summer>. I never do that.
  • the learning unit 230 performs a model update according to ⁇ Shorts - Summer>. can be done through Conversely, if the similarity between the pattern of the pre-learning data and the pattern of the additional learning data exceeds a specified threshold, the update determination unit 220 suspends the update according to the additional learning data, and through the additional learning data similar to the pre-learning data Through the update, it is possible to prevent performing an update that is not highly effective.
  • the update determination unit 220 determines the learning unit 230 when the ratio of the number of additional learning data to the total learning data received from the learning data providing unit 300 is greater than or equal to a predetermined threshold (eg, 30%). You can perform model update through . Alternatively, when the ratio of the number of additional training data to the total training data is equal to or greater than a predetermined threshold, the update determination unit 220 determines that the pattern similarity between the additional training data and the pre-learning data is equal to or less than a designated threshold, and determines the additional training data. Update of the model through can be performed through the learning unit 230.
  • a predetermined threshold eg, 30%
  • the learning unit 230 performs model learning through training data and additional training data.
  • the model updating device performs a model update only when the pattern of the additional training data differs from the pattern of the pre-training data by a certain amount or more, thereby preventing an inefficient situation in which the model is updated according to the addition of all additional training data. there is.
  • model update device can determine the renewal time of the artificial intelligence model while managing the input value of the artificial intelligence model in service as learning data using the previously added label.
  • the learning data providing unit 300 stores learning data and provides the learning data to the model learning unit 200 .
  • the learning data providing unit 300 classifies the learning data into a plurality of classes, it detects an excessive class having the largest number of learning data in the class and a small class having the smallest number of learning data in the class.
  • the training data providing unit 300 adjusts the number of training data for the excessive class by performing sampling on the excessive class so that the ratio of the number of training data of the excessive class and the small class falls within a specified range.
  • the learning data providing unit 330 generates noise data by using the training data of the exaggerated class, inputs the noise data to an unsupervised learning generative adversarial network (GAN) to generate noise learning data, and generates noise learning data in the existing training data.
  • GAN unsupervised learning generative adversarial network
  • Noise learning data may be added and provided to the model learning unit 200 .
  • a detailed structure of the learning data provider 300 will be described with reference to FIG. 4 .
  • FIG. 4 is a block diagram illustrating the structure of a learning data providing unit of a model updating device according to an embodiment of the present invention.
  • the learning data providing unit 300 includes an imbalance distribution checking unit 310, a sampling unit 320, and a noise adding unit 330.
  • the imbalanced distribution checking unit 310 determines whether a ratio of the number of training data of the overclass and underclass falls within a specified range. If the ratio of the number of training data of the large class to the small class exceeds the specified range, a sampling request signal requesting sampling of the large class is transmitted to the sampling unit 320 .
  • the sampling unit 320 When receiving the sampling request signal, the sampling unit 320 performs sampling on the excessive class.
  • the sampling unit 320 may calculate a central point of a feature vector corresponding to the training data of the exaggerated class.
  • the sampling unit 320 samples learning data in which the distance of a specific vector is within a certain range based on the calculated center point, or simple random sampling, two-step sampling, sampling by layer, cluster/colony sampling, systematic sampling, etc., which are stochastic sampling methods. technique can be applied
  • the noise adder 330 generates noise data using the training data and inputs the noise data to an unsupervised learning GAN to generate noise training data.
  • the noise adder 330 may add noise learning data to the sampling-completed training data and provide it to the model learner 200 .
  • the model updating apparatus prevents a model from being learned in a biased direction that predicts only the result of an exaggerated class due to an increase in a specific class, and the model is generated through noise learning data generated in consideration of noise. It can be learned robustly against noise.
  • the learning data collection unit 400 collects learning data through input data and output data generated from a service through a learned model.
  • the learning data collection unit 400 may collect input data and output data generated from a service through a learned model.
  • the learning data collection unit 400 sets an additional learning data set in which input data is set as learning data by labeling output data existing within the label range (a set of labels set for the previously learned data) of the pre-learning data among the output data. can be configured.
  • the learning data collection unit 400 may include the corresponding input data and output data in the additional training data set only when the input data corresponding to the output data existing within the label range of the pre-learning data is different from the pre-learning data. there is.
  • the learning data collection unit 400 transmits an additional learning data set to the learning data providing unit 300 .
  • the model updating device can reduce the cost of data collection for model creation and update, and can improve the performance of the model by configuring learning data through data generated in actual services. .
  • the model correction unit 500 improves the performance of the model by correcting data output by the model.
  • the model correction unit 500 may monitor input data and output data generated in a service through the learned model through the learning data collection unit 400 .
  • the model corrector 500 takes the pre-learning data used for model learning as an input, the first output output from the model and input data similar to the pre-learning data (cosine similarity, Jacquard similarity, Euclidean similarity technique and Through the same technique, a deviation of the second output output from the model may be calculated through input of input data whose similarity with the pre-learning data is equal to or greater than a specified threshold.
  • the model correction unit 500 may set the center value of the class to which the difference between the first output and the second output belongs as an error correction value.
  • the model correction unit 500 may preset classes for classifying deviations between the first output and the second output, and may set a center value of deviations corresponding to each class as an error correction value.
  • the model correction unit 500 may correct output data corresponding to the input data by applying the error correction value to input data or output data.
  • the model correction unit 500 may add or subtract an error correction value to the output data, or add or subtract an error correction value to the input data and then input the input data to the model so that the output data of the model is corrected.
  • the model updating device can improve the performance of a model through data generated from a service without newly learning an artificial intelligence model through new data.
  • FIG. 5 is a flowchart illustrating a method of performing labeling by a model updating apparatus according to an embodiment of the present invention.
  • Each step to be described below is a process performed by each functional unit constituting the above-described model update device with reference to FIG. 1, but for concise and clear description of the invention, the subject of each step is collectively referred to as a model update device.
  • step 510 the model updating device performs labeling on training data for which no label has been set. At this time, a specific process of performing labeling will be described in detail with reference to FIG. 6 later.
  • the model updating device collects additional training data through data input and output to the model in the service through the model.
  • the model updating device may collect input data and output data generated from a service through a learned model.
  • the model updating device may configure an additional training data set in which input data is set as training data by labeling output data existing within a label range of the training data among the output data.
  • the model updating device may include the corresponding input data and output data in the additional training data set only when the input data corresponding to the output data existing within the label range of the previously learned data is different from the previously learned data.
  • step 520 the model updating device performs sampling on the training data and adjusts the number of training data belonging to the excessive class. At this time, a specific process of performing the sampling will be described in detail with reference to FIG. 7 later.
  • the model update device determines whether the model needs to be updated.
  • the model updating device may determine whether the model needs to be updated according to the similarity between the pre-learning data and the pattern of the additional training data or the ratio of the additional training data to the total training data.
  • the model updating device may store and manage patterns of additional learning data and pre-learning data.
  • the model updating device may determine that the model needs to be updated through the additional training data when the similarity between the patterns of the additional training data and the pre-learning data is less than or equal to a specified threshold.
  • the model update device may determine that the model needs to be updated through the additional training data when the ratio of the additional training data to the total training data is greater than or equal to a specified threshold (eg, 30%).
  • step 530 the model updating device updates the model using the additional training data.
  • step 535 the model updating device outputs the first output from the model when the previously learned data is used as an input, and the previously learned data among the input data received during service provision through the model.
  • the output data of the model is corrected according to the deviation of the second output output from the model through input of similar input data.
  • the model updating apparatus may preset classes for classifying deviations between the first output and the second output, and may set a central value of deviations corresponding to each class as an error correction value.
  • the model updating device may correct output data corresponding to the input data by applying the error correction value to the output data.
  • the model updating device may apply the error correction value to the input data and then input the error correction value to the model so that the value of the output data is corrected.
  • FIG. 6 is a flowchart illustrating a process of labeling training data by a model updating apparatus according to an embodiment of the present invention. Each process described below may be a process corresponding to step 510 of FIG. 5 .
  • the model updating apparatus forms one or more clusters by performing clustering on each unlabeled data according to a predetermined pattern.
  • the model updating device calculates a similarity between each cluster of unlabeled data and a cluster of pre-learning data used for model learning.
  • the model updating device may calculate similarity through techniques such as cosine similarity, Jacquard similarity, and Euclidean similarity techniques.
  • the model updating apparatus excludes the corresponding unlabeled data cluster from the training data when the similarity between the unlabeled data cluster and one or more clusters of the previously trained data is greater than or equal to a first threshold value.
  • the model updating device may determine if the similarity between the cluster of unlabeled data and all clusters in the learning data is less than the first threshold and greater than or equal to the second threshold (in this case, the first threshold is a value exceeding the second threshold). ), the same label as the cluster of the class with the most similarity with each data included in the corresponding cluster can be automatically set as the label corresponding to each data.
  • the model updating device may perform labeling by directly receiving a new label for each data from the user when the similarity between the clusters of the unlabeled data and all clusters among the pre-learning data is less than the second threshold value.
  • FIG. 7 is a flowchart illustrating a process of sampling learning data by a model updating apparatus according to an embodiment of the present invention. Each process described below is a process corresponding to 520 in FIG. 5 .
  • step 710 when the training data is classified into a plurality of classes, the model updating apparatus detects an overclass having the largest number of training data in the class and an underclass having the smallest number of training data in the class.
  • the model updating device performs sampling on the large class so that the ratio of the number of training data for the large class and small class falls within a specified range, and adjusts the number of training data for the large class.
  • the model updating device may calculate a central point of a feature vector corresponding to training data of an exaggerated class, and perform sampling on the exaggerated class based on the central point.
  • the model updating device generates noise data using the training data of the overclass, inputs the noise data into an unsupervised learning generative adversarial network (GAN) to generate noise training data, and generates noise training data in the existing training data.
  • GAN unsupervised learning generative adversarial network
  • the learning data management method may be implemented in the form of program instructions that can be executed through various computer means and recorded in 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 the art of computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks.
  • hardware devices specially configured to store and execute program instructions such as magneto-optical media and ROM, RAM, flash memory, etc.
  • the above-described medium may be a transmission medium such as light including a carrier wave for transmitting a signal designating a program command, data structure, or the like, or a metal wire or a waveguide.
  • program instructions include high-level language codes that can be executed by a computer using an interpreter, as well as machine language codes such as those produced by a compiler.
  • the hardware device described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.
  • the present invention can reduce the cost of data collection for model generation and renewal, and can improve the performance of the model by configuring learning data through data generated in actual services, so it has industrial applicability.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Machine Translation (AREA)

Abstract

본 발명은 인공지능 모델의 성능 향상에 관한 것으로, 보다 상세하게는 인공지능 모델의 성능 향상을 위한 보정, 인공지능 모델의 갱신 기술 및 추가 학습 데이터에 따라 모델을 갱신하는 기술에 관한 것이다. 본 발명의 일 실시 예에 따르면, 운영 중인 인공지능 모델의 갱신 시점을 효율적으로 결정할 수 있어 인공지능 모델의 성능을 유지하면서 갱신에 요구되는 비용을 줄일 수 있다.

Description

모델 갱신 장치 및 방법
본 발명은 인공지능 모델의 성능 향상에 관한 것으로, 보다 상세하게는 인공지능 모델의 성능 향상을 위한 보정, 인공지능 모델의 갱신 기술 및 추가 학습 데이터에 따라 모델을 갱신하는 기술에 관한 것이다.
인공지능 모델의 학습을 위해서는 적절한 레이블을 포함하는 학습데이터가 필요하다. 레이블은 각 데이터에 대해 사람이 직접 데이터를 매칭하거나 미리 설정된 알고리즘에 따라 자동으로 각 데이터에 대응하여 설정될 수 있다.
학습 데이터를 제공하기 위해서는 데이터 수집, 레이블링 등의 작업을 위한 많은 시간과 비용이 소모된다. 특히 사람이 직접 레이블링하는 과정은 시간 및 비용이 많이 든다. 만약, 유사한 데이터가 다수 존재하는 경우, 각 데이터에 대해 직접 사람이 레이블링을 수행하는 것은 비효율적이다.
또한 인공지능 모델의 성능은 적합한 학습을 수행하였을 때 향상된다. 하지만, 새로운 입력 데이터에 대한 처리를 위해서는 해당 처리를 위한 새로운 학습 데이터 세트가 필요하지만, 변화된 입력 데이터의 패턴에 대응하는 학습 데이터 세트를 확보하는 것은 어려운 일이다.
한편 인공지능 모델에 요구는 따라 달라지기 때문에 별도의 학습 데이터를 통한 갱신 과정이 요구된다. 하지만, 인공지능 모델의 갱신 과정은 비용이 크기 때문에 적절한 갱신 시점이 중요하다.
본 발명은 모델 생성 및 갱신을 위한 데이터 수집에 비용을 줄일 수 있으며, 실제 서비스에서 발생하는 데이터를 통해 학습 데이터를 구성함으로써 모델의 성능을 향상시킬 수 있는 모델 갱신 장치 및 방법을 제공한다.
본 발명의 일 측면에 따르면, 모델 갱신 장치를 제공한다.
본 발명의 일 실시 예에 따른 모델 갱신 장치는 모델을 통한 서비스에서 발생하는 입력 데이터 및 출력 데이터를 모니터링하는 학습 데이터 수집부 및 모델의 학습에 이용된 기 학습 데이터를 입력으로 할 때 모델에서 출력하는 제1 출력과, 기 학습 데이터와의 유사도가 지정된 임계값 이상인 입력 데이터의 입력을 통해 모델에서 출력된 제2 출력의 편차에 따라 모델에 입력되거나 모델로부터 출력되는 데이터를 보정하는 모델 보정부를 포함할 수 있다.
본 발명의 다른 일 측면에 따르면, 모델 갱신 방법 및 이를 실행하는 컴퓨터 프로그램을 제공한다.
본 발명의 일 실시 예에 따른 모델 갱신 방법 및 이를 실행하는 컴퓨터 프로그램은 모델을 통한 서비스에서 발생하는 입력 데이터 및 출력 데이터를 모니터링하는 단계 및 모델의 학습에 이용된 기 학습 데이터를 입력으로 할 때 모델에서 출력하는 제1 출력과, 기 학습 데이터와의 유사도가 지정된 임계값 이상인 입력 데이터의 입력을 통해 모델에서 출력된 제2 출력의 편차에 따라 상기 모델에 입력되거나 모델로부터 출력되는 데이터를 보정하는 단계를 포함할 수 있다.
본 발명의 일 실시 예에 따르면, 새로운 데이터를 통해 인공지능 모델을 새로 학습하지 않고 서비스에서 발생하는 데이터를 통해 모델의 성능을 향상시킬 수 있다.
본 발명의 일 실시 예에 따르면, 운영 중인 인공지능 모델의 갱신 시점을 효율적으로 결정할 수 있어 인공지능 모델의 성능을 유지하면서 갱신에 요구되는 비용을 줄일 수 있다.
또한 본 발명의 일 실시 예에 따르면, 서비스 중인 인공지능 모델의 입력 데이터를 학습 데이터로 관리하면서 모델의 갱신 시점을 판단할 수 있다.
본 발명의 일 실시 예에 따르면, 기 학습된 데이터와 유사한 데이터를 학습 데이터에서 제외하여 레이블링에 소요되는 비용을 줄일 수 있다.
본 발명의 일 실시 예에 따르면, 과대 클래스 샘플링을 통한 비율조정으로 과소 클래스와의 비율을 맞춰 클래스 간 불균형을 완화할 수 있다.
또한, 본 발명의 일 실시 예에 따르면, 정보손실이 적고, 데이터 노이즈에 강한 데이터에 가까운 데이터 세트도 구축할 수 있다.
본 발명의 일 실시 예에 따르면, 모델 생성 및 갱신을 위한 데이터 수집에 비용을 줄일 수 있으며, 실제 서비스에서 발생하는 데이터를 통해 학습 데이터를 구성함으로써 모델의 성능을 향상 시킬 수 있다.
도 1은 본 발명의 일 실시 예에 따른 모델 갱신 장치를 예시한 블록도.
도 2는 본 발명의 일 실시 예에 따른 모델 갱신 장치의 레이블러를 예시한 블록도.
도 3은 본 발명의 일 실시 예에 따른 모델 갱신 장치의 모델 학습부를 예시한 블록도.
도 4는 본 발명의 일 실시 예에 따른 모델 갱신 장치의 학습 데이터 제공부의 구조를 예시한 블록도.
도 5는 본 발명의 일 실시 예에 따른 모델 갱신 장치가 레이블링을 수행하는 방법을 예시한 순서도.
도 6은 본 발명의 일 실시예에 따른 모델 갱신 장치가 학습 데이터에 대해 레이블링을 수행하는 과정을 예시한 순서도.
도 7은 본 발명의 일 실시 예에 따른 모델 갱신 장치가 학습 데이터를 샘플링하는 과정을 예시한 순서도.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시 예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 이를 상세한 설명을 통해 상세히 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서 및 청구항에서 사용되는 단수 표현은, 달리 언급하지 않는 한 일반적으로 "하나 이상"을 의미하는 것으로 해석되어야 한다.
이하, 본 발명의 바람직한 실시 예를 첨부도면을 참조하여 상세히 설명하기로 하며, 첨부 도면을 참조하여 설명함에 있어, 동일하거나 대응하는 구성 요소는 동일한 도면번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
도 1은 본 발명의 일 실시 예에 따른 모델 갱신 장치를 예시한 블록도이다.
도 1을 참조하면, 본 발명의 일 실시 예에 따른 모델 갱신 장치(10)는 레이블러(100), 모델 학습부(200), 학습 데이터 제공부(300), 학습 데이터 수집부(400) 및 모델 보정부(500)를 포함한다.
레이블러(100)는 외부로부터 레이블링 되지 않은 데이터를 수신하고, 학습 데이터 제공부(300)에 저장된 기 학습된 학습 데이터(이하, 기 학습 데이터라 지칭)와 유사도가 미리 지정된 제1 임계값 이상인 데이터를 학습 데이터에서 제외하고 나머지 데이터에 대해 레이블링을 수행하여 학습 데이터 제공부(300)로 전송한다. 이하, 레이블러(100)의 구체적인 동작을 하기의 도 2를 참조하여 상세히 설명하도록 한다.
도 2는 본 발명의 일 실시 예에 따른 모델 갱신 장치의 레이블러를 예시한 블록도이다.
도 2를 참조하면, 레이블러(100)는 클러스터링부(110), 유사도 산출부(120) 및 레이블링부(130)를 포함한다.
클러스터링부(110)는 레이블링이 되지 않은 데이터(이하, 언레이블 데이터라 지칭)를 수신하는 경우, 각 언레이블 데이터에 대해 미리 지정된 패턴에 따라 클러스터링을 수행하여 하나 이상의 군집을 형성한다. 이 때, 클러스터링부(110)는 K-means, Hierarchical clustering, Spectral Clustering, DBSCAN 등의 기법을 통해 군집을 형성할 수 있다. 예를 들어, 클러스터링부(110)는 {수영복, 바닷물, 메아리}를 포함하는 언레이블 데이터를 수신하는 경우, 해당 데이터에 대해 클러스터링을 수행하여 제1 군집인 {수영복, 바닷물}과 제2 군집인 {메아리}를 형성할 수 있다.
유사도 산출부(120)는 각 군집과 모델의 학습에 사용된 기 학습 데이터 간의 유사도를 산출한다. 예를 들어, 기 학습 데이터가 클래스 "산"으로 분류된 데이터인 {나무, 잔디, 계곡 등}와 클래스 "바다"로 분류된 데이터인 {물, 파도, 수영 등}로 학습 데이터 제공부(300)에 저장되었다고 가정하자. 유사도 산출부(120)는 제1 군집인 {수영복, 바닷물}과 각 클래스로 분류된 기 학습 데이터의 군집 간의 유사도를 산출할 수 있다. 또한, 유사도 산출부(120)는 제2 군집인 {메아리}와 각 클래스로 분류된 기 학습 데이터의 군집 간의 유사도를 산출할 수 있다. 유사도 산출부(120)는 코사인 유사도, 자카드 유사도, 유클리디안 유사도 기법과 같은 기법을 통해 유사도를 산출할 수 있다. 유사도 산출부(120)는 각 유사도를 레이블링부(130)로 전송한다.
레이블링부(130)는 언레이블 데이터의 군집과 기 학습 데이터 중 하나 이상의 군집 간의 유사도가 제1 임계값 이상인 경우, 해당 언레이블 데이터의 군집을 학습 데이터에서 제외시킨다. 즉, 레이블링부(130)는 기 학습 데이터 중 모든 군집과의 유사도가 제1 임계값 미만인 언레이블 데이터의 군집에 대해 레이블링을 수행하고, 레이블링된 데이터를 새로운 학습 데이터로써 학습 데이터 제공부(300)에 저장한다.
예를 들어, 레이블링부(130)는 언레이블 데이터의 제1 군집인 {수영복, 바닷물}과 "바다"로 분류된 데이터인 {물, 파도, 수영 등}의 유사도(예를 들어, 각 분류의 데이터 간의 유사도들의 평균)가 제1 임계값 이상인 경우, 제1 군집의 데이터를 학습 데이터에서 제외시킬 수 있다. 레이블링부(130)는 제2 군집인 {메아리}와 기 학습 데이터의 군집 간의 유사도가 제1 임계값 미만인 경우, 제2 군집인 {메아리}에 대해 레이블링을 수행하여 학습 데이터로 학습 데이터 제공부(300)에 전송할 수 있다. 이 때, 레이블링부(130)는 제2 군집인 {메아리}와 기 학습 데이터의 군집 간 유사도가 제1 임계값 미만이고 제2 임계값 이상인 경우(이 때, 제1 임계값은 제2 임계값보다 큰 자연수임), 제2 군집의 데이터에 대한 레이블을 제2 군집의 각 데이터와 가장 유사도가 클래스의 군집과 동일한 레이블로 자동 설정할 수 있다. 또한, 레이블링부(130)는 제2 군집인 {메아리}와 기 학습 데이터의 군집 간 유사도가 제2 임계값 미만인 경우, 제2 군집의 각 데이터에 대해 사용자로부터 직접 새 레이블을 입력받아 레이블링을 수행할 수 있다.
따라서, 레이블러(100)는 언레이블 데이터 중 기 학습 데이터와 유사도가 매우 높은 언레이블 데이터는 학습 데이터로 사용되지 않도록 하여 특정 클래스에 대한 과적합이 되는 경우를 방지하고, 유사도가 일정 수준 이상인 언레이블 데이터에 대해서는 자동 레이블링을 수행하여, 새 레이블을 추가받는 언레이블 데이터의 수를 줄여 레이블링 작업의 부하를 줄일 수 있다.
다시 도 1을 참조하면, 모델 학습부(200)는 학습 데이터 제공부(300)에 저장된 학습 데이터를 통해 인공지능을 구성하는 모델을 학습시킨다. 이 때, 모델은 인공 지능을 구성하는 신경망 등의 시스템에 의해 구현된 모델일 수 있다. 모델 학습부(200)는 학습 데이터 제공부(300)로부터 추가 학습 데이터를 수신하는 경우, 기 학습 데이터의 패턴(데이터와 레이블)와 추가 학습 데이터의 패턴을 비교한다. 모델 학습부(200)는 기 학습 데이터의 패턴과 추가 학습 데이터의 패턴의 유사도가 미리 지정된 임계값 미만인 경우, 추가 학습 데이터를 통해 모델의 갱신을 수행한다. 반대로, 모델 학습부(200)는 기 학습 데이터의 패턴과 추가 학습 데이터의 패턴의 유사도가 미리 지정된 임계값 이상인 경우, 추가 학습 데이터를 통한 모델 갱신을 수행하지 않는다. 이하, 도 3을 참조하여 모델 학습부(200)의 상세 구조를 설명하도록 한다.
도 3은 본 발명의 일 실시 예에 따른 모델 갱신 장치의 모델 학습부를 예시한 블록도이다.
도 3을 참조하면, 모델 학습부(200)는 패턴 저장부(210), 갱신 판단부(220) 및 학습부(230)를 포함한다.
패턴 저장부(210)는 학습 데이터의 패턴을 저장한다. 예를 들어, 의류의 학습데이터와 계절의 레이블을 이용한 학습데이터 세트로 의류에 따른 계절을 예측하는 모델을 생성하는 경우, 패턴 저장부(210)는 <반팔 - 여름>, <긴팔 - 겨울>과 같이 의류와 계절을 연관시키는 패턴을 저장할 수 있다.
갱신 판단부(220)는 학습 데이터 제공부(300)로부터 추가 학습 데이터 패턴을 수신하는 경우, 추가 학습 데이터와 기 학습 데이터의 패턴의 유사도가 지정된 임계값 이하인 경우, 추가 학습 데이터를 통한 모델의 갱신을 학습부(230)를 통해 수행한다. 예를 들어, 추가 학습 데이터의 패턴이 <반팔 - 여름>인 경우, 기 학습 데이터의 패턴과 추가 학습 데이터의 패턴이 동일하기 때문에 갱신 판단부(220)는 <반팔 - 여름>에 따른 갱신을 수행하지 않는다. 반면, 추가 학습 데이터의 패턴이 <반바지 - 여름>이어서 기 학습 데이터의 패턴과 추가 학습 데이터의 패턴간 유사도가 지정된 임계값 이하인 경우, <반바지 - 여름>에 따른 모델 갱신을 학습부(230)를 통해 수행할 수 있다. 반대로 갱신 판단부(220)는 기 학습 데이터의 패턴과 추가 학습 데이터의 패턴간 유사도가 지정된 임계값을 초과하는 경우, 추가 학습 데이터에 따른 갱신을 유보하여, 기 학습 데이터와 유사한 추가 학습 데이터를 통한 갱신을 통해 효과가 높지 않은 갱신을 수행하는 것을 방지할 수 있다.
또한, 갱신 판단부(220)는 학습 데이터 제공부(300)로부터 수신한 전체 학습 데이터 대비 추가 학습 데이터의 수의 비율이 미리 지정된 임계값(예를 들어 30%) 이상인 경우, 학습부(230)를 통해 모델 갱신을 수행할 수 있다. 또는, 갱신 판단부(220)는 전체 학습 데이터 대비 추가 학습 데이터의 수의 비율이 미리 지정된 임계값 이상인 경우, 추가 학습 데이터와 기 학습 데이터의 패턴의 유사도가 지정된 임계값 이하임에 따라 추가 학습 데이터를 통한 모델의 갱신을 학습부(230)를 통해 수행할 수 있다.
학습부(230)는 학습 데이터 및 추가 학습 데이터를 통해 모델의 학습을 수행한다.
따라서, 모델 갱신 장치는 추가 학습 데이터의 패턴이 기 학습 데이터의 패턴과 일정 이상 상이한 경우에만 모델의 갱신을 수행하여 모든 추가 학습 데이터의 추가에 따라 모델의 갱신을 수행하는 비효율적인 상황을 방지할 수 있다.
또한, 모델 갱신 장치는 기존 추가된 레이블을 이용하여 서비스 중인 인공지능 모델의 입력 값을 학습 데이터로 관리하면서 인공지능 모델의 갱신 시점 판단이 가능하다.
다시 도 1을 참조하면, 학습 데이터 제공부(300)는 학습 데이터를 저장하고, 학습 데이터를 모델 학습부(200)로 제공한다. 학습 데이터 제공부(300)는 학습 데이터를 복수의 클래스로 분류하였을 때, 클래스 내 학습 데이터의 수가 가장 많은 과대 클래스와 클래스 내 학습 데이터의 수가 가장 적은 과소 클래스를 검출한다. 학습 데이터 제공부(300)는 과대 클래스와 과소 클래스의 학습 데이터 수의 비율이 지정된 범위 내에 해당하도록 과대 클래스에 대한 샘플링을 수행하여 과대 클래스에 대한 학습 데이터 수를 조정한다. 또한, 학습 데이터 제공부(330)는 과대 클래스의 학습 데이터를 이용하여 노이즈 데이터를 생성하고, 노이즈 데이터를 비지도 학습 GAN(Generative adversarial network)에 입력하여 노이즈 학습 데이터를 생성하고, 기존 학습 데이터에 노이즈 학습 데이터를 추가하여 모델 학습부(200)로 제공할 수 있다. 이하, 도 4를 참조하여 학습 데이터 제공부(300)의 상세한 구조를 설명하도록 한다.
도 4는 본 발명의 일 실시 예에 따른 모델 갱신 장치의 학습 데이터 제공부의 구조를 예시한 블록도이다.
도 4를 참조하면, 학습 데이터 제공부(300)는 불균형 분포 확인부(310), 샘플링부(320) 및 노이즈 추가부(330)를 포함한다.
불균형 분포 확인부(310)는 학습 데이터를 복수의 클래스로 분류하였을 경우, 과대 클래스와 과소 클래스의 학습 데이터 수의 비율이 지정된 범위 내에 해당하는지 판단한다. 만약, 과대 클래스와 과소 클래스의 학습 데이터 수의 비율이 지정된 범위를 벗어나는 경우, 샘플링부(320)로 과대 클래스에 대한 샘플링을 요청하는 샘플링 요청 신호를 전송한다.
샘플링부(320)는 샘플링 요청 신호를 수신하는 경우, 과대 클래스에 대한 샘플링을 수행한다. 샘플링부(320)는 과대 클래스의 학습 데이터에 대응하는 특징 벡터의 중심점을 산출할 수 있다. 샘플링부(320)는 산출된 중심점을 기준으로 특정 벡터의 거리가 일정 이내인 학습 데이터를 샘플링하거나, 확률적 샘플링 방법인 단순 랜덤 샘플링, 2단계 샘플링, 층별 샘플링, 군집/집락 샘플링, 계통 샘플링 등의 기법을 적용할 수 있다
노이즈 추가부(330)는 학습 데이터를 이용하여 노이즈 데이터를 생성하고, 노이즈 데이터를 비지도 학습 GAN에 입력하여 노이즈 학습 데이터를 생성한다. 노이즈 추가부(330)는 샘플링이 완료된 학습 데이터에 노이즈 학습 데이터를 추가하여 모델 학습부(200)로 제공할 수 있다.
따라서, 본 발명의 일 실시 예에 따른 모델 갱신 장치는 특정 클래스가 비대하여 과대 클래스의 결과만을 예측하는 편향된 방향으로 모델이 학습되는 것을 방지하고, 노이즈를 고려하여 생성된 노이즈 학습 데이터를 통해 모델이 노이즈에 대해 강인하게 학습되도록 할 수 있다.
다시 도 1을 참조하면, 학습 데이터 수집부(400)는 학습된 모델을 통한 서비스에서 발생하는 입력 데이터 및 출력 데이터를 통해 학습 데이터를 수집한다. 예를 들어, 학습 데이터 수집부(400)는 학습된 모델을 통한 서비스에서 발생하는 입력 데이터 및 출력 데이터를 수집할 수 있다. 학습 데이터 수집부(400)는 출력 데이터 중 기 학습 데이터의 레이블 범위(기 학습 데이터에 대해 설정된 레이블들의 집합) 내 존재하는 출력 데이터를 레이블로 하여 입력 데이터를 학습 데이터로 설정한 추가 학습 데이터 세트를 구성할 수 있다. 이 때, 학습 데이터 수집부(400)는 기 학습 데이터의 레이블 범위 내 존재하는 출력 데이터에 상응하는 입력 데이터가 기 학습 데이터와 상이한 경우에만 해당 입력 데이터 및 출력 데이터를 추가 학습 데이터 세트에 포함시킬 수 있다. 학습 데이터 수집부(400)는 추가 학습 데이터 세트를 학습 데이터 제공부(300)로 전송한다.
따라서, 본 발명의 일 실시예에 따른 모델 갱신 장치는 모델 생성 및 갱신을 위한 데이터 수집에 비용을 줄일 수 있으며, 실제 서비스에서 발생하는 데이터를 통해 학습 데이터를 구성함으로써 모델의 성능을 향상 시킬 수 있다.
모델 보정부(500)는 모델이 출력하는 데이터를 보정하여 모델의 성능을 향상 시킨다. 예를 들어, 모델 보정부(500)는 학습된 모델을 통한 서비스에서 발생하는 입력 데이터 및 출력 데이터를 학습 데이터 수집부(400)를 통해 모니터링할 수 있다. 모델 보정부(500)는 모델의 학습에 이용된 기 학습 데이터를 입력으로 하는 경우 모델에서 출력하는 제1 출력과, 기 학습 데이터와 유사한 입력 데이터(코사인 유사도, 자카드 유사도, 유클리디안 유사도 기법과 같은 기법을 통해 기 학습 데이터와의 유사도가 지정된 임계값 이상인 입력 데이터)의 입력을 통해 모델에서 출력된 제2 출력을 편차를 산출할 수 있다. 모델 보정부(500)는 제1 출력과 제2 출력의 편차가 속하는 클래스의 중심값을 오차 보정 값으로 설정할 수 있다. 이 때, 모델 보정부(500)는 제1 출력과 제2 출력의 편차를 분류하는 클래스를 미리 설정할 수 있고, 각 클래스에 해당하는 편차들의 중심값을 오차 보정값으로 설정할 수 있다. 모델 보정부(500)는 오차 보정값을 입력 데이터 또는 출력 데이터에 적용하여 입력 데이터에 상응하는 출력 데이터를 보정할 수 있다. 이 때, 모델 보정부(500)는 출력 데이터에 오차 보정값을 더하거나 차감하거나, 입력 데이터에 오차 보정값을 더하거나 차감한 뒤 모델에 입력하도록 하여 모델의 출력 데이터가 보정되도록 할 수 있다.
따라서, 본 발명의 일 실시 예에 따른 모델 갱신 장치는 새로운 데이터를 통해 인공지능 모델을 새로 학습하지 않고 서비스에서 발생하는 데이터를 통해 모델의 성능을 향상시킬 수 있다.
도 5는 본 발명의 일 실시 예에 따른 모델 갱신 장치가 레이블링을 수행하는 방법을 예시한 순서도이다. 이하 설명하는 각 단계는 도 1을 참조하여 상술한 모델 갱신 장치를 구성하는 각 기능부가 수행하는 과정이나, 발명의 간결하고 명확한 설명을 위해 각 단계의 주체를 모델 갱신 장치로 통칭하도록 한다.
도 5를 참조하면, 단계 510에서 모델 갱신 장치는 레이블이 설정되지 않은 학습 데이터에 대해 레이블링을 수행한다. 이 때, 레이블링을 수행하는 구체적인 과정은 추후 도 6을 참조하여 상세히 설명하도록 한다.
단계 515에서 모델 갱신 장치는 모델을 통한 서비스에서 모델에 입력 및 출력된 데이터를 통해 추가 학습 데이터를 수집한다. 예를 들어, 모델 갱신 장치는 학습된 모델을 통한 서비스에서 발생하는 입력 데이터 및 출력 데이터를 수집할 수 있다. 모델 갱신 장치는 출력 데이터 중 기 학습 데이터의 레이블 범위 내 존재하는 출력 데이터를 레이블로 하여 입력 데이터를 학습 데이터로 설정한 추가 학습 데이터 세트를 구성할 수 있다. 이 때, 모델 갱신 장치는 기 학습 데이터의 레이블 범위 내 존재하는 출력 데이터에 상응하는 입력 데이터가 기 학습 데이터와 상이한 경우에만 해당 입력 데이터 및 출력 데이터를 추가 학습 데이터 세트에 포함시킬 수 있다.
단계 520에서 모델 갱신 장치는 학습 데이터에 대해 샘플링을 수행하여 과대 클래스에 속하는 학습 데이터의 수를 조정한다. 이 때, 샘플링을 수행하는 구체적인 과정은 추후 도 7을 참조하여 상세히 설명하도록 한다.
단계 525에서 모델 갱신 장치는 모델의 갱신이 필요한지 판단한다. 이 때, 모델 갱신 장치는 기 학습 데이터와 추가 학습 데이터 패턴의 유사도 또는 전체 학습 데이터 대비 추가 학습 데이터의 비율에 따라 모델의 갱신이 필요한지 판단할 수 있다. 예를 들어, 모델 갱신 장치는 추가 학습 데이터와 기 학습 데이터의 패턴을 저장하여 관리할 수 있다. 모델 갱신 장치는 추가 학습 데이터와 기 학습 데이터의 패턴의 유사도가 지정된 임계값 이하인 경우, 추가 학습 데이터를 통한 모델의 갱신이 필요한 것으로 판단할 수 있다. 또는 모델 갱신 장치는 전체 학습 데이터 대비 추가 학습 데이터의 비율이 지정된 임계값(예를 들어, 30%) 이상인 경우, 추가 학습 데이터를 통한 모델의 갱신이 필요한 것으로 판단할 수 있다.
단계 525에서 모델의 갱신이 필요한 경우, 단계 530에서 모델 갱신 장치는 추가 학습 데이터를 이용하여 모델의 갱신을 수행한다.
단계 525에서 모델의 갱신이 필요하지 않는 경우, 단계 535에서 모델 갱신 장치는 기 학습 데이터를 입력으로 하는 경우 모델에서 출력하는 제1 출력과, 모델을 통한 서비스 제공 중 입력 받은 입력 데이터 중 기 학습 데이터와 유사한 입력 데이터의 입력을 통해 모델에서 출력된 제2 출력을 편차에 따라 모델의 출력 데이터를 보정한다. 이 때, 모델 갱신 장치는 제1 출력과 제2 출력의 편차를 분류하는 클래스를 미리 설정할 수 있고, 각 클래스에 해당하는 편차들의 중심값을 오차 보정값으로 설정할 수 있다. 모델 갱신 장치는 오차 보정값을 출력 데이터에 적용하여 입력 데이터에 상응하는 출력 데이터를 보정할 수 있다. 또는 모델 갱신 장치는 오차 보정값을 입력 데이터에 적용한 뒤 모델에 입력하여 출력 데이터의 값이 보정되도록 할 수 있다.
도 6은 본 발명의 일 실시예에 따른 모델 갱신 장치가 학습 데이터에 대해 레이블링을 수행하는 과정을 예시한 순서도이다. 이하 설명하는 각 과정은 도 5의 단계 510에 해당하는 과정일 수 있다.
도 6을 참조하면, 단계 610에서 모델 갱신 장치는 각 언레이블 데이터에 대해 미리 지정된 패턴에 따라 클러스터링을 수행하여 하나 이상의 군집을 형성한다.
단계 620에서 모델 갱신 장치는 언레이블 데이터의 각 군집과 모델의 학습에 사용된 기 학습 데이터의 군집 간의 유사도를 산출한다. 모델 갱신 장치는 코사인 유사도, 자카드 유사도, 유클리디안 유사도 기법과 같은 기법을 통해 유사도를 산출할 수 있다.
단계 630에서 모델 갱신 장치는 언레이블 데이터의 군집과 기 학습 데이터 중 하나 이상의 군집 간의 유사도가 제1 임계값 이상인 경우, 해당 언레이블 데이터의 군집을 학습 데이터에서 제외시킨다. 또는 모델 갱신 장치는 언레이블 데이터의 군집이 기 학습 데이터 중 모든 군집과의 유사도가 제1 임계값 미만이고 제2 임계값 이상인 경우(이 때, 제1 임계값은 제2 임계값을 초과하는 값임), 해당 군집에 포함된 각 데이터와 가장 유사도가 클래스의 군집과 동일한 레이블을 각 데이터에 상응하는 레이블로 자동 설정할 수 있다. 또는 모델 갱신 장치는 언레이블 데이터의 군집이 기 학습 데이터 중 모든 군집과의 유사도가 제2 임계값 미만인 경우, 각 데이터에 대해 사용자로부터 직접 새 레이블을 입력받아 레이블링을 수행할 수 있다.
도 7은 본 발명의 일 실시 예에 따른 모델 갱신 장치가 학습 데이터를 샘플링하는 과정을 예시한 순서도이다. 이하 설명하는 각 과정은 도 5의 520에 해당하는 과정이다.
도 7을 참조하면, 단계 710에서 모델 갱신 장치는 학습 데이터를 복수의 클래스로 분류하였을 때, 클래스 내 학습 데이터의 수가 가장 많은 과대 클래스와 클래스 내 학습 데이터의 수가 가장 적은 과소 클래스를 검출한다.
단계 720에서 모델 갱신 장치는 과대 클래스와 과소 클래스의 학습 데이터 수의 비율이 지정된 범위 내에 해당하도록 과대 클래스에 대한 샘플링을 수행하여 과대 클래스에 대한 학습 데이터 수를 조정한다. 예를 들어, 모델 갱신 장치는 과대 클래스의 학습 데이터에 대응하는 특징 벡터의 중심점을 산출하고, 중심점을 기준으로 과대 클래스에 대해 샘플링을 수행할 수 있다.
단계 730에서 모델 갱신 장치는 과대 클래스의 학습 데이터를 이용하여 노이즈 데이터를 생성하고, 노이즈 데이터를 비지도 학습 GAN(Generative adversarial network)에 입력하여 노이즈 학습 데이터를 생성하고, 기존 학습 데이터에 노이즈 학습 데이터를 추가한다.
본 발명의 실시 예에 따른 학습 데이터 관리 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광 기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 또한 상술한 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이제까지 본 발명에 대하여 그 실시 예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
발명의 실시를 위한 형태는 위의 발명의 실시를 위한 최선의 형태에서 함께 기술되었다.
본 발명은 모델 생성 및 갱신을 위한 데이터 수집에 비용을 줄일 수 있으며, 실제 서비스에서 발생하는 데이터를 통해 학습 데이터를 구성함으로써 모델의 성능을 향상 시킬 수 있어 산업상 이용 가능성이 있다.

Claims (15)

  1. 모델을 통한 서비스에서 발생하는 입력 데이터 및 출력 데이터를 모니터링하는 학습 데이터 수집부; 및
    상기 모델의 학습에 이용된 기 학습 데이터를 입력으로 할 때 상기 모델에서 출력하는 제1 출력과, 상기 기 학습 데이터와의 유사도가 지정된 임계값 이상인 상기 입력 데이터의 입력을 통해 상기 모델에서 출력된 제2 출력의 편차에 따라 상기 모델에 입력되거나 상기 모델로부터 출력되는 데이터를 보정하는 모델 보정부를 포함하는 모델 갱신 장치.
  2. 제1항에 있어서,
    상기 모델 보정부는,
    미리 설정된 클래스 중 상기 제1 출력과 상기 제2 출력의 편차에 해당하는 클래스의 중심값을 오차 보정값으로 설정하고,
    상기 오차 보정값을 상기 모델에 입력되거나 상기 모델로부터 출력되는 데이터에 적용하는 것을 특징으로 하는 모델 갱신 장치.
  3. 기 학습 데이터의 패턴을 저장하는 패턴 저장부;
    추가 학습 데이터의 패턴과 상기 기 학습 데이터의 패턴의 유사도에 따라 모델의 갱신을 결정하는 갱신 판단부; 및
    상기 추가 학습 데이터를 통해 상기 모델의 갱신을 수행하는 학습부를 포함하는 모델 갱신 장치.
  4. 제3항에 있어서,
    상기 갱신 판단부는,
    상기 추가 학습 데이터의 패턴과 상기 기 학습 데이터의 패턴의 유사도가 지
    정된 임계값 이하인 경우, 상기 모델의 갱신하는 것으로 결정하는 것을 특징으로 하는 모델 갱신 장치.
  5. 제4항에 있어서,
    상기 갱신 판단부는,
    상기 추가 학습 데이터의 패턴과 상기 기 학습 데이터의 패턴의 유사도가 지정된 임계값을 초과하는 경우, 상기 모델의 갱신을 유보하는 것을 특징으로 하는 모델 갱신 장치.
  6. 모델을 통한 서비스에서 발생하는 입력 데이터 및 출력 데이터를 모니터링하고, 출력 데이터 중 기 학습 데이터의 레이블 범위 내 존재하는 출력 데이터를 레이블로 한 상기 입력 데이터를 추가 학습 데이터로 설정하는 학습 데이터 수집부; 및 상기 추가 학습 데이터의 수와 전체 학습 데이터의 수 간의 비율이 지정된 임계값 이상인 경우, 상기 모델의 갱신을 수행하는 모델 학습부를 포함하는 모델 갱신 장치.
  7. 제6항에 있어서,
    상기 학습 데이터 수집부는,
    상기 기 학습 데이터의 레이블 범위 내 존재하는 상기 출력 데이터에 상응하
    는 상기 입력 데이터가 상기 기 학습 데이터와 상이한 경우에 상기 입력 데이터를 상기 추가 학습 데이터로 설정하는 것을 특징으로 하는 모델 갱신 장치.
  8. 모델 갱신 장치가 모델을 갱신하는 방법에 있어서,
    모델을 통한 서비스에서 발생하는 입력 데이터 및 출력 데이터를 모니터링하는 단계; 및
    상기 모델의 학습에 이용된 기 학습 데이터를 입력으로 할 때 상기 모델에서 출력하는 제1 출력과, 상기 기 학습 데이터와의 유사도가 지정된 임계값 이상인 상기 입력 데이터의 입력을 통해 상기 모델에서 출력된 제2 출력의 편차에 따라 상기 모델에 입력되거나 상기 모델로부터 출력되는 데이터를 보정하는 단계를 포함하는 모델 갱신 방법.
  9. 제8항에 있어서,
    상기 모델의 학습에 이용된 기 학습 데이터를 입력으로 할 때 상기 모델에서 출력하는 제1 출력과, 상기 기 학습 데이터와의 유사도가 지정된 임계값 이상인 상기 입력 데이터의 입력을 통해 상기 모델에서 출력된 제2 출력의 편차에 따라 상기 모델에 입력되거나 상기 모델로부터 출력되는 데이터를 보정하는 단계는,
    미리 설정된 클래스 중 상기 제1 출력과 상기 제2 출력의 편차에 해당하는 클래스의 중심값을 오차 보정값으로 설정하는 단계;
    상기 오차 보정값을 상기 모델에 입력되거나 상기 모델로부터 출력되는 데이터에 적용하는 단계를 포함하는 것을 특징으로 하는 모델 갱신 방법.
  10. 모델 갱신 장치가 모델 갱신을 수행하는 방법에 있어서,
    추가 학습 데이터의 패턴을 수신하는 단계;
    상기 추가 학습 데이터의 패턴과 기 학습 데이터의 패턴의 유사도를 산출하는 단계;
    상기 유사도에 따라 모델의 갱신을 결정하는 단계; 및
    상기 추가 학습 데이터를 통해 상기 모델의 갱신을 수행하는 단계를 포함하는 모델 갱신 방법.
  11. 제10항에 있어서,
    상기 유사도에 따라 모델의 갱신을 결정하는 단계는,
    상기 추가 학습 데이터의 패턴과 상기 기 학습 데이터의 패턴의 유사도가 지
    정된 임계값 이하인 경우, 상기 모델의 갱신하는 것으로 결정하는 단계인 것을 특징으로 하는 모델 갱신 방법.
  12. 제11항에 있어서,
    상기 유사도에 따라 모델의 갱신을 결정하는 단계는,
    상기 추가 학습 데이터의 패턴과 상기 기 학습 데이터의 패턴의 유사도가 지정된 임계값을 초과하는 경우, 상기 모델의 갱신을 유보하는 단계인 것을 특징으로 하는 모델 갱신 방법.
  13. 모델 갱신 장치가 모델을 갱신하는 방법에 있어서,
    모델을 통한 서비스에서 발생하는 입력 데이터 및 출력 데이터를 모니터링하
    고, 출력 데이터 중 기 학습 데이터의 레이블 범위 내 존재하는 출력 데이터를 레이블로 한 상기 입력 데이터를 추가 학습 데이터로 설정하는 단계; 및
    상기 추가 학습 데이터의 수와 전체 학습 데이터의 수 간의 비율이 지정된 임계값 이상인 경우, 상기 모델의 갱신을 수행하는 단계를 포함하는 모델 갱신 방법.
  14. 제13항에 있어서,
    상기 모델을 통한 서비스에서 발생하는 입력 데이터 및 출력 데이터를 모니
    터링하고, 출력 데이터 중 기 학습 데이터의 레이블 범위 내 존재하는 출력 데이터를 레이블로 한 상기 입력 데이터를 추가 학습 데이터로 설정하는 단계는,
    상기 기 학습 데이터의 레이블 범위 내 존재하는 상기 출력 데이터에 상응하는 상기 입력 데이터가 상기 기 학습 데이터와 상이한 경우에 상기 입력 데이터를 상기 추가 학습 데이터로 설정하는 단계인 것을 특징으로 하는 모델 갱신 방법.
  15. 제8항 내지 제 14항 중 어느 하나에 따른 모델 갱신 방법을 실행하는 컴퓨터가 판독 가능한 기록매체에 기록된 컴퓨터 프로그램.
PCT/KR2022/018895 2021-12-16 2022-11-25 모델 갱신 장치 및 방법 WO2023113295A1 (ko)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
KR10-2021-0180535 2021-12-16
KR1020210180535A KR20230091429A (ko) 2021-12-16 2021-12-16 추가 학습 데이터에 따른 모델 갱신 장치 및 방법
KR10-2021-0180534 2021-12-16
KR1020210180534A KR20230091428A (ko) 2021-12-16 2021-12-16 모델 갱신 장치 및 방법
KR1020210180533A KR20230091427A (ko) 2021-12-16 2021-12-16 모델 보정 장치 및 방법
KR10-2021-0180533 2021-12-16

Publications (1)

Publication Number Publication Date
WO2023113295A1 true WO2023113295A1 (ko) 2023-06-22

Family

ID=86773077

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2022/018895 WO2023113295A1 (ko) 2021-12-16 2022-11-25 모델 갱신 장치 및 방법

Country Status (1)

Country Link
WO (1) WO2023113295A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR960002071A (ko) * 1994-06-16 1996-01-26 모리시타 요이찌 속성판정방법
KR101897962B1 (ko) * 2017-11-27 2018-10-31 한국인터넷진흥원 신경망 모델을 위한 기계 학습 방법 및 그 장치
KR101955498B1 (ko) * 2018-07-19 2019-03-08 엘아이지넥스원 주식회사 신경망 구조를 이용한 적외선 영상 보정 장치 및 그 방법
KR20190038137A (ko) * 2017-09-29 2019-04-08 에스케이텔레콤 주식회사 채널별 객체 검출 최적화를 위한 영상분석 방법 및 서버장치
KR20210072362A (ko) * 2019-12-09 2021-06-17 엘지전자 주식회사 인공 지능 모델에 대한 학습 데이터를 생성하는 인공 지능 장치 및 그 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR960002071A (ko) * 1994-06-16 1996-01-26 모리시타 요이찌 속성판정방법
KR20190038137A (ko) * 2017-09-29 2019-04-08 에스케이텔레콤 주식회사 채널별 객체 검출 최적화를 위한 영상분석 방법 및 서버장치
KR101897962B1 (ko) * 2017-11-27 2018-10-31 한국인터넷진흥원 신경망 모델을 위한 기계 학습 방법 및 그 장치
KR101955498B1 (ko) * 2018-07-19 2019-03-08 엘아이지넥스원 주식회사 신경망 구조를 이용한 적외선 영상 보정 장치 및 그 방법
KR20210072362A (ko) * 2019-12-09 2021-06-17 엘지전자 주식회사 인공 지능 모델에 대한 학습 데이터를 생성하는 인공 지능 장치 및 그 방법

Similar Documents

Publication Publication Date Title
CN112232416B (zh) 一种基于伪标签加权的半监督学习方法
WO2021221242A1 (ko) 연합 학습 시스템 및 방법
Liu et al. Application of neural network in fault location of optical transport network
WO2023287064A1 (ko) 이상 데이터 자동 검출 및 자동 라벨링 기술을 이용한 학습 데이터베이스 구축 방법 및 시스템
CN108958916A (zh) 一种移动边缘环境下工作流卸载优化算法
WO2021066621A1 (en) Intelligent cloud platform to host resource efficient edge network function
WO2021107422A1 (ko) 에너지 사용량 데이터의 비지도 학습 기반 부하 모니터링 방법
CN114328198A (zh) 一种系统故障检测方法、装置、设备及介质
WO2020139048A1 (en) Intelligent terminal energy saving method and device based on ai prediction
WO2023136493A1 (ko) Cb 사 신용 평가 모델 생성 및 관리 자동화 방법 및 이러한 방법을 수행하는 장치
CN112115957A (zh) 数据流识别方法及装置、计算机存储介质
WO2020111571A1 (ko) 인공지능 기반 악성 연체 탐지 장치 및 방법
WO2022191596A1 (ko) 오토프로파일링 기반 네트워크 패킷 이상행위 자동 탐지 장치 및 방법
WO2023113295A1 (ko) 모델 갱신 장치 및 방법
WO2023113294A1 (ko) 학습 데이터 관리 장치 및 방법
WO2023096185A1 (ko) 딥 러닝 기반으로 음향 및 진동을 이용하여 기계의 고장을 진단하는 방법 및 이를 이용한 진단 장치
Wang et al. Hierarchical Particle Swarm Optimization Based on Mean Value.
WO2019107840A1 (ko) 인공지능 기반의 보험금 부당청구 탐지 장치 및 방법
KR102559398B1 (ko) 인공지능을 이용한 보안관제 침입탐지 알람 처리 장치 및 방법
KR20230091429A (ko) 추가 학습 데이터에 따른 모델 갱신 장치 및 방법
KR20230091428A (ko) 모델 갱신 장치 및 방법
Peter et al. Finding temporal patterns using constraints on (partial) absence, presence and duration
WO2022211301A1 (ko) 오토인코더 앙상블 기반 이상행위 탐지 방법 및 시스템
KR20230091430A (ko) 학습 데이터 수집 장치 및 방법
WO2023224205A1 (ko) 인공 신경망 모델 학습 결과 합성을 통한 공통 모델 생성 방법

Legal Events

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

Ref document number: 22907764

Country of ref document: EP

Kind code of ref document: A1