KR20180069452A - 뉴럴 네트워크의 학습 방법 및 뉴럴 네트워크를 이용한 인식 방법, 및 그 장치 - Google Patents

뉴럴 네트워크의 학습 방법 및 뉴럴 네트워크를 이용한 인식 방법, 및 그 장치 Download PDF

Info

Publication number
KR20180069452A
KR20180069452A KR1020160171650A KR20160171650A KR20180069452A KR 20180069452 A KR20180069452 A KR 20180069452A KR 1020160171650 A KR1020160171650 A KR 1020160171650A KR 20160171650 A KR20160171650 A KR 20160171650A KR 20180069452 A KR20180069452 A KR 20180069452A
Authority
KR
South Korea
Prior art keywords
neural network
learning
data
clusters
feature vector
Prior art date
Application number
KR1020160171650A
Other languages
English (en)
Inventor
강효아
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020160171650A priority Critical patent/KR20180069452A/ko
Priority to US15/691,916 priority patent/US10902292B2/en
Publication of KR20180069452A publication Critical patent/KR20180069452A/ko
Priority to US17/132,201 priority patent/US11829858B2/en

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
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • 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
    • 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
    • G06F18/24137Distances to cluster centroïds
    • G06F18/2414Smoothing the distance, e.g. radial basis function networks [RBFN]
    • 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
    • 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
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/19147Obtaining sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/1916Validation; Performance evaluation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/19173Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/192Recognition using electronic means using simultaneous comparisons or correlations of the image signals with a plurality of references
    • G06V30/194References adjustable by an adaptive method, e.g. learning

Abstract

뉴럴 네트워크의 학습 방법 및 뉴럴 네트워크를 이용한 인식 방법, 및 그 장치가 개시된다. 개시된 뉴럴 네트워크를 이용한 인식 방법은 인식하고자 하는 입력 데이터가 뉴럴 네트워크의 입력 레이어에 입력됨에 따라 뉴럴 네트워크의 히든 레이어로부터 생성된 특징 벡터를 획득하고, 특징 벡터 및 복수의 클러스터들을 이용하여, 입력 데이터에 대한 인식 결과의 신뢰도를 결정한다.

Description

