KR20200094622A - 뉴럴 네트워크 학습에 이용될 오토 라벨링된 이미지 중에서 라벨 검수를 위한 샘플 이미지를 획득하는 방법 및 이를 이용한 샘플 이미지 획득 장치 - Google Patents

뉴럴 네트워크 학습에 이용될 오토 라벨링된 이미지 중에서 라벨 검수를 위한 샘플 이미지를 획득하는 방법 및 이를 이용한 샘플 이미지 획득 장치 Download PDF

Info

Publication number
KR20200094622A
KR20200094622A KR1020190147098A KR20190147098A KR20200094622A KR 20200094622 A KR20200094622 A KR 20200094622A KR 1020190147098 A KR1020190147098 A KR 1020190147098A KR 20190147098 A KR20190147098 A KR 20190147098A KR 20200094622 A KR20200094622 A KR 20200094622A
Authority
KR
South Korea
Prior art keywords
auto
image
class
labeled
learning
Prior art date
Application number
KR1020190147098A
Other languages
English (en)
Other versions
KR102263397B1 (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 주식회사 스트라드비젼
Publication of KR20200094622A publication Critical patent/KR20200094622A/ko
Application granted granted Critical
Publication of KR102263397B1 publication Critical patent/KR102263397B1/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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • G06F18/2148Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the process organisation or structure, e.g. boosting cascade
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2415Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/2431Multiple classes
    • G06K9/20
    • G06K9/627
    • 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/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/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/776Validation; Performance evaluation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/84Arrangements for image or video recognition or understanding using pattern recognition or machine learning using probabilistic graphical models from image or video features, e.g. Markov models or Bayesian networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/70Labelling scene content, e.g. deriving syntactic or semantic representations

Abstract

본 발명은, 수동 라벨링 샘플링 과정을 최적화하고 주석 비용을 줄이면서, 딥러닝 네트워크 학습을 위한 오토 라벨링된 이미지 중에서 라벨 검수를 위한 샘플 이미지를 획득하는 방법에 있어서, 샘플 이미지 획득 장치가, 제1 이미지와 제2 이미지를 생성하고, 컨벌루션 레이어로 하여금 제1 특징 맵과 제2 특징 맵을 생성하도록 하며, 풀링 레이어로 하여금 제1 풀링된 특징 맵과 제2 풀링된 특징 맵을 생성하고, 컨캐터네이트된 특징 맵을 생성하도록 하는 단계; 딥러닝 분류기로 하여금 상기 컨캐터네이트된 특징 맵을 획득하여 클래스 정보를 생성하도록 하는 단계; 및 비정상 클래스 군의 비정상 클래스 요소의 확률을 계산하고, 상기 오토 라벨링된 이미지가 디피컬트 이미지인지를 판단하며, 상기 오토 라벨링된 이미지를 라벨 검수를 위한 상기 샘플 이미지로서 선정하는 단계;를 포함하는 것을 특징으로 하는 방법이 제공된다. 아울러, 상기 방법은 다수의 변형 페어를 가지는 로버스트 알고리즘(robust algorithm)을 이용하여 수행될 수 있다. 또한, 본 발명을 통해 위험 상황을 보다 정확하게 검출할 수 있다.

Description

뉴럴 네트워크 학습에 이용될 오토 라벨링된 이미지 중에서 라벨 검수를 위한 샘플 이미지를 획득하는 방법 및 이를 이용한 샘플 이미지 획득 장치 {METHOD FOR ACQUIRING SAMPLE IMAGES FOR INSPECTING LABEL AMONG AUTO-LABELED IMAGES TO BE USED FOR LEARNING OF NEURAL NETWORK AND SAMPLE IMAGE ACQUIRING DEVICE USING THE SAME}
본 발명은 딥러닝 네트워크 학습을 위한 적어도 하나의 오토 라벨링된 이미지 중에서 라벨 검수를 위한 적어도 하나의 샘플 이미지를 획득하는 방법 및 장치에 관한 것이다.
최근, 기계 학습(machine learning)을 이용하여 객체를 식별하는 방법 등에 대한 연구가 이루어지고 있다. 이러한 기계 학습의 일환으로, 입력 레이어와 출력 레이어 사이에 여러 개의 히든 레이어(hidden layer)를 가지는 뉴럴 네트워크를 이용한 딥러닝은 높은 식별 성능을 가진다.
그리고, 상기 딥러닝을 이용하는 상기 뉴럴 네트워크는 일반적으로 로스를 이용한 백프로퍼게이션을 통해 학습한다.
이러한 딥러닝 네트워크의 학습을 진행하기 위해서는 라벨러(labeler)에 의해 개별 데이터 포인트에 태그, 즉, 라벨을 추가한 트레이닝 데이터가 필요하다. 이러한 트레이닝 데이터를 준비하는 것(즉, 데이터를 정확히 분류하는 것)은 특히, 대량의 트레이닝 데이터를 이용할 경우와 데이터 전처리의 품질이 지속적으로 높지 않을 경우, 노동 집약적이고, 비용이 많이 들며 번거로울 수 있다. 종래의 상호적인 라벨링은 비싸고 좋은 결과를 도출하지 못할 수 있다.
따라서, 최근에는 딥러닝 기반의 오토 라벨링 장치를 이용하여 트레이닝 이미지에 태그, 즉 라벨을 추가하는 오토 라벨링을 수행하고, 검수자가 오토 라벨링된 트레이닝 이미지를 검수하여 상기 태그나 상기 라벨을 교정한다.
그러나, 이러한 종래의 방법에서는 상기 오토 라벨링 장치의 처리율(throughput)에 비하여 검수자의 처리율이 낮아 트레이닝 이미지 전부에 트루 라벨을 생성하는 데에는 장시간이 소요된다. 처리율을 전반적으로 향상하기 위해서는 검수자 수를 늘려야 하는데, 이 경우에는 비용이 증가된다는 문제점이 있다.
또한, 상기 오토 라벨링 장치의 상기 처리율을 감당할 만큼의 다수의 숙련된 검수자를 확보하는 데에도 어려움이 있다.
본 발명은 상술한 문제점을 모두 해결하는 것을 그 목적으로 한다.
본 발명은 오토 라벨링을 하여 모든 트레이닝 이미지의 라벨링 처리율(throughput)을 향상시키는 것을 다른 목적으로 한다.
본 발명은 검수자 수를 줄이면서 상기 오토 라벨링의 처리율을 최대치로 유지하는 것을 또 다른 목적으로 한다.
본 발명은 숙련되지 않은 검수자가 상기 오토 라벨링 장치의 처리율에 뒤쳐지지 않으면서 라벨링 검수를 하도록 하는 것을 또 다른 목적으로 한다.
상기한 바와 같은 본 발명의 목적을 달성하고, 후술하는 본 발명의 특징적인 효과를 실현하기 위한, 본 발명의 특징적인 구성은 하기와 같다.
본 발명의 일 태양에 따르면, 딥러닝 네트워크 학습을 위한 적어도 하나의 오토 라벨링된 이미지 중에서 라벨 검수를 위한 적어도 하나의 샘플 이미지를 획득하는 방법에 있어서, (a) 오토 라벨링 네트워크에 의해 라벨링된 상기 오토 라벨링된 이미지가 획득되면, 샘플 이미지 획득 장치가 (i) 제1 이미지와 제2 이미지를 생성하되, 이 중 적어도 하나는 상기 오토 라벨링된 이미지로부터 변형되어 생성되고, 상기 제1 이미지와 상기 제2 이미지 중 하나만이 상기 오토 라벨링된 이미지로부터 변형되어 생성된 이미지라면, 나머지 하나는 상기 오토 라벨링된 이미지가 그대로 사용되고, (ii) 하나 이상의 컨벌루션 레이어로 하여금, 하나 이상의 컨벌루션 연산을 상기 제1 이미지와 상기 제2 이미지에 각각 적용하여 적어도 하나의 제1 특징 맵과 적어도 하나의 제2 특징 맵을 생성하도록 하며, (iii) 하나 이상의 풀링 레이어로 하여금, 상기 제1 특징 맵 상에서, 상기 오토 라벨링된 이미지의 오토 라벨링된 박스 각각에 대응하는 각 영역에 하나 이상의 풀링 연산을 적용하여 각각의 제1 풀링된 특징 맵을 생성하도록 하며, 상기 제2 특징 맵 상에서, 상기 오토 라벨링된 이미지의 상기 오토 라벨링된 박스 각각에 대응하는 각 영역에 상기 풀링 연산을 각각 적용하여 제2 풀링된 특징 맵 각각을 생성하도록 하며, (iv) 상기 오토 라벨링된 박스 각각에 대응하는, 각각의 상기 제1 풀링된 특징 맵과 각각의 상기 제2 풀링된 특징 맵을 컨캐터네이트(concatenate)하여, 각각의 상기 오토 라벨링된 박스에 대응하는 각각의 컨캐터네이트된 특징 맵을 생성하는 단계; (b) 상기 샘플 이미지 획득 장치가, 딥러닝 분류기(classifier)로 하여금, 각각의 상기 컨캐터네이트된 특징 맵을 입력으로서 획득하여, 각각의 상기 오토 라벨링된 박스를 비정상 클래스 군 또는 정상 클래스 군으로 분류하는 클래스 정보를 생성하도록 하는 단계; 및 (c) 상기 샘플 이미지 획득 장치가, (i) 각각의 상기 오토 라벨링된 박스에 관한 각각의 상기 클래스 정보를 참조하여 상기 비정상 클래스 군의 각 비정상 클래스 요소의 확률 각각을 계산하고, (ii) 각각의 상기 비정상 클래스 요소의 상기 확률 각각을 이용하여 상기 오토 라벨링된 이미지가 디피컬트(difficult) 이미지인지를 판단하며, (iii) 상기 오토 라벨링된 이미지가 상기 디피컬트 이미지로 판단되는 경우, 상기 오토 라벨링된 이미지를 라벨 검수를 위한 상기 샘플 이미지로서 선정하되, 상기 디피컬트 이미지는 부정확하게 오토 라벨링될 확률이 기설정된 값 이상인 이미지인 단계;를 포함하는 것을 특징으로 하는 방법이 개시된다.
일 실시예에서, 상기 (a) 단계에서, 상기 샘플 이미지 획득 장치는, 상기 제1 이미지와 상기 제2 이미지를 생성함에 있어서, 상기 제1 이미지를 변형하는 하나 이상의 제1 함수와 이에 대응하여 상기 제2 이미지를 변형하는 제2 함수를 포함하는 하나 이상의 변형 페어를 이용하여, 상기 오토 라벨링된 이미지에 대응하는, 상기 제1 이미지와 상기 제2 이미지의 적어도 하나의 이미지 페어를 생성하며, 상기 (c) 단계에서, 상기 샘플 이미지 획득 장치는, 각각의 상기 오토 라벨링된 박스 별로, 상기 변형 페어 각각에 대응하는 상기 비정상 클래스 요소 각각의 각 확률을 계산하고, 상기 각각의 확률에 대한 적어도 하나의 가중 평균을 계산하는 것을 특징으로 한다.
일 실시예에서, 상기 비정상 클래스 군은 오검출(misdetection) 클래스 군과 미검출(non-detection) 클래스 군을 포함하며, 상기 비정상 클래스 요소 각각의 각 확률은 상기 오검출 클래스 군의 오검출 클래스 요소 각각의 확률과 상기 미검출 클래스 군의 미검출 클래스 요소 각각의 확률을 포함하는 것을 특징으로 한다.
일 실시예에서, 상기 (c) 단계에서, 상기 부정확하게 오토 라벨링될 확률은, 상기 비정상 클래스 요소 각각의 확률에 대한 적어도 하나의 일반화된 평균(generalized mean)인 것을 특징으로 한다.
일 실시예에서, 상기 기설정된 값은 상기 오토 라벨링 네트워크를 통해 오토 라벨링된 이후 수동으로 검수된 검증 이미지에 대한 정답 적중률 중 가장 높은 적중률인 것을 특징으로 한다.
일 실시예에서, (d) 상기 샘플 이미지 획득 장치는, 상기 디피컬트 이미지로 판단된 상기 오토 라벨링된 이미지 상에서, 상기 비정상 클래스 군으로 분류된 상기 오토 라벨링된 박스에 대응되는 영역을 식별하는 단계 더 포함하는 것을 특징으로 한다.
일 실시예에서, 각각의 상기 컨벌루션 레이어는, 상기 오토 라벨링 네트워크를 구성하는 적어도 하나의 오토 라벨링 컨벌루션 레이어인 것을 특징으로 한다.
일 실시예에서, 상기 딥러닝 분류기는 다중의 FC(fully connected) 레이어 또는 하나의 풀리 컨벌루션 네트워크(fully convolutional network)를 포함하는 것을 특징으로 한다.
일 실시예에서, 학습 장치에 의해, 상기 딥러닝 분류기는, (i) 상기 오토 라벨링된 박스에 대응하는 트루 박스와 오토 박스를 포함하는 적어도 하나의 트레이닝 이미지가 획득되면, (i-1) 학습용 컨벌루션 레이어로 하여금 상기 학습용 컨벌루션 레이어의 컨벌루션 연산을 상기 트레이닝 이미지에 적용하여 학습용 특징 맵을 생성하도록 하며, (i-2) 학습용 풀링 레이어로 하여금, 상기 학습용 특징 맵 상에서 상기 오토 박스에 대응하는 영역 각각에 상기 학습용 풀링 레이어의 풀링 연산을 적용하여, 학습용 풀링된 특징 맵을 생성하도록 하며, (ii) 상기 오토 박스 각각에 대응하는 상기 학습용 풀링된 특징 맵 각각을 입력으로서 획득하여, 상기 오토 박스를 상기 정상 클래스 군 또는 상기 비정상 클래스 군으로 분류하는 상기 클래스 정보를 생성하고, (iii) 적어도 하나의 로스 레이어로 하여금, 상기 클래스 정보와 이에 대응하는 하나 이상의 GT(ground truth)를 참조하여 하나 이상의 로스를 산출하도록 함으로써, 상기 로스를 이용한 백프로퍼게이션을 통해 상기 딥러닝 분류기의 파라미터 중 적어도 일부를 학습하는 것을 특징으로 한다.
일 실시예에서, 상기 클래스 정보는, 오검출 클래스 군과 미검출 클래스 군을 가지는 상기 비정상 클래스 군을 포함하며, (i) 상기 오검출 클래스 군은, 제1 특정 오토 박스와 동일한 클래스 정보를 가지는 제1 특정 트루 박스가 다른 어느 트루 박스와 제1 기설정된 임계치 이상 겹쳐있지 않는 경우에 해당하며, (ii) 상기 미검출 클래스 군은, 제2 특정 트루 박스와 동일한 클래스 정보를 가지는 제2 특정 오토 박스가 다른 어느 오토 박스와 제2 기설정된 임계치 이상 겹쳐있지 않는 상태에서, 제3 특정 오토 박스가 상기 제2 특정 트루 박스와 제3 기설정된 임계치 이상 겹쳐있는 경우에 해당하며, 상기 정상 클래스 군은, 상기 오검출 클래스 군과 상기 미검출 클래스 군을 제외한 모든 클래스 군을 포함하는 것을 특징으로 한다.
일 실시예에서, 상기 학습 장치는, 상기 오검출 클래스 군, 상기 미검출 클래스 군, 및 상기 정상 클래스 군을 관리하여, 상기 비정상 클래스 군 중에서 요소 개수가 많은 클래스 군의 개수가 요소 개수가 적은 나머지 클래스 군의 개수의 기설정된 제1 배수 이하로 되도록 하며, 상기 정상 클래스 군의 요소 개수가 상기 비정상 클래스 군의 요소 개수의 기설정된 제2 배수와 동일해지도록 하는 것을 특징으로 한다.
일 실시예에서, 상기 학습 장치는, 랜덤 샘플링을 이용하여, 상기 오검출 클래스 군의 요소의 개수, 상기 미검출 클래스 군의 요소의 개수, 및 상기 정상 클래스 군의 요소의 개수를 조정하는 것을 특징으로 한다.
일 실시예에서, 상기 학습 장치는, 크로스 엔트로피 로스(cross-entropy loss)를 이용하여 상기 백프로퍼게이션을 수행하는 것을 특징으로 한다.
본 발명의 다른 태양에 따르면, 딥러닝 네트워크 학습을 위한 적어도 하나의 오토 라벨링된 이미지 중에서 라벨 검수를 위한 적어도 하나의 샘플 이미지를 획득하는 샘플 이미지 획득 장치에 있어서, 인스트럭션들을 저장하는 적어도 하나의 메모리; 및 (I) 오토 라벨링 네트워크에 의해 라벨링된 상기 오토 라벨링된 이미지가 획득되면, (i) 제1 이미지와 제2 이미지를 생성하되, 이 중 적어도 하나는 상기 오토 라벨링된 이미지로부터 변형되어 생성되고, 상기 제1 이미지와 상기 제2 이미지 중 하나만이 상기 오토 라벨링된 이미지로부터 변형되어 생성된 이미지라면, 나머지 하나는 상기 오토 라벨링된 이미지가 그대로 사용되고, (ii) 하나 이상의 컨벌루션 레이어로 하여금, 하나 이상의 컨벌루션 연산을 상기 제1 이미지와 상기 제2 이미지에 각각 적용하여 적어도 하나의 제1 특징 맵과 적어도 하나의 제2 특징 맵을 생성하도록 하며, (iii) 하나 이상의 풀링 레이어로 하여금, 상기 제1 특징 맵 상에서, 상기 오토 라벨링된 이미지의 오토 라벨링된 박스 각각에 대응하는 각 영역에 하나 이상의 풀링 연산을 적용하여 각각의 제1 풀링된 특징 맵을 생성하도록 하며, 상기 제2 특징 맵 상에서, 상기 오토 라벨링된 이미지의 상기 오토 라벨링된 박스 각각에 대응하는 각 영역에 상기 풀링 연산을 각각 적용하여 제2 풀링된 특징 맵 각각을 생성하도록 하며, (iv) 상기 오토 라벨링된 박스 각각에 대응하는, 각각의 상기 제1 풀링된 특징 맵과 각각의 상기 제2 풀링된 특징 맵을 컨캐터네이트하여, 각각의 상기 오토 라벨링된 박스에 대응하는 각각의 컨캐터네이트된 특징 맵을 생성하는 프로세스, (II) 딥러닝 분류기(classifier)로 하여금, 각각의 상기 컨캐터네이트된 특징 맵을 입력으로서 획득하여, 각각의 상기 오토 라벨링된 박스를 비정상 클래스 군 또는 정상 클래스 군으로 분류하는 클래스 정보를 생성하도록 하는 프로세스, 및 (III) (i) 각각의 상기 오토 라벨링된 박스에 관한 각각의 상기 클래스 정보를 참조하여 상기 비정상 클래스 군의 각 비정상 클래스 요소의 확률 각각을 계산하고, (ii) 각각의 상기 비정상 클래스 요소의 상기 확률 각각을 이용하여 상기 오토 라벨링된 이미지가 디피컬트 이미지인지를 판단하며, (iii) 상기 오토 라벨링된 이미지가 상기 디피컬트 이미지로 판단되는 경우, 상기 오토 라벨링된 이미지를 라벨 검수를 위한 상기 샘플 이미지로서 선정하되, 상기 디피컬트 이미지는 부정확하게 오토 라벨링될 확률이 기설정된 값 이상인 이미지인 프로세스를 수행하기 위한 상기 인스트럭션들을 실행하도록 구성된 적어도 하나의 프로세서;를 포함하는 것을 특징으로 하는 샘플 이미지 획득 장치가 개시된다.
일 실시예에서, 상기 프로세서는, 상기 (I) 프로세스에서, 상기 프로세서는 상기 제1 이미지와 상기 제2 이미지를 생성함에 있어서, 상기 제1 이미지를 변형하는 하나 이상의 제1 함수와 이에 대응하여 상기 제2 이미지를 변형하는 제2 함수를 포함하는 하나 이상의 변형 페어를 이용하여, 상기 오토 라벨링된 이미지에 대응하는, 상기 제1 이미지와 상기 제2 이미지의 적어도 하나의 이미지 페어를 생성하며, 상기 (III) 프로세스에서, 상기 프로세서는, 각각의 상기 오토 라벨링된 박스 별로, 상기 변형 페어 각각에 대응하는 상기 비정상 클래스 요소 각각의 각 확률을 계산하고, 상기 각각의 확률에 대한 적어도 하나의 가중 평균을 계산하는 것을 특징으로 한다.
일 실시예에서, 상기 비정상 클래스 군은 오검출(misdetection) 클래스 군과 미검출(non-detection) 클래스 군을 포함하며, 상기 비정상 클래스 요소 각각의 각 확률은 상기 오검출 클래스 군의 오검출 클래스 요소 각각의 확률과 상기 미검출 클래스 군의 미검출 클래스 요소 각각의 확률을 포함하는 것을 특징으로 한다.
일 실시예에서, 상기 (III) 프로세스에서, 상기 부정확하게 오토 라벨링될 확률은, 상기 비정상 클래스 요소 각각의 확률에 대한 적어도 하나의 일반화된 평균(generalized mean)인 것을 특징으로 한다.
일 실시예에서, 상기 기설정된 값은 상기 오토 라벨링 네트워크를 통해 오토 라벨링된 이후 수동으로 검수된 검증 이미지에 대한 정답 적중률 중 가장 높은 적중률인 것을 특징으로 한다.
일 실시예에서, 상기 프로세서는 (IV) 상기 디피컬트 이미지로 판단된 상기 오토 라벨링된 이미지 상에서, 상기 비정상 클래스 군으로 분류된 상기 오토 라벨링된 박스에 대응되는 영역을 식별하는 프로세스;를 더 수행하는 것을 특징으로 한다.
일 실시예에서, 각각의 상기 컨벌루션 레이어는, 상기 오토 라벨링 네트워크를 구성하는 적어도 하나의 오토 라벨링 컨벌루션 레이어인 것을 특징으로 한다.
일 실시예에서, 상기 딥러닝 분류기는 다중의 FC(fully connected) 레이어 또는 하나의 풀리 컨벌루션 네트워크를 포함하는 것을 특징으로 한다.
일 실시예에서, 학습 장치에 의해, 상기 딥러닝 분류기는, (i) 상기 오토 라벨링된 박스에 대응하는 트루 박스와 오토 박스를 포함하는 적어도 하나의 트레이닝 이미지가 획득되면, (i-1) 학습용 컨벌루션 레이어로 하여금 상기 학습용 컨벌루션 레이어의 컨벌루션 연산을 상기 트레이닝 이미지에 적용하여 학습용 특징 맵을 생성하도록 하며, (i-2) 학습용 풀링 레이어로 하여금, 상기 학습용 특징 맵 상에서 상기 오토 박스에 대응하는 영역 각각에 상기 학습용 풀링 레이어의 풀링 연산을 적용하여, 학습용 풀링된 특징 맵을 생성하도록 하며, (ii) 상기 오토 박스 각각에 대응하는 상기 학습용 풀링된 특징 맵 각각을 입력으로서 획득하여, 상기 오토 박스를 상기 정상 클래스 군 또는 상기 비정상 클래스 군으로 분류하는 상기 클래스 정보를 생성하고, (iii) 적어도 하나의 로스 레이어로 하여금, 상기 클래스 정보와 이에 대응하는 하나 이상의 GT(ground truth)를 참조하여 하나 이상의 로스를 산출하도록 함으로써, 상기 로스를 이용한 백프로퍼게이션을 통해 상기 딥러닝 분류기의 파라미터 중 적어도 일부를 학습하는 것을 특징으로 한다.
일 실시예에서, 상기 클래스 정보는, 오검출 클래스 군과 미검출 클래스 군을 가지는 상기 비정상 클래스 군을 포함하며, (i) 상기 오검출 클래스 군은, 제1 특정 오토 박스와 동일한 클래스 정보를 가지는 제1 특정 트루 박스가 다른 어느 트루 박스와 제1 기설정된 임계치 이상 겹쳐있지 않는 경우에 해당하며, (ii) 상기 미검출 클래스 군은, 제2 특정 트루 박스와 동일한 클래스 정보를 가지는 제2 특정 오토 박스가 다른 어느 오토 박스와 제2 기설정된 임계치 이상 겹쳐있지 않는 상태에서, 제3 특정 오토 박스가 상기 제2 특정 트루 박스와 제3 기설정된 임계치 이상 겹쳐있는 경우에 해당하며, 상기 정상 클래스 군은, 상기 오검출 클래스 군과 상기 미검출 클래스 군을 제외한 모든 클래스 군을 포함하는 것을 특징으로 한다.
일 실시예에서, 상기 학습 장치는, 상기 오검출 클래스 군, 상기 미검출 클래스 군, 및 상기 정상 클래스 군을 관리하여, 상기 비정상 클래스 군 중에서 요소 개수가 많은 클래스 군의 개수가 요소 개수가 적은 나머지 클래스 군의 개수의 기설정된 제1 배수 이하로 되도록 하며, 상기 정상 클래스 군의 요소 개수가 상기 비정상 클래스 군의 요소 개수의 기설정된 제2 배수와 동일해지도록 하는 것을 특징으로 한다.
일 실시예에서, 상기 학습 장치는, 랜덤 샘플링을 이용하여, 상기 오검출 클래스 군의 요소의 개수, 상기 미검출 클래스 군의 요소의 개수, 및 상기 정상 클래스 군의 요소의 개수를 조정하는 것을 특징으로 한다.
일 실시예에서, 상기 학습 장치는, 크로스 엔트로피 로스(cross-entropy loss)를 이용하여 상기 백프로퍼게이션을 수행하는 것을 특징으로 한다.
이 외에도, 본 발명의 방법을 실행하기 위한 컴퓨터 프로그램을 기록하기 위한 컴퓨터 판독 가능한 기록 매체가 더 제공된다.
본 발명은 오토 라벨링 장치에 의해 오토 라벨링된 이미지 중 라벨링하기 어려운 이미지를 선택적으로 검수함으로써 검수 시간을 줄일 수 있는 효과가 있다.
또한, 본 발명은 라벨링하기 어려운 상기 이미지를 검수함으로써, 숙련되지 않은 검수자라도 상기 오토 라벨링 네트워크의 처리율(throughput)에 뒤쳐지지 않게 함으로써 전체 상기 트레이닝 이미지를 라벨링하는 처리율을 향상시킬 수 있는 효과가 있다.
또한, 본 발명은 라벨링하기 어려운 상기 이미지를 검수함으로써, 검수자 수를 줄일 수 있게 되어 수동 라벨링을 위한 샘플링 과정을 최적화하고 주석(annotation) 비용을 절감할 수 있는 효과가 있다.
본 발명의 실시예의 설명에 이용되기 위하여 첨부된 아래 도면들은 본 발명의 실시예들 중 단지 일부일 뿐이며, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자(이하 "통상의 기술자")에게 있어서는 발명적 작업이 이루어짐 없이 이 도면들에 기초하여 다른 도면들이 얻어질 수 있다.
도 1은 본 발명의 일 실시예에 따라 뉴럴 네트워크의 학습에 이용하기 위한 하나 이상의 오토 라벨링된 이미지 중에서 라벨 검수를 위한 적어도 하나의 샘플 이미지를 획득하는 샘플 이미지 획득 장치를 개략적으로 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따라 상기 뉴럴 네트워크의 학습에 이용하기 위한 상기 오토 라벨링된 이미지 중에서 라벨 검수를 위한 상기 샘플 이미지를 획득하는 방법을 개략적으로 도시한 도면이다.
도 3은 본 발명의 일 실시예에 따라 상기 뉴럴 네트워크의 학습에 이용하기 위한 상기 오토 라벨링된 이미지 상 오토 라벨링된 박스의 클래스를 분류하는 딥러닝 분류기를 학습하는 방법을 개략적으로 도시한 도면이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명의 목적들, 기술적 해법들 및 장점들을 분명하게 하기 위하여 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 통상의 기술자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다.
또한, 본 발명의 상세한 설명 및 청구항들에 걸쳐, "포함하다"라는 단어 및 그것의 변형은 다른 기술적 특징들, 부가물들, 구성요소들 또는 단계들을 제외하는 것으로 의도된 것이 아니다. 통상의 기술자에게 본 발명의 다른 목적들, 장점들 및 특성들이 일부는 본 설명서로부터, 그리고 일부는 본 발명의 실시로부터 드러날 것이다. 아래의 예시 및 도면은 실례로서 제공되며, 본 발명을 한정하는 것으로 의도된 것이 아니다.
더욱이 본 발명은 본 명세서에 표시된 실시예들의 모든 가능한 조합들을 망라한다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
본 발명에서 언급하는 각종 이미지는 포장 또는 비포장 도로 관련 이미지를 포함할 수 있으며, 이 경우 도로 환경에서 등장할 수 있는 물체(가령, 자동차, 사람, 동물, 식물, 물건, 건물, 비행기나 드론과 같은 비행체, 기타 장애물)를 상정할 수 있을 것이나, 반드시 이에 한정되는 것은 아니며, 본 발명에서 언급하는 각종 이미지는 도로와 상관 없는 이미지(가령, 비포장도로, 골목길, 공터, 바다, 호수, 강, 산, 숲, 사막, 하늘, 실내와 관련된 이미지)일 수도 있으며, 이 경우, 비포장도로, 골목길, 공터, 바다, 호수, 강, 산, 숲, 사막, 하늘, 실내 환경에서 등장할 수 있는 물체(가령, 자동차, 사람, 동물, 식물, 물건, 건물, 비행기나 드론과 같은 비행체, 기타 장애물)를 상정할 수 있을 것이나, 반드시 이에 한정되는 것은 아니다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따라 뉴럴 네트워크의 학습에 이용하기 위한 하나 이상의 오토 라벨링된 이미지 중에서 라벨 검수를 위한 적어도 하나의 샘플 이미지를 획득하는 샘플 이미지 획득 장치를 개략적으로 도시한 도면이다. 도 1을 참조하면, 상기 샘플 이미지 획득 장치(100)는 상기 오토 라벨링된 이미지 중에서 라벨 검수를 위한 상기 샘플 이미지를 획득하기 위한 인스트럭션들을 저장하는 메모리(110)와 상기 메모리(110)에 저장된 상기 인스트럭션들에 대응하여 상기 오토 라벨링된 이미지 중에서 라벨 검수를 위한 상기 샘플 이미지를 획득하기 위한 프로세스를 수행하는 프로세서(120)를 포함할 수 있다.
구체적으로, 상기 샘플 이미지 획득 장치(100)는 전형적으로 적어도 하나의 컴퓨팅 장치(예컨대, 컴퓨터 프로세서, 메모리, 스토리지, 입력 장치 및 출력 장치, 기타 기존의 컴퓨팅 장치의 구성요소들을 포함할 수 있는 장치; 라우터, 스위치 등과 같은 전자 통신 장치; 네트워크 부착 스토리지(NAS) 및 스토리지 영역 네트워크(SAN)와 같은 전자 정보 스토리지 시스템)와 적어도 하나의 컴퓨터 소프트웨어(즉, 상기 컴퓨팅 장치로 하여금 특정의 방식으로 기능하게 하는 인스트럭션들)의 조합을 이용하여 원하는 시스템 성능을 달성하는 것일 수 있다.
또한, 상기 컴퓨팅 장치의 프로세서는 MPU(Micro Processing Unit) 또는 CPU(Central Processing Unit), 캐쉬 메모리(Cache Memory), 데이터 버스(Data Bus) 등의 하드웨어 구성을 포함할 수 있다. 또한, 컴퓨팅 장치는 운영체제, 특정 목적을 수행하는 애플리케이션의 소프트웨어 구성을 더 포함할 수도 있다.
그러나, 이러한 상기 컴퓨팅 장치에 대한 설명이 본 발명을 실시하기 위한 프로세서, 메모리, 매체 또는 기타 컴퓨팅 구성요소가 통합된 형태인 통합 프로세서의 경우를 배제하는 것은 아니다.
본 발명의 일 실시예에 따라 상기 뉴럴 네트워크의 학습에 이용될 상기 오토 라벨링된 이미지 중에서 라벨 검수를 위한 상기 샘플 이미지를 획득하는 방법에 대하여 도 2를 참조하여 설명하면 다음과 같다. 이때, 상기 뉴럴 네트워크는, 상기 샘플 이미지 획득 장치(100)를 이용하여 이미지 분석을 수행할 수 있다.
먼저, 오토 라벨링 네트워크를 통해 라벨링된 상기 오토 라벨링된 이미지가 획득되면, 상기 샘플 이미지 획득 장치(100)가, 이미지 변형 레이어(150)로 하여금, 상기 오토 라벨링된 이미지를 그대로 사용하거나 이를 변형(transform)하여 제1 이미지와 제2 이미지를 생성하도록 한다. 이때, 상기 제1 이미지 및 상기 제2 이미지 중 적어도 하나는 상기 오토 라벨링된 이미지로부터 변형되어 생성된 이미지일 수 있다. 또한, 상기 오토 라벨링된 이미지는 트루 박스를 포함하는 검증 이미지를 포함할 수 있고, 상기 검증 이미지는 상기 오토 라벨링 및 수동 라벨링 결과를 평가하기 위해 사용될 수 있다.
한편, 상기 샘플 이미지 획득 장치(100)는, 상기 이미지 변형 레이어(150)로 하여금, 상기 제1 이미지와 상기 제2 이미지를 생성함에 있어서, 상기 제1 이미지를 변형하는 하나 이상의 제1 함수와 이에 대응하여 상기 제2 이미지를 변형하는 제2 함수를 포함하는 하나 이상의 변형 페어를 이용하여, 상기 오토 라벨링된 이미지에 대응되는 상기 제1 이미지와 상기 제2 이미지의 적어도 하나의 이미지 페어를 생성하도록 할 수 있다.
일 예로, 상기 변형 페어는 다음과 같이 나타내어질 수 있다.
색인 제1 이미지 제2 이미지
1 480P로 리사이즈 540P로 리사이즈
2 640P로 리사이즈 720P로 리사이즈
3 900P로 리사이즈 1080P로 리사이즈
4 원본 좌우 반전
5 원본 감마 0.5
6 원본 감마 1.5
즉, 상기 오토 라벨링된 이미지에 따라 설정된 상기 변형 페어에 대응되는, 상기 제1 이미지와 상기 제2 이미지의 하나 이상의 이미지 페어를 생성할 수 있다. 상기에서는 상기 변형 페어에 대한 예시로 6개의 예시를 나타내었으나, 본 발명의 범위는 이에 한정되는 것이 아니며, 상기 변형 페어의 개수는 임의의 개수로 설정할 수 있다.
다음으로, 상기 샘플 이미지 획득 장치(100)는, 하나 이상의 컨벌루션 레이어(160)로 하여금, 상기 제1 이미지와 상기 제2 이미지에 각각 하나 이상의 컨벌루션 연산을 적용하여, 적어도 하나의 제1 특징 맵과 적어도 하나의 제2 특징 맵을 출력하도록 한다.
이때, 각각의 상기 컨벌루션 레이어(160)는 상기 오토 라벨링 네트워크를 구성하는 적어도 하나의 오토 라벨링 컨벌루션 레이어일 수 있다. 즉, 상기 오토 라벨링 네트워크가 다수의 변형의 조합을 사용하는 경우, 상기 변형 페어는 상기 오토 라벨링 네트워크가 사용하는 상기 변형으로만 정의될 수 있으며, 그에 따라 상기 오토 라벨링 네트워크의 상기 오토 라벨링 컨벌루션 레이어에서 출력된 특징 맵이 추가 과정 없이 그대로 사용될 수 있으므로, 상기 특징 맵의 연산에 소요되는 시간을 절감할 수 있게 된다.
이후, 상기 샘플 이미지 획득 장치(100)는 하나 이상의 풀링 레이어(170)로 하여금, 상기 제1 특징 맵 상에서 상기 오토 라벨링된 이미지의 오토 라벨링된 박스 각각에 대응되는 각 영역에 하나 이상의 풀링 연산을 적용하여 각각의 제1 풀링된 특징 맵을 출력하도록 하고, 상기 제2 특징 맵 상에서 상기 오토 라벨링된 이미지의 상기 오토 라벨링된 박스 각각에 대응되는 각 영역에 상기 풀링 연산을 적용하여 각각의 제2 풀링된 특징 맵을 출력하도록 하며, 상기 각각의 오토 라벨링된 박스에 각각 대응되는, 각각의 상기 제1 풀링된 특징 맵과 각각의 상기 제2 풀링된 특징 맵을 컨캐터네이트하여 상기 오토 라벨링된 박스 각각에 대응되는 각각의 컨캐터네이트된 특징 맵을 생성한다.
이때, 도 2에서는 두 개의 컨벌루션 레이어(160)와, 두 개의 풀링 레이어(170)가 도시되었으나, 이와는 달리 하나의 컨벌루션 레이어와 하나의 풀링 레이어가, 상기 제1 이미지와 제2 이미지에 상기 컨벌루션 연산을 적용하며, 상기 제1 특징 맵과 상기 제2 특징 맵에 상기 풀링 연산을 적용하기 위해 각각 사용될 수도 있다.
그리고, 상기 샘플 이미지 획득 장치(100)는 적어도 하나의 딥러닝 분류기(180)로 하여금 상기 각각의 컨캐터네이트된 특징 맵을 입력으로서 획득하여, 상기 각각의 오토 라벨링된 박스를 비정상 클래스 군 또는 정상 클래스 군으로 분류하는 클래스 정보를 출력하도록 할 수 있다.
이때, 상기 비정상 클래스 군은 오검출 클래스 군과 미검출 클래스 군을 포함할 수 있으며, 상기 정상 클래스 군은 객체로 분류된 박스에 대한 클래스 군과 배경으로 분류된 박스에 대한 클래스 군을 포함할 수 있고, 상기 박스는 상기 비정상 클래스 군에 포함되지 않은 상기 오토 라벨링된 박스 중 적어도 일부이다. 상기 오토 라벨링된 박스에 대한 분류에 대해서는 아래와 같이 상기 딥러닝 분류기(180)의 학습 방법에서 설명하기로 한다.
이후, 상기 샘플 이미지 획득 장치(100)는 적어도 하나의 디피컬트(difficult) 이미지 판별 레이어(190)로 하여금 (i) 상기 각각의 오토 라벨링된 박스의 각 클래스 정보를 참조하여, 상기 비정상 클래스 군의 각각의 비정상 클래스 요소에 대한 확률값 각각을 계산하고, (ii) 각각의 상기 비정상 클래스 요소에 대한 상기 확률값 각각을 이용하여, 상기 오토 라벨링된 이미지가, 추후 설명될 디피컬트 이미지인지를 판단하도록 한다.
이때, 상기 딥러닝 분류기(180)의 출력에 시그모이드 함수가 적용된 다음 각각의 상기 비정상 클래스 요소의 각 확률값이 계산될 수 있다. 각각의 상기 비정상 클래스 요소의 각 확률값은 상기 오검출 클래스 군의 오검출 클래스 요소에 대한 각각의 확률값과 상기 미검출 클래스 군의 미검출 클래스 요소에 대한 각각의 확률값을 포함할 수 있다.
일 예로, 상기 오검출 클래스 요소(FP)에 대한 확률값은
Figure pat00001
로 나타낼 수 있으며, 상기 미검출 클래스 요소(FN)에 대한 확률값은
Figure pat00002
로 나타낼 수 있다.
이때,
Figure pat00003
는 상기 오토 라벨링된 박스 중 하나의 오토 라벨링된 박스이며,
Figure pat00004
Figure pat00005
는 각각 상기 제1 이미지와 상기 제2 이미지를 나타낸다.
또한, 상기 샘플 이미지 획득 장치(100)는, 각 상기 오토 라벨링된 박스 별로, 상기 변형 페어 각각에 대응하는 각각의 상기 비정상 클래스 요소에 대한 각각의 확률값을 계산하고, 상기 산출된 확률값의 적어도 하나의 가중 평균을 계산할 수 있다.
즉, 상기 오검출 클래스 요소에 대한 확률값(
Figure pat00006
)과 상기 미검출 클래스 요소에 대한 확률값(
Figure pat00007
)은 아래와 같이 나타낼 수 있다.
Figure pat00008
Figure pat00009
이때, 상기 오검출 클래스 요소에 대한 확률값(
Figure pat00010
)과 상기 미검출 클래스 요소에 대한 확률값(
Figure pat00011
)은 가중치에 대한 선형 함수이므로,
Figure pat00012
의 제약 조건이 있는 제약 최적화(Constrained optimization)로 상기 가중치의 최적화가 가능하게 된다.
그리고, 각각의 상기 비정상 클래스 요소의 확률값에 대한 적어도 하나의 일반화된 평균(generalized mean)이 기설정된 값 이상일 경우, 상기 샘플 이미지 획득 장치(100)는 상기 오토 라벨링된 이미지를 상기 디피컬트 이미지로 판단할 수 있다.
일 예로, 상기 샘플 이미지 획득 장치(100)는, 각 오토 라벨링된 박스 별, 상기 오검출 클래스 요소에 대한 각 확률값(
Figure pat00013
)과 상기 미검출 클래스 요소에 대한 각 확률값(
Figure pat00014
)을 참조하여, 상기 오토 라벨링된 이미지가 상기 디피컬트 이미지일 확률값(
Figure pat00015
)을 다음과 같은 일반화된 평균으로 계산할 수 있다.
Figure pat00016
그리고, 각 오토 라벨링된 박스 별, 상기 오검출 클래스 요소에 대한 각 확률값(
Figure pat00017
)과 상기 미검출 클래스 요소에 대한 각 확률값(
Figure pat00018
)을 참조하여 계산한 각각의 상기 확률값(
Figure pat00019
)이 상기 기설정된 값 이상일 경우, 상기 샘플 이미지 획득 장치(100)는 상기 오토 라벨링된 이미지를 상기 디피컬트 이미지로 판단할 수 있다. 여기서, 상기 디피컬트 이미지는 부정확하게 오토 라벨링될 확률이 상기 기설정된 값 이상인 이미지를 나타낼 수 있다.
이때, 상기 기설정된 값은, 상기 오토 라벨링 네트워크의 오토 라벨링 프로세스 이후 수동으로 검수된 상기 검증 이미지에 대한 정답 적중률 중 가장 높은 적중률일 수 있다.
다음으로, 상기 샘플 이미지 획득 장치(100)는, 상기 오토 라벨링된 이미지가 상기 디피컬트 이미지일 경우, 상기 오토 라벨링된 이미지를 라벨링 검수를 위한 상기 샘플 이미지로서 선정한다.
이후, 상기 샘플 이미지 획득 장치(100)는 상기 디피컬트 이미지로 선정된 상기 오토 라벨링된 이미지 상의, 상기 비정상 클래스 군으로 분류된 상기 오토 라벨링된 박스에 대응되는 영역을 식별하여 검수자가 용이하게 검수할 수 있도록 할 수 있다.
한편, 상기 딥러닝 분류기는 다중의 FC 레이어 또는 풀리 컨벌루션 네트워크(fully convolutional network)를 포함할 수 있으며, 상기 딥러닝 분류기를 학습하는 과정을 도 3을 참조하여 설명하면 다음과 같다.
먼저, 상기 오토 라벨링 네트워크에 의해 라벨링된, 오토 박스를 가지는 적어도 하나의 트레이닝 이미지가 획득되면, 학습 장치(200)가 하나 이상의 학습용 컨벌루션 레이어(260)로 하여금 상기 학습용 컨벌루션 레이어의 컨벌루션 연산을 상기 트레이닝 이미지에 적용하여 적어도 하나의 학습용 특징 맵을 출력하도록 한다.
이때, 상기 트레이닝 이미지의 상기 오토 박스는, 상기 오토 라벨링 네트워크를 통해 라벨링된 상기 오토 박스와는 달리, 학습을 위해 임의로 생성된 것일 수도 있다.
또한, 상기 학습 장치(200)는 상기 딥러닝 클래스 분류기의 학습을 위한 인스트럭션들을 저장하는 메모리(미도시)와 상기 메모리에 저장된 상기 인스트럭션들에 대응하여 상기 딥러닝 클래스 분류기에 대한 학습을 수행하는 프로세서(미도시)를 포함할 수 있다.
구체적으로, 상기 학습 장치(200)는 전형적으로 적어도 하나의 컴퓨팅 장치(예컨대, 컴퓨터 프로세서, 메모리, 스토리지, 입력 장치 및 출력 장치, 기타 기존의 컴퓨팅 장치의 구성요소들을 포함할 수 있는 장치; 라우터, 스위치 등과 같은 전자 통신 장치; 네트워크 부착 스토리지(NAS) 및 스토리지 영역 네트워크(SAN)와 같은 전자 정보 스토리지 시스템)와 적어도 하나의 컴퓨터 소프트웨어(즉, 상기 컴퓨팅 장치로 하여금 특정의 방식으로 기능하게 하는 인스트럭션들)의 조합을 이용하여 원하는 시스템 성능을 달성하는 것일 수 있다. 또한, 상기 컴퓨팅 장치의 프로세서는 MPU(Micro Processing Unit) 또는 CPU(Central Processing Unit), 캐쉬 메모리(Cache Memory), 데이터 버스(Data Bus) 등의 하드웨어 구성을 포함할 수 있다. 또한, 컴퓨팅 장치는 운영체제, 특정 목적을 수행하는 애플리케이션의 소프트웨어 구성을 더 포함할 수도 있다. 그러나, 이러한 상기 컴퓨팅 장치에 대한 설명이 본 발명을 실시하기 위한 프로세서, 메모리, 매체 또는 기타 컴퓨팅 구성요소가 통합된 형태인 통합 프로세서의 경우를 배제하는 것은 아니다.
다음으로, 상기 학습 장치(200)는 학습용 풀링 레이어(270)로 하여금 상기 학습용 풀링 레이어의 하나 이상의 풀링 연산을, 상기 학습용 특징 맵 상에서 상기 오토 박스 각각에 대응되는 각각의 영역에 각각 적용하여 하나 이상의 학습용 풀링된 특징 맵을 출력하도록 한다.
이후, 상기 학습 장치(200)는 상기 딥러닝 분류기(280)로 하여금 상기 오토 박스 각각에 대응되는 각각의 상기 학습용 풀링된 특징 맵을 입력으로서 획득하여, 상기 오토 박스를 상기 비정상 클래스 군 또는 상기 정상 클래스 군으로 분류하는 상기 클래스 정보를 출력하도록 한다.
이때, 상기 클래스 정보는, 상기 오검출 클래스 군과 상기 미검출 클래스 군을 가지는 상기 비정상 클래스 군을 포함할 수 있다. 그리고, 상기 클래스 정보는 2 차원 출력을 포함할 수 있다.
일 예로, 상기 오검출 클래스 군(FP,
Figure pat00020
))은, 제1 특정 오토 박스와 동일한 클래스 정보를 가지는 제1 특정 트루 박스가 다른 트루 박스와 상기 제1 기설정된 임계치 이상으로 겹쳐 있지 않는 경우에 해당할 수 있다.
이때, 상기 오검출 클래스 군(FP,
Figure pat00021
)은
Figure pat00022
와 같이 나타날 수 있다.
그리고, 상기 미검출 클래스 군(FN,
Figure pat00023
)은, 제2 특정 트루 박스와 동일한 클래스 정보를 가지는 제2 특정 오토 박스가 다른 오토 박스와 상기 제2 기설정된 임계치 이상 겹쳐 있지 않은 상태에서, 제3 특정 오토 박스가 상기 제2 특정 트루 박스와 제3 기설정된 임계치 이상으로 겹쳐 있는 경우에 해당할 수 있다.
이때, 상기 미검출 클래스 군(FN,
Figure pat00024
)은
Figure pat00025
,
Figure pat00026
):
Figure pat00027
로 나타날 수 있다.
일 예로, 상기에서
Figure pat00028
로 설정될 수 있으나, 이에 한정되는 것은 아니다.
그리고, 상기 정상 클래스 군(
Figure pat00029
)은 상기 오검출 클래스 군 및 상기 미검출 클래스 군 이외의 다른 클래스 군을 포함할 수 있으며, 상기 객체와 상기 배경에 대응될 수 있다.
한편, 상기 클래스의 불균형을 예방하기 위하여, 상기 학습 장치(200)는 상기 오검출 클래스 군, 상기 미검출 클래스 군 및 상기 정상 클래스 군을 관리하여, 상기 비정상 클래스 군 중에서 요소 개수가 많은 클래스 군의 개수가 요소 개수가 적은 나머지 클래스 군 개수의 기설정된 제1 배수 이하로 되도록 하며, 상기 정상 클래스 군의 요소 개수가 상기 비정상 클래스 군의 요소 개수의 기설정된 제2 배수와 동일해지도록 한다.
이때, 상기 학습 장치(200)는 상기 오검출 클래스 군(FP)의 요소의 개수, 상기 미검출 클래스 군(FN)의 요소의 개수, 및 상기 정상 클래스 군의 요소의 개수를 랜덤 샘플링을 이용하여 조정할 수 있다.
다음으로, 상기 학습 장치(200)는, 적어도 하나의 로스 레이어(281)로 하여금 각각의 상기 오토 라벨링된 박스에 대한 상기 각 클래스 정보와 이에 대응하는 GT(ground truth)를 참조하여 하나 이상의 로스를 계산하도록 함으로써, 상기 로스를 이용한 백프로퍼게이션을 통해 상기 딥러닝 분류기(280)의 파라미터 중 적어도 일부를 학습할 수 있다.
이때, 상기 학습 장치(200)는 크로스 엔트로피 로스(cross-entropy loss)를 이용하여 상기 백프로퍼게이션을 수행할 수 있다.
한편, 상기 학습은, 상기 딥러닝 분류기(280)를 구성하는 뉴럴 네트워크 내 연결된 두 레이어의 시놉스 강도인 가중치를, 로스가 작아지도록 조정하는 것일 수 있다.
일 예로, 확률적 경사 하강법(Stochastic Gradient Descent, SGD)을 이용하여 상기 백프로퍼게이션을 수행할 경우에는, 다음과 같이 각각의 가중치를 조정할 수 있다.
Figure pat00030
상기에서,
Figure pat00031
는 학습률을 나타내며,
Figure pat00032
는 비용 함수(Cost function)를 나타낸다.
이때, 상기 비용 함수는 지도 학습, 비지도 학습, 자율 학습, 및 강화 학습 등과 같은 학습의 형태와 활성화 함수같은 요인들에 의해서 결정될 수 있다.
예를 들면, 다중 클래스(multi-class) 분류 문제를 풀기 위한 학습을 수행할 때, 일반적으로 상기 활성화 함수와 상기 비용 함수는 각각 소프트맥스 함수와 크로스 엔트로피 함수로 결정된다.
상기 소프트맥스 함수는
Figure pat00033
와 같이 나타낼 수 있으며, 상기 비용 함수는
Figure pat00034
와 같이 나타낼 수 있다.
이때, pj는 클래스 확률(class probability)을 나타내며, xj와 xk는 각각 유닛 j로의 전체 입력과 유닛 k로의 전체 입력을 나타낼 수 있다. 그리고, dj는 출력 유닛 j에 대한 목표 확률(target probability)을 나타내며, pj는 해당 활성화 함수를 적용한 이후의 상기 출력 유닛 j에 대한 확률 출력(probability output)을 나타낼 수 있다.
상기에서는 상기 로스를 이용한 백프로퍼게이션의 일 예로, 상기 확률적 경사 하강법에 대해 설명하였으나, 본 발명의 범위는 이에 한정되지 않으며, 모멘텀(Momentum) 방식, 네스테로프 가속 경사(Nesterov Accelerated Gradient, NAG) 방식, AdaGrad(Adaptive Gradient) 방식, RMSProp(Root Mean Square Propagation) 방식, AdaDelta(Adaptive Delta) 방식, Adam(Adaptive Moment Estimation) 방식 등을 사용하여 상기 뉴럴 네트워크의 학습을 위한 상기 백프로퍼게이션을 수행할 수도 있다.
아울러, 상기 방법은 다수의 변형 페어를 가지는 로버스트 알고리즘(robust algorithm)을 이용하여 수행될 수 있다.
본 발명을 통해, 위험 상황을 보다 정확하게 검출할 수 있다.
이상 설명된 본 발명에 따른 실시예들은 다양한 컴퓨터 요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기 광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서 본 발명이 구체적인 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다.

