KR101590896B1 - 일반화 성능을 갖는 심화학습 장치 및 방법, 그 방법을 수행하기 위한 기록 매체 및 장치 - Google Patents

일반화 성능을 갖는 심화학습 장치 및 방법, 그 방법을 수행하기 위한 기록 매체 및 장치 Download PDF

Info

Publication number
KR101590896B1
KR101590896B1 KR1020140166574A KR20140166574A KR101590896B1 KR 101590896 B1 KR101590896 B1 KR 101590896B1 KR 1020140166574 A KR1020140166574 A KR 1020140166574A KR 20140166574 A KR20140166574 A KR 20140166574A KR 101590896 B1 KR101590896 B1 KR 101590896B1
Authority
KR
South Korea
Prior art keywords
data
learning
uncertainty
classifier
svm
Prior art date
Application number
KR1020140166574A
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 KR1020140166574A priority Critical patent/KR101590896B1/ko
Application granted granted Critical
Publication of KR101590896B1 publication Critical patent/KR101590896B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Image Analysis (AREA)

Abstract

일반화 성능을 갖는 심화학습 장치는, 다수의 특징 추출층을 포함하고, 상기 각 특징 추출층은, 입력 데이터에 대해 학습하기 위해 데이터 분류 별로 형성된 적어도 하나의 학습부; 상기 학습부로부터 출력되는 데이터의 불확실성 값을 계산하는 불확실성 도출부; 상기 불확실성 값이 임계치 미만인 출력 데이터에 대해 분류 결과를 도출하는 출력부; 및 상기 불확실성 값이 임계치 이상인 출력 데이터를 다음의 특징 추출층으로 전달하는 전달부를 포함한다. 이에 따라, 더욱 풍부한 특징을 추출할 수 있으며, 학습 데이터에 포함되지 않은 데이터들에 대한 최대한의 일반화 성능을 확보할 수 있다.

Description