뉴럴 네트워크의 학습 방법 및 뉴럴 네트워크를 이용한 인식 방법, 및 그 장치{METHOD FOR TRAINING THE NEURAL NETWORK, METHOD FOR RECOGNING USING NEURAL NETWORK AND APPARATUS THEREOF}
아래 실시예들은 뉴럴 네트워크의 학습 방법 및 뉴럴 네트워크를 이용한 인식 방법, 및 그 장치에 관한 것이다.
복잡하거나 해가 알려지지 않은 문제를 해결하기 위해, 인간이 지닌 인식 방법을 디바이스에 적용시키려는 연구가 진행되고 있다. 이러한 연구 중 하나로, 인간의 생물학적 신경 세포를 모델링한 뉴럴 네트워크(neural network)가 있다. 뉴럴 네트워크는 인간이 가지고 있는 학습 능력을 모방한 알고리즘을 이용한다. 뉴럴 네트워크는 학습을 통해 입력 패턴과 출력 패턴들 사이의 사상(mapping)을 수행할 수 있다. 또한, 뉴럴 네트워크는 학습된 결과에 기초하여 학습에 이용되지 않았던 입력 패턴에 대하여 비교적 올바른 출력을 생성할 수 있는 일반화 능력을 가질 수 있다.
일실시예에 따른 뉴럴 네트워크를 이용한 인식 방법은 인식하고자 하는 입력 데이터가 상기 뉴럴 네트워크의 입력 레이어에 입력됨에 따라 상기 뉴럴 네트워크의 히든 레이어 로부터 생성된 특징 벡터를 획득하는 단계; 및 상기 특징 벡터 및 복수의 클러스터들을 이용하여, 상기 입력 데이터에 대한 인식 결과의 신뢰도를 결정하는 단계를 포함한다.
일실시예에 따른 인식 방법에서 상기 신뢰도를 결정하는 단계는, 상기 특징 벡터 및 상기 복수의 클러스터들 간의 거리를 계산함으로써, 상기 인식 결과의 신뢰도를 결정할 수 있다.
일실시예에 따른 인식 방법에서 상기 신뢰도를 결정하는 단계는, 상기 특징 벡터로부터 상기 복수의 클러스터들까지의 거리가 가까울수록 상기 인식 결과의 신뢰도를 높게 결정할 수 있다.
일실시예에 따른 인식 방법에서 상기 신뢰도를 추정하는 단계는, 상기 특징 벡터 및 상기 복수의 클러스터들 간의 유사도를 계산함으로써, 상기 인식 결과의 신뢰도를 추정할 수 있다.
일실시예에 따른 인식 방법에서 상기 복수의 클러스터들은, 상기 뉴럴 네트워크를 학습시키기 위한 복수의 학습 데이터의 특징 벡터들에 기초하여 결정될 수 있다.
일실시예에 따른 인식 방법에서 상기 복수의 학습 데이터의 특징 벡터들은, 상기 뉴럴 네트워크의 상기 히든 레이어로부터 획득될 수 있다.
일실시예에 따른 뉴럴 네트워크의 학습 방법은 학습 데이터(training data) 가 상기 뉴럴 네트워크의 입력 레이어에 입력됨에 따라 상기 뉴럴 네트워크의 히든 레이어에서 생성된 특징 벡터를 획득하는 단계; 상기 특징 벡터에 기초하여, 복수의 클러스터들 중에서 상기 학습 데이터에 대응하는 클러스터를 식별하는 단계; 및 상기 학습 데이터에 대한 인식 정확도가 미리 정해진 조건을 만족하지 않는 경우, 상기 식별된 클러스터를 이용하여 상기 뉴럴 네트워크를 학습시키는 단계를 포함한다.
일실시예에 따른 학습 방법에서 상기 뉴럴 네트워크를 학습시키는 단계는, 상기 식별된 클러스터에 포함된 학습 데이터를 이용하여 상기 뉴럴 네트워크를 학습시킬 수 있다.
일실시예에 따른 학습 방법에서 상기 뉴럴 네트워크를 학습시키는 단계는, 상기 식별된 클러스터에 포함된 학습 데이터에 대한 손실(loss)의 가중치를 다른 학습 데이터에 대한 손실의 가중치보다 높게 설정하여 상기 뉴럴 네트워크를 학습시킬 수 있다.
일실시예에 따른 학습 방법에서 상기 복수의 클러스터들은, 상기 뉴럴 네트워크의 학습 세트(training set)에 포함된 복수의 학습 데이터의 특징 벡터들에 기초하여 결정될 수 있다.
일실시예에 따른 학습 방법에서 상기 복수의 클러스터들은, 상기 뉴럴 네트워크에 대한 학습 과정이 진행됨에 따라 해당 학습 과정에서 획득된 특징 벡터에 기초하여 업데이트될 수 있다.
일실시예에 따른 학습 방법에서 상기 인식 정확도는, 상기 학습 데이터에 대응하여 상기 뉴럴 네트워크로부터 출력된 추정 값 및 상기 학습 데이터에 대응한 정답 값에 기초하여 결정되는 손실을 포함할 수 있다.
일실시예에 따른 학습 방법에서 상기 뉴럴 네트워크를 학습시키는 단계는, 상기 뉴럴 네트워크의 검증 세트(validation set)에 포함된 복수의 검증 데이터 중에서 상기 뉴럴 네트워크의 인식 정확도가 가장 낮은 검증 데이터에 대응하는 클러스터를 이용하여 상기 뉴럴 네트워크를 학습시킬 수 있다.
일실시예에 따른 인식 장치는 뉴럴 네트워크를 이용하여 입력 데이터를 인식하는 프로세서; 및 상기 프로세서에 의해 실행 가능한 적어도 하나의 명령어를 포함하는 메모리를 포함하고, 상기 적어도 하나의 명령어가 상기 프로세서에서 실행되면, 상기 프로세서는 상기 입력 데이터가 상기 뉴럴 네트워크의 입력 레이어에 입력됨에 따라 상기 뉴럴 네트워크의 히든 레이어로부터 생성된 특징 벡터를 획득하고, 상기 특징 벡터 및 복수의 클러스터들을 이용하여 상기 입력 데이터에 대한 인식 결과의 신뢰도를 추정한다.
도 1은 일실시예에 따라 뉴럴 네트워크의 학습 과정을 설명하기 위한 도면이다.
도 2는 일실시예에 따라 다음 학습 과정에서 이용할 학습 데이터를 선택하는 과정을 설명하기 위한 도면이다.
도 3은 일실시예에 따라 특징 벡터에 대응하는 클러스터를 식별하는 과정을 설명하기 위한 도면이다.
도 4는 일실시예에 따라 학습 과정에서 손실의 가중치를 조절하는 과정을 설명하기 위한 도면이다.
도 5는 일실시예에 따라 인식 과정에서 인식 결과에 대한 신뢰도를 결정하는 과정을 설명하기 위한 도면이다.
도 6은 일실시예에 따라 특징 벡터 및 복수의 클러스터들을 이용하여 신뢰도를 결정하는 과정을 설명하기 위한 도면이다.
도 7은 일실시예에 따른 학습 방법을 나타낸 도면이다.
도 8 및 도 9는 일실시예에 따른 인식 방법을 나타낸 도면이다.
도 10은 일실시예에 따른 전자 장치를 나타낸 도면이다.
실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 실시될 수 있다. 따라서, 실시예들은 특정한 개시형태로 한정되는 것이 아니며, 본 명세서의 범위는 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
하기에서 설명될 실시예들은 뉴럴 네트워크를 학습시키거나, 뉴럴 네트워크를 이용하여 입력 데이터를 인식하는 데 사용될 수 있다. 실시예들은 퍼스널 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 스마트 폰, 스마트 가전 기기, 지능형 자동차, 웨어러블 장치, 서버 등 다양한 형태의 제품으로 구현될 수 있다. 예를 들어, 실시예들은 퍼스널 컴퓨터, 서버, 스마트 폰 등에서 뉴럴 네트워크를 학습시키거나, 뉴럴 네트워크를 이용하여 입력 데이터를 인식하는 데 적용될 수 있다. 이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 일실시예에 따라 뉴럴 네트워크의 학습 과정을 설명하기 위한 도면이다.
도 1을 참조하면, 뉴럴 네트워크(130)를 학습시키기 위해 데이터를 선택하는 과정을 설명하기 위한 도면이 도시된다.
뉴럴 네트워크(130)는 복수의 레이어들을 포함할 수 있고, 레이어들 각각은 복수의 뉴런들을 포함할 수 있다. 이웃한 레이어들의 뉴런들은 시냅스들로 연결될 수 있다. 학습에 따라 시냅스들에는 가중치들이 부여될 수 있고, 파라미터들은 이러한 가중치들을 포함할 수 있다.
뉴럴 네트워크(130)의 복수의 레이어들에는 입력 레이어, 히든 레이어 및 출력 레이어가 포함될 수 있다. 예를 들어, 입력 레이어는 트레이닝 또는 인식을 수행하기 위한 입력을 수신하여 히든 레이어로 전달할 수 있고, 출력 레이어는 히든 레이어의 뉴런들로부터 수신한 신호에 기초하여 뉴럴 네트워크(130)의 출력을 생성할 수 있다. 히든 레이어는 입력 레이어와 출력 레이어 사이에 위치한 중간 레이어로서, 입력 레이어를 통해 전달된 학습 데이터 또는 인식의 대상이 되는 데이터를 예측하기 쉬운 값으로 변화시킬 수 있다.
일실시예에 따른 복수의 학습 데이터(110)는 뉴럴 네트워크(130)를 학습시키기 위한 데이터로서, 학습 세트(training set)에 포함될 수 있다. 뉴럴 네트워크(130) 학습 시, 학습 세트에 포함된 모든 복수의 학습 데이터(110)를 한 번에 뉴럴 네트워크(130)에 입력시킬 수 없다. 복수의 학습 데이터(110)를 미리 결정된 개수만큼 나누어서 뉴럴 네트워크(130)를 학습시켜야 한다. 이 때, 미리 결정된 개수만큼의 학습 데이터를 이용하여 뉴럴 네트워크(130)를 한 번 학습시키는 것을 1 iteration이라고 하며, 여러 iteration을 통해 학습 세트에 포함된 모든 학습 데이터가 뉴럴 네트워크(130)의 학습에 이용되는 것을 1 epoch라고 한다.
일실시예에 따른 학습 장치는 학습 세트에 포함된 복수의 학습 데이터(110) 중에서 금번 iteration에서 뉴럴 네트워크(130)를 학습시킬 학습 데이터를 선택할 수 있다(120). 뉴럴 네트워크(130) 학습 시 iteration에서 이용할 학습 데이터의 구성이 뉴럴 네트워크(130)의 인식 정확도에 영향을 미칠 수 있다. 다시 말해, 학습 중인 뉴럴 네트워크(130)가 특정 레이블(label)을 인식하는 정도가 다른 레이블보다 낮은 경우, 해당 레이블에 대한 인식 정확도가 보다 향상되도록 관련 학습 데이터를 선택하여 다음 iteration에서 이용할 수 있다. 이 때, 학습 데이터에 대한 선택은 뉴럴 네트워크(130)의 히든 레이어로부터 획득된 특징 벡터를 이용하여 수행될 수 있다.
뉴럴 네트워크(130)는 학습 데이터가 입력 레이어에 입력됨에 따라 히든 레이어에서 해당 학습 데이터에 대응하는 특징 벡터를 생성할 수 있다. 학습 세트에 포함된 복수의 학습 데이터가 뉴럴 네트워크(130)로 입력되면, 복수의 학습 데이터에 대응하는 특징 벡터들이 획득되고, 획득된 특징 벡터들에 기초하여 클러스터링(clustering)이 수행될 수 있다(140). 클러스터링은 히든 레이어에서 획득된 특징 벡터들을 유한 개의 클러스터로 군집하는 과정을 의미할 수 있다. 클러스터링된 결과는 클러스터 정보로 뉴럴 네트워크(130)를 학습시키기 위한 학습 데이터를 선택하는 데 이용될 수 있다.
일실시예에 따른 뉴럴 네트워크(130)의 출력 레이어에서는 학습 데이터에 대응하는 추정 값이 출력될 수 있다. 그리고, 추정 값과 학습 데이터에 대응한 정답 값에 기초하여 손실(loss)이 계산될 수 있다(150). 계산된 손실에 기초하여 해당 학습 데이터에 대한 뉴럴 네트워크(130)의 인식 정확도가 판단될 수 있고, 인식 정확도에 기초하여 뉴럴 네트워크(130)를 학습시키기 위한 학습 데이터가 선택될 수 있다.
예를 들어, 손실이 미리 결정된 임계치를 초과하는 경우, 학습 장치는 뉴럴 네트워크(130)가 해당 학습 데이터를 정확히 인식하지 못하는 것으로 판단하고, 학습 데이터의 특징 벡터에 기초하여 학습 데이터에 대응하는 클러스터를 식별한다. 그리고, 학습 장치는 식별된 클러스터에 포함된 학습 데이터를 이용하여 뉴럴 네트워크(130)를 학습시킬 수 있다. 일례로, 학습 장치는 식별된 클러스터에 포함된 학습 데이터로만 다음 iteration에서 이용할 복수의 학습 데이터를 구성하거나 또는 식별된 클러스터에 포함된 학습 데이터의 비율이 가장 높도록 다음 iteration에서 이용할 복수의 학습 데이터를 구성할 수도 있다.
또한, 일실시예에 따라 검증 세트(validation set)에 포함된 검증 데이터(validation data)에 기초하여 뉴럴 네트워크(130)의 학습 정도가 검증될 수 있다(160). 검증 세트는 학습 세트와 구별되는 집합으로, 학습 데이터를 통해 학습된 뉴럴 네트워크(130)의 학습 정도를 확인하기 위한 복수의 검증 데이터를 포함할 수 있다.
학습 장치는 검증 세트에 포함된 복수의 검증 데이터 중에서 뉴럴 네트워크(130)의 인식 정확도가 낮은 검증 데이터에 대한 클러스터를 이용하여 뉴럴 네트워크(130)를 학습시킬 수 있다. 예를 들어, 학습 장치는 뉴럴 네트워크(130)가 잘못 인식한 검증 데이터가 가장 많이 분류되는 클러스터를 식별하고, 식별된 클러스터에 포함된 학습 데이터를 이용하여 뉴럴 네트워크(130)를 학습시킬 수 있다. 이 때, 학습 장치는 검증 데이터의 특징 벡터에 기초하여 대응하는 클러스터를 식별할 수 있다. 또한, 학습 장치는 식별된 클러스터에 포함된 검증 데이터를 이용해서 뉴럴 네트워크(130)를 학습시킬 수도 있다.
이 때, 검증 데이터에 기초한 검증 정보가 계산될 수 있고, 검증 정보는 precision, recall, accuracy, L1 error, L2 error, 유클리드 거리(Euclidian distance), average precision(AP), mean average precision(mAP) 등의 성능 지표를 통해 표현될 수 있다. 여기서, precision은 제안된 알고리즘으로 TRUE라고 판단한 데이터 중에서 실제(ground truth)로 TRUE인 데이터 개수에 기초한 지표이고, recall은 실제 TRUE인 데이터를 제안된 알고리즘으로 판단했을 때 TRUE로 판단된 데이터 개수에 기초한 지표이며, accuracy는 TRUE라고 판단한 데이터 중에서 실제로 TRUE인 데이터 개수 및 FALSE로 판단한 데이터 중에서 실제로 FALSE인 데이터 개수에 기초한 지표를 나타낸다. 유클리드 거리는 유클리드 공간에서 두 점 사이의 거리를 나타낼 수 있다. L1 error는 정답과 예측 값 간의 차에 대한 절대값의 합으로 계산되고, L2 error는 정답과 예측 값 간의 차에 대한 제곱의 합으로 계산된다. Average precision은 0부터 1까지의 모든 recall 값에 대한 precision의 평균 값으로 계산된다. mean average precision은 여러 쿼리가 있을 때, 각 쿼리의 average precision 값에 대한 평균으로 계산된다. 예를 들어, mean average precision을 통해 영상에 포함된 새, 비행기, 자동차를 구분하는 분류기(classifier)를 검증한다고 가정하면, 새에 대한 average precision 값, 비행기에 대한 average precision 값, 자동차에 대한 average precision 값에 대한 평균으로 mean average precision을 계산할 수 있다.
다시 말해, 학습 장치는 검증 데이터에 기초한 검증 정보를 이용하여 다음 iteration에서 이용할 복수의 학습 데이터들을 구성할 수 있다. 예를 들어, 학습 장치는 낮은 인식 정확도를 가지는 검증 데이터에 대한 클러스터를 식별하고, 식별된 클러스터에 포함된 학습 데이터 또는 검증 데이터만으로 다음 iteration에서 이용할 복수의 학습 데이터들을 구성하거나, 또는 식별된 클러스터에 포함된 학습 데이터 또는 검증 데이터의 비율이 가장 높도록 복수의 학습 데이터들을 구성할 수 있다.
앞서 설명한 iteration 단위를 기준으로 하는 동작에 관한 설명은 epoch 단위의 동작에도 적용될 수 있다. 다시 말해, 학습 데이터 구성은 epoch 단위로도 수행될 수 있다. 아래에서 설명하는 하나의 학습 과정은 1 iteration 또는 1 epoch를 의미할 수 있다.
도 2는 일실시예에 따라 다음 학습 과정에서 이용할 학습 데이터를 선택하는 과정을 설명하기 위한 도면이다.
도 2를 참조하면, 일실시예에 따라 학습 장치가 다음 학습 과정에서 이용할 학습 데이터를 선택하는 과정을 설명하기 위한 예시가 도시된다. 도 2에서 입력 레이어(210)로 입력되는 학습 데이터는 하나의 학습 과정에서 이용되는 복수의 학습 데이터 중 어느 하나를 나타낼 수 있다. 이하에서는 설명의 편의를 위해 하나의 학습 과정에서 이용되는 복수의 학습 데이터 중 어느 하나의 학습 데이터를 기준으로 학습 장치의 동작을 설명한다.
일실시예에 따른 뉴럴 네트워크는 입력 레이어(210), 히든 레이어들(220) 및 출력 레이어(230)를 포함한다. 뉴럴 네트워크에 대한 학습 데이터는 입력 레이어(210)로 입력될 수 있다. 그리고, 출력 레이어(230)는 학습 데이터에 대한 추정 값을 출력할 수 있다. 학습 장치는 추정 값과 학습 데이터에 대응한 정답 값을 비교함으로써 손실(loss)를 계산할 수 있다. 만약 손실이 미리 결정된 조건을 만족하지 않는 경우(예컨대, 손실이 임계치를 초과하는 경우), 학습 장치는 해당 학습 데이터에 대응하는 클러스터를 이용하여 뉴럴 네트워크(130)를 학습시킨다. 아래에서는 해당 학습 데이터에 대응하는 클러스터를 식별하는 과정에 대해 설명한다.
일실시예에 따라 학습 장치는 히든 레이어들(220) 중 어느 하나의 히든 레이어(221)로부터 학습 데이터의 특징 벡터(241)를 획득할 수 있다. 히든 레이어(221)는 히든 레이어들(220) 중에서 학습 데이터의 전체적인 특징을 충분히 생성할 수 있는 레이어로 선택된 히든 레이어로서, 예를 들어, 뉴럴 네트워크에 포함된 레이어들 중에서 끝에서 두 번째 또는 세 번째 레이어일 수 있다. 다만, 히든 레이어(221)는 뉴럴 네트워크의 목적(예컨대, 분류(classification), 검출(detection) 및 세그먼테이션(segmentation) 등) 또는 목적에 따라 다르게 결정될 수도 있다.
학습 장치는 학습 데이터의 특징 벡터(241)에 기초하여 복수의 클러스터들 중에서 학습 데이터에 대응하는 클러스터를 식별한다. 복수의 클러스터들은 학습 세트에 포함된 복수의 학습 데이터의 특징 벡터들을 벡터 공간(vector space)(240)에서 클러스터링함으로써, 생성될 수 있다. 클러스터링할 때 이용되는 특징 벡터들은 히든 레이어(221)와 동일한 레이어로부터 추출될 수 있다.
예를 들어, 학습 장치는 벡터 공간(240)에 학습 데이터의 특징 벡터(241)를 배치할 수 있고, 복수의 클러스터들 중에서 특징 벡터(241)를 포함하거나 또는 특징 벡터(241)에 가장 인접한 클러스터(243)를 식별할 수 있다. 복수의 클러스터들 중에서 특징 벡터(241)에 대응하는 클러스터(243)를 식별하는 과정은 도 3을 참조하여 후술한다.
학습 장치는 클러스터(243)를 이용하여 뉴럴 네트워크를 학습시킬 수 있다. 학습 장치는 클러스터(243)에 포함된 학습 데이터를 선택하여 다음 학습 과정에서 뉴럴 네트워크를 학습시킬 수 있다. 예를 들어, 학습 장치는 클러스터(243)에 포함된 학습 데이터로만 다음 학습 과정에 이용할 복수의 학습 데이터를 구성하거나 또는 클러스터(243)에 포함된 학습 데이터의 비율이 가장 높도록 다음 학습 과정에 이용할 복수의 학습 데이터를 구성할 수 있다.
도 3은 일실시예에 따라 특징 벡터에 대응하는 클러스터를 식별하는 과정을 설명하기 위한 도면이다.
도 3을 참조하면, 일실시예에 따른 학습 장치가 복수의 클러스터들 중에서 학습 데이터의 특징 벡터에 대응하는 클러스터를 식별하는 과정을 설명하기 위한 예시가 도시된다.
일실시예에 따른 벡터 공간(300)은 학습 세트에 포함된 복수의 학습 데이터의 특징 벡터들이 존재하는 공간으로서, n차원 공간일 수 있다. 도 3에서는 설명의 편의를 위해 벡터 공간(300)을 2차원 공간으로 도시한다. 벡터 공간(300)에 존재하는 복수의 특징 벡터들이 클러스터링됨으로써 복수의 클러스터들(310, 320, 330)이 결정될 수 있다. 복수의 클러스터들(310, 320, 330)은 뉴럴 네트워크의 학습 과정이 진행됨에 따라 업데이트될 수 있다.
뉴럴 네트워크가 학습됨에 따라 뉴럴 네트워크에 포함된 파라미터들이 조정되고, 그래서 동일한 학습 데이터가 뉴럴 네트워크에 입력되더라도 그로부터 획득되는 특징 벡터가 달라질 수 있다. 따라서, 뉴럴 네트워크의 학습 과정(예컨대, 1 epoch 또는 2 이상 epoch)에서 획득된 특징 벡터들을 클러스터링함으로써, 복수의 클러스터들(310, 320, 330)의 위치 및/또는 경계가 조정될 수 있다. 복수의 클러스터들(310, 320, 330)이 업데이트됨에 따라, 이전 학습 과정에서 한 클러스터로 분류된 학습 데이터가 다음 학습 과정에서는 다른 클러스터로 분류될 수도 있다.
일실시예에 따른 학습 장치는 계층 기반 방법(hierarchical based methods), 분할 방법(partitioning methods), 모델 기반 방법(model-based methods) 등의 기법들을 이용하여 클러스터링을 수행할 수 있다. 여기서, 계층 기반 방법은 각 요소들로부터 시작한 클러스터들이 계층구조(예컨대, 트리 구조 등)를 이루는 것이며, 계층구조를 이루며 한쪽 끝에는 각각의 요소가 있고 다른 쪽 끝에는 모든 요소를 포괄하는 단 하나의 클러스터가 존재하는 기법을 의미할 수 있다. 분할 방법은 클러스터의 계층을 고려하지 않고 평면적으로 클러스터링하는 것으로, 일반적으로 몇 개의 클러스터로 나누어질 것으로 예상하고 클러스터의 개수를 정하는 기법을 의미할 수 있다. 모델 기반 방법은 클러스터링을 수행하는 뉴럴 네트워크를 이용한 기법을 의미할 수 있다.
클러스터링한 후에는 클러스터 정보가 저장될 수 있다. 이 때, 저장되는 클러스터 정보는 가장 최근 값 또는 누적된 값일 수 있다. 예를 들어, 클러스터 정보는 각 클러스터의 중심점(centroid), 경계 정보, 각 클러스터에 포함된 데이터의 개수 등을 포함할 수 있다. 이러한 클러스터 정보는 클러스터 별 중심점, 평균(average), 아웃라이어(outlier), 최소 값(minimum value), 최대 값(maximum value), 분포(distribution) 등을 포함할 수 있다. 여기서, 아웃라이어는 특징 벡터 분포를 비정상적으로 벗어난 값을 나타내고, 평균, 최소 값, 최대 값, 분포는 해당 클러스터에 포함된 특징 벡터들에 대한 통계 값을 나타낼 수 있다.
일실시예에 따른 학습 장치는 학습 데이터의 특징 벡터에 기초하여 복수의 클러스터들 중에서 해당 학습 데이터에 대응하는 클러스터를 식별할 수 있다. 예를 들어, 학습 장치는 복수의 클러스터들(310, 320, 330) 중에서 특징 벡터(340)를 포함하거나 또는 특징 벡터(340)에 가장 인접한 클러스터를 식별할 수 있다. 학습 장치는 복수의 클러스터들(310, 320, 330)의 경계 내에 특징 벡터(340)가 존재하는지 여부에 기초하여 특징 벡터(340)를 포함하는 클러스터를 식별할 수 있다. 또는, 학습 장치는 특징 벡터(340)로부터 복수의 클러스터들의 중심점(311, 321, 331)까지의 거리에 기초하여 특징 벡터(340)에 가장 인접한 클러스터를 식별할 수도 있다. 예를 들어, 학습 장치는 복수의 클러스터들(310, 320, 330) 중에서 특징 벡터(340)로부터 중심점까지의 거리가 가장 짧은 클러스터를 식별할 수 있다. 또는, 학습 장치는 특징 벡터(340)로부터 복수의 클러스터들의 경계까지의 거리에 기초하여 가장 인접한 클러스터를 식별할 수도 있다.
예시적으로 도시된 도 3에서는, 특징 벡터(340)로부터 중심점(311, 321, 331)까지의 거리가 가장 짧은 클러스터(320)가 식별될 수 있다. 그리고, 식별된 클러스터(320)는 뉴럴 네트워크 학습 시 이용될 수 있다.
도 4는 일실시예에 따라 학습 과정에서 손실의 가중치를 조절하는 과정을 설명하기 위한 도면이다.
도 4를 참조하면, 일실시예에 따라 학습 장치가 손실의 가중치를 조절하여 뉴럴 네트워크를 학습시키는 과정을 설명하기 위한 예시가 도시된다.
일실시예에 따른 학습 장치는 식별된 클러스터에 포함된 학습 데이터에 대한 손실의 가중치를 조절함으로써, 뉴럴 네트워크를 학습시킬 수 있다. 학습 장치는 히든 레이어(421)로부터 획득된 학습 데이터의 특징 벡터(441)에 기초하여 학습 데이터에 대응하는 클러스터(443)를 식별할 수 있다. 그리고, 학습 장치는 뉴럴 네트워크를 통해 학습 데이터로부터 추정된 추정 값과 학습 데이터에 대응한 정답 값에 기초하여 손실을 결정하고, 해당 손실이 미리 결정된 임계치를 초과하는 경우 해당 손실의 가중치를 조절할 수 있다. 여기서, 추정 값은 학습 데이터가 입력 레이어(410)로 입력됨에 따라 출력 레이어(430)에서 출력된 값일 수 있다.
예를 들어, 학습 장치는 식별된 클러스터(443)에 포함된 학습 데이터에 대한 손실의 가중치를 다른 학습 데이터에 대한 손실의 가중치보다 높게 설정하여 뉴럴 네트워크를 학습시킬 수 있다. 여기서, 다른 학습 데이터는 식별된 클러스터(443)를 제외한 다른 클러스터에 포함된 학습 데이터를 의미할 수 있다. 손실을 이용하여 뉴럴 네트워크를 학습시키는 동작은 역 전파(back propagation)를 수행하는 것을 의미할 수 있다.
다시 말해, 학습 장치는 뉴럴 네트워크의 파라미터들 중에서 식별된 클러스터(443)에 포함된 학습 데이터의 인식과 관련된 파라미터의 조정 범위를 다른 파라미터보다 크게 설정하고, 역 전파를 수행할 수 있다. 예를 들어, 식별된 클러스터(443)에 포함된 학습 데이터의 인식과 관련된 파라미터의 조정 범위가 100으로 설정되고 다른 파라미터의 조정 범위가 50으로 설정되면, 한 번의 역 전파 과정을 통해 다른 학습 데이터보다 식별된 클러스터(443)에 포함된 학습 데이터의 인식 정확도를 큰 폭으로 향상시킬 수 있다. 따라서, 학습 장치는 식별된 클러스터(433)에 포함된 학습 데이터의 인식 정확도를 다른 학습 데이터의 인식 정확도보다 빠른 속도로 향상시킬 수 있다.
여기서, 손실은 유클리드 손실(Euclidean loss), 소프트맥스 손실(Softmax loss), L1 loss, L2 loss, L1smooth loss 등에 기초하여 계산될 수 있다. 여기서, 유클리드 손실은 제곱합 손실(sum of squares loss)으로도 지칭되며,
Figure pat00001
으로 계산될 수 있다. 여기서, xi는 추정 값을 나타내고, ti는 정답 값을 나타낸다. 소프트맥스 손실은
Figure pat00002
으로 계산될 수 있다. L1 loss는 추정 값과 정답 값 간의 절대차(absolute differences)를 기초로 계산되고, LAD(least absolute deviation)로도 지칭될 수 있다. L2 loss는 추정 값과 정답 값 간의 제곱차(squared difference)를 기초로 계산되고, LSE(least squares error)로도 지칭될 수 있다. L1 smooth loss는 하기의 수학식으로 계산될 수 있다.
Figure pat00003
또한, 정답 값은 뉴럴 네트워크의 목적이 분류인 경우 입력 데이터(예컨대, 입력 영상 등)의 클래스(class)(예컨대, 차량, 사람 등), 검출인 경우 물체(object)의 위치, 세그먼테이션인 경우 픽셀 별 클래스일 수 있다.
도 5는 일실시예에 따라 인식 과정에서 인식 결과에 대한 신뢰도를 결정하는 과정을 설명하기 위한 도면이다.
도 5를 참조하면, 일실시예에 따른 인식 장치가 입력 데이터에 대한 인식 결과의 신뢰도를 결정하는 과정을 설명하기 위한 예시가 도시된다.
일실시예에 따른 인식 장치는 기 학습된 뉴럴 네트워크를 이용하여 입력 데이터를 인식할 수 있고, 그 결과로 인식 결과를 출력할 수 있다. 예를 들어, 인식 장치는 인식하고자 하는 입력 데이터가 뉴럴 네트워크의 입력 레이어(510)에 입력됨에 따라 뉴럴 네트워크의 히든 레이어(521)로부터 생성된 특징 벡터(541)를 획득한다. 히든 레이어(521)는 뉴럴 네트워크에 포함된 복수의 히든 레이어들(520) 중 어느 하나의 레이어로서, 학습 과정에서 복수의 클러스터들을 결정하기 위한 복수의 특징 벡터들을 생성한 히든 레이어와 동일할 수 있다.
그리고, 인식 장치는 특징 벡터(541) 및 복수의 클러스터들을 이용하여 출력 레이어(530)에서 출력된 인식 결과의 신뢰도를 결정한다. 복수의 클러스터들은 학습 과정에서 미리 결정될 수 있다. 예를 들어, 복수의 클러스터들은 뉴럴 네트워크의 학습 과정에서 복수의 학습 데이터의 특징 벡터들을 클러스터링함으로써 결정될 수 있다. 복수의 클러스터들 및 특징 벡터(541)는 벡터 공간(540)에 배치될 수 있다.
인식 장치는 특징 벡터(541) 및 복수의 클러스터들 간의 거리에 기초하여 인식 결과의 신뢰도를 결정하거나 또는 특징 벡터(541) 및 복수의 클러스터들 간의 유사도에 기초하여 인식 결과의 신뢰도를 결정할 수 있다. 인식 결과의 신뢰도를 결정하는 과정에 대해서는 도 6에서 상세히 설명한다.
도 6은 일실시예에 따라 특징 벡터 및 복수의 클러스터들을 이용하여 신뢰도를 결정하는 과정을 설명하기 위한 도면이다.
도 6을 참조하면, 일실시예에 따라 인식 장치가 인식 결과의 신뢰도를 결정하는 과정을 설명하기 위한 예시가 도시된다.
예시적으로 도시된 도 6의 벡터 공간(600)에서 복수의 클러스터들(610, 620, 630)이 미리 결정될 수 있다. 제1 특징 벡터(640) 및 제2 특징 벡터(650)는 서로 다른 입력 데이터(예컨대, 제1 입력 데이터 및 제2 입력 데이터)의 특징 벡터를 나타낼 수 있다.
복수의 클러스터들(610, 620, 630)은 뉴럴 네트워크의 학습 과정에서 기 결정된 것으로서, 복수의 클러스터들(610, 620, 630)에 대한 클러스터 정보가 미리 저장될 수 있고, 인식 장치는 기 저장된 클러스터 정보를 이용할 수 있다.
일실시예에 따른 신뢰도는 특징 벡터 및 복수의 클러스터들 간의 거리에 기초하여 추정될 수 있다. 예를 들어, 특징 벡터로부터 복수의 클러스터들까지의 거리가 가까울수록 신뢰도가 높게 추정될 수 있다. 여기서, 특징 벡터로부터 복수의 클러스터들까지의 거리는 복수의 클러스터들 중 가장 가까운 클러스터를 기준으로 한 거리를 나타낼 수 있다.
예컨대, 제1 특징 벡터(640)의 경우 제2 클러스터(620)가 가장 인접하므로, 제1 특징 벡터(640) 및 제2 클러스터(620) 간의 거리에 기초하여 해당 입력 데이터의 신뢰도가 결정될 수 있다. 제2 특징 벡터(650)의 경우에도 제2 클러스터(620)가 가장 인접하므로, 제2 특징 벡터(650) 및 제2 클러스터(620) 간의 거리에 기초하여 해당 입력 데이터의 신뢰도가 결정될 수 있다. 다만, 제1 특징 벡터(640) 및 제2 클러스터(620) 간의 거리가 제2 특징 벡터(650) 및 제2 클러스터(620) 간의 거리보다 짧으므로, 제1 입력 데이터의 신뢰도가 제2 입력 데이터보다 높게 추정될 수 있다. 클러스터까지의 거리는 해당 클러스터의 중심점(611, 621, 631)을 기준으로 계산될 수 있다. 또는, 해당 클러스터의 경계를 기준으로 클러스터까지의 거리가 계산될 수도 있다.
여기서, 제1 입력 데이터는 해당 뉴럴 네트워크의 학습 과정에서 이용된 학습 데이터와 유사한 데이터를 나타낼 수 있고, 뉴럴 네트워크는 제1 입력 데이터에 대한 인식 결과를 높은 신뢰도로 도출할 수 있다. 반면, 제2 입력 데이터는 상대적으로 해당 뉴럴 네트워크의 학습 과정에서 이용된 데이터와 유사하지 않은 데이터를 나타낼 수 있고, 따라서 제2 입력 데이터에 대한 인식 결과의 신뢰도가 낮게 결정될 수 있다.
일실시예에 따른 특징 벡터 및 클러스터 간의 유사도도 벡터 공간(600)에서의 위치를 기준으로 결정될 수 있다.
도 7은 일실시예에 따른 학습 방법을 나타낸 도면이다.
도 7을 참조하면, 일실시예에 따른 학습 장치의 프로세서에 의해 수행되는 학습 방법이 도시된다.
단계(710)에서, 학습 장치는 학습 데이터 뉴럴 네트워크의 입력 레이어에 입력됨에 따라 뉴럴 네트워크의 히든 레이어에서 생성된 특징 벡터를 획득한다.
단계(720)에서, 학습 장치는 특징 벡터에 기초하여, 복수의 클러스터들 중에서 학습 데이터에 대응하는 클러스터를 식별한다. 복수의 클러스터들은 뉴럴 네트워크의 학습 세트에 포함된 복수의 학습 데이터의 특징 벡터들에 기초하여 결정될 수 있다. 또한, 복수의 클러스터들은 뉴럴 네트워크에 대한 학습 과정이 진행됨에 따라 해당 학습 과정에서 획득된 특징 벡터에 기초하여 업데이트될 수 있다.
단계(730)에서, 학습 장치는 학습 데이터에 대한 인식 정확도가 미리 정해진 조건을 만족하지 않는 경우, 식별된 클러스터를 이용하여 뉴럴 네트워크를 학습시킨다. 일실시예에 따른 학습 장치는 식별된 클러스터에 포함된 학습 데이터를 이용하여 뉴럴 네트워크를 학습시킬 수 있다. 또한, 학습 장치는 식별된 클러스터에 포함된 학습 데이터에 대한 손실의 가중치를 다른 학습 데이터에 대한 손실의 가중치보다 높게 설정하여 뉴럴 네트워크를 학습시킬 수 있다.
인식 정확도는 학습 데이터에 대응하여 뉴럴 네트워크로부터 출력된 추정 값 및 학습 데이터에 대응한 정답 값에 기초하여 결정되는 손실을 포함할 수 있다.
또한, 학습 장치는 뉴럴 네트워크의 검증 세트에 포함된 복수의 검증 데이터 중에서 뉴럴 네트워크의 인식 정확도가 가장 낮은 검증 데이터에 대응하는 클러스터를 이용하여 뉴럴 네트워크를 학습시킬 수 있다.
도 7에 도시된 각 단계들에는 도 1 내지 도 6을 통하여 전술한 사항들이 그대로 적용되므로, 보다 상세한 설명은 생략한다.
도 8 및 도 9는 일실시예에 따른 인식 방법을 나타낸 도면이다.
도 8을 참조하면, 일실시예에 따라 인식 장치의 프로세서에 의해 수행되는 인식 방법이 도시된다.
단계(810)에서, 인식 장치는 인식하고자 하는 입력 데이터가 뉴럴 네트워크의 입력 레이어에 입력됨에 따라 뉴럴 네트워크의 히든 레이어로부터 생성된 특징 벡터를 획득한다.
단계(820)에서, 인식 장치는 특징 벡터 및 복수의 클러스터들을 이용하여, 입력 데이터에 대한 인식 결과의 신뢰도를 결정한다. 복수의 클러스터들은 뉴럴 네트워크를 학습시키기 위한 복수의 학습 데이터의 특징 벡터들에 기초하여 결정될 수 있다. 그리고, 복수의 학습 데이터의 특징 벡터들은 입력 데이터의 특징 벡터를 생성한 히든 레이어로부터 획득될 수 있다.
일실시예에 따른 인식 장치는 특징 벡터 및 복수의 클러스터들 간의 거리를 계산함으로써, 인식 결과의 신뢰도를 결정할 수 있다. 인식 장치는 특징 벡터로부터 복수의 클러스터들까지의 거리가 가까울수록 인식 결과의 신뢰도를 높게 결정할 수 있다. 인식 장치는 특징 벡터 및 복수의 클러스터들 간의 유사도를 계산함으로써, 인식 결과의 신뢰도를 추정할 수 있다.
도 8에 도시된 각 단계들에는 도 1 내지 도 6을 통하여 전술한 사항들이 그대로 적용되므로, 보다 상세한 설명은 생략한다.
도 9을 참조하면, 일실시예에 따라 신뢰도를 이용하는 방법이 도시된다. 도 9에 도시된 각 단계들은 인식 장치에 의해 수행될 수 있다.
단계(910)에서, 인식 장치는 신뢰도가 미리 결정된 임계치를 초과하는지 여부를 판단할 수 있다. 여기서, 미리 결정된 임계치는 인식 장치의 종류에 따라 다르게 결정될 수 있다.
신뢰도가 미리 결정된 임계치를 초과하는 경우, 단계(920)에서 인식 장치는 추정 값을 높은 신뢰도로 이용할 수 있다. 예를 들어, 인식 장치가 자율 주행 차량의 전방이 촬영된 전방 영상을 분석하여 주행 경로를 결정하는 자율 주행 제어 장치인 경우, 인식 장치는 추정 값을 이용하여 전방에 있는 물체(예컨대, 차량, 사람 등)를 감지하거나 자율 주행 경로를 결정할 수 있다.
반면, 신뢰도가 미리 결정된 임계치 이하인 경우, 단계(930)에서 인식 장치는 추정 값을 낮은 신뢰도로 이용할 수 있다. 예를 들어, 인식 장치가 자율 주행 제어 장치인 경우, 인식 장치는 추정 값보다는 다른 센싱 값(예컨대, 라이다(Lidar; light detection and ranging) 센서의 출력 값 등)을 이용하여 전방에 있는 물체를 감지하거나 자율 주행 경로를 결정할 수 있다. 이를 통해, 자율 주행 제어 장치는 전방 영상을 통해 정상적으로 물체를 감지하거나 자율 주행 경로를 결정할 수 없는 상황을 스스로 판단할 수 있고, 이러한 상황에서 다른 센싱 값을 이용하여 자율 주행을 지속할 수 있다.
도 10은 일실시예에 따른 전자 장치를 나타낸 도면이다.
도 10을 참조하면, 전자 장치(1000)는 센서(1010), 메모리(1020) 및 프로세서(1030)를 포함한다. 센서(1010), 메모리(1020) 및 프로세서(1030)는 버스(bus)(1040)를 통하여 서로 통신할 수 있다. 앞서 설명된 학습 장치 및 인식 장치는 전자 장치의 적어도 일부로 구현될 수 있다.
센서(1010)는 영상 데이터 및 음성 데이터 등을 센싱하기 위한 이미지 센서 및 마이크 등을 포함할 수 있다. 센서(1010)는 잘 알려진 방식(예를 들어, 광학 이미지를 전기 신호로 변환하는 방식 등)으로 영상 등을 감지할 수 있다. 센서(1010)의 출력은 프로세서(1030) 또는 메모리(1020)로 출력된다.
메모리(1020)는 앞서 설명한 뉴럴 네트워크의 파라미터들 및 클러스터 정보 등을 저장할 수 있다. 또한, 메모리(1020)는 컴퓨터에서 읽을 수 있는 명령어를 포함할 수 있다. 프로세서(1030)는 메모리(1020)에 저장된 명령어가 프로세서(1030)에서 실행됨에 따라 앞서 언급된 동작들을 수행할 수 있다. 메모리(1020)는 휘발성 메모리 또는 비휘발성 메모리일 수 있다.
프로세서(1030)는 도 1 내지 도 9를 통하여 전술한 적어도 하나의 장치들을 포함하거나, 도 1 내지 도 9를 통하여 전술한 적어도 하나의 방법을 수행할 수 있다. 예를 들어, 프로세서(1030)는 학습 데이터가 뉴럴 네트워크의 입력 레이어에 입력됨에 따라 뉴럴 네트워크의 히든 레이어에서 생성된 특징 벡터를 획득하고, 특징 벡터에 기초하여 복수의 클러스터들 중에서 학습 데이터에 대응하는 클러스터를 식별하며, 학습 데이터에 대한 인식 정확도가 미리 정해진 조건을 만족하지 않는 경우, 식별된 클러스터를 이용하여 뉴럴 네트워크를 학습시킨다. 또한, 프로세서(1030)는 인식하고자 하는 입력 데이터가 뉴럴 네트워크의 입력 레이어에 입력됨에 따라 뉴럴 네트워크의 히든 레이어로부터 생성된 특징 벡터를 획득하고, 특징 벡터 및 복수의 클러스터들을 이용하여, 입력 데이터에 대한 인식 결과의 신뢰도를 결정한다.
실시예들은 입력 데이터에 대한 뉴럴 네트워크의 인식 결과와 함께 해당 인식 결과의 신뢰도를 함께 출력함으로써, 신뢰도가 낮은 인식 결과(다시 말해, 잘못된 인식 결과)를 이용하는 것을 효과적으로 방지할 수 있다.
실시예들은 인식 정확도가 미리 정해진 조건을 만족하지 않는 학습 데이터와 동일한 클러스터에 포함된 학습 데이터를 이용하여 뉴럴 네트워크를 학습시킴으로써, 뉴럴 네트워크의 관점에서 유사한 것으로 식별된 학습 데이터를 이용하여 학습 속도를 효과적으로 향상시킬 수 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.