Claims (26)

  1. 딥러닝 네트워크 학습을 위한 적어도 하나의 오토 라벨링된 이미지 중에서 라벨 검수를 위한 적어도 하나의 샘플 이미지를 획득하는 방법에 있어서,
    (a) 오토 라벨링 네트워크에 의해 라벨링된 상기 오토 라벨링된 이미지가 획득되면, 샘플 이미지 획득 장치가 (i) 제1 이미지와 제2 이미지를 생성하되, 이 중 적어도 하나는 상기 오토 라벨링된 이미지로부터 변형되어 생성되고, 상기 제1 이미지와 상기 제2 이미지 중 하나만이 상기 오토 라벨링된 이미지로부터 변형되어 생성된 이미지라면, 나머지 하나는 상기 오토 라벨링된 이미지가 그대로 사용되고, (ii) 하나 이상의 컨벌루션 레이어로 하여금, 하나 이상의 컨벌루션 연산을 상기 제1 이미지와 상기 제2 이미지에 각각 적용하여 적어도 하나의 제1 특징 맵과 적어도 하나의 제2 특징 맵을 생성하도록 하며, (iii) 하나 이상의 풀링 레이어로 하여금, 상기 제1 특징 맵 상에서, 상기 오토 라벨링된 이미지의 오토 라벨링된 박스 각각에 대응하는 각 영역에 하나 이상의 풀링 연산을 적용하여 각각의 제1 풀링된 특징 맵을 생성하도록 하며, 상기 제2 특징 맵 상에서, 상기 오토 라벨링된 이미지의 상기 오토 라벨링된 박스 각각에 대응하는 각 영역에 상기 풀링 연산을 각각 적용하여 제2 풀링된 특징 맵 각각을 생성하도록 하며, (iv) 상기 오토 라벨링된 박스 각각에 대응하는, 각각의 상기 제1 풀링된 특징 맵과 각각의 상기 제2 풀링된 특징 맵을 컨캐터네이트(concatenate)하여, 각각의 상기 오토 라벨링된 박스에 대응하는 각각의 컨캐터네이트된 특징 맵을 생성하는 단계;
    (b) 상기 샘플 이미지 획득 장치가, 딥러닝 분류기(classifier)로 하여금, 각각의 상기 컨캐터네이트된 특징 맵을 입력으로서 획득하여, 각각의 상기 오토 라벨링된 박스를 비정상 클래스 군 또는 정상 클래스 군으로 분류하는 클래스 정보를 생성하도록 하는 단계; 및
    (c) 상기 샘플 이미지 획득 장치가, (i) 각각의 상기 오토 라벨링된 박스에 관한 각각의 상기 클래스 정보를 참조하여 상기 비정상 클래스 군의 각 비정상 클래스 요소의 확률 각각을 계산하고, (ii) 각각의 상기 비정상 클래스 요소의 상기 확률 각각을 이용하여 상기 오토 라벨링된 이미지가 디피컬트(difficult) 이미지인지를 판단하며, (iii) 상기 오토 라벨링된 이미지가 상기 디피컬트 이미지로 판단되는 경우, 상기 오토 라벨링된 이미지를 라벨 검수를 위한 상기 샘플 이미지로서 선정하되, 상기 디피컬트 이미지는 부정확하게 오토 라벨링될 확률이 기설정된 값 이상인 이미지인 단계;
    를 포함하는 것을 특징으로 하는 방법.
  2. 제1항에 있어서,
    상기 (a) 단계에서,
    상기 샘플 이미지 획득 장치는, 상기 제1 이미지와 상기 제2 이미지를 생성함에 있어서, 상기 제1 이미지를 변형하는 하나 이상의 제1 함수와 이에 대응하여 상기 제2 이미지를 변형하는 제2 함수를 포함하는 하나 이상의 변형 페어를 이용하여, 상기 오토 라벨링된 이미지에 대응하는, 상기 제1 이미지와 상기 제2 이미지의 적어도 하나의 이미지 페어를 생성하며,
    상기 (c) 단계에서,
    상기 샘플 이미지 획득 장치는, 각각의 상기 오토 라벨링된 박스 별로, 상기 변형 페어 각각에 대응하는 상기 비정상 클래스 요소 각각의 각 확률을 계산하고, 상기 각각의 확률에 대한 적어도 하나의 가중 평균을 계산하는 것을 특징으로 하는 방법.
  3. 제1항에 있어서,
    상기 비정상 클래스 군은 오검출(misdetection) 클래스 군과 미검출(non-detection) 클래스 군을 포함하며,
    상기 비정상 클래스 요소 각각의 각 확률은 상기 오검출 클래스 군의 오검출 클래스 요소 각각의 확률과 상기 미검출 클래스 군의 미검출 클래스 요소 각각의 확률을 포함하는 것을 특징으로 하는 방법.
  4. 제1항에 있어서,
    상기 (c) 단계에서,
    상기 부정확하게 오토 라벨링될 확률은, 상기 비정상 클래스 요소 각각의 확률에 대한 적어도 하나의 일반화된 평균(generalized mean)인 것을 특징으로 하는 방법.
  5. 제1항에 있어서,
    상기 기설정된 값은 상기 오토 라벨링 네트워크를 통해 오토 라벨링된 이후 수동으로 검수된 검증 이미지에 대한 정답 적중률 중 가장 높은 적중률인 것을 특징으로 하는 방법.
  6. 제1항에 있어서,
    (d) 상기 샘플 이미지 획득 장치는, 상기 디피컬트 이미지로 판단된 상기 오토 라벨링된 이미지 상에서, 상기 비정상 클래스 군으로 분류된 상기 오토 라벨링된 박스에 대응되는 영역을 식별하는 단계;
    를 더 포함하는 것을 특징으로 하는 방법.
  7. 제1항에 있어서,
    각각의 상기 컨벌루션 레이어는, 상기 오토 라벨링 네트워크를 구성하는 적어도 하나의 오토 라벨링 컨벌루션 레이어인 것을 특징으로 하는 방법.
  8. 제1항에 있어서,
    상기 딥러닝 분류기는 다중의 FC(fully connected) 레이어 또는 하나의 풀리 컨벌루션 네트워크(fully convolutional network)를 포함하는 것을 특징으로 하는 방법.
  9. 제1항에 있어서,
    학습 장치에 의해, 상기 딥러닝 분류기는, (i) 상기 오토 라벨링된 박스에 대응하는 트루 박스와 오토 박스를 포함하는 적어도 하나의 트레이닝 이미지가 획득되면, (i-1) 학습용 컨벌루션 레이어로 하여금 상기 학습용 컨벌루션 레이어의 컨벌루션 연산을 상기 트레이닝 이미지에 적용하여 학습용 특징 맵을 생성하도록 하며, (i-2) 학습용 풀링 레이어로 하여금, 상기 학습용 특징 맵 상에서 상기 오토 박스에 대응하는 영역 각각에 상기 학습용 풀링 레이어의 풀링 연산을 적용하여, 학습용 풀링된 특징 맵을 생성하도록 하며, (ii) 상기 오토 박스 각각에 대응하는 상기 학습용 풀링된 특징 맵 각각을 입력으로서 획득하여, 상기 오토 박스를 상기 정상 클래스 군 또는 상기 비정상 클래스 군으로 분류하는 상기 클래스 정보를 생성하고, (iii) 적어도 하나의 로스 레이어로 하여금, 상기 클래스 정보와 이에 대응하는 하나 이상의 GT(ground truth)를 참조하여 하나 이상의 로스를 산출하도록 함으로써, 상기 로스를 이용한 백프로퍼게이션을 통해 상기 딥러닝 분류기의 파라미터 중 적어도 일부를 학습하는 것을 특징으로 하는 방법.
  10. 제9항에 있어서,
    상기 클래스 정보는, 오검출 클래스 군과 미검출 클래스 군을 가지는 상기 비정상 클래스 군을 포함하며,
    (i) 상기 오검출 클래스 군은, 제1 특정 오토 박스와 동일한 클래스 정보를 가지는 제1 특정 트루 박스가 다른 어느 트루 박스와 제1 기설정된 임계치 이상 겹쳐있지 않는 경우에 해당하며, (ii) 상기 미검출 클래스 군은, 제2 특정 트루 박스와 동일한 클래스 정보를 가지는 제2 특정 오토 박스가 다른 어느 오토 박스와 제2 기설정된 임계치 이상 겹쳐있지 않는 상태에서, 제3 특정 오토 박스가 상기 제2 특정 트루 박스와 제3 기설정된 임계치 이상 겹쳐있는 경우에 해당하며, 상기 정상 클래스 군은, 상기 오검출 클래스 군과 상기 미검출 클래스 군을 제외한 모든 클래스 군을 포함하는 것을 특징으로 하는 방법.
  11. 제10항에 있어서,
    상기 학습 장치는, 상기 오검출 클래스 군, 상기 미검출 클래스 군, 및 상기 정상 클래스 군을 관리하여, 상기 비정상 클래스 군 중에서 요소 개수가 많은 클래스 군의 개수가 요소 개수가 적은 나머지 클래스 군의 개수의 기설정된 제1 배수 이하로 되도록 하며, 상기 정상 클래스 군의 요소 개수가 상기 비정상 클래스 군의 요소 개수의 기설정된 제2 배수와 동일해지도록 하는 것을 특징으로 하는 방법.
  12. 제10항에 있어서,
    상기 학습 장치는, 랜덤 샘플링을 이용하여, 상기 오검출 클래스 군의 요소의 개수, 상기 미검출 클래스 군의 요소의 개수, 및 상기 정상 클래스 군의 요소의 개수를 조정하는 것을 특징으로 하는 방법.
  13. 제9항에 있어서,
    상기 학습 장치는, 크로스 엔트로피 로스(cross-entropy loss)를 이용하여 상기 백프로퍼게이션을 수행하는 것을 특징으로 하는 방법.
  14. 딥러닝 네트워크 학습을 위한 적어도 하나의 오토 라벨링된 이미지 중에서 라벨 검수를 위한 적어도 하나의 샘플 이미지를 획득하는 샘플 이미지 획득 장치에 있어서,
    인스트럭션들을 저장하는 적어도 하나의 메모리; 및
    (I) 오토 라벨링 네트워크에 의해 라벨링된 상기 오토 라벨링된 이미지가 획득되면, (i) 제1 이미지와 제2 이미지를 생성하되, 이 중 적어도 하나는 상기 오토 라벨링된 이미지로부터 변형되어 생성되고, 상기 제1 이미지와 상기 제2 이미지 중 하나만이 상기 오토 라벨링된 이미지로부터 변형되어 생성된 이미지라면, 나머지 하나는 상기 오토 라벨링된 이미지가 그대로 사용되고, (ii) 하나 이상의 컨벌루션 레이어로 하여금, 하나 이상의 컨벌루션 연산을 상기 제1 이미지와 상기 제2 이미지에 각각 적용하여 적어도 하나의 제1 특징 맵과 적어도 하나의 제2 특징 맵을 생성하도록 하며, (iii) 하나 이상의 풀링 레이어로 하여금, 상기 제1 특징 맵 상에서, 상기 오토 라벨링된 이미지의 오토 라벨링된 박스 각각에 대응하는 각 영역에 하나 이상의 풀링 연산을 적용하여 각각의 제1 풀링된 특징 맵을 생성하도록 하며, 상기 제2 특징 맵 상에서, 상기 오토 라벨링된 이미지의 상기 오토 라벨링된 박스 각각에 대응하는 각 영역에 상기 풀링 연산을 각각 적용하여 제2 풀링된 특징 맵 각각을 생성하도록 하며, (iv) 상기 오토 라벨링된 박스 각각에 대응하는, 각각의 상기 제1 풀링된 특징 맵과 각각의 상기 제2 풀링된 특징 맵을 컨캐터네이트(concatenate)하여, 각각의 상기 오토 라벨링된 박스에 대응하는 각각의 컨캐터네이트된 특징 맵을 생성하는 프로세스, (II) 딥러닝 분류기(classifier)로 하여금, 각각의 상기 컨캐터네이트된 특징 맵을 입력으로서 획득하여, 각각의 상기 오토 라벨링된 박스를 비정상 클래스 군 또는 정상 클래스 군으로 분류하는 클래스 정보를 생성하도록 하는 프로세스, 및 (III) (i) 각각의 상기 오토 라벨링된 박스에 관한 각각의 상기 클래스 정보를 참조하여 상기 비정상 클래스 군의 각 비정상 클래스 요소의 확률 각각을 계산하고, (ii) 각각의 상기 비정상 클래스 요소의 상기 확률 각각을 이용하여 상기 오토 라벨링된 이미지가 디피컬트 이미지인지를 판단하며, (iii) 상기 오토 라벨링된 이미지가 상기 디피컬트 이미지로 판단되는 경우, 상기 오토 라벨링된 이미지를 라벨 검수를 위한 상기 샘플 이미지로서 선정하되, 상기 디피컬트 이미지는 부정확하게 오토 라벨링될 확률이 기설정된 값 이상인 이미지인 프로세스를 수행하기 위한 상기 인스트럭션들을 실행하도록 구성된 적어도 하나의 프로세서;
    를 포함하는 것을 특징으로 하는 샘플 이미지 획득 장치.
  15. 제14항에 있어서,
    상기 (I) 프로세스에서,
    상기 프로세서는 상기 제1 이미지와 상기 제2 이미지를 생성함에 있어서, 상기 제1 이미지를 변형하는 하나 이상의 제1 함수와 이에 대응하여 상기 제2 이미지를 변형하는 제2 함수를 포함하는 하나 이상의 변형 페어를 이용하여, 상기 오토 라벨링된 이미지에 대응하는, 상기 제1 이미지와 상기 제2 이미지의 적어도 하나의 이미지 페어를 생성하며,
    상기 (III) 프로세스에서,
    상기 프로세서는, 각각의 상기 오토 라벨링된 박스 별로, 상기 변형 페어 각각에 대응하는 상기 비정상 클래스 요소 각각의 각 확률을 계산하고, 상기 각각의 확률에 대한 적어도 하나의 가중 평균을 계산하는 것을 특징으로 하는 샘플 이미지 획득 장치.
  16. 제14항에 있어서,
    상기 비정상 클래스 군은 오검출(misdetection) 클래스 군과 미검출(non-detection) 클래스 군을 포함하며, 상기 비정상 클래스 요소 각각의 각 확률은 상기 오검출 클래스 군의 오검출 클래스 요소 각각의 확률과 상기 미검출 클래스 군의 미검출 클래스 요소 각각의 확률을 포함하는 것을 특징으로 하는 샘플 이미지 획득 장치.
  17. 제14항에 있어서,
    상기 (III) 프로세스에서,
    상기 부정확하게 오토 라벨링될 확률은, 상기 비정상 클래스 요소 각각의 확률에 대한 적어도 하나의 일반화된 평균(generalized mean)인 것을 특징으로 하는 샘플 이미지 획득 장치.
  18. 제14항에 있어서,
    상기 기설정된 값은 상기 오토 라벨링 네트워크를 통해 오토 라벨링된 이후 수동으로 검수된 검증 이미지에 대한 정답 적중률 중 가장 높은 적중률인 것을 특징으로 하는 샘플 이미지 획득 장치.
  19. 제14항에 있어서,
    상기 프로세서는 (IV) 상기 디피컬트 이미지로 판단된 상기 오토 라벨링된 이미지 상에서, 상기 비정상 클래스 군으로 분류된 상기 오토 라벨링된 박스에 대응되는 영역을 식별하는 프로세스;를 더 수행하는 것을 특징으로 하는 샘플 이미지 획득 장치.
  20. 제14항에 있어서,
    각각의 상기 컨벌루션 레이어는, 상기 오토 라벨링 네트워크를 구성하는 적어도 하나의 오토 라벨링 컨벌루션 레이어인 것을 특징으로 하는 샘플 이미지 획득 장치.
  21. 제14항에 있어서,
    상기 딥러닝 분류기는 다중의 FC(fully connected) 레이어 또는 하나의 풀리 컨벌루션 네트워크를 포함하는 것을 특징으로 하는 샘플 이미지 획득 장치.
  22. 제14항에 있어서,
    학습 장치에 의해, 상기 딥러닝 분류기는, (i) 상기 오토 라벨링된 박스에 대응하는 트루 박스와 오토 박스를 포함하는 적어도 하나의 트레이닝 이미지가 획득되면, (i-1) 학습용 컨벌루션 레이어로 하여금 상기 학습용 컨벌루션 레이어의 컨벌루션 연산을 상기 트레이닝 이미지에 적용하여 학습용 특징 맵을 생성하도록 하며, (i-2) 학습용 풀링 레이어로 하여금, 상기 학습용 특징 맵 상에서 상기 오토 박스에 대응하는 영역 각각에 상기 학습용 풀링 레이어의 풀링 연산을 적용하여, 학습용 풀링된 특징 맵을 생성하도록 하며, (ii) 상기 오토 박스 각각에 대응하는 상기 학습용 풀링된 특징 맵 각각을 입력으로서 획득하여, 상기 오토 박스를 상기 정상 클래스 군 또는 상기 비정상 클래스 군으로 분류하는 상기 클래스 정보를 생성하고, (iii) 적어도 하나의 로스 레이어로 하여금, 상기 클래스 정보와 이에 대응하는 하나 이상의 GT(ground truth)를 참조하여 하나 이상의 로스를 산출하도록 함으로써, 상기 로스를 이용한 백프로퍼게이션을 통해 상기 딥러닝 분류기의 파라미터 중 적어도 일부를 학습하는 것을 특징으로 하는 샘플 이미지 획득 장치.
  23. 제22항에 있어서,
    상기 클래스 정보는, 오검출 클래스 군과 미검출 클래스 군을 가지는 상기 비정상 클래스 군을 포함하며,
    (i) 상기 오검출 클래스 군은, 제1 특정 오토 박스와 동일한 클래스 정보를 가지는 제1 특정 트루 박스가 다른 어느 트루 박스와 제1 기설정된 임계치 이상 겹쳐있지 않는 경우에 해당하며, (ii) 상기 미검출 클래스 군은, 제2 특정 트루 박스와 동일한 클래스 정보를 가지는 제2 특정 오토 박스가 다른 어느 오토 박스와 제2 기설정된 임계치 이상 겹쳐있지 않는 상태에서, 제3 특정 오토 박스가 상기 제2 특정 트루 박스와 제3 기설정된 임계치 이상 겹쳐있는 경우에 해당하며, 상기 정상 클래스 군은, 상기 오검출 클래스 군과 상기 미검출 클래스 군을 제외한 모든 클래스 군을 포함하는 것을 특징으로 하는 샘플 이미지 획득 장치.
  24. 제23항에 있어서,
    상기 학습 장치는, 상기 오검출 클래스 군, 상기 미검출 클래스 군, 및 상기 정상 클래스 군을 관리하여, 상기 비정상 클래스 군 중에서 요소 개수가 많은 클래스 군의 개수가 요소 개수가 적은 나머지 클래스 군의 개수의 기설정된 제1 배수 이하로 되도록 하며, 상기 정상 클래스 군의 요소 개수가 상기 비정상 클래스 군의 요소 개수의 기설정된 제2 배수와 동일해지도록 하는 것을 특징으로 하는 샘플 이미지 획득 장치.
  25. 제23항에 있어서,
    상기 학습 장치는, 랜덤 샘플링을 이용하여, 상기 오검출 클래스 군의 요소의 개수, 상기 미검출 클래스 군의 요소의 개수, 및 상기 정상 클래스 군의 요소의 개수를 조정하는 것을 특징으로 하는 샘플 이미지 획득 장치.
  26. 제22항에 있어서,
    상기 학습 장치는, 크로스 엔트로피 로스(cross-entropy loss)를 이용하여 상기 백프로퍼게이션을 수행하는 것을 특징으로 하는 샘플 이미지 획득 장치.