일반화 성능을 갖는 심화학습 장치 및 방법, 그 방법을 수행하기 위한 기록 매체 및 장치{DEVICE AND METHOD FOR DEEP LEARNING STRUCTURE FOR HIGH GENERALIZATION PERFORMANCE, RECORDING MEDIUM FOR PERFORMING THE METHOD}
본 발명은 일반화 성능을 갖는 심화학습 장치 및 방법, 그 방법을 수행하기 위한 기록 매체에 관한 것으로서, 더욱 상세하게는 불확실성을 기반으로 최적의 심화학습 구조를 구성하고 학습하는 장치 및 방법, 그 방법을 수행하기 위한 기록 매체 및 장치에 관한 것이다.
최근, 기계 학습은 많은 기업들이 실제 데이터 분석을 위해 적용하고 있으며 그 중 심화학습 방법은 가장 성공적으로 여겨지는 방법이다. 하지만, 심화 구조를 가짐에 따라 필연적으로 늘어나는 파라미터의 숫자는 기계 학습의 실제 성능을 나타내는 일반화 성능에 좋지 않은 영향을 미친다.
학습 데이터에 대한 성능을 극대화시키는 경우 학습 데이터 구성 시에 획득하지 못한 데이터들에 대해서는 열악한 성능을 가지기 때문이다. 이러한 문제로 인해 기업들이 심화 학습 기법을 현장에 바로 사용하는 데에는 어려움을 겪고 있다.
KR10-1456554B1
Cortes, C., & Vapnik, V. (1995). Support-vector networks. Machine learning, 20(3), 273-297. Kim, H.-G., Kil, R. M., & Lee, S.-Y. (2011). Uncertainty Measure for Selective Sampling Based on Class Probability Output Networks. Paper presented at the Neural Information Processing. Kim, S., Kavuri, S., & Lee, M. (2013). Deep Network with Support Vector Machines. Paper presented at the Neural Information Processing. Weston, J., & Watkins, C. (1998). Multi-class support vector machines. 장재영, 김한준(2006), 나이브베이즈 문서분류시스템을 위한 선택적샘플링 기반 EM 가속 알고리즘, 정보처리학회논문지, pp.369-376
이에, 본 발명의 기술적 과제는 이러한 점에서 착안된 것으로 본 발명의 목적은 입력 데이터의 분류의 정확도를 향상시키기 위한 일반화 성능을 갖는 심화학습 장치를 제공하는 것이다.
본 발명의 다른 목적은 입력 데이터의 분류의 정확도를 향상시키기 위한 일반화 성능을 갖는 심화학습 방법을 제공하는 것이다.
본 발명의 또 다른 목적은 상기 일반화 성능을 갖는 심화학습 방법을 수행하기 위한 컴퓨터 프로그램이 기록된 기록 매체를 제공하는 것이다.
상기한 본 발명의 목적을 실현하기 위한 일 실시예에 따른 일반화 성능을 갖는 심화학습 장치는, 다수의 특징 추출층을 포함하고, 상기 각 특징 추출층은, 입력 데이터에 대해 학습하기 위해 데이터 분류 별로 형성된 적어도 하나의 학습부; 상기 학습부로부터 출력되는 데이터의 불확실성 값을 계산하는 불확실성 도출부; 상기 불확실성 값이 임계치 미만인 출력 데이터에 대해 분류 결과를 도출하는 출력부; 및 상기 불확실성 값이 임계치 이상인 출력 데이터를 다음의 특징 추출층으로 전달하는 전달부를 포함한다.
본 발명의 실시예에서, 상기 학습부는, 데이터 분류 별로 형성된 서포트 벡터 머신(Support Vector Machine, 이하 SVM)을 포함할 수 있다.
본 발명의 실시예에서, 상기 SVM는 클래스간 최대 거리를 유지하는 최대 마진 분류기(Maximal margin classifier)일 수 있다.
본 발명의 실시예에서, 상기 학습부는, 상기 SVM에 대응하여 각각 형성되는 클래스 확률 출력망(Class Probability Output Network, 이하 CPON)을 더 포함할 수 있다.
본 발명의 실시예에서, 상기 불확실성 도출부는 상기 CPON의 출력 데이터에 대한 불확실성 값을 계산할 수 있다.
본 발명의 실시예에서, 상기 학습부는, 학습 데이터에 대한 분류기의 불확실성을 측정하여, 가장 정확도가 높은 분류기를 선택할 수 있다.
본 발명의 실시예에서, 상기 분류기는 파라미터 세트들로 학습한 학습 데이터에 대한 불확실성을 측정하여 선택되는, CPON를 포함하는 SVM으로 구성될 수 있다.
본 발명의 실시예에서, 상기 일반화 성능을 갖는 심화학습 장치는 입력 데이터가 시계열 데이터인 경우, 데이터를 재배열 하는 전처리 과정을 수행하는 전처리부를 더 포함할 수 있다.
상기한 본 발명의 다른 목적을 실현하기 위한 일 실시예에 따른 다수의 특징 추출층을 포함하는 심화학습 장치를 이용하는 일반화 성능을 갖는 심화학습 방법은, 입력 데이터에 대해 분류 별로 학습하는 단계; 상기 학습되어 출력되는 데이터의 불확실성 값을 계산하는 단계; 상기 불확실성 값이 임계치 미만인 출력 데이터에 대해 분류 결과를 도출하는 단계; 및 상기 불확실성 값이 임계치 이상인 출력 데이터를 다음의 특징 추출층으로 전달하는 단계를 포함한다.
본 발명의 실시예에서, 상기 입력 데이터에 대해 분류 별로 학습하는 단계는, 데이터 분류 별로 형성된 서포트 벡터 머신(Support Vector Machine, 이하 SVM)을 이용할 수 있다.
본 발명의 실시예에서, 상기 SVM는 클래스간 최대 거리를 유지하는 최대 마진 분류기(Maximal margin classifier)일 수 있다.
본 발명의 실시예에서, 상기 입력 데이터에 대해 분류 별로 학습하는 단계는, 상기 SVM에 대응하여 각각 형성되는 클래스 확률 출력망(Class Probability Output Network, 이하 CPON)을 더 이용할 수 있다.
본 발명의 실시예에서, 상기 학습되어 출력되는 데이터의 불확실성 값을 계산하는 단계는, 상기 CPON의 출력 데이터에 대한 불확실성 값을 계산할 수 있다.
본 발명의 실시예에서, 상기 입력 데이터에 대해 분류 별로 학습하는 단계는, 학습 데이터에 대한 분류기의 불확실성을 측정하여, 가장 정확도가 높은 분류기를 선택하는 단계를 포함할 수 있다.
본 발명의 실시예에서, 상기 가장 정확도가 높은 분류기를 선택하는 단계는, 파라미터 세트들로 분류기를 학습하는 단계; 학습 데이터에 대한 불확실성을 측정하는 단계; 및 상기 불확실성 측정 결과, 가장 정확도가 높은 CPON를 포함하는 SVM을 선택하여 분류기를 구성하는 단계를 포함할 수 있다.
본 발명의 실시예에서, 상기 일반화 성능을 갖는 심화학습 방법은 입력 데이터가 시계열 데이터인 경우, 데이터를 재배열 하는 전처리 단계를 더 포함할 수 있다.
상기한 본 발명의 또 다른 목적을 실현하기 위한 일 실시예에 따른 컴퓨터로 판독 가능한 저장 매체에는, 일반화 성능을 갖는 심화학습 방법을 수행하기 위한 컴퓨터 프로그램이 기록되어 있다.
이와 같은 일반화 성능을 갖는 심화학습 장치 및 방법에 따르면, 다중층의 특징 추출층을 이용하여 각 층에서 확실하게 구별되는 데이터와 불확실하게 구별되는 데이터를 정의하여 구별하고, 확실한 데이터는 현재 특징 추출층에서 결과를 도출하고, 불확실한 데이터는 다음 특징 추출층으로 전달하여 더욱 풍부한 특징을 추출할 수 있으며 데이터를 더욱 정확하게 구별할 수 있다. 또한, 학습 데이터를 기반으로 학습한 분류기의 데이터에 대한 불확실성을 측정하여 불확실성이 최소화 되는 학습 및 판단이 가능하도록 한다. 이로써, 데이터 분류의 정확도를 높이고, 현재 시점에서 획득하지 못한 미래 데이터에 대한 판단을 내리는데 유용하게 활용할 수 있다.
도 1은 본 발명의 일 실시예에 따른 일반화 성능을 갖는 심화학습 장치의 구성도이다.
도 2는 도 1의 장치의 각 특징 추출층에 대한 블록도이다.
도 3은 도 1의 장치의 각 특징 추출층에서 데이터 흐름을 보여주는 개념도이다.
도 4는 도 1의 장치에서 수행되는 심화학습의 구조를 보여주는 도면이다.
도 5는 본 발명에 따른 당뇨병 데이터 세트에 대한 불확실성 측정을 보여주는 그래프이다.
도 6은 본 발명에 따른 위스콘신 유방암 데이터 세트에 대한 출력값을 보여주는 그래프이다.
도 7은 본 발명에 따른 PIMA 인디언 당뇨병 데이터 세트에 대한 출력값을 보여주는 그래프이다.
도 8은 본 발명의 일 실시예에 따른 일반화 성능을 갖는 심화학습 방법의 흐름도이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
이하, 도면들을 참조하여 본 발명의 바람직한 실시예들을 보다 상세하게 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 일반화 성능을 갖는 심화학습 장치의 구성도이다. 도 2는 도 1의 장치의 각 특징 추출층에 대한 블록도이다. 도 3은 도 1의 장치의 각 특징 추출층에서 데이터 흐름을 보여주는 개념도이다.
본 발명은 데이터에 대한 분류기의 불확실성을 기반으로 최적의 심화 학습 구조를 구성하고 학습할 수 있도록 하는 방법으로서, 학습 데이터에 포함되지 않은 데이터들에 대한 최대한의 일반화 성능을 확보할 수 있다.
이를 위해, 일반화 성능을 갖는 심화학습 장치(1, 이하 장치)는 다중층(multiple layer) 구조의 다수의 특징 추출층(10, 20, 30, ... , 50)을 포함한다. 입력되는 데이터는 불확실성 값을 기반으로 판단에 최적인 특징 추출층까지 도달한다.
본 발명은 다중층의 특징 추출층 구조를 이용하여, 각 층에서 확실하게 구별되는 데이터와 불확실하게 구별되는 데이터를 정의하여 구별하고, 확실한 데이터는 현재 특징 추출층에서 결과를 도출하고, 불확실한 데이터는 다음 특징 추출층으로 전달한다. 이로써, 더욱 풍부한 특징을 추출할 수 있으며 데이터를 더욱 정확하게 구별할 수 있다.
상기 장치(1)는 별도의 단말이거나 또는 단말의 일부 모듈일 수 있다. 상기 장치(1)는 고정되거나 이동성을 가질 수 있으며, 디바이스(device), 기구(apparatus), 단말(terminal), UE(user equipment), MS(mobile station), 무선기기(wireless device), 휴대기기(handheld device) 등 다른 용어로 불릴 수 있다.
상기 장치(1)는 운영체제(Operation System; OS), 즉 시스템을 기반으로 다양한 소프트웨어를 실행하거나 제작할 수 있다. 상기 운영체제는 소프트웨어가 장치의 하드웨어를 사용할 수 있도록 하기 위한 시스템 프로그램으로서, 안드로이드 OS, iOS, 윈도우 모바일 OS, 바다 OS, 심비안 OS, 블랙베리 OS 등 모바일 컴퓨터 운영체제 및 윈도우 계열, 리눅스 계열, 유닉스 계열, MAC, AIX, HP-UX 등 컴퓨터 운영체제를 모두 포함할 수 있다.
제1 내지 제n 특징 추출층(10, 20, 30, ... , 50)은 하나의 모듈로 통합되어 형성되거나 각각 별도의 모듈로 형성될 수 있다. 제1 내지 제n 특징 추출층(10, 20, 30, ... , 50)은 각각 실질적으로 동일한 구성을 가지며 동일한 기능을 수행한다. 따라서, 이하에서는 제1 특징 추출층(10)을 특징 추출층의 대표로 설명한다.
도 2 및 도 3을 참조하면, 각 특징 추출층(10)은 복수개로 형성된 학습부(100), 불확실성 도출부(150), 출력부(170) 및 전달부(190)를 포함한다.
본 발명에서 각 특징 추출층(10)은 일반화 성능을 갖는 심화학습을 수행하기 위한 소프트웨어(애플리케이션)가 설치되어 실행될 수 있으며, 상기 학습부(100), 상기 불확실성 도출부(150), 상기 출력부(170) 및 상기 전달부(190)의 구성은 상기 특징 추출층(10)에서 실행되는 상기 일반화 성능을 갖는 심화학습 수행을 위한 소프트웨어에 의해 제어될 수 있다.
상기 학습부(100)는 입력 데이터에 대해 학습하기 위해 분류 별로 형성된다. 상기 학습부(100)의 학습 법칙으로는 자율학습(unsupervised learning)과 지도학습(supervised learning)이 모두 포함된다. 다만, 상기 입력 데이터가 음성과 같은 시계열 데이터인 경우에는 데이터를 재배열 하는 전처리 과정을 수행할 수 있다.
일 실시예로, 상기 학습부(100)는 데이터 분류 별로 형성된 복수개의 서포트 벡터 머신(Support Vector Machine, 이하 SVM, 110) 및 상기 SVM에 대응하여 각각 형성되는 클래스 확률 출력망(Class Probability Output Network, 이하 CPON, 130)으로 구성될 수 있다.
이 경우, 상기 학습부(100)는 SVM(110)를 기본 유닛으로 사용함으로써, 학습 데이터에서 클래스 간 최대 거리를 유지하는 최대 마진 분류기(Maximal margin classifier)를 사용하여 특징 추출층의 개별 층 수준에서도 일반화 성능을 최대화 할 수 있다. 또한, SVM의 사용은 개별층 수준에서도 일반화 성능을 최대화 할 수 있다.
예를 들어, k 차원의 입력 벡터가 들어올 때, k 개의 SVM 및 각 SVM에 대응하는 k 개의 CPON을 포함할 수 있다. 또는, m 차원의 입력벡터를 k 차원의 벡터로 출력할 때, k 개의 SVM 및 각 SVM에 대응하는 k 개의 CPON을 포함할 수 있다(도 4 참조).
도 4를 참조하면, 각 층은 k개의 SVM 및 이에 각각 대응하는 CPON로 구성되어 있으며, CPON 세트에서 해당 층의 분류 결과에 대한 불확실성을 판단하여 충분히 신뢰할만한 결과인 경우 바로 분류 결과를 출력하며 그렇지 않을 경우 다음 층으로 전달하여 해당 특징 초평면 상에서 분류를 다시 시도하도록 한다. 이러한 불확실성 기반 접근을 통하여 데이터를 최적으로 분류하기 위해 필요한 단계의 수를 자동으로 결정할 수 있다.
SVM은 지도 학습에서 사용되는 방법으로, 주어진 자료에 대해서 그 자료들을 분리하는 초평면(hyperplane) 중에서, 자료들과 가장 거리가 먼 초평면을 찾는 방법이다. 이 기법은 비선형 분류에서도 커널 트릭을 사용하여 적용할 수 있다. SVM의 개념적 특징을 간단히 설명하면, 다음과 같은 학습 데이터 집합 D가 주어졌다고 생각해보자.
Figure 112014114698334-pat00001
ci는 1이나 -1의 값을 갖는 변수로 Xi가 속한 클래스를 의미하며, Xi는 p차원 실수벡터이다. 신경망을 포함하여 많은 학습 알고리즘들은, 이러한 학습 데이터가 주어졌을 때, ci=1인 점들과 ci=-1인 점들을 분리하는 초평면을 찾아내는 것이 공통의 목표인데, SVM이 다른 알고리즘과 차별화되는 특징은 단지 점들을 분리하는 초평면을 찾는 것으로 끝나는 것이 아니라, 점들을 분리할 수 있는 수많은 후보평면들 가운데 마진이 최대가 되는(maximum-margin) 초평면을 찾는다는 것이다.
여기서, 마진이란 초평면으로부터 각 점들에 이르는 거리의 최소값을 말하는데, 이 마진을 최대로 하면서 점들을 두 클래스로 분류하려면, 결국 클래스 1에 속하는 점들과의 거리 중 최소값과 클래스 -1에 속하는 점들과의 거리 중 최소값이 같도록 초평면이 위치해야 하며, 이러한 초평면을 최대 마진 초평면(maximum-margin hyperplane)이라고 한다. 결론적으로, SVM은 두 클래스에 속해있는 점들을 분류하는 수많은 초평면들 중, 최대한 두 클래스의 점들과 거리를 유지하는 것을 찾아내는 알고리즘이라 할 수 있다.
상기 불확실성 도출부(150)는 상기 학습부(100)로부터 출력되는 데이터의 불확실성 값을 계산할 수 있다. 특히, 상기 학습부(100)가 복수개의 SVM(110) 및 CPON(130)를 포함하는 경우, 상기 CPON(130)의 불확실성을 측정한다.
상기 불확실성 도출부(150)에서 불확실성을 측정하기 위해 베타 분포 기법을 사용한다. 그리고 상기 베타 분포 기법은 측정된 자료에 대한 선험적 정보를 확률분포로 활용하는 것으로, 하향식(top-down) 주의집중(bottom-up attention) 기법의 한 형태이다. 즉, 측정자료에 의한 상향식 정보와 선험적 지식에 의한 하향식 정보의 융합 모델이다.
여기서, 상기와 같은 베타 분포 함수를 이용한 신뢰도 예측을 통해 자료의 불확실정을 측정할 수 있으며, 이러한 학습자료의 클래스 정보가 불확실한 자료인지를 판단하는 것은 베타 분포 함수로부터의 조건부 확률을 이용함으로써 알 수 있다.
이를 위해 2개 클래스(class)의 인식을 위한 SVM의 출력값을 베타 분포 함수로 모델링하게 된다. 그리고, 상기 베타 함수는 단일한 극대값을 갖는 함수의 일반적인 모델로서 2진 함수의 연속적 분포의 표현에 적합하다. 이러한 모델링을 이용하여 추정된 통계적 변수들에 대한 확신구간이 사용될 수 있다. 분류를 위한 이 확신구간 레벨이 불확실성 척도가 되며, 이와 같은 방법으로 얼마나 분류기의 결과가 확실한지를 나타내 줄 수 있다.
본 발명에서, 능동학습에 적용되는 베타 분포 함수는 아래와 같은 수학식 1로 정의 된다.
[수학식 1]
Figure 112014114698334-pat00002
여기서, a, b는 베타분포의 확률매개변수를 의미하며, y는 정규화된 SVM 분류기의 출력을 의미한다. B(a, b)의 의미는 위의 fY(y)이 확률밀도함수(pdf)값을 의미하므로 모두 더했을 때, 1이 되기 위해 쓰이는 값이다. B(a, b)는 베타함수를 다음의 수학식 2와 같이 정의한다.
[수학식 2]
Figure 112014114698334-pat00003
이때, a, b값은 SVM 출력의 평균값 및 분산을 이용하여, 추정할 수 있다. SVM과 CPON의 관계에 있어서, CPON의 학습은 SVM 학습 이후에 이루어질 수 있다. 따라서, 상기와 같이 구해진 a, b 값을 이용하여 각각의 자료에 대한 베타함수의 누적분포함수(clmulative distribution function)로 모델링 된 조건부 확률을 구할 수 있게 되며, 그 식은 아래 수학식 2와 같다.
[수학식 3]
Figure 112014114698334-pat00004
한편, 상기와 같이 주어진 자료에 대한 조건부 확률을 추정하여 분류하는 방법은 분류기의 성능 향상에 있어 효과적인 방법이다. 그러나, 실제로는 학습할 자료의 개수가 적은 경우 추정된 조건부 확률(앞서의 베타 분포 함수 모델링)은 부정확할 수 있으며, 또한 불확실성을 내포하고 있을 수 있다.
이러한 경우 불확실성 측정하는 것은 더 나은 분류 결과를 만들어 낼 수 있으며, 더 나아가 능동학습에 사용되는 선택적 추출에 도움을 줄 수 있다. 불확실성 측정은 분류기의 출력인 추정된 조건부 확률과 가설검증을 이용해 구할 수 있다.
먼저 각 확신 구간의 크기는 클래스의 자료 수(
Figure 112014114698334-pat00005
)와 관계가 있는데, 다음과 같이 수학식 4로 주어질 수 있다. 여기서 확률 함수는 Kolmogorov-Smirnov 분포 함수를 이용하며, 이는 가설 검증에서 많이 쓰이는 분포 함수이다.
[수학식 4]
Figure 112014114698334-pat00006
여기서,
Figure 112014114698334-pat00007
이때,
Figure 112014114698334-pat00008
는 신뢰도
Figure 112014114698334-pat00009
에서
Figure 112014114698334-pat00010
를 의미하며,
Figure 112014114698334-pat00011
Figure 112014114698334-pat00012
를 만족하는 값이며, P는 일반적인 확률밀도함수(pdf)를 나타내며, 여기서 H(t)는 Kolmogorov-Smirnov 분포 함수이다.
Figure 112014114698334-pat00013
이와 같이 얻어지는 확신 구간 크기를 이용하여 각 조건부 한 방향 확신 구간은 하기의 수학식 5와 수학식 6과 같이 주어진다.
[수학식 5]
Figure 112014114698334-pat00014
[수학식 6]
Figure 112014114698334-pat00015
여기서, 상기 (
Figure 112014114698334-pat00016
)와 (
Figure 112014114698334-pat00017
)는 추정된 베타 확률 함수 값을 다시 균등 분포로 추정한 값이며, 이는 계산 량을 줄여줄 수 있는 좀 더 간단한 가설검증 방법을 사용하기 위함이다.
이렇게 주어지는 2개의 확신구간을 분리하는 값을 찾으면 이것이 바로 불확실성을 나타내는 척도로 쓰일 수 있는데, 이는 수학식 7과 같이 구해진다.
[수학식 7]
Figure 112014114698334-pat00018
이때, 수학식 5 내지 수학식 7은 패턴이 (+)클래스(혹은 (-)클래스)에 속할 확률이 (-)클래스(혹은 (+)클래스)에 속할 확률이
Figure 112014114698334-pat00019
가 되기 위한 조건으로, y가 (+)클래스에 속할 경우, 다음의 확률은 1-
Figure 112014114698334-pat00020
로 결정(
Figure 112014114698334-pat00021
)된다.
또한, n+는 (+)클래스의 패턴 개수, n-는 (-)클래스의 패턴 개수를 의미하며,
Figure 112014114698334-pat00022
,
Figure 112014114698334-pat00023
Figure 112014114698334-pat00024
를 이용하여, 구하는 Kolmogorov-Smirnov 분포 함수에서의 한 방향 확신구간의 크기를 의미한다.
상기 수학식 7과 같이 구해진
Figure 112014114698334-pat00025
를 이용하여 불확실성 값
Figure 112014114698334-pat00026
를 다음 수학식 8과 같이 결정할 수 있다.
[수학식 8]
Figure 112014114698334-pat00027
이러한 결과 불확실성 값
Figure 112014114698334-pat00028
은 누적분포함수 값을 (+)클래스 및 (-)클래스로 어떻게 나눌지 나타낸다.
Figure 112014114698334-pat00029
는 0과 0.5 사이의 값으로 나타내 질 수 있으며, 그 값이 0에 가까울수록 자료의 클래스 정보가 확실하며, 0.5에 가까울수록 어떤 클래스에 속할지에 대한 정보가 불확실하다고 간주 된다. 예를 들어,
Figure 112014114698334-pat00030
가 0.1일 때, 1-0.1/2(=0.95)의 확률을 가지므로, 다른 누적분포함수 값 이상의 누적분포함수 값을 갖는다. 따라서, 분류 결정은 적합하다고 볼 수 있다.
상기 CPON(130)의 출력 데이터의 상기 불확실성 값이 임계치 미만인 경우, 즉, 출력 데이터가 확실하다고 판단된 데이터로서, 상기 출력부(170)는 출력 데이터에 대해 분류기를 이용하여 분류 결과를 도출한다.
또한, 상기 분류기는 학습 단계에서 구성한 최적의 분류기일 수 있다. 이를 위해, 학습 단계에서 많은 파라미터로 학습한 분류기들의 학습 데이터에 대한 불확실성 측도를 평가하고, 그 중 가장 높은 일반화 성능을 가지는 분류기를 선택할 수 있다.
구체적으로, SVM의 파라미터 풀(pool)을 형성하고, 풀 안의 파라미터 세트에 대해 주어진 학습 데이터를 이용하여 학습한다. 상기 SVM의 학습으로 대응하는 CPON을 구성하고, (+)클래스 및 (-)클래스의 분포 출력으로부터 해당 클래스에 속할 확률 F+ 값을 구한다. 학습된 모델 중 최대 F+ 값을 가지는 CPON 및 SVM이 선택된다.
반면, 상기 CPON(130)의 출력 데이터의 상기 불확실성 값이 임계치 이상인 경우, 출력 데이터가 불확실하다고 판단된 데이터로서, 상기 전달부(190)는 상기 출력 데이터를 다음의 특징 추출층(20)으로 전달한다. 상기 출력 데이터는 불확실성을 기반으로 판단에 최적인 층까지 도달하고, 최종 출력은 도달한 층에서 최대값을 가지는 분류기의 출력이 된다. 이로써, 일반화 성능을 최대화할 수 있다.
도 5는 본 발명에 따른 당뇨병 데이터 세트에 대한 불확실성 측정을 보여주는 그래프이다.
도 5를 참조하면, 첫번째 CPON를 갖는 SVM로부터 불확정 데이터의 구간에서 약 0.57의 가우시안 커브가 나타난다. 두번째 CPON를 갖는 SVM은 첫번째 SVM 출력 구간에서의 불확정 데이터에 집중된다. 이는 0.54 와 0.62사이의 구간이었던 첫번째 SVM 진행 후에 불확정 데이터에 대해 집중적으로 분석하게 된다. 따라서, 이전 단계에서 인식한 불확정 데이터가 심화 단계로 진행하는 것을 보여준다.
도 6 및 도 7은 각각 위스콘신 유방암 및 PIMA 인디언 당뇨병 세트에 대한 두번째 및 세번째 층의 출력값에 대한 산점도이다. 이러한 산점도에서, 수평 및 수직 축 이진 분류의 Y1 및 Y2의 출력을 나타낸다. x표시와 o표시는 각각 클래스 1과 2의 출력을 나타낸다. 이들 도면에 도시 된 바와 같이, 심화층은 두 예에 대한 새로운 특징의 구별 분포를 더 잘 나타내고 있다.
도 8은 본 발명의 일 실시예에 따른 일반화 성능을 갖는 심화학습 방법의 흐름도이다.
본 실시예에 따른 일반화 성능을 갖는 심화학습 방법은, 도 1 및 도 2의 장치(1) 및 다중층 구조의 특징 추출층(10)과 실질적으로 동일한 구성에서 진행될 수 있다. 따라서, 도 1 및 도 2의 장치(1) 및 특징 추출층(10)과 동일한 구성요소는 동일한 도면부호를 부여하고, 반복되는 설명은 생략한다. 또한, 본 실시예에 따른 일반화 성능을 갖는 심화학습 방법은 일반화 성능을 갖는 심화학습을 수행하기 위한 소프트웨어(애플리케이션)에 의해 실행될 수 있다.
도 8을 참조하면, 본 실시예에 따른 일반화 성능을 갖는 심화학습 방법은, 입력 데이터에 대해 분류 별로 학습한다(단계 S10). 상기 입력 데이터가 음성과 같은 시계열 데이터인 경우, 데이터를 재배열 하는 전처리 과정을 더 수행할 수 있다.
상기 입력 데이터에 대해 분류 별로 학습하는 단계(단계 S10)는, 데이터 분류 별로 형성된 서포트 벡터 머신(Support Vector Machine, 이하 SVM) 및 상기 SVM에 대응하여 각각 형성되는 클래스 확률 출력망(Class Probability Output Network, 이하 CPON)을 이용할 수 있다. 상기 SVM는 클래스간 최대 거리를 유지하는 최대 마진 분류기(Maximal margin classifier)일 수 있다.
또한, 심화 학습 구조를 생성하기 위해, 학습 데이터에 대한 분류기의 불확실성을 측정하여, 가장 정확도가 높은 분류기를 선택할 수 있다. 구체적으로, 파라미터 세트들로 분류기를 학습하고, 학습 데이터에 대한 불확실성을 측정하여, 불확실성 측정 결과, 가장 정확도가 높은 CPON를 포함하는 SVM을 선택하여 분류기를 구성할 수 있다.
단계 S10에서 학습되어 출력되는 데이터의 불확실성 값을 계산한다(단계 S30). 즉, 상기 CPON의 출력 데이터에 대한 불확실성 값을 계산할 수 있다.
단계 S30에서 불확실성의 계산 결과, 상기 불확실성 값이 임계치 미만인 출력 데이터에 대해서는 분류 결과를 도출한다(단계 S50). 반면, 상기 불확실성 값이 임계치 이상인 출력 데이터에 대해서는 다음의 특징 추출층으로 전달한다(단계 S70).
이와 같이 본 발명은, 다중층의 특징 추출층을 이용하여 각 층에서 확실하게 구별되는 데이터와 불확실하게 구별되는 데이터를 정의하여 구별하고, 확실한 데이터는 현재 특징 추출층에서 결과를 도출하고, 불확실한 데이터는 다음 특징 추출층으로 전달하여 더욱 풍부한 특징을 추출할 수 있으며 데이터를 더욱 정확하게 구별할 수 있다.
또한, 학습 데이터를 기반으로 학습한 분류기의 데이터에 대한 불확실성을 측정하여 불확실성이 최소화 되는 학습 및 판단이 가능하도록 한다. 이로써, 데이터 분류의 정확도를 높이고, 현재 시점에서 획득하지 못한 미래 데이터에 대한 판단을 내리는데 유용하게 활용할 수 있다.
이와 같은, 일반화 성능을 갖는 심화학습 방법은 애플리케이션으로 구현되거나 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.
상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거니와 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.
프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서는 실시예들을 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
본 발명은 일반화 성능을 높일 수 있는 구조 및 판단 방법을 주어진 데이터의 불확실성 측도를 기반으로 분석하여 최적의 학습 및 판단이 가능하도록 함으로써, 많은 기업들이 현재 시점에서 소유하지 않은 데이터에 대한 미래 데이터에 대한 판단을 내리는 데에 많은 도움을 준다. 이는, 기계 학습을 통하여 분류를 수행하는 모든 시스템에 적용될 수 있으며, 나아가 로봇 분야, IT 분야, 데이터 분석 분야, 기계 학습 분야, 심화 학습 분야에서 다양하게 활용될 수 있다.
1: 일반화 성능을 갖는 심화학습 장치 10, 20, 30, 50: 특징 추출층
100: 학습부 110: SVM
130: CPON 150: 불확실성 도출부
170: 출력부 190: 전달부