Claims (18)

  1. 뉴럴 네트워크를 이용한 인식 방법에 있어서,
    인식하고자 하는 입력 데이터가 상기 뉴럴 네트워크의 입력 레이어에 입력됨에 따라 상기 뉴럴 네트워크의 히든 레이어로부터 생성된 특징 벡터를 획득하는 단계; 및
    상기 특징 벡터 및 복수의 클러스터들을 이용하여, 상기 입력 데이터에 대한 인식 결과의 신뢰도를 결정하는 단계
    를 포함하는 인식 방법.
  2. 제1항에 있어서,
    상기 신뢰도를 결정하는 단계는,
    상기 특징 벡터 및 상기 복수의 클러스터들 간의 거리를 계산함으로써, 상기 인식 결과의 신뢰도를 결정하는, 인식 방법.
  3. 제2항에 있어서,
    상기 신뢰도를 결정하는 단계는,
    상기 특징 벡터로부터 상기 복수의 클러스터들까지의 거리가 가까울수록 상기 인식 결과의 신뢰도를 높게 결정하는, 인식 방법.
  4. 제1항에 있어서,
    상기 신뢰도를 추정하는 단계는,
    상기 특징 벡터 및 상기 복수의 클러스터들 간의 유사도를 계산함으로써, 상기 인식 결과의 신뢰도를 추정하는, 인식 방법.
  5. 제1항에 있어서,
    상기 복수의 클러스터들은,
    상기 뉴럴 네트워크를 학습시키기 위한 복수의 학습 데이터의 특징 벡터들에 기초하여 결정되는, 인식 방법.
  6. 제5항에 있어서,
    상기 복수의 학습 데이터의 특징 벡터들은,
    상기 뉴럴 네트워크의 상기 히든 레이어로부터 획득된, 인식 방법.
  7. 뉴럴 네트워크의 학습 방법에 있어서,
    학습 데이터(training data)가 상기 뉴럴 네트워크의 입력 레이어에 입력됨에 따라 상기 뉴럴 네트워크의 히든 레이어에서 생성된 특징 벡터를 획득하는 단계;
    상기 특징 벡터에 기초하여, 복수의 클러스터들 중에서 상기 학습 데이터에 대응하는 클러스터를 식별하는 단계; 및
    상기 학습 데이터에 대한 인식 정확도가 미리 정해진 조건을 만족하지 않는 경우, 상기 식별된 클러스터를 이용하여 상기 뉴럴 네트워크를 학습시키는 단계
    를 포함하는 학습 방법.
  8. 제7항에 있어서,
    상기 뉴럴 네트워크를 학습시키는 단계는,
    상기 식별된 클러스터에 포함된 학습 데이터를 이용하여 상기 뉴럴 네트워크를 학습시키는, 학습 방법.
  9. 제7항에 있어서,
    상기 뉴럴 네트워크를 학습시키는 단계는,
    상기 식별된 클러스터에 포함된 학습 데이터에 대한 손실(loss)의 가중치를 다른 학습 데이터에 대한 손실의 가중치보다 높게 설정하여 상기 뉴럴 네트워크를 학습시키는, 학습 방법.
  10. 제7항에 있어서,
    상기 복수의 클러스터들은,
    상기 뉴럴 네트워크의 학습 세트(training set)에 포함된 복수의 학습 데이터의 특징 벡터들에 기초하여 결정되는, 학습 방법.
  11. 제10항에 있어서,
    상기 복수의 클러스터들은,
    상기 뉴럴 네트워크에 대한 학습 과정이 진행됨에 따라 해당 학습 과정에서 획득된 특징 벡터에 기초하여 업데이트되는, 학습 방법.
  12. 제7항에 있어서,
    상기 인식 정확도는,
    상기 학습 데이터에 대응하여 상기 뉴럴 네트워크로부터 출력된 추정 값 및 상기 학습 데이터에 대응한 정답 값에 기초하여 결정되는 손실을 포함하는, 학습 방법.
  13. 제7항에 있어서,
    상기 뉴럴 네트워크를 학습시키는 단계는,
    상기 뉴럴 네트워크의 검증 세트(validation set)에 포함된 복수의 검증 데이터 중에서 상기 뉴럴 네트워크의 인식 정확도가 가장 낮은 검증 데이터에 대응하는 클러스터를 이용하여 상기 뉴럴 네트워크를 학습시키는, 학습 방법.
  14. 제1항 내지 제13항 중에서 어느 하나의 항의 방법을 실행시키기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록 매체.
  15. 뉴럴 네트워크를 이용하여 입력 데이터를 인식하는 프로세서; 및
    상기 프로세서에 의해 실행 가능한 적어도 하나의 명령어를 포함하는 메모리
    를 포함하고,
    상기 적어도 하나의 명령어가 상기 프로세서에서 실행되면, 상기 프로세서는 상기 입력 데이터가 상기 뉴럴 네트워크의 입력 레이어에 입력됨에 따라 상기 뉴럴 네트워크의 히든 레이어로부터 생성된 특징 벡터를 획득하고, 상기 특징 벡터 및 복수의 클러스터들을 이용하여 상기 입력 데이터에 대한 인식 결과의 신뢰도를 추정하는
    인식 장치.
  16. 제15항에 있어서,
    상기 프로세서는,
    상기 특징 벡터 및 상기 복수의 클러스터들 간의 거리를 계산함으로써, 상기 인식 결과의 신뢰도를 추정하는, 인식 장치.
  17. 제15항에 있어서,
    상기 프로세서는,
    상기 특징 벡터 및 상기 복수의 클러스터들 간의 유사도를 계산함으로써, 상기 인식 결과의 신뢰도를 추정하는, 인식 장치.
  18. 제15항에 있어서,
    상기 복수의 클러스터들은,
    상기 뉴럴 네트워크를 학습시키기 위한 복수의 학습 데이터의 특징 벡터들에 기초하여 결정되는, 인식 장치.