KR1020190147098A 2019-01-30 2019-11-15 뉴럴 네트워크 학습에 이용될 오토 라벨링된 이미지 중에서 라벨 검수를 위한 샘플 이미지를 획득하는 방법 및 이를 이용한 샘플 이미지 획득 장치 KR102263397B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/262,142 US10373027B1 (en) 2019-01-30 2019-01-30 Method for acquiring sample images for inspecting label among auto-labeled images to be used for learning of neural network and sample image acquiring device using the same
US16/262,142 2019-01-30

Publications (2)

Publication Number Publication Date
KR20200094622A true KR20200094622A (ko) 2020-08-07
KR102263397B1 KR102263397B1 (ko) 2021-06-11

Family

ID=67477578

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190147098A KR102263397B1 (ko) 2019-01-30 2019-11-15 뉴럴 네트워크 학습에 이용될 오토 라벨링된 이미지 중에서 라벨 검수를 위한 샘플 이미지를 획득하는 방법 및 이를 이용한 샘플 이미지 획득 장치

Country Status (5)

Country Link
US (1) US10373027B1 (ko)
EP (1) EP3690714B1 (ko)
JP (1) JP6855091B2 (ko)
KR (1) KR102263397B1 (ko)
CN (1) CN111507370B (ko)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108399382A (zh) * 2018-02-13 2018-08-14 阿里巴巴集团控股有限公司 车险图像处理方法和装置
US11922314B1 (en) * 2018-11-30 2024-03-05 Ansys, Inc. Systems and methods for building dynamic reduced order physical models
CN111291755B (zh) * 2020-02-13 2022-11-15 腾讯科技(深圳)有限公司 对象检测模型训练及对象检测方法、装置、计算机设备和存储介质
CN111832406B (zh) * 2020-06-05 2022-12-06 中国科学院计算技术研究所 一种长尾目标检测方法与系统
CN111814582B (zh) * 2020-06-15 2022-06-28 开易(北京)科技有限公司 一种用于驾驶员行为监测图像的处理方法及装置
CN111753729B (zh) * 2020-06-24 2022-06-24 西安深信科创信息技术有限公司 一种假脸检测方法、装置、电子设备及存储介质
CN112464846B (zh) * 2020-12-03 2024-04-02 武汉理工大学 一种车站货运列车车厢异常故障的自动识别方法
CN112598058A (zh) * 2020-12-22 2021-04-02 深延科技(北京)有限公司 一种自动化深度学习方法、装置及存储介质
CN112906811B (zh) * 2021-03-09 2023-04-18 西安电子科技大学 基于物联网架构的工程车载设备图像自动分类方法
CN113436138B (zh) * 2021-03-31 2023-07-21 成都飞机工业(集团)有限责任公司 一种基于数字图像的航空结构件识别的图像预处理方法
CN113870230B (zh) * 2021-09-30 2022-08-02 湖南大学 一种基于混合监督学习的表面异常检测方法
JP7343646B1 (ja) 2022-03-30 2023-09-12 本田技研工業株式会社 教師データの収集方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017040522A (ja) * 2015-08-19 2017-02-23 株式会社Screenホールディングス 教示支援方法および画像分類方法
JP2018013886A (ja) * 2016-07-19 2018-01-25 日本電信電話株式会社 認識容易性指標算出装置、方法、及びプログラム
US10223610B1 (en) * 2017-10-15 2019-03-05 International Business Machines Corporation System and method for detection and classification of findings in images

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4132229B2 (ja) * 1998-06-03 2008-08-13 株式会社ルネサステクノロジ 欠陥分類方法
JP4742193B2 (ja) * 2009-04-28 2011-08-10 Necソフト株式会社 年齢推定装置、年齢推定方法及びプログラム
JP2011158373A (ja) * 2010-02-02 2011-08-18 Dainippon Screen Mfg Co Ltd 自動欠陥分類のための教師データ作成方法、自動欠陥分類方法および自動欠陥分類装置
CA2944829C (en) * 2014-05-23 2022-10-25 Ting Chen Systems and methods for detection of biological structures and/or patterns in images
US9418319B2 (en) * 2014-11-21 2016-08-16 Adobe Systems Incorporated Object detection using cascaded convolutional neural networks
US10410096B2 (en) * 2015-07-09 2019-09-10 Qualcomm Incorporated Context-based priors for object detection in images
US9767381B2 (en) * 2015-09-22 2017-09-19 Xerox Corporation Similarity-based detection of prominent objects using deep CNN pooling layers as features
US9965705B2 (en) * 2015-11-03 2018-05-08 Baidu Usa Llc Systems and methods for attention-based configurable convolutional neural networks (ABC-CNN) for visual question answering
US9965719B2 (en) * 2015-11-04 2018-05-08 Nec Corporation Subcategory-aware convolutional neural networks for object detection
US20170124409A1 (en) * 2015-11-04 2017-05-04 Nec Laboratories America, Inc. Cascaded neural network with scale dependent pooling for object detection
US10002313B2 (en) * 2015-12-15 2018-06-19 Sighthound, Inc. Deeply learned convolutional neural networks (CNNS) for object localization and classification
US9858496B2 (en) * 2016-01-20 2018-01-02 Microsoft Technology Licensing, Llc Object detection and classification in images
US11244191B2 (en) * 2016-02-17 2022-02-08 Intel Corporation Region proposal for image regions that include objects of interest using feature maps from multiple layers of a convolutional neural network model
US10354362B2 (en) * 2016-09-08 2019-07-16 Carnegie Mellon University Methods and software for detecting objects in images using a multiscale fast region-based convolutional neural network
US10387740B2 (en) * 2016-10-10 2019-08-20 Gyrfalcon Technology Inc. Object detection and recognition apparatus based on CNN based integrated circuits
CN106599773B (zh) * 2016-10-31 2019-12-24 清华大学 用于智能驾驶的深度学习图像识别方法、系统及终端设备
US10198671B1 (en) * 2016-11-10 2019-02-05 Snap Inc. Dense captioning with joint interference and visual context
US10621747B2 (en) * 2016-11-15 2020-04-14 Magic Leap, Inc. Deep learning system for cuboid detection
US20180211403A1 (en) * 2017-01-20 2018-07-26 Ford Global Technologies, Llc Recurrent Deep Convolutional Neural Network For Object Detection
JP2020510463A (ja) * 2017-01-27 2020-04-09 アーテリーズ インコーポレイテッド 全層畳み込みネットワークを利用する自動化されたセグメンテーション
US10346724B2 (en) * 2017-06-22 2019-07-09 Waymo Llc Rare instance classifiers
US10474908B2 (en) * 2017-07-06 2019-11-12 GM Global Technology Operations LLC Unified deep convolutional neural net for free-space estimation, object detection and object pose estimation
JP7149692B2 (ja) * 2017-08-09 2022-10-07 キヤノン株式会社 画像処理装置、画像処理方法
US11531830B2 (en) * 2017-08-14 2022-12-20 Tata Consultancy Services Limited Synthetic rare class generation by preserving morphological identity
US10169679B1 (en) * 2017-10-13 2019-01-01 StradVision, Inc. Learning method and learning device for adjusting parameters of CNN by using loss augmentation and testing method and testing device using the same
US10007865B1 (en) * 2017-10-16 2018-06-26 StradVision, Inc. Learning method and learning device for adjusting parameters of CNN by using multi-scale feature maps and testing method and testing device using the same
CN108805188B (zh) * 2018-05-29 2020-08-21 徐州工程学院 一种基于特征重标定生成对抗网络的图像分类方法
JP7117934B2 (ja) * 2018-08-07 2022-08-15 日本放送協会 画像分類装置及びプログラム
US10223614B1 (en) * 2018-09-04 2019-03-05 StradVision, Inc. Learning method, learning device for detecting lane through classification of lane candidate pixels and testing method, testing device using the same
US10229346B1 (en) * 2018-09-04 2019-03-12 StradVision, Inc. Learning method, learning device for detecting object using edge image and testing method, testing device using the same

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017040522A (ja) * 2015-08-19 2017-02-23 株式会社Screenホールディングス 教示支援方法および画像分類方法
JP2018013886A (ja) * 2016-07-19 2018-01-25 日本電信電話株式会社 認識容易性指標算出装置、方法、及びプログラム
US10223610B1 (en) * 2017-10-15 2019-03-05 International Business Machines Corporation System and method for detection and classification of findings in images

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Decoupled Classification Refinement : Hard False Positive Suppression for Object Detection", ARXIV.ORG, 5 October 2018 *