Claims (17)

  1. 다수의 특징 추출층을 포함하는 일반화 성능을 갖는 심화학습 장치에 있어서, 상기 각 특징 추출층은,
    입력 데이터에 대해 학습하기 위해 데이터 분류 별로 형성된 분류기를 포함하는 적어도 하나의 학습부;
    상기 학습부로부터 출력되는 데이터의 불확실성 값을 계산하는 불확실성 도출부;
    상기 불확실성 값이 임계치 미만인 출력 데이터에 대해 분류 결과를 도출하는 출력부; 및
    상기 불확실성 값이 임계치 이상인 출력 데이터를 다음의 특징 추출층으로 전달하는 전달부를 포함하며,
    상기 학습부는 학습 데이터에 대한 상기 분류기의 불확실성을 측정하여, 가장 정확도가 높은 분류기를 선택하는, 일반화 성능을 갖는 심화학습 장치.
  2. 제1항에 있어서, 상기 분류기는,
    서포트 벡터 머신(Support Vector Machine, 이하 SVM)인 일반화 성능을 갖는 심화학습 장치.
  3. 제2항에 있어서,
    상기 SVM는 클래스간 최대 거리를 유지하는 최대 마진 분류기(Maximal margin classifier)인, 일반화 성능을 갖는 심화학습 장치.
  4. 제2항에 있어서, 상기 학습부는,
    상기 SVM에 대응하여 각각 형성되는 클래스 확률 출력망(Class Probability Output Network, 이하 CPON)을 더 포함하는, 일반화 성능을 갖는 심화학습 장치.
  5. 제4항에 있어서,
    상기 불확실성 도출부는 상기 CPON의 출력 데이터에 대한 불확실성 값을 계산하는, 일반화 성능을 갖는 심화학습 장치.
  6. 삭제
  7. 제1항에 있어서,
    상기 분류기는 파라미터 세트들로 학습한 학습 데이터에 대한 불확실성을 측정하여 선택되는, CPON를 포함하는 SVM으로 구성된, 일반화 성능을 갖는 심화학습 장치.
  8. 제1항에 있어서,
    입력 데이터가 시계열 데이터인 경우, 데이터를 재배열 하는 전처리 과정을 수행하는 전처리부를 더 포함하는, 일반화 성능을 갖는 심화학습 장치.
  9. 다수의 특징 추출층을 포함하는 심화학습 장치를 이용하는 일반화 성능을 갖는 심화학습 방법에 있어서,
    입력 데이터에 대해 분류 별로 학습하는 단계;
    상기 학습되어 출력되는 데이터의 불확실성 값을 계산하는 단계;
    상기 불확실성 값이 임계치 미만인 출력 데이터에 대해 분류 결과를 도출하는 단계; 및
    상기 불확실성 값이 임계치 이상인 출력 데이터를 다음의 특징 추출층으로 전달하는 단계를 포함하고,
    상기 입력 데이터에 대해 분류 별로 학습하는 단계는,
    상기 입력 데이터에 대해 학습하기 위해 데이터 분류 별로 형성된 분류기에서 학습 데이터에 대한 불확실성을 측정하여, 가장 정확도가 높은 분류기를 선택하는 단계를 포함하는, 일반화 성능을 갖는 심화학습 방법.
  10. 제9항에 있어서,
    상기 분류기는 서포트 벡터 머신(Support Vector Machine, 이하 SVM)인 일반화 성능을 갖는 심화학습 방법.
  11. 제10항에 있어서,
    상기 SVM는 클래스간 최대 거리를 유지하는 최대 마진 분류기(Maximal margin classifier)인, 일반화 성능을 갖는 심화학습 방법.
  12. 제10항에 있어서, 상기 입력 데이터에 대해 분류 별로 학습하는 단계는,
    상기 SVM에 대응하여 각각 형성되는 클래스 확률 출력망(Class Probability Output Network, 이하 CPON)을 더 이용하는, 일반화 성능을 갖는 심화학습 방법.
  13. 제12항에 있어서, 상기 학습되어 출력되는 데이터의 불확실성 값을 계산하는 단계는,
    상기 CPON의 출력 데이터에 대한 불확실성 값을 계산하는, 일반화 성능을 갖는 심화학습 방법.
  14. 삭제
  15. 제9항에 있어서, 상기 가장 정확도가 높은 분류기를 선택하는 단계는,
    파라미터 세트들로 분류기를 학습하는 단계;
    학습 데이터에 대한 불확실성을 측정하는 단계; 및
    상기 불확실성 측정 결과, 가장 정확도가 높은 CPON를 포함하는 SVM을 선택하여 분류기를 구성하는 단계를 포함하는, 일반화 성능을 갖는 심화학습 방법.
  16. 제9항에 있어서,
    입력 데이터가 시계열 데이터인 경우, 데이터를 재배열 하는 전처리 단계를 더 포함하는, 일반화 성능을 갖는 심화학습 방법.
  17. 제9항 내지 제13항, 제15항 및 제16항 중 어느 하나의 항에 따른 일반화 성능을 갖는 심화학습 방법을 수행하기 위한, 컴퓨터 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.