KR1020160171650A 2016-12-15 2016-12-15 뉴럴 네트워크의 학습 방법 및 뉴럴 네트워크를 이용한 인식 방법, 및 그 장치 KR20180069452A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020160171650A KR20180069452A (ko) 2016-12-15 2016-12-15 뉴럴 네트워크의 학습 방법 및 뉴럴 네트워크를 이용한 인식 방법, 및 그 장치
US15/691,916 US10902292B2 (en) 2016-12-15 2017-08-31 Method of training neural network, and recognition method and apparatus using neural network
US17/132,201 US11829858B2 (en) 2016-12-15 2020-12-23 Method of training neural network by selecting data to be used in a subsequent training process and identifying a cluster corresponding to a feature vector

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160171650A KR20180069452A (ko) 2016-12-15 2016-12-15 뉴럴 네트워크의 학습 방법 및 뉴럴 네트워크를 이용한 인식 방법, 및 그 장치

Publications (1)

Publication Number Publication Date
KR20180069452A true KR20180069452A (ko) 2018-06-25

Family

ID=62561647

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160171650A KR20180069452A (ko) 2016-12-15 2016-12-15 뉴럴 네트워크의 학습 방법 및 뉴럴 네트워크를 이용한 인식 방법, 및 그 장치

Country Status (2)