Also Published As

Publication number Publication date
US10373027B1 (en) 2019-08-06
JP6855091B2 (ja) 2021-04-07
EP3690714C0 (en) 2023-12-06
CN111507370A (zh) 2020-08-07
JP2020123330A (ja) 2020-08-13
EP3690714A1 (en) 2020-08-05
CN111507370B (zh) 2023-10-13
EP3690714B1 (en) 2023-12-06
KR102263397B1 (ko) 2021-06-11

Similar Documents

Publication Publication Date Title
KR20200094622A (ko) 뉴럴 네트워크 학습에 이용될 오토 라벨링된 이미지 중에서 라벨 검수를 위한 샘플 이미지를 획득하는 방법 및 이를 이용한 샘플 이미지 획득 장치
KR102280414B1 (ko) 고 정밀도로 이미지를 분석하기 위한 딥 러닝 네트워크를 사용하기 위해 트레이닝 이미지를 오토 라벨링하는 오토 라벨링 장치의 하이퍼파라미터를 최적화하는 방법 및 이를 이용한 최적화 장치
KR102328734B1 (ko) 이미지를 분석하기 위해, 딥러닝 네트워크에 이용하기 위한 트레이닝 이미지에 대한 라벨링 신뢰도를 자동으로 평가하기 위한 방법 및 이를 이용한 신뢰도 평가 장치
CN109978893B (zh) 图像语义分割网络的训练方法、装置、设备及存储介质
CN108764063B (zh) 一种基于特征金字塔的遥感影像时敏目标识别系统及方法
KR20200047307A (ko) 유용한 학습 데이터를 취사 선별하기 위한 cnn 기반 학습 방법 및 학습 장치 그리고 이를 이용한 테스트 방법 및 테스트 장치
KR20200027427A (ko) 차선 후보 픽셀의 분류를 통해 차선을 검출하는 학습 방법 및 학습 장치 그리고 이를 이용한 테스트 방법 및 테스트 장치
JP6867054B2 (ja) マルチカメラシステム内のダブルエンベディング構成を利用して、道路利用者イベントを検出するために用いられるセグメンテーション性能向上のための学習方法及び学習装置、そしてこれを利用したテスティング方法及びテスティング装置。{learning method and learning device for improving segmentation performance to be used for detecting road user events using double embedding configuration in multi−camera system and testing method and testing device using the same}
JP2020119501A (ja) エッジロスを利用して歩行者イベント、自動車イベント、フォーリングイベント、フォールンイベントを含むイベントを検出するにおいて利用されるセグメンテーション性能向上のための学習方法及び学習装置、並びにそれを利用したテスト方法及びテスト装置
CN112991364A (zh) 基于卷积神经网络跨模态融合的道路场景语义分割方法
CN114842343A (zh) 一种基于ViT的航空图像识别方法
JP6988995B2 (ja) 画像生成装置、画像生成方法および画像生成プログラム
CN112288702A (zh) 一种基于车联网的道路图像检测方法
CN112085164A (zh) 一种基于无锚框网络的区域推荐网络提取方法
CN112133100B (zh) 一种基于r-cnn的车辆检测方法
CN113362372B (zh) 一种单目标追踪方法及计算机可读介质
CN115272814B (zh) 一种远距离空间自适应多尺度的小目标检测方法
CN116704196B (zh) 一种训练图像语义分割模型的方法
CN113139569B (zh) 目标分类检测方法、装置与系统
CN112085001A (zh) 一种基于多尺度边缘特征检测的隧道识别模型及方法
CN114359698A (zh) 一种基于双向跨跃反馈循环结构声纳图像识别方法及系统
CN117892233A (en) Unbalanced data soft classification method based on multi-category index loss function
CN113673592A (zh) 样本选择方法及装置、分类器训练方法及装置
CN115131687A (zh) 一种基于语义信息和注意力机制的无锚航拍图像检测方法
CN112818760A (zh) 用于智能评估杂草对于路面通行的影响的方法

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right