KR1020140166574A 2014-11-26 2014-11-26 일반화 성능을 갖는 심화학습 장치 및 방법, 그 방법을 수행하기 위한 기록 매체 및 장치 KR101590896B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140166574A KR101590896B1 (ko) 2014-11-26 2014-11-26 일반화 성능을 갖는 심화학습 장치 및 방법, 그 방법을 수행하기 위한 기록 매체 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140166574A KR101590896B1 (ko) 2014-11-26 2014-11-26 일반화 성능을 갖는 심화학습 장치 및 방법, 그 방법을 수행하기 위한 기록 매체 및 장치

Publications (1)

Publication Number Publication Date
KR101590896B1 true KR101590896B1 (ko) 2016-02-02

Family

ID=55354707

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140166574A KR101590896B1 (ko) 2014-11-26 2014-11-26 일반화 성능을 갖는 심화학습 장치 및 방법, 그 방법을 수행하기 위한 기록 매체 및 장치

Country Status (1)

Country Link
KR (1) KR101590896B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200049273A (ko) 2018-10-31 2020-05-08 주식회사 메디치소프트 머신러닝을 위한 학습데이터 세트의 구성 방법 및 장치
KR20210146611A (ko) 2020-05-27 2021-12-06 (주)휴톰 일관성기반 정규화를 이용한 능동학습 방법 및 장치
US11875255B2 (en) 2019-08-26 2024-01-16 Samsung Electronics Co., Ltd. Method and apparatus for processing data
KR20240092408A (ko) 2022-12-14 2024-06-24 성균관대학교산학협력단 학습 데이터 셋 증강 장치 및 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005141601A (ja) 2003-11-10 2005-06-02 Nec Corp モデル選択計算装置,動的モデル選択装置,動的モデル選択方法およびプログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005141601A (ja) 2003-11-10 2005-06-02 Nec Corp モデル選択計算装置,動的モデル選択装置,動的モデル選択方法およびプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
김호경. 클래스 확률 출력망에 기초한 불확실성 측도를 이용한 능동 학습 연구. 한국과학기술원 석사학위논문, 2012. 2.

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200049273A (ko) 2018-10-31 2020-05-08 주식회사 메디치소프트 머신러닝을 위한 학습데이터 세트의 구성 방법 및 장치
US11875255B2 (en) 2019-08-26 2024-01-16 Samsung Electronics Co., Ltd. Method and apparatus for processing data
KR20210146611A (ko) 2020-05-27 2021-12-06 (주)휴톰 일관성기반 정규화를 이용한 능동학습 방법 및 장치
KR20240092408A (ko) 2022-12-14 2024-06-24 성균관대학교산학협력단 학습 데이터 셋 증강 장치 및 방법