Country Link
US (2) US10902292B2 (ko)
KR (1) KR20180069452A (ko)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200068051A (ko) * 2018-11-26 2020-06-15 전자부품연구원 스파이킹 뉴럴 네트워크 장치 및 이를 포함하는 지능형 장치
KR20200075094A (ko) * 2018-12-10 2020-06-26 울산과학기술원 객체 분류기 생성 장치 및 방법
KR20200094815A (ko) * 2019-01-17 2020-08-10 조선대학교산학협력단 앙상블 네트워크 기반 데이터 학습 방법 및 개인 식별 방법
KR102156757B1 (ko) * 2019-09-27 2020-09-16 (주)데이터리퍼블릭 기계 학습을 이용한 신용 평가를 위한 시스템, 방법, 및 컴퓨터 프로그램
WO2020204219A1 (ko) * 2019-04-01 2020-10-08 엘지전자 주식회사 인공지능을 이용한 사물 인식 학습에서 아웃라이어를 분류하는 방법 및 분류장치와 로봇
KR102375579B1 (ko) * 2021-11-16 2022-03-17 주식회사 테스트웍스 사용자 디바이스 기반의 신경망 학습 데이터 가공 방법, 시스템 및 컴퓨터 프로그램
KR102379855B1 (ko) * 2021-05-31 2022-03-28 한국교통대학교산학협력단 객체 검출 모델 생성 방법 및 장치
KR102478630B1 (ko) * 2022-05-24 2022-12-16 정준 이미지 데이터의 포맷 변환 방법 및 장치
KR102489937B1 (ko) * 2021-12-24 2023-01-20 주식회사 정직한친구들 뉴럴 네트워크를 이용한 전자 제품 수리 시스템

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10467760B2 (en) * 2017-02-23 2019-11-05 Adobe Inc. Segmenting three-dimensional shapes into labeled component shapes
JP6970553B2 (ja) * 2017-08-17 2021-11-24 キヤノン株式会社 画像処理装置、画像処理方法
US11132427B2 (en) * 2017-11-20 2021-09-28 Ppip, Llc Systems and methods for biometric identity and authentication
US10575699B2 (en) 2018-01-05 2020-03-03 Irobot Corporation System for spot cleaning by a mobile robot
CN109102509B (zh) * 2018-07-03 2021-06-25 深圳先进技术研究院 分割模型训练方法、装置及计算机可读存储介质
KR101940029B1 (ko) 2018-07-11 2019-01-18 주식회사 마키나락스 어노말리 디텍션
CN109190720B (zh) * 2018-07-28 2021-08-06 深圳市商汤科技有限公司 智能体强化学习方法、装置、设备及介质
CN109460699B (zh) * 2018-09-03 2020-09-25 厦门瑞为信息技术有限公司 一种基于深度学习的驾驶员安全带佩戴识别方法
CN109242106B (zh) * 2018-09-07 2022-07-26 百度在线网络技术(北京)有限公司 样本处理方法、装置、设备和存储介质
US10834106B2 (en) 2018-10-03 2020-11-10 At&T Intellectual Property I, L.P. Network security event detection via normalized distance based clustering
JP7269778B2 (ja) * 2019-04-04 2023-05-09 富士フイルムヘルスケア株式会社 超音波撮像装置、および、画像処理装置
CN110298301B (zh) * 2019-04-17 2021-09-07 国网江苏省电力有限公司 一种组织人员心态预测方法
CN110084211B (zh) * 2019-04-30 2020-12-18 苏州大学 一种动作识别方法
CN110070070B (zh) * 2019-04-30 2021-03-02 苏州大学 一种动作识别方法
US11687841B2 (en) 2019-06-06 2023-06-27 Home Depot Product Authority, Llc Optimizing training data for image classification
US11308366B2 (en) * 2019-10-28 2022-04-19 MakinaRocks Co., Ltd. Method for determining optimal anomaly detection model for processing input data
US11593662B2 (en) * 2019-12-12 2023-02-28 Autobrains Technologies Ltd Unsupervised cluster generation
US20220180184A1 (en) * 2020-12-09 2022-06-09 Here Global B.V. Method, apparatus, and system for providing a location representation for machine learning tasks
CN113807399B (zh) * 2021-08-16 2024-01-09 华为技术有限公司 一种神经网络训练方法、检测方法以及装置
US20230101182A1 (en) * 2021-09-30 2023-03-30 Intuit Inc. Generating estimates by combining unsupervised and supervised machine learning

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5161204A (en) * 1990-06-04 1992-11-03 Neuristics, Inc. Apparatus for generating a feature matrix based on normalized out-class and in-class variation matrices
US5274714A (en) * 1990-06-04 1993-12-28 Neuristics, Inc. Method and apparatus for determining and organizing feature vectors for neural network recognition
EP0513652A2 (en) * 1991-05-10 1992-11-19 Siemens Aktiengesellschaft Method for modelling similarity function using neural network
US5548512A (en) 1994-10-04 1996-08-20 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Autonomous navigation apparatus with neural network for a mobile vehicle
US6556980B1 (en) 1998-08-28 2003-04-29 General Cyberation Group, Inc. Model-free adaptive control for industrial processes
US6546117B1 (en) * 1999-06-10 2003-04-08 University Of Washington Video object segmentation using active contour modelling with global relaxation
US20040042665A1 (en) * 2002-08-30 2004-03-04 Lockheed Martin Corporation Method and computer program product for automatically establishing a classifiction system architecture
US20040096107A1 (en) * 2002-11-14 2004-05-20 Lockheed Martin Corporation Method and computer program product for determining an efficient feature set and an optimal threshold confidence value for a pattern recogniton classifier
US7362892B2 (en) * 2003-07-02 2008-04-22 Lockheed Martin Corporation Self-optimizing classifier
JP2005059656A (ja) 2003-08-08 2005-03-10 Fuji Heavy Ind Ltd 飛行体の着陸制御装置および飛行体の着陸制御方法
JP4383154B2 (ja) 2003-12-24 2009-12-16 鐵夫 清水 自動販売機用固定金具
JP2005284833A (ja) 2004-03-30 2005-10-13 Kazuhiro Matsue パターン教示システム、それを用いたパターン識別装置、コンピュータプログラム及びパターン識別装置のデジタル論理回路設計方法
NZ567815A (en) * 2005-11-15 2011-08-26 Bernadette Garner Training neural networks including selecting an output to be trained and connecting an output neuron to input neurons
US7949186B2 (en) * 2006-03-15 2011-05-24 Massachusetts Institute Of Technology Pyramid match kernel and related techniques
US20080154816A1 (en) * 2006-10-31 2008-06-26 Motorola, Inc. Artificial neural network with adaptable infinite-logic nodes
US9015093B1 (en) 2010-10-26 2015-04-21 Michael Lamport Commons Intelligent control with hierarchical stacked neural networks
US8873813B2 (en) * 2012-09-17 2014-10-28 Z Advanced Computing, Inc. Application of Z-webs and Z-factors to analytics, search engine, learning, recognition, natural language, and other utilities
US9406017B2 (en) 2012-12-24 2016-08-02 Google Inc. System and method for addressing overfitting in a neural network
US9519858B2 (en) * 2013-02-10 2016-12-13 Microsoft Technology Licensing, Llc Feature-augmented neural networks and applications of same
TWI648609B (zh) * 2013-06-07 2019-01-21 美商科學設計股份有限公司 程序監控系統及方法
US9730643B2 (en) * 2013-10-17 2017-08-15 Siemens Healthcare Gmbh Method and system for anatomical object detection using marginal space deep neural networks
CN104049755B (zh) * 2014-06-18 2017-01-18 中国科学院自动化研究所 信息处理方法及装置
US20160055427A1 (en) * 2014-10-15 2016-02-25 Brighterion, Inc. Method for providing data science, artificial intelligence and machine learning as-a-service
US20160162760A1 (en) * 2014-12-08 2016-06-09 Canon Kabushiki Kaisha Devices, systems, and methods for learning and identifying visual features of materials
WO2017055412A1 (en) * 2015-09-30 2017-04-06 Siemens Healthcare Gmbh Method and system for classification of endoscopic images using deep decision networks
EP3179407B1 (en) * 2015-12-07 2022-07-13 Dassault Systèmes Recognition of a 3d modeled object from a 2d image
US20170270406A1 (en) * 2016-03-18 2017-09-21 Qualcomm Incorporated Cloud-based processing using local device provided sensor data and labels
US10909459B2 (en) * 2016-06-09 2021-02-02 Cognizant Technology Solutions U.S. Corporation Content embedding using deep metric learning algorithms
US10169647B2 (en) * 2016-07-27 2019-01-01 International Business Machines Corporation Inferring body position in a scan

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200068051A (ko) * 2018-11-26 2020-06-15 전자부품연구원 스파이킹 뉴럴 네트워크 장치 및 이를 포함하는 지능형 장치
KR20200075094A (ko) * 2018-12-10 2020-06-26 울산과학기술원 객체 분류기 생성 장치 및 방법
KR20200094815A (ko) * 2019-01-17 2020-08-10 조선대학교산학협력단 앙상블 네트워크 기반 데이터 학습 방법 및 개인 식별 방법
WO2020204219A1 (ko) * 2019-04-01 2020-10-08 엘지전자 주식회사 인공지능을 이용한 사물 인식 학습에서 아웃라이어를 분류하는 방법 및 분류장치와 로봇
US11526705B2 (en) 2019-04-01 2022-12-13 Lg Electronics Inc. Method of classificating outlier in object recognition and device and robot of classifying thereof
KR102156757B1 (ko) * 2019-09-27 2020-09-16 (주)데이터리퍼블릭 기계 학습을 이용한 신용 평가를 위한 시스템, 방법, 및 컴퓨터 프로그램
WO2021060593A1 (ko) * 2019-09-27 2021-04-01 (주)데이터리퍼블릭 기계 학습을 이용한 신용 평가를 위한 시스템, 방법, 및 컴퓨터 프로그램
KR102379855B1 (ko) * 2021-05-31 2022-03-28 한국교통대학교산학협력단 객체 검출 모델 생성 방법 및 장치
KR102375579B1 (ko) * 2021-11-16 2022-03-17 주식회사 테스트웍스 사용자 디바이스 기반의 신경망 학습 데이터 가공 방법, 시스템 및 컴퓨터 프로그램
KR102489937B1 (ko) * 2021-12-24 2023-01-20 주식회사 정직한친구들 뉴럴 네트워크를 이용한 전자 제품 수리 시스템
KR102478630B1 (ko) * 2022-05-24 2022-12-16 정준 이미지 데이터의 포맷 변환 방법 및 장치
KR102543025B1 (ko) * 2022-05-24 2023-06-13 정준 이미지 데이터의 포맷 변환 방법 및 장치

