KR102300903B1 - 데이터 증강 방법 및 장치, 그리고 컴퓨터 프로그램 - Google Patents

데이터 증강 방법 및 장치, 그리고 컴퓨터 프로그램 Download PDF

Info

Publication number
KR102300903B1
KR102300903B1 KR1020190114719A KR20190114719A KR102300903B1 KR 102300903 B1 KR102300903 B1 KR 102300903B1 KR 1020190114719 A KR1020190114719 A KR 1020190114719A KR 20190114719 A KR20190114719 A KR 20190114719A KR 102300903 B1 KR102300903 B1 KR 102300903B1
Authority
KR
South Korea
Prior art keywords
data set
policies
candidate
augmentation
policy
Prior art date
Application number
KR1020190114719A
Other languages
English (en)
Other versions
KR20210033235A (ko
Inventor
김일두
임성빈
김태섭
김치헌
김성웅
Original Assignee
주식회사 카카오브레인
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 카카오브레인 filed Critical 주식회사 카카오브레인
Priority to KR1020190114719A priority Critical patent/KR102300903B1/ko
Publication of KR20210033235A publication Critical patent/KR20210033235A/ko
Application granted granted Critical
Publication of KR102300903B1 publication Critical patent/KR102300903B1/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/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

컴퓨팅 장치의 데이터 증강 방법이 제공된다. 컴퓨팅 장치는 훈련 데이터 세트를 제1 데이터 세트와 제2 데이터 세트로 분할하고, 제1 데이터 세트로 타깃 모델의 모델 파라미터를 훈련한다. 컴퓨팅 장치는 B개의 후보 정책을 선택하고, B개의 후보 정책 중에서, 각 후보 정책을 제2 데이터 세트에 적용하여 생성한 증강 데이터 세트로 타깃 모델을 검증하여 성능이 가장 좋은 N개의 후보 정책을 선택한다. 컴퓨팅 장치는 N개의 후보 정책을 병합하여 증강을 위한 최종 증강 정책을 생성한다.

Description

데이터 증강 방법 및 장치, 그리고 컴퓨터 프로그램{DATA AUGMENTATION METHOD AND APPARATUS, AND COMPUTER PROGRAM}
본 발명은 데이터 증강 방법 및 장치, 그리고 컴퓨터 프로그램에 관한 것이다.
최근 수년간 딥러닝(deep-learning)을 중심으로 하는 기계 학습(machine-learning) 기술은 영상, 음성, 텍스트 등 다양한 형태의 데이터 분석에서 기존 방법의 성능을 뛰어 넘는 결과를 보이며 주목 받아 왔다. 그러나 많은 양의 훈련 데이터가 지원되지 않는다면, 딥러닝 모델의 성능을 저해하는 과적합(overfitting) 문제가 발생할 수 있다. 과적합은 모델이 훈련 데이터에만 지나치게 적응해 테스트 데이터나 새로운 데이터에는 제대로 반응하지 못하는 현상을 말한다. 한편, 양질의 훈련 데이터를 대량으로 확보하는 데 비용이 큰 걸림돌이 될 수 있으며, 또한 데이터의 종류에 따라 확보할 수 있는 양에도 제약이 있을 수 있다. 예를 들면, 의료 분야에서, 의사가 의료 이미지에서 어느 부분이 병변인지를 기록한 정답 데이터를 획득하는데 비용이 많이 들어서, 많은 양의 훈련 데이터를 획득하기가 쉽지 않다.
딥러닝 모델을 충분히 훈련하는 데 필요한 데이터를 확보하는 기법 중 하나로 데이터 증강(augmentation) 기법이 제안되었다. 데이터 증강 기법은 적은 양의 훈련 데이터에 인위적인 변화를 가해 새로운 훈련 데이터를 대량으로 확보하는 방법론을 의미한다. 이러한 데이터 증강 기법은 훈련 데이터의 양과 다양성을 모두 증가시키는 유용한 정규화 기술이며, 특히 훈련 과정에서 무작위 변형 대신 신중하게 설계된 증강 정책을 적용하면 신경망의 일반화 능력이 크게 향상될 수 있다. 그러나 대부분의 경우 이러한 증강 정책의 설계는 데이터 세트에 대한 사전 지식이 있는 인간 전문가에 의존했다.
최근, 데이터 세트에서 직접 증강 정책을 검색하는 자동화된 프로세스를 설계하기 위한 노력이 있었다. 대표적으로, 구글(Google)이 제안한 자동 증강(AutoAugment)는 강화 학습(reinforcement learning, RL)을 통해 데이터 세트에 가장 적합한 증강 정책을 자동으로 찾는 알고리즘이다. 자동 증강에서는 모든 정책의 후보군에 대한 성능을 확인한 후에, 가장 좋은 정책을 선택한다. 예를 들면, 하나의 정책이 다섯 개의 하위 정책으로 구성되고, 각 하위 정책이 열여섯 가지의 증강 연산 중 두 개의 증강 연산으로 구성되고, 각 증강 연산이 열한 가지의 호출 확률 중 하나의 확률과 열 가지의 실행 강도 중 하나의 강도를 파라미터로 가지는 경우를 가정한다. 그러면 하나의 하위 정책이 생성할 수 있는 증강 기법은 총 (16×11×10)2개이며, 하나의 정책을 위해 총 ((16×11×10)2)5(≒2.9×032)개의 후보가 존재한다. 따라서, 2.9×1032개의 정책에 대해서 모두 딥러닝 성능을 평가하기 위해서는 막대한 컴퓨팅 자원이 필요하므로, 현실적으로 불가능하다.
본 발명이 이루고자 하는 과제는 증강 정책을 탐색할 때 컴퓨팅 연산의 양을 줄일 수 있는 데이터 증강 방법 및 장치, 그리고 컴퓨터 프로그램을 제공하는 것이다.
본 발명의 한 실시예에 따르면, 컴퓨팅 장치의 데이터 증강 방법이 제공된다. 상기 컴퓨팅 장치는 훈련 데이터 세트를 제1 데이터 세트와 제2 데이터 세트로 분할하고, 상기 제1 데이터 세트로 타깃 모델의 모델 파라미터를 훈련하고, B개의 후보 정책을 선택한다. 각 후보 정책은 복수의 하위 정책을 포함하는 검색 공간에서 샘플링된 NT개의 하위 정책을 포함하며, 각 하위 정책은 적어도 하나의 증강 연산을 포함한다. 또한, 상기 컴퓨팅 장치는 상기 B개의 후보 정책 중에서, 각 후보 정책을 상기 제2 데이터 세트에 적용하여 생성한 증강 데이터 세트로 상기 훈련된 타깃 모델을 검증하여 성능이 가장 좋은 N개의 후보 정책을 선택하고, 상기 N개의 후보 정책을 병합하여 증강을 위한 최종 증강 정책을 생성한다. 여기서, 상기 NT, B 및 N은 자연수이다.
상기 컴퓨팅 장치는 상기 훈련 데이터 세트를 상기 제1 데이터 세트와 상기 제2 데이터 세트로 랜덤으로 분할하고, 상기 랜덤으로 분할하는 단계를 K번 반복하여 상기 제1 데이터 세트와 상기 제2 데이터 세트의 쌍을 K개 생성할 수 있다.
상기 컴퓨팅 장치는, 상기 K개의 쌍 각각에 대해서, 상기 훈련하는 단계, 상기 B개의 후보 정책을 선택하는 단계 및 상기 N개의 후보 정책을 선택하는 단계를 수행할 수 있다. 이 경우, 상기 컴퓨팅 장치는 상기 K개의 쌍 각각에 대해서 생성된 상기 N개의 후보 정책을 병합하여 상기 최종 증강 정책을 생성할 수 있다.
상기 컴퓨팅 장치는 상기 훈련 데이터 세트에 대해 K-폴드 계층화된 셔플링(K-fold stratified shuffling)을 수행하여 상기 K개의 쌍을 생성할 수 있다.
상기 컴퓨팅 장치는 상기 B개의 후보 정책을 랜덤으로 선택할 수 있다.
상기 컴퓨팅 장치는 최적화 알고리즘을 통해 상기 B개의 후보 정책을 선택할 수 있다.
상기 적어도 하나의 증강 연산은 연속되는 복수의 증강 연산을 포함하고, 각 증강 연산은 해당 증강 연산의 호출 확률과 변동성을 결정하는 강도를 파라미터로 포함할 수 있다.
상기 최적화 알고리즘은 이전에 선택된 후보 정책을 상기 제2 데이터 세트에 적용하여 생성한 증강 데이터 세트에 대한 상기 훈련된 타깃 모델에서의 기대 손실을 최소화할 수 있도록 상기 호출 확률과 강도를 조절하여서 새로운 후보 정책을 선택할 수 있다.
상기 컴퓨팅 장치는 상기 증강 데이터 세트에 대한 상기 훈련된 타깃 모델에서의 기대 손실을 최소화하는 N개의 후보 정책을 선택할 수 있다.
상기 컴퓨팅 장치는 상기 증강 데이터 세트에 대한 상기 훈련된 타깃 모델에서의 기대 정확도를 최대화하는 N개의 후보 정책을 선택할 수 있다.
본 발명의 다른 실시예에 따르면, 하나 이상의 명령어를 저장하는 메모리와 프로세서를 포함하는 데이터 증강 장치가 제공된다. 상기 프로세서는, 상기 명령어를 실행함으로써, 훈련 데이터 세트를 제1 데이터 세트와 제2 데이터 세트로 분할하고, 상기 제1 데이터 세트로 타깃 모델의 모델 파라미터를 훈련하고, B개의 후보 정책을 선택하고, 상기 B개의 후보 정책 중에서, 각 후보 정책을 상기 제2 데이터 세트에 적용하여 생성한 증강 데이터 세트로 상기 훈련된 타깃 모델을 검증하여 성능이 가장 좋은 N개의 후보 정책을 선택하고, 상기 N개의 후보 정책을 병합하여 증강을 위한 최종 증강 정책을 생성한다. 각 후보 정책은 복수의 하위 정책을 포함하는 검색 공간에서 샘플링된 NT개의 하위 정책을 포함하며, 각 하위 정책은 적어도 하나의 증강 연산을 포함한다.
본 발명의 또 다른 실시예에 따르면, 컴퓨팅 장치에 의해 실행되며, 기록 매체에 저장되어 있는 컴퓨터 프로그램이 제공된다. 상기 컴퓨터 프로그램은, 상기 컴퓨팅 장치가, 훈련 데이터 세트를 제1 데이터 세트와 제2 데이터 세트로 분할하는 단계, 상기 제1 데이터 세트로 타깃 모델의 모델 파라미터를 훈련하는 단계, B개의 후보 정책을 선택하는 단계로, 각 후보 정책은 복수의 하위 정책을 포함하는 검색 공간에서 샘플링된 NT개의 하위 정책을 포함하며, 각 하위 정책은 적어도 하나의 증강 연산을 포함하는 단계, 상기 B개의 후보 정책 중에서, 각 후보 정책을 상기 제2 데이터 세트에 적용하여 생성한 증강 데이터 세트로 상기 훈련된 타깃 모델을 검증하여 성능이 가장 좋은 N개의 후보 정책을 선택하는 단계, 그리고 상기 N개의 후보 정책을 병합하여 증강을 위한 최종 증강 정책을 생성하는 단계를 실행하도록 한다.
본 발명의 한 실시예에 따르면, 다양한 증강 정책 후보에 의해 증강된 데이터 세트 모두에 대해서 타깃 모델을 훈련할 필요가 없으므로, 컴퓨팅 연산의 부하를 줄일 수 있다. 또한, 정책을 탐색하여 선택하는 동안, 모델 파라미터를 다시 학습하지 않으므로, 증강 정책을 빨리 찾을 수 있다.
도 1은 본 발명의 한 실시예에 따른 데이터 증강 장치와 학습 환경을 예시하는 도면이다.
도 2는 본 발명의 한 실시예에 따른 데이터 증강 장치에서 하위 정책의 한 예를 설명하기 위한 도면이다.
도 3은 종래 기술에 따른 자동 증강 기법을 설명하는 도면이다.
도 4는 본 발명의 한 실시예에 따른 데이터 증강 방법을 설명하기 위한 도면이다.
도 5는 본 발명의 한 실시예에 따른 데이터 증강 방법을 나타내는 흐름도이다.
도 6은 본 발명의 한 실시예에 따른 데이터 증강 방법의 한 예를 설명하기 위한 도면이다.
도 7은 본 발명의 한 실시예에 따른 데이터 증강 방법에 사용되는 최적화 방법의 한 예를 나타내는 흐름도이다.
도 8은 본 발명의 한 실시예에 따른 컴퓨팅 장치의 한 예를 나타내는 도면이다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
아래 설명에서, 타깃 모델(target model)이란 태스크를 수행하는 모델로 기계 학습을 통해 구축하고자 하는 모델을 의미할 수 있다. 타깃 모델은 신경망을 포함하는 임의의 기계 학습 모델에 기반하여 구현될 수 있으므로, 본 발명은 타깃 모델의 구현 방식에 의해 한정되지 않는다.
또한, 신경망(neural network)이란, 신경 구조를 모방하여 고안된 모든 종류의 기계 학습 모델을 포괄하는 용어이다. 가령, 신경망은 인공 신경망(artificial neural network, ANN), 컨볼루션 신경망(convolutional neural network, CNN) 등과 같이 모든 종류의 신경망 기반 모델을 포함할 수 있다.
다음, 본 발명의 실시예에 따른 데이터 증강 방법 및 장치에 대하여 첨부한 도면을 참고로 하여 상세하게 설명한다.
도 1은 본 발명의 한 실시예에 따른 데이터 증강 장치와 학습 환경을 예시하는 도면이다.
도 1을 참고하면, 데이터 증강 장치(100)는 목적 태스크를 수행하기 위해 주어진 데이터 세트에 대해 기계 학습을 수행하는 컴퓨팅 장치이다. 데이터 증강 장치(100)는 라벨(label)(예를 들면, 클래스)(111)이 주어진 데이터 세트(110)를 기계 학습하여 타깃 모델을 구축할 수 있다. 이 경우, 데이터 증강 장치(100)는 데이터 세트(110)를 통해 타깃 모델의 모델 파라미터를 학습할 수 있다. 또한, 데이터 증강 장치(100)는 타깃 모델을 통해 목적 태스크를 수행함으로써 입력 데이터(120)의 라벨(121)을 예측할 수 있다.
컴퓨팅 장치는, 노트북, 데스크톱(desktop), 랩탑(laptop), 서버(server) 등이 될 수 있으나, 이에 한정되는 것은 아니며 컴퓨팅 기능이 구비된 모든 종류의 장치를 포함할 수 있다. 이러한 컴퓨팅 장치의 한 예는 도 7을 참고하여 설명한다.
데이터 증강 장치(100)에서 타깃 모델의 학습을 위해 데이터 증강(data augmentation) 기법이 사용된다. 데이터 증강 기법은 데이터의 라벨을 변경하지 않고 이미지 변환(image transformation)을 통해 같은 라벨을 갖는 신규 데이터를 생성하는 기법을 의미한다. 이 경우, 이미지 변환은 회전(rotation), 반전(inverting), 자르기(cropping), 뒤집기(flipping), 등화(equalizing), 포스터화(posterizing), 자동 대비 조정(autocontrast), 대비 조정(contrast), 색상 조정(color), 밝기 조정(brightness), 선예도 조정(sharpness), 컷아웃(cutout) 등과 같이 다양한 증강 기법에 의해 수행될 수 있다. 이러한 데이터 증강을 통해 생성된 새로운 이미지를 이용하여 타깃 모델이 학습될 수 있으므로, 타깃 모델의 성능이 더욱 향상될 수 있다.
도 1에는 데이터 증강 장치(100)가 하나의 컴퓨팅 장치로 구현되는 예가 도시되어 있지만, 실제 물리적 환경에서 데이터 증강 장치(100)의 기능은 복수의 컴퓨팅 장치에 의해 구현될 수 있으며, 또는 복수의 컴퓨팅 장치가 서로 다른 기능을 나누어 구현할 수도 있다.
다음, 도 2 내지 도 4를 참고로 하여 본 발명의 한 실시예에 따른 데이터 증강 장치에서의 데이터 증강에 대해서 설명한다.
도 2는 본 발명의 한 실시예에 따른 데이터 증강 장치에서 하위 정책의 한 예를 설명하기 위한 도면이며, 도 3은 종래 기술에 따른 자동 증강 기법을 설명하는 도면이며, 도 4는 본 발명의 한 실시예에 따른 데이터 증강 방법을 설명하기 위한 도면이다.
데이터 증강은 입력되는 데이터(즉, 이미지)에 증강 연산(이미지 변환 연산)을 적용하여서 수행된다. 그러므로 입력 이미지 공간(X)에 정의된 증강 연산의 세트가 정의될 수 있다. 증강 연산 세트에서, 각 증강 연산은 호출 확률(calling probability)(p)과 연산의 변동성을 결정하는 강도(λ)의 두 가지 파라미터를 가진다. 즉, 각 증강 연산은 해당 증강 연산을 어떤 확률(p)로 어느 수준의 강도(λ)로 실행할지를 결정한다. 단, 일부 연산(예를 들면, 반전 또는 뒤집기)은 강도(λ)를 사용하지 않을 수 있다. 이 경우, 하위 정책의 세트(S)가 정의될 수 있으며, 각 하위 정책(τ∈S)은 Nτ개의 연속되는 연산(
Figure 112019095345842-pat00001
)으로 구성된다. 여기서, 하위 정책의 각 연산은 수학식 1과 같이 확률 p로 순차적으로 입력 이미지에 적용된다. 수학식 1에서는 설명의 편의상 하위 정책을 지시하는 인덱스(τ)와 하위 정책에서 각 연산을 지시하는 인덱스(n)를 생략하였다. 따라서, 각 연산에서 입력(x)에 강도 λ를 가지는 증강 연산(O)이 적용될 확률은 p이고, 증강 연산(O)이 적용되지 않고 입력(x)이 그대로 출력될 확률은 (1-p)이다.
Figure 112019095345842-pat00002
따라서 입력(x)이 Nτ개의 연속되는 연산을 거칠 때의 출력은 아래 수학식 2와 같이 표현될 수 있다.
Figure 112019095345842-pat00003
수학식 2에서,
Figure 112019095345842-pat00004
는 x이고,
Figure 112019095345842-pat00005
가 하나의 하위 정책에 의한 연산 결과(τ(x))로 된다.
예를 들면, 하위 정책(τ)이 2개의 연산(예를 들면, 컷아웃, 자동 대비 조정)으로 이루어지고, 첫 번째 연산(컷아웃)을 호출할 확률을 p1, 첫 번째 연산의 강도를 λ1, 두 번째 연산(자동 대비 조정)을 호출할 확률을 p2, 두 번째 연산의 강도를 λ2로 가정한다. 그러면, 도 2에 도시한 것처럼, 하위 정책은 원본 이미지(210)를 4개의 이미지(231, 232, 233, 234) 중 어느 하나의 이미지로 랜덤으로 매핑할 수 있다. 첫 번째 연산에서 (1-p1)의 확률로 증강 없이 원본 이미지(210)가 그대로 출력될 수 있으며(221), p1의 확률로 원본 이미지(210)에 컷아웃(O 1 (x;λ1))만 적용되어 적용되어 출력될 수 있다(222). 두 번째 연산에서 (1-p2)의 확률로 첫 번째 연산의 결과가 그대로 출력될 수 있으며, p2의 확률로 첫 번째 연산의 결과에 자동 대비 조정(O 2 (x;λ2))만 적용되어 적용되어 출력될 수 있다. 즉, (1-p1)*(1-p2)의 확률로 증강 없이 원본 이미지(210)가 그대로 출력될 수 있으며(231), (1-p1)*p2의 확률로 원본 이미지(210)에 자동 대비 보정만 적용되어 출력될 수 있고(232), p1*(1-p2)의 확률로 원본 이미지(210)에 컷아웃만 적용되어 출력될 수 있으며(233), p1*p2의 확률로 원본 이미지(210)에 컷아웃과 자동 대비 조정이 모두 적용되어 출력될 수 있다(234).
이와 같이, 하위 정책(τ)은 확률(p)과 강도(λ)에 의존하는 증강 연산의 랜덤 시퀀스이므로, 다양한 하위 정책을 통해 광범위한 데이터 증강을 커버할 수 있다. 본 발명의 한 실시예에서는 다양한 하위 정책 중에서 NT개의 하위 정책의 모음으로 하나의 증강 정책(T)이 결정될 수 있다. 따라서 데이터 세트(D)가 증강 정책(T)에 의해 변환된 증강된 데이터 세트(T(D))는 수학식 3과 같이 주어질 수 있다.
Figure 112019095345842-pat00006
수학식 3에서 x는 입력 이미지이고, y는 해당 이미지의 라벨이다.
한편, 도 3에 도시한 것처럼, 구글이 제안한 자동 증강(AutoAugment) 기법에서는 훈련 데이터 세트(310)에 각 증강 정책 후보를 적용하여서 데이터 세트를 증강한 후에, 증강된 데이터 세트(320)로 타깃 모델(330)을 학습한다. 다음, 자동 증강 기법에서는 검증 데이터(340)로 각 증강 데이터 세트에 의해 훈련된 타깃 모델(330)을 검증하고, 검증 결과(350)를 보상(reward)로 사용하여서 강화 학습(reinforcement learning)(360)을 통해 새로운 증강 정책을 선택한다. 자동 증강 기법은 이러한 동작을 계속 반복하여서 타깃 모델(330)의 정확도가 가장 높은 증강 정책 후보를 최종 증강 정책으로 결정할 수 있다.
예를 들면, 열여섯 개의 증강 연산, 열한 가지 확률, 열 가지 강도가 주어지고, 하나의 하위 정책이 2개의 연속되는 연산으로 구성되고, 하나의 증강 정책이 다섯 개의 하위 정책을 포함한다면, 증강 정책의 후보로 총 ((16×11×10)2)5개의 후보가 존재할 수 있다. 따라서 증강 정책을 찾기 위해서 ((16×11×10)2)5개의 후보에 대해서 각각 타깃 모델을 학습한 후에 검증을 수행하는 방법은 비실용적인 수준의 많은 컴퓨팅 연산을 필요로 한다. 이에 따라, 후보군을 효율적으로 탐색하기 위한 앞서 설명한 자동 증강 기법(AutoAugment)이 제안되었지만, 여전히 많은 수의 후보에 대해서 각각 타깃 모델을 학습한 후에 검증을 수행해야 한다는 문제점이 있다.
본 발명의 한 실시예에 따른 데이터 증강 방법은 훈련 데이터 세트(410)로 먼저 타깃 모델(420)을 학습한다. 다음, 데이터 증강 방법은 검증 데이터(430)에 소정 개수의 증강 정책 후보를 각각 적용하여서 데이터 세트를 증강한 후에, 증강된 데이터 세트(440)로 타깃 모델(420)을 검증하고, 검증 결과(450)에 기초하여 성능이 가장 좋은 증강 정책 후보를 최종 증강 정책으로 결정한다.
따라서, 본 발명의 한 실시예에 따르면, 다양한 증강 정책 후보에 의해 증강된 데이터 세트 모두에 대해서 타깃 모델을 훈련할 필요가 없으므로, 컴퓨팅 연산의 부하를 줄일 수 있다.
다음, 본 발명의 한 실시예에 따른 데이터 증강 방법에 대해서 도 5 및 도 6을 참고로 하여 상세하게 설명한다.
도 5는 본 발명의 한 실시예에 따른 데이터 증강 방법을 나타내는 흐름도이며, 도 6은 본 발명의 한 실시예에 따른 데이터 증강 방법의 한 예를 설명하기 위한 도면이다.
도 5 및 도 6을 참고하면, 데이터 증강 장치는 훈련 데이터 세트(Dtrain)를 타깃 모델의 모델 파라미터(θ)를 훈련하는데 사용되는 데이터 세트(DM)과 증강 정책(T)를 탐색(exploring)하는데 사용되는 데이터 세트(DA)로 분할한다(S510). 어떤 실시예에서, 데이터 증강 장치는 데이터 세트(Dtrain)를 랜덤으로 분할하여 데이터 세트 쌍({DM,DA})을 생성할 수 있다. 어떤 실시예에서, 데이터 증강 장치는 데이터 세트(Dtrain)를 분할하는 동작을 K번 반복하여서 K개의 데이터 세트 쌍({DM (k),DA (k)}, k∈{1, ..., K})을 생성할 수 있다. 한 실시예에서, 데이터 증강 장치는 K-폴드 계층화된 셔플링(K-fold stratified shuffling)을 수행하여 훈련 데이터 세트(Dtrain)를 K개의 데이터 세트 쌍({DM (1),DA (1)}, {DM (2),DA (2)}, ..., {DM (K),DA (K)})으로 분할할 수 있다.
다음, 데이터 증강 장치는 각 k (k∈{1, ..., K})에 대해서 아래에서 설명할 동작(S520, S530, S540, S550)을 반복한다. 단계 S520, S530, S540 및 S550 동작의 반복은 순차적으로 수행될 수도 있지만, 컴퓨팅 장치의 컴퓨팅 자원이 충분하다면 병렬로 수행될 수도 있다. 단계 S520, S530, S540 및 S550의 설명에서는 편의상 데이터 세트 표기에서 k를 생략한다.
먼저, 데이터 증강 장치는 데이터 증강 없이 훈련용 데이터 세트(DM)로 타깃 모델(M(θ))의 모델 파라미터(θ)를 훈련한다(S520). 모델 파라미터(θ)의 훈련은 다양한 기계 학습을 통해서 수행될 수 있으므로, 본 발명은 모델 파라미터(θ)의 훈련 방법에 한정되지 않는다.
모델 파라미터(θ)를 훈련한 후에, 데이터 증강 장치는 하위 정책의 세트로 이루어진 검색 공간에서 소정 개수(B개)의 후보 정책(T 1, T 2, …, T B)을 탐색한다(S530). 여기서, B는 검색 깊이(search depth)에 해당한다. 어떤 실시예에서, 데이터 증강 장치는 최적화 알고리즘을 통해 탐색할 B개의 후보 정책(T 1-T B)을 선택할 수 있다. 한 실시예에서, 데이터 증강 장치는 최적화 알고리즘으로 베이지안(Bayesian) 최적화 방법을 사용할 수 있다. 베이지안 최적화 방법에서는 증강된 데이터 세트에 대한 성능을 최대화(예를 들면, 기대 손실을 최소화)할 수 있도록 호출 확률과 강도를 조정하여서 새로운 후보 정책이 선택될 수 있다. 어떤 실시예에서, 데이터 증강 장치는 탐색할 B개의 후보 정책(T 1-T B)을 랜덤으로 선택할 수 있다. 이 경우, 하위 정책의 세트로 이루어진 검색 공간에서 NT개의 일련의 하위 정책이 샘플링되어 하나의 후보 정책(T 1-T B)이 선택될 수 있다.
데이터 증강 장치는 B개의 후보 정책(T 1-T B) 중에서 성능이 가장 좋은 N개의 정책(T t)을 선택한다(S540). 어떤 실시예에서, 데이터 증강 장치는 각 후보 정책을 탐색용 데이터 세트(DA)에 적용하여 증강된 데이터 세트(T(DA))를 생성하고, 증강된 데이터 세트(T(DA))로 단계 S520에서 훈련된 타깃 모델(M(θ))을 검증하고, B개의 후보 정책(T 1-T B) 중에서 성능이 가장 좋은 N개의 정책(T t)을 선택할 수 있다. 즉, 데이터 증강 장치는 증강된 데이터 세트(T(DA))를 단계 S520에서 훈련된 타깃 모델(M(θ))에 적용했을 때의 성능을 평가하고, B개의 후보 정책(T 1-T B) 중에서 성능이 가장 좋은 N개의 정책(T t)을 선택할 수 있다. 한 실시예에서, 데이터 증강 장치는 증강된 데이터 세트(T(DA))에 대한 타깃 모델(M(θ))의 기대 손실(L(θ|T(DA))을 최소화하는 N개의 정책(T t)을 선택할 수 있다. 다른 실시예에서, 데이터 증강 장치는 증강된 데이터 세트(T(DA))에 대한 타깃 모델(M(θ))의 기대 정확도(R(θ|T(DA))를 최대화하는 N개의 정책(T t)을 선택할 수 있다.
데이터 증강 장치는 단계 S530 및 S540의 동작을 소정 횟수(T)만큼 반복하고, T회 반복으로 생성된 T 세트의 정책(T t)을 증강 정책(T *)(즉, T * (k))으로 병합한다(S550). 여기서, T는 검색 폭(search width)에 해당한다. 어떤 실시예에서, 데이터 증강 장치는 T번 반복으로 생성되는 정책(T t)의 합집합으로 증강 정책(T * (k))을 생성할 수 있다.
다음, K개의 데이터 세트 쌍({DM (1),DA (1)}, {DM (2),DA (2)}, ..., {DM (K),DA (K)})에서 생성된 K 세트의 증강 정책(T* (1), T* (2), ..., T* (K))을 병합하여 최종 증강 정책(T*)을 생성한다(S560). 어떤 실시예에서, 데이터 증강 장치는 각 데이터 세트 쌍에 대해서 생성된 정책(T* (k))의 합집합으로 최종 증강 정책(T*)을 생성할 수 있다.
이와 같이, 데이터 확장 장치는 이와 같이 생성된 최종 증강 정책(T*)을 훈련 데이터 세트(Dtrain)에 적용하여 증강된 데이터 세트(T*(Dtrain))을 생성하고, 증강된 데이터 세트(T*(Dtrain))로 타깃 모델(M(θ))의 모델 파라미터(θ)를 재훈련할 수 있다.
도 5를 참고로 하여 설명한 데이터 증강 방법을 알고리즘으로 표현하는 경우 아래 알고리즘 1과 같이 표현될 수 있다. 알고리즘 1에서는 B개의 정책을 선택하는 방법으로 베이지안 최적화 방법이 사용되는 경우가 예시되어 있다.
알고리즘 1
Figure 112019095345842-pat00007
이와 같이, 본 발명의 한 실시예에 따르면, 정책을 탐색하여 선택하는 동안(S530, S540), 모델 파라미터를 다시 학습하지 않으므로, 자동 증강 기법보다 증강 정책을 훨씬 빨리 찾을 수 있다. 또한 모든 후보 정책을 탐색하지 않고 일부 후보 정책만 탐색하여서 증강 정책을 검색할 수 있으므로, 컴퓨팅 연산을 줄일 수 있다.
다음, B개의 후보 정책 탐색에 사용되는 방법의 한 예인 베이지안 최적화 방법에 대해서 도 7을 참고로 하여 설명한다.
도 7은 본 발명의 한 실시예에 따른 데이터 증강 방법에 사용되는 최적화 방법의 한 예를 나타내는 흐름도이다.
도 7을 참고하면, B개의 후보 정책(T 1-T B)을 탐색하기 위해서(도 5의 S530), 데이터 증강 장치는 지금까지 생성한 관찰 데이터(D={(x1,f(x1)), ..., (xn,f(xn))})를 통해 대리 모델(surrogate model)(p(y/x))을 추정한다(S710). 관찰 데이터에서 xi는 i번째 후보 정책(T i=T(pii))을 지시하는 변수로, 어떤 실시예에서 xi는 i번째 후보 정책(T i=T(pii))에 사용된 하위 정책의 호출 확률(pi)과 강도(λi)로 이루어질 수 있다. 또한 yi=f(xi)는 i번째 후보 정책(T i)을 탐색용 데이터 세트(DA)에 적용하여 증강한 데이터 세트(T i(DA))로 타깃 모델(M(θ))을 검증할 때의 검증 결과로, 어떤 실시예에서 f(xi)는 기대 손실(L(θ|T i(DA))일 수 있다. 관찰 데이터의 초기값((x1,f(x1))을 위한 후보 정책(T 1)은 검색 공간에서 일련의 하위 정책을 NT개의 하위 정책을 샘플링하여 생성될 수 있다. 어떤 실시예에서, 대리 모델은 입력이 x일 때 출력이 y일 확률 분포, 즉 조건부 확률 분포(p(y/x))로 표현될 수 있다.
데이터 증강 장치는 대리 모델을 통해 획득 함수(acquisition function)를 최적화하는 xn+1, 즉 (n+1)번째 후보 정책(T n+1=T(pn+1n+1))을 찾고(S720), xn+1로부터 f(xn+1)을 계산한다(S730).
데이터 증강 장치는 관찰 데이터(D)에 (xn+1,f(xn+1))을 추가하여 관찰 데이터(D={(x1,f(x1)), ..., (xn+1,f(xn+1))})를 갱신한 후(S740). B개의 정책을 선택할 때까지(S750), 대리 모델을 추정하는 과정을 반복한다(S710-S740). 이에 따라, B개의 후보 정책이 선택될 수 있다.
어떤 실시예에서, 데이터 증강 장치는 베이지안 최적화 방법론 중 하나인 TPE(Tree-structured Parzen Estimator) 알고리즘을 사용할 수 있다. TPE 알고리즘에서는 획득 함수로 기대 향상(expected improvement, EI)가 사용되고, 대리 모델로 가변 커널 밀도 추정(variable kernel density estimator, variable KDE) 또는 적응형 KDE(adaptive KDE)가 사용될 수 있다.
TPE 알고리즘에서 EI는 수학식 4와 같이 정의된다. 데이터 증강 장치는 단계 S720의 획득 함수를 정의하기 위해서 수학식 4의 EI를 수학식 5와 같이 표현할 수 있다.
Figure 112019095345842-pat00008
수학식 4에서, y는 γ-quantile에 해당하며, 예를 들면 γ로 1/4이 사용될 수 있다.
Figure 112019095345842-pat00009
여기서, L 은 y에 대응되는 상수로, 이전의 정책 탐색 과정에서 계산된 손실 값({(T(p11),L 1), ..., (T(pnn),L n)}의 γ-quantile(예를 들면, 1/4-quantile)로 계산될 수 있으며,
Figure 112019095345842-pat00010
는 수학식 4의 적분에 해당하는 기대값이다.
한편, 수학식 4에서 대리 모델, 즉 조건부 확률 분포(p(y/x))는 베이지안 규칙(Bayesian rule)을 통해 수학식 6과 같이 변형될 수 있다.
Figure 112019095345842-pat00011
수학식 6에서 p(x/y)는 입력이 y일 때 출력이 x일 조건부 확률 분포이고, p(y)는 출력이 y일 확률 분포이고, p(x)는 출력이 x일 확률 분포이다.
수학식 6에서, p(x/y)는 y를 기준으로 수학식 7과 같이 두 밀도 함수(density function)의 밀도 추정(density estimation) 문제로 변형될 수 있다.
Figure 112019095345842-pat00012
수학식 6과 7을 수학식 4에 대입하면, 수학식 4는 수학식 8과 같이 변형될 수 있으며, p(x)는 수학식 9와 같이 계산될 수 있다.
Figure 112019095345842-pat00013
Figure 112019095345842-pat00014
수학식 9를 수학식 8에 대입하면, EI는 수학식 10과 같이 유도될 수 있다.
Figure 112019095345842-pat00015
따라서, 획득 함수를 최소화하는 x를 찾는 문제는 두 밀도 함수의 비율인
Figure 112019095345842-pat00016
를 최소화하는 x를 찾는 문제가 된다.
수학식 7과 10을 데이터 증강 장치의 EI에 적용하면, 데이터 증강 장치는 단계 S710에서 수학식 11과 같이 정의된 두 밀도 함수를 통해 대리 모델을 추정할 수 있으며, 데이터 증강 장치는 단계 S720에서 대리 모델을 변형한
Figure 112019095345842-pat00017
를 최소화하는 파라미터(p,λ), 즉 호출 확률(p)과 강도(λ)를 찾으면 EI를 최소화할 수 있다.
Figure 112019095345842-pat00018
데이터 증강 장치의 대리 모델에 사용되는 가변 KDE 또는 적응형 KDE는 커널 함수를 이용해 밀도 함수를 추정하는 방법이다. 어떤 실시예에서, 커널 함수로 수학식 12와 같이 가우시안(Gaussian) 커널(kh(x1,x2))이 사용될 수 있다.
Figure 112019095345842-pat00019
수학식 12에서 h는 커널의 폭이다.
데이터 증강 장치는 y를 기준으로 데이터를 γ:1-γ의 비율로 나누고(나누어진 두 데이터 집합은 각각 Dγ와 D1-γ로 표기됨), 두 데이터 집합(Dγ, D1-γ)으로부터 두 밀도 함수를 수학식 13과 같이 추정한다.
Figure 112019095345842-pat00020
수학식 13에서 w( l )과 w( g )는 가중치이며, 추정될 샘플(x)의 차원(dimension), 커널의 폭(h) 및 데이터의 개수(#(Dγ), #(D1-γ))에 의해 결정될 수 있다.
따라서, 데이터 증강 장치는 수학식 13에서 정의된 밀도 함수를 사용하여
Figure 112019095345842-pat00021
를 최소화하는 x, 즉 호출 확률과 강도(p,λ)를 찾고, 찾은 호출 확률과 강도(p,λ)를 기초로 새로운 후보 정책을 찾을 수 있다. 즉, 데이터 증강 장치는 기대 손실에 의해 결정되는 기준(
Figure 112019095345842-pat00022
)을 최소화할 수 있는 호출 확률과 강도를 조절하여서 새로운 후보 정책을 찾을 수 있다.
이와 같이, 도 7을 참고로 하여 설명한 실시예에 따르면, 증강 정책이 최적화 방법을 통해 탐색되므로, 타깃 모델이 정답을 정확하게 예측할 수 있도록 증강 정책이 결정될 수 있다. 이에 따라, 선택된 증강 정책에 따라 증강된 데이터 세트에 대한 타깃 모델의 성능은 증강 전의 데이터 세트에 대한 성능보다 더 높아질 수 있다.
다음, 본 발명의 한 실시예에 따른 데이터 증강 장치를 구현할 수 있는 예시적인 컴퓨팅 장치(200)에 대하여 도 8을 참고로 하여 설명한다.
도 8은 본 발명의 한 실시예에 따른 컴퓨팅 장치의 한 예를 나타내는 도면이다.
도 8을 참고하면, 컴퓨팅 장치(800)는 프로세서(810), 메모리(820), 저장 장치(830), 통신 인터페이스(840) 및 버스(850)를 포함한다. 컴퓨팅 장치(800)는 다른 범용적인 구성 요소를 더 포함할 수 있다.
프로세서(810)는 컴퓨팅 장치(800)의 각 구성의 전반적인 동작을 제어한다. 프로세서(810)는 CPU(central processing unit), MPU(microprocessor unit), MCU(micro controller unit), GPU(graphic processing unit) 등의 다양한 프로세싱 유닛 중 적어도 하나로 구현될 수 있으며, 병렬 프로세싱 유닛으로 구현될 수도 있다. 또한, 프로세서(810)는 위에서 설명한 데이터 증강 방법을 실행하기 위한 프로그램에 대한 연산을 수행할 수 있다.
메모리(820)는 각종 데이터, 명령 및/또는 정보를 저장한다. 메모리(820)는 위에서 설명한 데이터 증강 방법을 실행하기 위하여 저장 장치(830)로부터 컴퓨터 프로그램(831)을 로드할 수 있다. 저장 장치(830)는 프로그램(831)을 비임시적으로 저장할 수 있다. 저장 장치(830)는 비휘발성 메모리로 구현될 수 있다.
통신 인터페이스(840)는 컴퓨팅 장치(800)의 유무선 인터넷 통신을 지원한다. 또한, 통신 인터페이스(840)는 인터넷 통신 외의 다양한 통신 방식을 지원할 수도 있다.
버스(850)는 컴퓨팅 장치(800)의 구성 요소간 통신 기능을 제공한다. 버스(850)는 주소 버스(address bus), 데이터 버스(data bus) 및 제어 버스(control bus) 등 다양한 형태의 버스로 구현될 수 있다.
컴퓨터 프로그램(831)은 메모리(820)에 로드될 때 프로세서(810)로 하여금 데이터 증강 방법을 수행하도록 하는 명령어(instructions)를 포함할 수 있다. 즉, 프로세서(810)는 명령어를 실행함으로써, 데이터 증강 방법을 위한 동작을 수행할 수 있다.
위에서 설명한 본 발명의 한 실시예에 따른 데이터 증강 방법 또는 장치는 컴퓨터가 읽을 수 있는 매체 상에 컴퓨터가 읽을 수 있는 컴퓨터 프로그램으로 구현될 수 있다. 한 실시예에서, 컴퓨터가 읽을 수 있는 매체는 이동형 기록 매체이거나 고정식 기록 매체일 수 있다. 다른 실시예에서, 컴퓨터가 읽을 수 있는 매체에 기록된 컴퓨터 프로그램은 인터넷 등의 네트워크를 통하여 다른 컴퓨팅 장치에 전송되어 다른 컴퓨팅 장치에 설치되어 실행될 수 있다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.

Claims (16)

  1. 삭제
  2. 컴퓨팅 장치의 데이터 증강 방법으로서,
    훈련 데이터 세트를 제1 데이터 세트와 제2 데이터 세트로 분할하는 단계,
    상기 제1 데이터 세트로 타깃 모델의 모델 파라미터를 훈련하는 단계,
    B개의 후보 정책을 선택하는 단계로, 각 후보 정책은 복수의 하위 정책을 포함하는 검색 공간에서 샘플링된 NT개의 하위 정책을 포함하며, 각 하위 정책은 적어도 하나의 증강 연산을 포함하는 단계,
    상기 B개의 후보 정책 중에서, 각 후보 정책을 상기 제2 데이터 세트에 적용하여 생성한 증강 데이터 세트로 상기 훈련된 타깃 모델을 검증하여 성능이 가장 좋은 N개의 후보 정책을 선택하는 단계, 그리고
    상기 N개의 후보 정책을 병합하여 증강을 위한 최종 증강 정책을 생성하는 단계를 포함하며,
    상기 NT, B 및 N은 자연수이고,
    상기 분할하는 단계는,
    상기 훈련 데이터 세트를 상기 제1 데이터 세트와 상기 제2 데이터 세트로 랜덤으로 분할하는 단계, 그리고
    상기 랜덤으로 분할하는 단계를 K번 반복하여 상기 제1 데이터 세트와 상기 제2 데이터 세트의 쌍을 K개 생성하는 단계를 포함하는
    데이터 증강 방법.
  3. 제2항에서,
    상기 K개의 쌍 각각에 대해서, 상기 훈련하는 단계, 상기 B개의 후보 정책을 선택하는 단계 및 상기 N개의 후보 정책을 선택하는 단계를 수행하는 단계를 더 포함하며,
    상기 최종 증강 정책을 생성하는 단계는, 상기 K개의 쌍 각각에 대해서 생성된 상기 N개의 후보 정책을 병합하여 상기 최종 증강 정책을 생성하는 단계를 포함하는
    데이터 증강 방법.
  4. 제2항에서,
    상기 분할하는 단계는, 상기 훈련 데이터 세트에 대해 K-폴드 계층화된 셔플링(K-fold stratified shuffling)을 수행하여 상기 K개의 쌍을 생성하는 단계를 포함하는 데이터 증강 방법.
  5. 제2항에서,
    상기 B개의 후보 정책을 선택하는 단계는, 상기 B개의 후보 정책을 랜덤으로 선택하는 단계를 포함하는 데이터 증강 방법.
  6. 삭제
  7. 컴퓨팅 장치의 데이터 증강 방법으로서,
    훈련 데이터 세트를 제1 데이터 세트와 제2 데이터 세트로 분할하는 단계,
    상기 제1 데이터 세트로 타깃 모델의 모델 파라미터를 훈련하는 단계,
    B개의 후보 정책을 선택하는 단계로, 각 후보 정책은 복수의 하위 정책을 포함하는 검색 공간에서 샘플링된 NT개의 하위 정책을 포함하며, 각 하위 정책은 적어도 하나의 증강 연산을 포함하는 단계,
    상기 B개의 후보 정책 중에서, 각 후보 정책을 상기 제2 데이터 세트에 적용하여 생성한 증강 데이터 세트로 상기 훈련된 타깃 모델을 검증하여 성능이 가장 좋은 N개의 후보 정책을 선택하는 단계, 그리고
    상기 N개의 후보 정책을 병합하여 증강을 위한 최종 증강 정책을 생성하는 단계를 포함하며,
    상기 NT, B 및 N은 자연수이고,
    상기 B개의 후보 정책을 선택하는 단계는, 최적화 알고리즘을 통해 상기 B개의 후보 정책을 선택하는 단계를 포함하며,
    상기 적어도 하나의 증강 연산은 연속되는 복수의 증강 연산을 포함하며,
    각 증강 연산은 해당 증강 연산의 호출 확률과 변동성을 결정하는 강도를 파라미터로 포함하는 데이터 증강 방법.
  8. 제7항에서,
    상기 최적화 알고리즘은 이전에 선택된 후보 정책을 상기 제2 데이터 세트에 적용하여 생성한 증강 데이터 세트에 대한 상기 훈련된 타깃 모델에서의 기대 손실을 최소화할 수 있도록 상기 호출 확률과 강도를 조절하여서 새로운 후보 정책을 선택하는 데이터 증강 방법.
  9. 컴퓨팅 장치의 데이터 증강 방법으로서,
    훈련 데이터 세트를 제1 데이터 세트와 제2 데이터 세트로 분할하는 단계,
    상기 제1 데이터 세트로 타깃 모델의 모델 파라미터를 훈련하는 단계,
    B개의 후보 정책을 선택하는 단계로, 각 후보 정책은 복수의 하위 정책을 포함하는 검색 공간에서 샘플링된 NT개의 하위 정책을 포함하며, 각 하위 정책은 적어도 하나의 증강 연산을 포함하는 단계,
    상기 B개의 후보 정책 중에서, 각 후보 정책을 상기 제2 데이터 세트에 적용하여 생성한 증강 데이터 세트로 상기 훈련된 타깃 모델을 검증하여 성능이 가장 좋은 N개의 후보 정책을 선택하는 단계, 그리고
    상기 N개의 후보 정책을 병합하여 증강을 위한 최종 증강 정책을 생성하는 단계를 포함하며,
    상기 NT, B 및 N은 자연수이고,
    상기 N개의 후보 정책을 선택하는 단계는, 상기 증강 데이터 세트에 대한 상기 훈련된 타깃 모델에서의 기대 손실을 최소화하는 N개의 후보 정책을 선택하는 단계를 포함하는
    데이터 증강 방법.
  10. 컴퓨팅 장치의 데이터 증강 방법으로서,
    훈련 데이터 세트를 제1 데이터 세트와 제2 데이터 세트로 분할하는 단계,
    상기 제1 데이터 세트로 타깃 모델의 모델 파라미터를 훈련하는 단계,
    B개의 후보 정책을 선택하는 단계로, 각 후보 정책은 복수의 하위 정책을 포함하는 검색 공간에서 샘플링된 NT개의 하위 정책을 포함하며, 각 하위 정책은 적어도 하나의 증강 연산을 포함하는 단계,
    상기 B개의 후보 정책 중에서, 각 후보 정책을 상기 제2 데이터 세트에 적용하여 생성한 증강 데이터 세트로 상기 훈련된 타깃 모델을 검증하여 성능이 가장 좋은 N개의 후보 정책을 선택하는 단계, 그리고
    상기 N개의 후보 정책을 병합하여 증강을 위한 최종 증강 정책을 생성하는 단계를 포함하며,
    상기 NT, B 및 N은 자연수이고,
    상기 N개의 후보 정책을 선택하는 단계는, 상기 증강 데이터 세트에 대한 상기 훈련된 타깃 모델에서의 기대 정확도를 최대화하는 N개의 후보 정책을 선택하는 단계를 포함하는
    데이터 증강 방법.
  11. 삭제
  12. 하나 이상의 명령어를 저장하는 메모리, 그리고
    프로세서를 포함하며,
    상기 프로세서는 상기 명령어를 실행함으로써,
    훈련 데이터 세트를 제1 데이터 세트와 제2 데이터 세트로 분할하고,
    상기 제1 데이터 세트로 타깃 모델의 모델 파라미터를 훈련하고,
    B개의 후보 정책을 선택하고,
    상기 B개의 후보 정책 중에서, 각 후보 정책을 상기 제2 데이터 세트에 적용하여 생성한 증강 데이터 세트로 상기 훈련된 타깃 모델을 검증하여 성능이 가장 좋은 N개의 후보 정책을 선택하고,
    상기 N개의 후보 정책을 병합하여 증강을 위한 최종 증강 정책을 생성하며,
    각 후보 정책은 복수의 하위 정책을 포함하는 검색 공간에서 샘플링된 NT개의 하위 정책을 포함하며, 각 하위 정책은 적어도 하나의 증강 연산을 포함하고,
    상기 NT, B 및 N은 자연수이며,
    상기 프로세서는,
    상기 훈련 데이터 세트를 상기 제1 데이터 세트와 상기 제2 데이터 세트로 랜덤으로 분할하고,
    상기 랜덤으로 분할하는 단계를 K번 반복하여 상기 제1 데이터 세트와 상기 제2 데이터 세트의 쌍을 K개 생성하는
    데이터 증강 장치.
  13. 제12항에서,
    상기 프로세서는,
    상기 K개의 쌍 각각에 대해서, 상기 훈련하는 단계, 상기 B개의 후보 정책을 선택하는 단계 및 상기 N개의 후보 정책을 선택하는 단계를 실행하고,
    상기 K개의 쌍 각각에 대해서 생성된 상기 N개의 후보 정책을 병합하여 상기 최종 증강 정책을 생성하는
    데이터 증강 장치.
  14. 삭제
  15. 컴퓨팅 장치에 의해 실행되며, 기록 매체에 저장되어 있는 컴퓨터 프로그램으로서,
    상기 컴퓨터 프로그램은 상기 컴퓨팅 장치가
    훈련 데이터 세트를 제1 데이터 세트와 제2 데이터 세트로 분할하는 단계,
    상기 제1 데이터 세트로 타깃 모델의 모델 파라미터를 훈련하는 단계,
    B개의 후보 정책을 선택하는 단계로, 각 후보 정책은 복수의 하위 정책을 포함하는 검색 공간에서 샘플링된 NT개의 하위 정책을 포함하며, 각 하위 정책은 적어도 하나의 증강 연산을 포함하는 단계,
    상기 B개의 후보 정책 중에서, 각 후보 정책을 상기 제2 데이터 세트에 적용하여 생성한 증강 데이터 세트로 상기 훈련된 타깃 모델을 검증하여 성능이 가장 좋은 N개의 후보 정책을 선택하는 단계, 그리고
    상기 N개의 후보 정책을 병합하여 증강을 위한 최종 증강 정책을 생성하는 단계를 실행하도록 하며,
    상기 NT, B 및 N은 자연수이고,
    상기 분할하는 단계는,
    상기 훈련 데이터 세트를 상기 제1 데이터 세트와 상기 제2 데이터 세트로 랜덤으로 분할하는 단계, 그리고
    상기 랜덤으로 분할하는 단계를 K번 반복하여 상기 제1 데이터 세트와 상기 제2 데이터 세트의 쌍을 K개 생성하는 단계를 포함하는
    컴퓨터 프로그램.
  16. 제15항에서,
    상기 K개의 쌍 각각에 대해서, 상기 훈련하는 단계, 상기 B개의 후보 정책을 선택하는 단계 및 상기 N개의 후보 정책을 선택하는 단계를 수행하는 단계를 더 포함하며,
    상기 최종 증강 정책을 생성하는 단계는, 상기 K개의 쌍 각각에 대해서 생성된 상기 N개의 후보 정책을 병합하여 상기 최종 증강 정책을 생성하는 단계를 포함하는
    컴퓨터 프로그램.
KR1020190114719A 2019-09-18 2019-09-18 데이터 증강 방법 및 장치, 그리고 컴퓨터 프로그램 KR102300903B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190114719A KR102300903B1 (ko) 2019-09-18 2019-09-18 데이터 증강 방법 및 장치, 그리고 컴퓨터 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190114719A KR102300903B1 (ko) 2019-09-18 2019-09-18 데이터 증강 방법 및 장치, 그리고 컴퓨터 프로그램

Publications (2)

Publication Number Publication Date
KR20210033235A KR20210033235A (ko) 2021-03-26
KR102300903B1 true KR102300903B1 (ko) 2021-09-09

Family

ID=75259288

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190114719A KR102300903B1 (ko) 2019-09-18 2019-09-18 데이터 증강 방법 및 장치, 그리고 컴퓨터 프로그램

Country Status (1)

Country Link
KR (1) KR102300903B1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113220883B (zh) * 2021-05-17 2023-12-26 华南师范大学 一种文本分类方法、装置及存储介质
KR102552731B1 (ko) 2021-07-22 2023-07-06 성균관대학교산학협력단 공통/비공통 여부에 기초한 데이터 증강 장치, 방법, 컴퓨터 판독 가능한 기록 매체 및 컴퓨터 프로그램
CN114549932A (zh) * 2022-02-21 2022-05-27 平安科技(深圳)有限公司 数据增强处理方法、装置、计算机设备及存储介质
CN114693935A (zh) * 2022-04-15 2022-07-01 湖南大学 一种基于自动数据增广的医学图像分割方法
CN116416492B (zh) * 2023-03-20 2023-12-01 湖南大学 一种基于特征自适应的自动数据增广方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Ekin D. Cubuk et al., AutoAugment: Learning Augmentation Policies from Data, Computer Vision and Pattern Recognition*

Also Published As

Publication number Publication date
KR20210033235A (ko) 2021-03-26

Similar Documents

Publication Publication Date Title
KR102300903B1 (ko) 데이터 증강 방법 및 장치, 그리고 컴퓨터 프로그램
JP7017640B2 (ja) データ拡張方策の学習
US10853726B2 (en) Neural architecture search for dense image prediction tasks
US10325181B2 (en) Image classification method, electronic device, and storage medium
KR102641116B1 (ko) 데이터 증강에 기초한 인식 모델 트레이닝 방법 및 장치, 이미지 인식 방법 및 장치
CN110168578B (zh) 具有任务特定路径的多任务神经网络
US20220004879A1 (en) Regularized neural network architecture search
US11205099B2 (en) Training neural networks using data augmentation policies
US10614347B2 (en) Identifying parameter image adjustments using image variation and sequential processing
US20200279134A1 (en) Using simulation and domain adaptation for robotic control
CN116134454A (zh) 用于使用知识蒸馏训练神经网络模型的方法和系统
KR102046113B1 (ko) 신경망 학습 방법 및 그 장치
EP4287144A1 (en) Video behavior recognition method and apparatus, and computer device and storage medium
US20220301288A1 (en) Control method and information processing apparatus
US11610393B2 (en) Knowledge distillation for neural networks using multiple augmentation strategies
CN116097277A (zh) 使用渐进式知识蒸馏训练神经网络模型的方法和系统
US20220301298A1 (en) Multi-task self-training for learning general representations
US20210042625A1 (en) Performance of neural networks using learned specialized transformation functions
WO2020106871A1 (en) Image processing neural networks with dynamic filter activation
WO2022117014A1 (en) System, method and apparatus for training a machine learning model
JP7148078B2 (ja) 属性推定装置、属性推定方法、属性推定器学習装置、及びプログラム
CN111402121A (zh) 图像风格的转换方法、装置、计算机设备和存储介质
WO2022015390A1 (en) Hardware-optimized neural architecture search
CN115937870A (zh) 字符级文本检测模型的训练方法及装置、介质、终端
US20240152809A1 (en) Efficient machine learning model architecture selection

Legal Events

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