Similar Documents

Publication Publication Date Title
CN109934293B (zh) 图像识别方法、装置、介质及混淆感知卷积神经网络
US8346684B2 (en) Pattern classification method
JP6498107B2 (ja) 分類装置、方法、及びプログラム
US20200193285A1 (en) Neural network learning device, method, and program
CN111507469B (zh) 对自动标注装置的超参数进行优化的方法和装置
EP3620980B1 (en) Learning method, learning device for detecting lane by using cnn and testing method, testing device using the same
US20140270489A1 (en) Learned mid-level representation for contour and object detection
CN116635866A (zh) 用于挖掘少数类数据样本以训练神经网络的方法和系统
KR101590896B1 (ko) 일반화 성능을 갖는 심화학습 장치 및 방법, 그 방법을 수행하기 위한 기록 매체 및 장치
WO2008148343A1 (fr) Dispositif de détection d'objet photographié spécial et dispositif d'apprentissage et procédé associé
EP3620958A1 (en) Learning method, learning device for detecting lane through lane model and testing method, testing device using the same
WO2021051530A1 (zh) 检测异常邮件的方法、装置、设备和存储介质
CN115244548A (zh) 基于人工智能训练深度学习网络的方法及使用其的学习设备
CN108734145B (zh) 一种基于密度自适应人脸表征模型的人脸识别方法
CN112188532A (zh) 网络异常检测模型的训练方法、网络检测方法及装置
Bajaj et al. A Robust Machine Learning Model for Prediction: The Electroencephalography
KR20230090344A (ko) 군중 행위 검출 방법 및 장치, 전자 기기, 저장 매체 및 컴퓨터 프로그램 제품
Durán-Rosal et al. Detection and prediction of segments containing extreme significant wave heights
WO2012032889A1 (ja) 物体識別向けの学習装置、学習システム、学習方法、及び学習プログラム
CN113343123B (zh) 一种生成对抗多关系图网络的训练方法和检测方法
CN111340057B (zh) 一种分类模型训练的方法及装置
CN110633689A (zh) 基于半监督注意力网络的人脸识别模型
Yan et al. Optimizing cost-sensitive svm for imbalanced data: Connecting cluster to classification
CN113076980A (zh) 一种基于注意力增强以及输入扰动的分布外图像检测方法
CN116578913B (zh) 一种面向复杂电磁环境的可靠无人机检测识别方法

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180723

Year of fee payment: 4