Also Published As

Publication number Publication date
US20180174001A1 (en) 2018-06-21
US11829858B2 (en) 2023-11-28
US10902292B2 (en) 2021-01-26
US20210110212A1 (en) 2021-04-15

Similar Documents

Publication Publication Date Title
KR20180069452A (ko) 뉴럴 네트워크의 학습 방법 및 뉴럴 네트워크를 이용한 인식 방법, 및 그 장치
KR102564857B1 (ko) 데이터 인식 및 트레이닝 장치 및 방법
KR102400017B1 (ko) 객체를 식별하는 방법 및 디바이스
US11568245B2 (en) Apparatus related to metric-learning-based data classification and method thereof
KR102486699B1 (ko) 영상 인식 방법, 영상 검증 방법, 장치, 및 영상 인식 및 검증에 대한 학습 방법 및 장치
KR102410820B1 (ko) 뉴럴 네트워크를 이용한 인식 방법 및 장치 및 상기 뉴럴 네트워크를 트레이닝하는 방법 및 장치
BR112017023028B1 (pt) Especificidade de filtro como critério de treinamento para redes neurais
KR20190013011A (ko) 교사 모델로부터 학생 모델을 트레이닝하는데 사용되는 학습 데이터를 생성하는 장치 및 방법
CN105765609B (zh) 使用有向无环图的存储器促进
KR102585216B1 (ko) 영상 인식 방법 및 그 장치
KR20190018276A (ko) 모델을 학습하는 방법 및 장치 및 상기 뉴럴 네트워크를 이용한 인식 방법 및 장치
KR20160061856A (ko) 객체 인식 방법 및 장치, 및 인식기 학습 방법 및 장치
US9189750B1 (en) Methods and systems for sequential feature selection based on significance testing
CN110889318A (zh) 利用cnn的车道检测方法和装置
JP7257587B2 (ja) 複数のデータセットからの訓練による物体検出
US20230386167A1 (en) System for detection and management of uncertainty in perception systems
KR102339727B1 (ko) 신뢰도 추정을 통한 글로벌 및 로컬 검색을 기반으로 한 견고한 시각적 물체 추적
KR102570070B1 (ko) 일반화된 사용자 모델을 이용한 사용자 인증 방법 및 장치
KR20160054783A (ko) 영상의 관심영역으로부터 랜드마크를 결정하는 장치 및 방법
CN113204988A (zh) 小样本视点估计
JPWO2018207334A1 (ja) 画像認識装置、画像認識方法および画像認識プログラム
KR102490369B1 (ko) 그래프 임베딩과 인간참여 방식을 통한 악성코드 제작그룹 식별 방법
US20200410709A1 (en) Location determination apparatus, location determination method and computer program
KR102210404B1 (ko) 위치 정보 추출 장치 및 방법
US20210182545A1 (en) Apparatus and method for controlling electronic device

Legal Events

Date Code Title Description
A201 Request for examination