KR101596590B1 - 점진 학습 및 국부 조정이 가능한 분류기 설계 방법 및 그 장치 - Google Patents

점진 학습 및 국부 조정이 가능한 분류기 설계 방법 및 그 장치 Download PDF

Info

Publication number
KR101596590B1
KR101596590B1 KR1020140108531A KR20140108531A KR101596590B1 KR 101596590 B1 KR101596590 B1 KR 101596590B1 KR 1020140108531 A KR1020140108531 A KR 1020140108531A KR 20140108531 A KR20140108531 A KR 20140108531A KR 101596590 B1 KR101596590 B1 KR 101596590B1
Authority
KR
South Korea
Prior art keywords
class
subspace
samples
classified
classification
Prior art date
Application number
KR1020140108531A
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 KR1020140108531A priority Critical patent/KR101596590B1/ko
Application granted granted Critical
Publication of KR101596590B1 publication Critical patent/KR101596590B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

분류기 설계 방법 및 그 장치가 개시된다. 분류기 설계 방법은 (a) N(2이상의 자연수)차원 가중치 스페이스상에서 샘플에 대한 신규 평면을 구성하는 단계; (b) 상기 가중치 스페이스에 존재하는 복수의 서브스페이스가 상기 신규 평면에 의해 분할되는지 여부에 따라 상기 신규 평면을 이용하여 상기 서브스페이스를 분할하여 갱신하는 단계; (c) 상기 갱신된 서브스페이스 각각에 대해 각 클래스에 대한 정확하게 분류되는 샘플 개수 및 부정확하게 분류되는 샘플 개수를 포함하는 컨퓨전 매트릭스를 생성하고, 미갱신된 서브스페이스 각각에 대해 각 클래스에 대한 정확하게 분류되는 샘플 개수 및 부정확하게 분류되는 샘플 개수를 포함하는 컨퓨전 매트릭스를 갱신하는 단계; 및 (d) 상기 생성 또는 갱신된 컨퓨전 매트릭스를 이용하여 상기 갱신된 서브스페이스와 상기 미갱신된 서브스페이스 중 어느 하나의 서브스페이스의 내부점을 클래스 분류를 위한 가중치 벡터로 선택하고, 상기 선택된 가중치 벡터에 대한 결정클래스를 결정하며, 상기 가중치 벡터와 결정클래스를 출력하는 단계를 포함한다.

Description

점진 학습 및 국부 조정이 가능한 분류기 설계 방법 및 그 장치{Classification method and apparatus with incremental learning and local adjustment}
본 발명은 가중치 스페이스(space)에서의 적용 순서가 정해진 복수개의 분류기를 설계하고, 복수개의 분류기를 순차적으로 적용하여 비선형 결정 경계를 갖는 분류 문제를 효율적으로 분류할 수 있는 분류기 설계와 분류 방법 및 그 장치에 관한 것이다.
선형 분류는 일반적으로 패턴 인식 분야, 데이터 분류 등에서 일반적으로 널리 이용된다. 종래의 선형 분류 알고리즘 중 대표적인 알고리즘은 SVM(Support Vector Machine)이며, 가장 많이 사용되고 있는 선형 분류 알고리즘이다.
SVM은 주어진 데이터에 대해 데이터를 분리하는 초평면 중에서 데이터들과 가장 거리가 먼 초평면을 찾는 방법이다. 즉, 데이터들을 분리하는 수많은 평면들 가운데 마진이 최대가 되는 최적 초평면(optimal hyperplane)을 도출하여 데이터를 분리하는 방법이다.
SVM을 비롯한 종래의 선형 분류 알고리즘은 데이터 도메인(스페이스)에서 선형 분류기를 설계하는 방법으로, 가중치 스페이스에서 분류기를 설계하는 방법에 대해서는 연구가 수행되지 않았다.
또한, 종래에는 비선형 경계를 갖는 분류 문제에 대한 해를 구하기 위해 커널 (kernel) 함수를 사용하는 SVM, 신경망, DNN (deep neural networks) 등이 제안되었다. 그러나, 종래에는 비선형 경계를 갖는 분류 문제에 대해 복수개의 분류기를 순차적으로 적용한 후 각 분류기의 출력 중 제1 클래스로 분류된 샘플에 대해서는 분류 결과를 결정하고, 제2 클래스로 분류된 샘플에 대해서는 미분류 상태로 남겨두면서 설계된 분류기를 순차적으로 실행하여 샘플을 분류하는 방법에 대해서는 연구가 진행되지 않았다.
본 발명은 가중치 스페이스에서의 복수 개의 분류기를 설계한 후 이를 이용하여 비선형 경계를 갖는 분류 문제에 대해 효율적으로 분류할 수 있는 방법 및 그 장치를 제공하기 위한 것이다.
또한, 본 발명은 가중치 스페이스에서 비선형 결정 경계를 갖는 샘플(sample)을 분류하기 위한 적용 순서가 정해진 복수개의 분류기를 설계할 수 있는 방법 및 그 장치를 제공하기 위한 것이다.
또한, 본 발명은 3개 이상의 클래스를 포함하는 샘플을 분류하기 위한 적용 순서가 정해진 복수개의 분류기를 설계할 수 있는 방법 및 그 장치를 제공하기 위한 것이다.
또한, 본 발명은 비선형 결정 경계를 갖는 데이터를 복수개의 데이터 차원에서 복수개의 분류기를 적용하여 점진적이고 순차적으로 정확하게 분류하기 위한 방법 및 그 장치를 제공하기 위한 것이다.
본 발명의 일 측면에 따르면, 비선형 경계를 갖는 분류문제에 있어서 가중치 스페이스에서의 복수개의 선형 분류기를 설계하고, 이를 이용하여 샘플을 분류하는 분류 방법이 제공된다.
본 발명의 일 실시예에 따르면, (a) N(2이상의 자연수)차원 가중치 스페이스상에서 샘플에 대한 신규 평면을 구성하는 단계; (b) 상기 가중치 스페이스에 존재하는 복수의 서브스페이스가 상기 신규 평면에 의해 분할되는지 여부에 따라 상기 신규 평면을 이용하여 상기 서브스페이스를 분할하여 갱신하는 단계; (c) 상기 갱신된 서브스페이스 각각에 대해 각 클래스에 대한 정확하게 분류되는 샘플 개수 및 부정확하게 분류되는 샘플 개수를 포함하는 컨퓨전 매트릭스를 생성하고, 미갱신된 서브스페이스 각각에 대해 각 클래스에 대한 정확하게 분류되는 샘플 개수 및 부정확하게 분류되는 샘플 개수를 포함하는 컨퓨전 매트릭스를 갱신하는 단계; 및 (d) 상기 생성 또는 갱신된 컨퓨전 매트릭스를 이용하여 상기 갱신된 서브스페이스와 상기 미갱신된 서브스페이스 중 어느 하나의 서브스페이스의 내부점을 클래스 분류를 위한 가중치 벡터로 선택하고, 상기 선택된 가중치 벡터에 대한 결정클래스를 결정하며, 상기 가중치 벡터와 결정클래스를 출력하는 단계를 포함하는 선형 분류기 설계 방법이 제공될 수 있다.
상기 생성 또는 갱신된 컨퓨전 매트릭스는, 각 클래스로의 정확하게 분류되는 샘플 개수를 대각선 요소로 포함하고, 상기 각 클래스의 샘플이 다른 클래스로 부정확하게 분류되는 샘플 개수를 비대각선 요소로 포함하여 생성되되, 컨퓨전 매트릭스의 각 행과 각 칼럼은 각 클래스의 인덱스를 순차적으로 나타내고 각 요소는 각 행에 따른 클래스가 각 칼럼에 따른 클래스로 분류되는 샘플 개수를 포함할 수 있다.
상기 (d) 단계 이전에, 상기 모든 샘플에 대해 상기 (a) 단계 내지 상기 (c) 단계를 반복할 수 있다.
상기 (d) 단계 이전에,
상기 생성 또는 갱신된 컨퓨전 매트릭스의 비대각 요소의 값이 제1 값을 갖는 서브스페이스가 없는 경우, 전체 샘플을 복수의 그룹으로 분할 한 후 각 그룹에 대해 상기 (a) 단계 내지 상기 (d) 단계를 수행할 수 있다.
상기 (d) 단계는, (d1) 상기 갱신된 서브스페이스와 상기 미갱신된 서브스페이스 각각에 대한 컨퓨전 매트릭스에서 제1값을 갖는 비대각선 요소를 포함하는 칼럼(column)을 가지는 컨퓨전 매트릭스를 포함하는 서브스페이스를 선택하는 단계; 및 (d2) 상기 선택된 서브스페이스의 내부점을 분류를 위한 가중치 벡터로 선택하고 상기 칼럼에 해당하는 클래스를 결정클래스로 하여 상기 가중치 벡터와 상기 결정클래스를 출력하는 단계를 포함할 수 있다.
상기 (d) 단계는, 상기 선택된 서브스페이스의 컨퓨전 매트릭스의 모든 비대각선 요소가 영(zero)인 경우, 상기 선택된 서브스페이스의 내부점을 분류를 위한 마지막 가중치 벡터로 선택하여 출력하고 분류기 설계 과정을 종료할 수 있다.
상기 (d) 단계는, 상기 선택된 가중치 벡터를 이용하여 제1 클래스로 분류되는 샘플에 대해서만 분류 결정을 완료하고, 제2 클래스로 분류되는 샘플에 대해서는 미분류 상태로 남겨둘 수 있다.
상기 미분류 상태로 남겨진 샘플에 대해 상기 (a) 단계 내지 상기 (d) 단계를 반복 수행할 수 있다.
상기 (d) 단계 이후, 상기 가중치 스페이스에서 상기 분류 결정이 완료된 샘플에 대한 평면을 제거하고, 상기 제거된 평면으로 인한 일부 서브스페이스를 통합하며, 상기 분류 결정이 완료된 샘플의 제외에 따른 각 서브스페이스의 컨퓨전 매트릭스를 갱신한 후 상기 (d) 단계부터 반복 수행할 수 있다.
상기 (a) 단계 이전에, 전체 샘플을 복수개의 그룹으로 분할 후, 각각의 그룹에 대하여 상기 (a) 단계에서 상기 (d)단계를 수행할 수 있다.
상기 클래스가 다수인 경우, 상기 (a) 단계 이전에, 상기 다수의 클래스 중 어느 하나를 타겟 클래스로 선택하고, 나머지 클래스를 단일 타클래스로 설정하는 단계를 더 수행하되, 상기 (d) 단계에서 상기 가중치 벡터 선택에 따른 분류 결정이 완료되는 클래스는 상기 타겟 클래스이다.
본 발명의 다른 실시예에 따르면, 복수의 분류기와 결정클래스를 이용하여 데이터를 분류하는 방법에 있어서, (a) 정해진 순서대로 분류기를 적용하고 상기 분류기에 대응하는 결정클래스로 분류된 샘플만 분류 결과로 결정하고, 나머지 타클래스로 분류되는 샘플은 미결정 상태로 남겨두는 단계를 포함하되, 상기 분류 결과로 결정된 샘플을 제외하고 상기 미결정 상태로 남겨진 샘플에 대해 상기 (a) 단계를 적용 순서에 따라 순차적으로 반복 수행하는 것을 특징으로 하는 데이터 분류 방법이 제공될 수 있다.
본 발명의 또 다른 실시예에 따르면, 주어진 차원의 데이터를 낮은 차원으로 투영하는 단계; 상기 낮은 차원으로의 투영에 따라 미중첩 영역의 샘플에 대해 적용 순서가 정해진 복수개의 분류기와 결정클래스를 설계하는 단계; 및 상기 낮은 차원으로의 투영에 따라 중첩된 영역의 샘플을 상기 주어진 차원에서 분류할 수 있는 적용 순서가 정해진 복수개의 분류기와 결정클래스를 설계하는 단계를 포함하는 분류기 설계 방법이 제공될 수 있다.
본 발명의 또 다른 실시예에 따르면 복수의 분류기 및 결정클래스를 이용하여 데이터를 분류하는 방법에 있어서, 주어진 차원의 데이터를 낮은 차원으로 투영하는 단계; 상기 낮은 차원으로의 투영에 따라 낮은 차원을 위해 설계된 적용 순서가 정해진 상기 분류기와 결정클래스를 이용하여 분류하는 단계; 및 상기 낮은 차원에서 미분류 상태로 남겨진 샘플을 상기 주어진 차원에서 적용 순서가 정해진 복수개의 분류기와 결정클래스를 이용하여 분류하는 단계를 포함하는 데이터 분류 방법이 제공될 수 있다.
본 발명의 또 다른 실시예에 다르면, N(2이상의 자연수)차원 가중치 스페이스상에서 샘플에 대한 신규 평면을 구성하는 평면 구성부; 상기 가중치 스페이스에 존재하는 복수의 서브스페이스가 상기 신규 평면에 의해 분할되는지 여부에 따라 상기 신규 평면을 이용하여 상기 서브스페이스를 분할하여 갱신하는 갱신부; 상기 갱신된 서브스페이스 각각에 대해 각 클래스에 대한 정확하게 분류되는 샘플 개수 및 부정확하게 분류되는 샘플 개수를 포함하는 컨퓨전 매트릭스를 생성하고, 미갱신된 서브스페이스 각각에 대해 각 클래스에 대한 정확하게 분류되는 샘플 개수 및 부정확하게 분류되는 샘플 개수를 포함하는 컨퓨전 매트릭스를 갱신하는 매트릭스 생성부; 및 상기 생성 또는 갱신된 컨퓨전 매트릭스를 이용하여 상기 갱신된 서브스페이스와 상기 미갱신된 서브스페이스 중 어느 하나의 서브스페이스의 내부점을 클래스 분류를 위한 가중치 벡터로 선택하고, 상기 선택된 가중치 벡터에 대한 결정클래스를 결정하며, 상기 가중치 벡터와 결정클래스를 출력하는 가중치 및 클래스 출력부를 포함하는 분류기 설계 장치가 제공될 수 있다.
상기 평면 구성부, 상기 갱신부 및 상기 매트릭스 생성부는 모든 샘플에 대해 상기 평면 구성, 서브스페이스 갱신, 컨퓨전 매트릭스 생성 또는 갱신을 반복적으로 수행할 수 있다.
상기 생성 또는 갱신된 컨퓨전 매트릭스의 비대각 요소의 값이 제1 값을 갖는 서브스페이스가 없는 경우, 전체 샘플을 복수의 그룹으로 분할하는 제어부를 더 포함하되, 상기 제어부는 상기 분할된 각 그룹에 대해 상기 평면 구성부, 상기 갱신부 및 상기 매트릭스 생성부와 상기 가중치 및 클래스 출력부가 정해진 순서에 따라 수행되도록 제어할 수 있다.
상기 가중치 및 클래스 출력부는, 상기 갱신된 서브스페이스와 상기 미갱신된 서브스페이스 각각에 대한 컨퓨전 매트릭스에서 제1값을 갖는 비대각선 요소를 포함하는 칼럼(column)을 가지는 컨퓨전 매트릭스를 포함하는 서브스페이스를 선택하고, 상기 선택된 서브스페이스의 내부점을 분류를 위한 가중치 벡터로 선택하고 상기 칼럼에 해당하는 클래스를 결정클래스로 하여 상기 가중치 벡터와 상기 결정클래스를 출력할 수 있다.
상기 가중치 및 클래스 출력부는, 상기 선택된 서브스페이스의 컨퓨전 매트릭스의 모든 비대각선 요소가 영(zero)인 경우, 상기 선택된 서브스페이스의 내부점을 분류를 위한 마지막 가중치 벡터로 선택하여 출력하고 분류기 설계 과정을 종료할 수 있다.
상기 가중치 및 클래스 출력부는, 상기 선택된 가중치 벡터를 이용하여 제1 클래스로 분류되는 샘플에 대해서만 분류 결정을 완료하고, 제2 클래스로 분류되는 샘플에 대해서는 미분류 상태로 남겨둘 수 있다.
상기 가중치 및 클래스 출력부는, 상기 가중치 스페이스에서 상기 분류 결정이 완료된 샘플에 대한 평면을 제거하고, 상기 제거된 평면으로 인한 일부 서브스페이스를 통합하며, 상기 분류 결정이 완료된 샘플의 제외에 따른 각 서브스페이스의 컨퓨전 매트릭스를 갱신한 후 상기 컨퓨전 매트릭스를 이용하여 상기 서브스페이스 중 어느 하나의 서브스페이스의 내부점을 클래스 분류를 위한 가중치 벡터로 선택하고, 상기 선택된 가중치 벡터에 대한 결정클래스를 결정하며, 상기 가중치 벡터와 결정클래스를 출력할 수 있다.
전체 샘플을 복수의 그룹으로 분할하는 제어부를 더 포함하되, 상기 제어부는 상기 분할된 각 그룹에 대해 상기 평면 구성부, 상기 갱신부 및 상기 매트릭스 생성부와 상기 가중치 및 클래스 출력부가 정해진 순서에 따라 수행되도록 제어할 수 있다.
본 발명의 일 실시예에 점진 학습 및 국부 조정이 가능한 분류기 설계 방법 및 그 장치를 제공함으로써, 가중치 스페이스에서 샘플(sample)을 분류하기 위한 복수개의 선형 분류기를 순차적으로 설계하여 주어진 샘플은 정확하게 분류할 수 있다.
복수의 클래스를 분류 시, 하나의 클래스를 타겟클래스(target class)로 선정 후 나머지 모든 클래스를 동일 타클래스로 취급하여 앞서 기술한 방법을 반복하여 적용하여 임의의 복수의 클래스 문제에도 적용할 수 있다.
또한, 본 발명은 비선형적 경계를 갖는 데이터를 복수개의 선형 분류기를 적용하여 점진적이고 순차적으로 정확하게 분류할 수 있다.
도 1은 본 발명의 일 실시예에 따른 비선형 경계를 갖는 샘플 분류 문제에 있어 복수개의 분류기를 사용하여 샘플을 분류하는 분류기 설계 방법을 나타낸 순서도.
도 2는 본 발명의 일 실시예에 따른 서브스페이스 갱신 과정을 설명하기 위해 도시한 도면.
도 3은 본 발명의 일 실시예에 따른 서브스페이스에 대한 컨퓨전 매트릭스를 설명하기 위해 도시한 도면.
도 4는 본 발명의 일 실시예에 따른 서브스페이스에서의 내부점 선정을 설명하기 위해 도시한 도면.
도 5는 본 발명의 일 실시예에 따른 신규 평면과 내부점을 설명하기 위해 도시한 도면.
도 6은 본 발명의 일 실시예에 따른 신규 평면이 추가되는 경우 각 서브스페이스의 내부점을 이용하여 서브스페이스를 갱신하는 방법을 나타낸 순서도.
도 7은 본 발명의 일 실시예에 따른 각 서브스페이스에 따른 내부점을 설명하기 위해 도시한 도면.
도 8은 본 발명의 일 실시예에 따른 내부점의 신규 평면으로의 정사영을 설명하기 위해 도시한 도면.
도 9는 본 발명의 일 실시예에 따른 서브스페이스 평면에 대한 내부점의 평행 이동을 설명하기 위해 도시한 도면.
도 10 및 도 11은 본 발명의 일 실시예에 따른 내부점을 이용하여 서브스페이스의 분할을 설명하기 위해 도시한 도면.
도 12는 본 발명의 일 실시예에 따른 서브스페이스 갱신에 따른 내부점 갱신을 설명하기 위해 도시한 도면.
도 13은 본 발명의 일 실시예에 따른 컨퓨전 매트릭스를 이용하여 각 클래스로의 분류를 위한 가중치 벡터와 결정클래스를 선택하는 방법을 설명하기 위한 순서도.
도 14는 본 발명의 일 실시예에 따른 하나의 가중치 벡터 및 결정클래스 출력 이후 남은 샘플에 대한 서브스페이스의 컨퓨전 매트릭스를 갱신하는 과정을 설명하기 위해 도시한 도면.
도 15는 본 발명의 일 실시예에 따른 비선형 경계를 갖는 샘플분류 문제에 있어 복수개의 선형 분류기를 사용하여 샘플을 분류하는 분류 방법을 나타낸 순서도.
도 16은 비선형 결정경계를 갖는 문제에 대하여 복수개의 선형분류기를 순차적으로 적용하여 분류하는 과정을 도시한 도면.
도 17은 본 발명의 일 실시예에 따른 비선형 결정경계를 갖는 두 클래스 데이터를 분류하는데 있어 많은 가능성이 존재하는 것을 보여 주는 도면.
도 18은 본 발명의 일 실시예에 따른 분류 결정을 내지지 않고 전체 데이터를 복수개의 그룹으로 분할 후, 각 그룹에 대하여 상기에 기술한 복수개의 선형 분류기를 순차적으로 적용하여 분류하는 과정을 도시한 도면.
도 19는 본 발명의 일 실시예에 따른 3개 이상의 클래스를 갖는 멀티클래스 문제에 대하여 상기에 기술한 복수개의 선형 분류기를 순차적으로 적용하여 분류하는 과정을 도시한 도면.
도 20은 본 발명의 일 실시예에 따른 먼저 주어진 차원을 축소한 후 앞서 기술한 방법을 적용하고 미분류된 샘플에 대하서만 원래 차원에서 분류하는 하여 연산량을 감소시키는 방법을 도시한 도면.
도 21은 본 발명의 일 실시예에 따른 분류기 설계 장치의 내부 구성을 개략적으로 도시한 블록도.
도 22는 본 발명의 일 실시예에 따른 분류 장치의 내부 구성을 개략적으로 도시한 블록도.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
이하, 본 발명의 실시예를 첨부한 도면들을 참조하여 상세히 설명하기로 한다.
본 발명은 비선형 경계를 갖는 분류 문제에 있어서, 가중치 스페이스에서 복수개의 선형 분류기를 설계하고, 이를 이용하여 샘플을 분류하기 위한 것이다. 물론, 비선형 경계는 piecewise 선형 경계도 포함한다.
이를 위해, 본 발명의 일 실시예에 따르면, 가중치 벡터 결정을 위해 가중치 스페이스에서 각 샘플에 대한 신규 평면을 구성하고, 샘플에 대한 구성된 신규 평면을 이용하여 가중치 스페이스상에서 서브스페이스를 분할/갱신하는 방법과 모든 샘플에 대한 서브스페이스 분할/갱신 과정이 완료된 이후 하나의 서브스페이스의 내부점을 클래스 분류를 위한 가중치 벡터로 선택하여 선형 분류기를 설계하여 샘플을 분류한 후 컨퓨전 매트릭스에 따라 선택된 특정 클래스로 분류된 샘플만 분류 결과로 결정하고, 다른 클래스로 분류된 샘플은 미결정 상태로 남겨두고 선택된 선형 분류기와 분류 결과가 결정된 특정 클래스(이하, 결정클래스라 칭하기로 함)를 출력하고, 모든 샘플에 대해 분류가 결정될 때까지 미결정 상태로 남겨진 샘플에 대해 상술한 과정을 반복하여 복수개의 선형 분류기 및 결정클래스를 순차적으로 출력하는 분류기 설계 방법을 포함한다.
본 발명의 일 실시에 따른 점진 학습 및 국부 조정이 가능한 분류 장치는 이와 같이 설계된 복수개의 선형 분류기와 결정클래스를 사용하여 주어진 순서대로 선형 분류기를 적용하되, 결정클래스로 분류된 샘플만 분류 결과로 결정하고, 나머지 다른 클래스로 분류된 클래스는 미결정 상태로 남겨두고 다음 선형 분류기를 미결정 상태로 남겨진 미분류 상태의 샘플에 적용하여 동일한 방법으로 결정클래스로 분류된 샘플만 분류 결과로 결정하고 다른 클래스로 분류된 미결정 상태의 클래스를 남겨두며, 모든 샘플에 대해 분류 결정이 완료될 때까지 상기의 과정을 반복하여 복수개의 선형 분류기를 이용하여 샘플을 분류할 수 있다.
우선 이해와 설명의 편의를 도모하기 위해 가중치 스페이스에서 각 샘플에 대한 신규 평면을 구성하고, 샘플에 대해 구성된 신규 평면을 이용하여 가중치 스페이스상에서 서브스페이스를 갱신하는 방법에 대해 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 비선형 경계를 갖는 샘플 분류 문제에 있어 복수개의 분류기를 사용하여 샘플을 분류하는 분류기 설계 방법을 나타낸 순서도이며, 도 2는 본 발명의 일 실시예에 따른 서브스페이스 갱신 과정을 설명하기 위해 도시한 도면이며, 도 3은 본 발명의 일 실시예에 따른 서브스페이스에 대한 컨퓨전 매트릭스를 설명하기 위해 도시한 도면이고, 도 4는 본 발명의 일 실시예에 따른 서브스페이스에서의 내부점 선정을 설명하기 위해 도시한 도면이고, 도 5는 본 발명의 일 실시예에 따른 신규 평면과 내부점을 설명하기 위해 도시한 도면이며, 도 6은 본 발명의 일 실시예에 따른 신규 평면이 추가되는 경우 각 서브스페이스의 내부점을 이용하여 서브스페이스를 갱신하는 방법을 나타낸 순서도이고, 도 7은 본 발명의 일 실시예에 따른 각 서브스페이스에 따른 내부점을 설명하기 위해 도시한 도면이고, 도 8은 본 발명의 일 실시예에 따른 내부점의 신규 평면으로의 정사영을 설명하기 위해 도시한 도면이고, 도 9는 본 발명의 일 실시예에 따른 서브스페이스 평면에 대한 내부점의 평행 이동을 설명하기 위해 도시한 도면이며, 도 10 및 도 11은 본 발명의 일 실시예에 따른 내부점을 이용하여 서브스페이스의 분할을 설명하기 위해 도시한 도면이고, 도 12는 본 발명의 일 실시예에 따른 서브스페이스 갱신에 따른 내부점 갱신을 설명하기 위해 도시한 도면이고, 도 13은 본 발명의 일 실시예에 따른 컨퓨전 매트릭스를 이용하여 각 클래스로의 분류를 위한 가중치 벡터와 결정클래스를 선택하는 방법을 설명하기 위한 순서도이며, 도 14는 본 발명의 일 실시예에 따른 하나의 가중치 벡터 및 결정클래스 출력 이후 남은 샘플에 대한 서브스페이스의 컨퓨전 매트릭스를 갱신하는 과정을 설명하기 위해 도시한 도면이고, 도 15는 본 발명의 일 실시예에 따른 비선형 경계를 갖는 샘플분류 문제에 있어 복수개의 선형 분류기 및 결정클래스를 사용하여 샘플을 분류하는 분류 방법을 나타낸 순서도이며, 도 16은 비선형 결정경계를 갖는 문제에 대하여 복수개의 선형분류기를 순차적으로 적용하여 분류하는 과정을 도시한 도면이고, 도 17은 본 발명의 일 실시예에 따른 비선형 결정경계를 갖는 두 클래스 데이터를 분류하는데 있어 많은 가능성이 존재하는 것을 보여 주는 도면이고, 도 18은 본 발명의 일 실시예에 따른 분류 결정을 내지지 않고 전체 데이터를 복수개의 그룹으로 분할 후, 각 그룹에 대하여 상기에 기술한 복수개의 선형 분류기를 순차적으로 적용하여 분류하는 과정을 도시한 도면이고, 도 19는 본 발명의 일 실시예에 따른 3개 이상의 클래스를 갖는 멀티클래스 문제에 대하여 상기에 기술한 복수개의 선형 분류기를 순차적으로 적용하여 분류하는 과정을 도시한 도면이며, 도 20은 본 발명의 일 실시예에 따른 먼저 주어진 차원을 축소한 후 앞서 기술한 방법을 적용하고 미분류된 샘플에 대하서만 원래 차원에서 분류하는 하여 연산량을 감소시키는 방법을 도시한 도면이다.
단계 110에서 분류기 설계 장치(100)는 가중치 스페이스상에서 샘플에 대한 신규 평면을 구성한다.
예를 들어, 데이터 스페이스의 샘플이 수 1과 같은 벡터로 구성되어 있다고 가정하자.
Figure 112014078957353-pat00001
수 1과 같이 구성된 샘플을 두 클래스로 분류하는 경우, 선형 분류기는 수 2와 같이 샘플을 분류할 수 있다.
Figure 112014078957353-pat00002
Figure 112014078957353-pat00003
여기서,
Figure 112014078957353-pat00004
는 N차 가중치벡터를 나타낸다.
예를 들어, K0
Figure 112014078957353-pat00005
를 위한 샘플이고, K1
Figure 112014078957353-pat00006
를 위한 샘플인 경우, 가중치 벡터에 의해 샘플은 선형적으로 분류될 수 있다. 이를 수식으로 나타내면 수 3과 같다.
Figure 112014078957353-pat00007
Figure 112014078957353-pat00008
두 클래스가 선형적으로 분류되지 않는 경우, 일부 샘플은 수 3을 만족하지 않을 수 있다. 이로 인해, 본 발명의 일 실시예에서는 수 1과 같은 샘플에 상수항을 추가하여 확장된 샘플을 구성하며, 이를 수식으로 나타내면, 수 4와 같다.
Figure 112014078957353-pat00009
수 4와 같이 상수항으로 차원이 확장된 샘플을 두 클래스로 선형 분류하는 경우, 수 5와 같은 조건에 의해 각 샘플은 각 클래스로 분류될 수 있다.
Figure 112014078957353-pat00010
Figure 112014078957353-pat00011
여기서,
Figure 112014078957353-pat00012
는 확장된 가중치벡터를 나타낸다. 이하, 하기에서 상수항으로 확장된 샘플은 샘플로 통칭하며, 확장된 가중치벡터는 가중치벡터로 통칭하여 설명하기로 한다.
이해와 설명의 편의를 도모하기 위해, 다음 수 6과 같은 2차원 데이터 스페이스에서의 두 클래스 분류를 가정하기로 한다.
Figure 112014078957353-pat00013
Figure 112014078957353-pat00014
수 5의 2차원 샘플에 상수항을 추가하여 차원을 확장하면, 확장된 샘플은 수 7과 같이 나타낼 수 있다.
Figure 112014078957353-pat00015
Figure 112014078957353-pat00016
수 7과 같이 확장된 샘플 중 제1 샘플(
Figure 112014078957353-pat00017
)을 정확하게 분류하기 위한 가중치 벡터(W)는 수 8과 같은 조건을 만족해야만 한다.
Figure 112014078957353-pat00018
도 2는 가중치 스페이스에서 제1 샘플에 대한 신규 평면(
Figure 112014078957353-pat00019
을 나타낸다. 도 2의 (a)에서
Figure 112014078957353-pat00020
으로 정의되는 직선 위쪽 또는 직선상에 존재하는 모든 가중치 벡터는 제1 샘플(
Figure 112014078957353-pat00021
을 맞게 분류하고,
Figure 112014078957353-pat00022
으로 정의되는 직선 아래쪽에 존재하는 모든 가중치 벡터는 제1 샘플(
Figure 112014078957353-pat00023
을 틀리게 분류하는 것을 알 수 있다.
이에 따라, 제1 샘플(Y1)에 의해 형성되는 신규 평면은 가중치 스페이스를 2개의 서브스페이스(subspace)로 나눈다. 제1 샘플(Y1)에 대한 신규 평면이 도 2의 (a)와 같이 분할되는 경우, 제1 서브스페이스(S1,1) 및 제2 서브스페이스(S1,2)에 대한 컨퓨전 매트릭스가 생성된다.
컨퓨전 매트릭스는 각 서브스페이스에서 각 클래스로 샘플이 정확하게 분류되는 개수(정확한 분류 개수)와 각 클래스에 대해 다른 클래스로 샘플이 부정확하게 분류되는 개수(부정확한 분류 개수)를 포함한다.
예를 들어, 도 3의 (a)를 참조하면, 제1 서브스페이스(S1,1)에 대한 컨퓨전 매트릭스는
Figure 112014078957353-pat00024
으로 생성되고, 제2 서브스페이스(S1,2)에 대한 컨퓨전 매트릭스는
Figure 112014078957353-pat00025
으로 생성될 수 있다.
수 7과 같이 확장된 샘플 중 제2 샘플(
Figure 112014078957353-pat00026
을 두 클래스로 분류하기 위해 가중치벡터는 하기 수 9의 조건을 만족해야만 한다.
Figure 112014078957353-pat00027
도 2의 (b)와 같이 -
Figure 112014078957353-pat00028
으로 정의되는 직선에 의해 구분되는 가중치 스페이스에 대해
Figure 112014078957353-pat00029
으로 정의되는 직선의 위쪽 또는 직선상에 존재하는 모든 가중치 벡터는
Figure 112014078957353-pat00030
을 틀리게 분류하며, 직선 아래쪽에 존재하는 모든 가중치 벡터는
Figure 112014078957353-pat00031
을 맞게 분류한다.
도 2의 (b)와 같이, 제1 샘플에 의해 형성되는 직선과 제2 샘플에 의해 형성되는 직선에 의해 가중치 스페이스는 4개의 서브스페이스(S2,1, S2,2, S2,3, S2,4)로 나뉜다. 4개의 서브스페이스 중 제2 서브스페이스(S2,2)(
Figure 112014078957353-pat00032
,
Figure 112014078957353-pat00033
)내에 포함되는 임의의 가중치 벡터는 제1 샘플(Y1)과 제2 샘플(Y2)을 모두 맞게 분류하고, 제4 서브스페이스(S2,3)(
Figure 112014078957353-pat00034
,
Figure 112014078957353-pat00035
)내에 포함되는 임의의 가중치 벡터는 제1 샘플(Y1)과 제2 샘플(Y2)을 모두 틀리게 분류하게 된다. 또한, 제1 서브스페이스(S2,1)내에 포함되는 임의의 가중치 벡터는 제1 샘플(Y1)는 맞게 분류하나 제2 샘플(Y2)을 틀리게 분류하게 된다. 또한, 제3 서브스페이스(S2,3)내에 포함되는 임의의 가중치 벡터는 제1 샘플(Y1)은 틀리게 분류하나 제2 샘플(Y2)을 맞게 분류하게 된다. 즉, 4개의 서브스페이스(S2,1, S2,2, S2,3, S2,4)의 분류 정확도는 각각 50%, 100%, 50%, 0%가 된다.
이와 같이, 도 2(b)와 같이 서브스페이스가 나뉘는 경우, 각 서브스페이스에 대한 컨퓨전 매트릭스는 도 3의 (b)와 같이 생성될 수 있다.
즉, 제1 서브스페이스(S2,1)의 경우, 제1 샘플(Y1)는 맞게 분류하나 제2 샘플(Y2)을 틀리게 분류하므로, 제1 서브스페이스(S2,1)에 대한 컨퓨전 매트릭스는
Figure 112014078957353-pat00036
로 생성된다. 또한, 제2 서브스페이스(S2,2)는 제1 샘플(Y1)과 제2 샘플(Y2)을 모두 맞게 분류하므로, 제2 서브스페이스(S2,2)에 대한 컨퓨전 매트릭스는
Figure 112014078957353-pat00037
로 생성될 수 있다. 또한, 제3 서브스페이스(S2,3)는 제1 샘플(Y1)은 틀리게 분류하고, 제2 샘플(Y2)은 맞게 분류하므로, 제3 서브스페이스(S2,3)에 대한 컨퓨전 매트릭스는
Figure 112014078957353-pat00038
과 같이 생성될 수 있다. 또한, 제4 서브스페이스(S2,4)의 경우, 제1 샘플(Y1)과 제2 샘플(Y2)을 모두 틀리게 분류하므로, 제 4 서브스페이스(S2,4)에 대한 컨퓨전 매트릭스는
Figure 112014078957353-pat00039
과 같이 생성될 수 있다.
상술한 바와 마찬가지로 제3 샘플(
Figure 112014078957353-pat00040
을 맞게 분류하기 위해 가중치벡터는 하기 수 10의 조건을 만족해야 한다.
Figure 112014078957353-pat00041
즉, 도 2의 (c)와 같이,
Figure 112014078957353-pat00042
로 정의되는 직선에 의해 구분되는 가중치 스페이스에 대해
Figure 112014078957353-pat00043
로 정의되는 직선의 위쪽 또는 직선상에 존재하는 모든 가중치 벡터는 제3 샘플(
Figure 112014078957353-pat00044
)을 맞게 분류하며, 직선의 아래쪽에 존재하는 모든 가중치 벡터는 제3 샘플(
Figure 112014078957353-pat00045
)을 틀리게 분류한다.
제3 샘플에 대한 신규 평면 구성으로 인해 3개의 샘플은 가중치 스페이스를 도 2의 (c)에서 보여지는 바와 같이 6개의 서브스페이스로 나눌 수 있다. 이에 따라 각 6개의 서브스페이스 각각에 대한 컨퓨전 매트릭스는
Figure 112014078957353-pat00046
,
Figure 112014078957353-pat00047
,
Figure 112014078957353-pat00048
,
Figure 112014078957353-pat00049
,
Figure 112014078957353-pat00050
,
Figure 112014078957353-pat00051
과 같이 생성될 수 있다.
이와 같은 방식으로, 제4 샘플(
Figure 112014078957353-pat00052
에 대한 가중치 스페이스상의 신규 평면이 구성되면 가중치 스페이스는 8개의 서브스페이스로 나누어지게 된다. 8개의 서브스페이스 각각에 대한 컨퓨전 매트릭스는
Figure 112014078957353-pat00053
,
Figure 112014078957353-pat00054
,
Figure 112014078957353-pat00055
,
Figure 112014078957353-pat00056
,
Figure 112014078957353-pat00057
,
Figure 112014078957353-pat00058
,
Figure 112014078957353-pat00059
,
Figure 112014078957353-pat00060
과 같이 생성될 수 있다.
이와 같이, 분류기 설계 장치(100)는 각 샘플에 대해 가중치 스페이스를 복수의 서브스페이스로 분할한 후 각 서브스페이스가 각 분류에 따라 정확하게 샘플을 분류하는 개수와 부정확하게 각 샘플을 분류하는 개수를 포함하는 컨퓨전 매트릭스를 생성하고, 컨퓨전 매트릭스를 이용하여 데이터 분류를 위한 가중치 벡터를 선택할 수 있다. 이에 대해서는 하기에서 보다 상세히 설명하기로 한다.
상술한 설명에 의해 가중치 스페이스에서 각 샘플에 의해 구성되는 신규 평면 및 서브스페이스에 대한 기본적인 개념에 대해서는 충분히 이해가 되었을 것이다.
즉, 다시 정리하면, 분류기 설계 장치(100)는 가중치 스페이스에서 신규 샘플에 대한 신규 평면을 구성할 수 있다. 샘플에 대한 신규 평면은 수 11과 같이 나타낼 수 있다.
Figure 112014078957353-pat00061
여기서, W는 가중치 벡터를 나타내고, Y는 샘플을 나타낸다. 이 신규 평면의 수직 벡터는 Y가 된다. 서브스페이스의 내부점(Z)과 신규 평면의 수직벡터(Y)와의 내적은 수 12와 같다.
Figure 112014078957353-pat00062
수 12의 내적에 따른 부호를 확인하여 내부점이 신규 평면의 어느 쪽에 위치하는지를 판단할 수 있다.
단계 115에서 분류기 설계 장치(100)는 가중치 스페이스상에 존재하는 각 서브스페이스가 신규 평면에 의해 분할되는지 여부를 판단한다.
예를 들어, 신규 평면에 의해 가중치 스페이스상에 존재하는 서브스페이스가 분할되는지 여부는 각 서브스페이스를 구성하는 평면에 대한 부등식의 해를 도출하여 판단할 수 있다.
예를 들어, 즉, L개의 평면에 의해 구성되는 서브스페이스가 신규 평면에 의해 분할되는 경우 신규평면을 포함하는 L+1개의 부등식에 해가 존재하게 된다. 만일 해가 존재하지 않으면 신규 평면에 의해 가중치 스페이스상에 존재하는 서브스페이스는 분할되지 않는다.
예를 들어, 가중치 스페이스상에 하기 수 13과 같은 서브스페이스가 존재한다고 가정하자.
Figure 112014078957353-pat00063
상기 서브스페이스내의 모든 점은 하기 수 14의 부등식을 만족해야 한다.
Figure 112014078957353-pat00064
Figure 112014078957353-pat00065
이와 같은 상황에서 상술한 바와 같이, 제3 샘플에 의해 구성된 신규 평면이 가중치 스페이스상에 존재하는 서브스페이스를 분할하는지 여부를 판단하는 경우, 하기 수 15와 같은 부등식의 해가 존재하는지를 확인한다.
Figure 112014078957353-pat00066
Figure 112014078957353-pat00067
Figure 112014078957353-pat00068
수 15와 같은 부등식의 해가 존재하는 경우, 제3 샘플(Y3)에 의해 형성되는 신규 평면에 의해 가중치 스페이스내의 상기 서브스페이스는 분할된다.
이때, 분류기 설계 장치(100)는 부등식의 해를 구하는 방법으로 각 서브스페이스의 내부점을 이용할 수 있다.
도 2에서 보여지는 바와 같이, 가중치 스페이스상에서 샘플에 대한 평면에 의해 구성되는 서브스페이스는 평면과 평면의 방향을 나타내는 사인 플래그(sign flag)로 나타낼 수 있다. 여기서, 사인 플래그는 평면의 어느 쪽 방향이 서브스페이스의 내부를 구성하는지를 나타내며, 음수(-1) 또는 양수(1)일 수 있다. 일반적으로 서브스페이스는 가중치 스페이스에서 열린 피라미드 형태를 갖게 된다.
따라서, 각 서브스페이스는 샘플에 의해 형성되는 신규 평면에 의해 구성되며, 각 서브스페이스는 하기 수 16과 같은 수식으로 정리될 수 있다.
Figure 112014078957353-pat00069
여기서,
Figure 112014078957353-pat00070
는 j번째 샘플이 처리되었을 때 i번째 서브스페이스를 나타내고,
Figure 112014078957353-pat00071
Figure 112014078957353-pat00072
의 평면(plane)의 개수를 나타내며,
Figure 112014078957353-pat00073
는 i번째 서브스페이스에 대한 내부점을 나타내며,
Figure 112014078957353-pat00074
는 j번째 샘플이 처리되었을 때 맞게 분류된 샘플들의 개수를 나타내고,
Figure 112014078957353-pat00075
는 벡터와 사인 플래그를 포함하는 피라미드 평면 세트를 나타낸다. 여기서, 사인 플래그는 가중치 벡터에 의해 정의되는 평면의 어느 쪽(side)이 서브스페이스의 내부인지(즉, 피라미드의 내부인지)를 나타낸다.
본 발명의 일 실시예에서 피라미드 형태 서브스페이스는 복수개의 평면에 의해 구성된다. 예를 들어, 도 2의 (B)를 참조하면, 각각의 서브스페이스는 두 개의 면에 의해 정의될 수 있다(도 2에서는 1차원을 생략하여 선으로 표시함)
예를 들어, 서브스페이스를 L 평면이 구성한다고 가정하고, 임의의 지점(Z)가 해당 L 평면에 의해 형성되는 서브스페이스 내에 위치하는 경우, 지점(Z)는 L개의 각 평면에 대해 하기 수 17을 만족해야 한다.
Figure 112014078957353-pat00076
Figure 112014078957353-pat00077
예를 들어, 수 17에서 가중치 벡터와 사인플래그를 포함하는 피라미드 평면 세트가 {[1,2,1]T,1}인 경우, 평면의 양수쪽(positive plane)이 해당 서브스페이스의 내부가 된다. 즉, 피라미드 평면 세트{[1,2,1]T,1}는,
Figure 112014078957353-pat00078
을 의미한다. 반면에 피라미드 평면 세트가 {[2,2,1]T, -1}인 경우, 평면의 음수쪽(negative side)이 해당 서브스페이스의 내부에 해당된다. 즉, 피라미드 평면 세트{[2,2,1]T,-1}는,
Figure 112014078957353-pat00079
이 된다.
도 2의 설명에 의해 가중치 스페이스상에서 각 평면과 서브스페이스에 대한 개념은 충분히 이해되었을 것이다.
다시 도 1을 참조하여, 단계 120에서 분류기 설계 장치(100)는 신규 평면 추가에 따라 가중치 스페이스상의 각 서브스페이스를 분할하여 갱신한다.
예를 들어, 분류기 설계 장치(100)는 서브스페이스의 내부점과 서브스페이스를 구성하는 평면의 임의의 지점을 연산하여 제1 부호값을 결정할 수 있다. 이때, 서브스페이스를 구성하는 평면은 서브스페이스에 대응하는 부호를 포함하고 있다. 즉, 각 서브스페이스를 구성하는 평면에 대한 부등식에 기초하여 평면을 중심으로 서브스페이스의 내부 및 외부가 결정될 수 있다. 이는 수 14를 참조하여 설명한 바와 동일하므로 중복되는 설명은 생략하기로 한다.
이어, 분류기 설계 장치(100)는 서브스페이스의 내부점을 신규 평면으로 정사영시킨다. 그리고, 분류기 설계 장치(100)는 정사영된 내부점과 정사영된 내부점이 위치한 서브스페이스를 구성하는 복수의 평면의 임의의 지점을 연산하여 제2 부호값을 결정할 수 있다. 계산의 편의를 도모하기 위해 제1 부호값 및 제2 부호값을 결정시 각 평면의 임의의 지점은 각 평면을 구성하기 위한 확장된 샘플을 이용할 수도 있다.
내부점 또는 정사영된 내부점에 위치한 서브스페이스를 구성하는 평면이 복수이므로, 분류기 설계 장치(100)는 서브스페이스를 구성하는 복수의 평면 중 내부점과의 연산을 통해 부호값을 결정하기 위한 평면을 선택 시, 각 평면과 내부점과의 거리를 계산한 후 거리가 가장 가까운 평면을 선택할 수 있다.
이와 같이, 제1 부호값 및 제2 부호값이 결정되면, 분류기 설계 장치(100)는 제1 부호값과 제2 부호값이 동일한 경우, 신규 평면에 의해 해당 서브스페이스를 분할할 수 있다.
그러나, 만일 제1 부호값과 제2 부호값이 상이한 경우, 분류기 설계 장치(100)는 정사영된 내부점이 해당 서브스페이스의 내부에 위치하지 않는 것으로 판단하여 신규 평면에 의해 해당 서브스페이스를 분할하지 않을 수 있다.
다른 예를 들어, 도 5와 같이 새로 입력된 샘플에 의해 생성된 신규 평면을 바닥으로 가정하고, 임의의 서브스페이스를 신규 평면 상위에 위치하게 한 후 내부점을 작은 공으로 가정하여 낙하시키면, 신규 평면이 해당 서브스페이스를 분할하는 경우, 내부점은 신규 평면에 도달하게 된다.
그러나, 만일 내부점이 신규 평면에 도달하지 않는 경우, 해당 신규 평면은 해당 서브스페이스를 분할하지 않음을 알 수 있다.
이하, 도 6을 참조하여 다른 방법으로 이에 대해 설명하기로 한다.
단계 610에서 분류기 설계 장치(100)는 가중치 스페이스상에 존재하는 각 서브스페이스의 내부점을 신규 평면으로 각각 정사영(orthogonal projection)시킨다.
여기서, 내부점은 가중치 스페이스상의 서브스페이스 내에 포함되는 임의의 지점(point)을 나타낸다. 즉, 내부점은 서브스페이스 내에 위치하는 어떠한 지점으로 설정되어도 무방하다. 다만, 내부점은 해당 서브스페이스의 평면(plane)상에는 위치하지 않는 지점으로 설정되며, 가급적 서브스페이스 내의 중심에 가까이 위치되도록 설정된다.
도 7을 참조하여 설명하면, 가중치 스페이스상에 제1 평면이 형성되어 있으며, 제1 평면에 의해 제1 서브스페이스(410), 제2 서브스페이스(420)이 각각 구분되어 있다고 가정하자.
이때, 신규 샘플에 대한 신규 평면이 추가되면, 분류기 설계 장치(100)는 가중치 스페이스상에 이미 존재하는 서브스페이스(즉, 제1 서브스페이스(410)과 제2 서브스페이스(420))의 내부점을 신규 평면으로 정사영시킨다. 신규 평면 추가에 따라 서브 스페이스가 분할되는 경우 내부점을 갱신하는 방법에 대해서는 하기에서 다시 설명하기로 한다.
단계 615에서 분류기 설계 장치(100)는 각 서브스페이스의 정사영된 내부점이 각 서브스페이스 내에 위치하는지 여부를 판단한다.
예를 들어, 도 8을 참조하여 설명하면, 도 8에 도시된 바와 같이, 가중치 스페이스상에 두 개의 평면이 구성되어 있으며, 두 개의 평면에 의해 4개의 서브스페이스가 생성되어 있다고 가정하자. 이와 같은 상태에서 세번째 신규 입력데이터에 대한 신규 평면 추가에 따라 서브스페이스의 내부점을 신규 평면으로 정사영시킨다. 도 8에서는 제1 서브스페이스(810)의 내부점을 신규 평면으로 정사영시킨 일 예가 도시되어 있다.
예를 들어, 서브스페이스 S1의 내부점을 신규 평면으로 정사영시키면, 신규 평면으로 정사영된 내부점은 수 18을 통해 계산될 수 있다.
Figure 112014078957353-pat00080
여기서, C는 내부점을 나타낸다. 이에 따라, 신규 샘플 Y2=[-2,0,1]T가 입력되어 신규 평면이 도 7과 같이 생성되었다고 가정하면, 서브스페이스 S1에 대해 설정된 내부점이 [-1,0,0]T라면, 신규 평면으로 정사영된 내부점은 [-1/5, 0, -2/5]T와 같이 계산될 수 있다.
각 서브스페이스의 정사영된 내부점이 각 서브스페이스 내에 위치하면, 단계 620에서 분류기 설계 장치(100)는 정사영된 내부점이 위치하는 서브스페이스를 신규 평면을 기준으로 분할한다.
도 8에 도시된 바와 같이 정사영된 내부점이 제1 서브스페이스(810)내에 위치하므로, 분류기 설계 장치(100)는 제1 서브스페이스(810)를 분할 할 수 있다.
그러나 만일 정사영된 내부점이 각 서브스페이스 내에 위치하지 않으면, 단계 625에서 분류기 설계 장치(100)는 각 서브스페이스의 내부점을 신규 평면을 서브스페이스 내부 경로를 따라 이동시킨다.
예를 들어, 분류기 설계 장치(100)는 신규 평면에 대한 법선 벡터 중 서브스페이스(즉, 피라미드 서브스페이스)의 모든 면(기존 평면이라 칭하기로 함)과 평행한 법선 벡터가 존재하는 경우, 내부점을 신규 평면상으로 이동시킬 수 있다.
즉, 분류기 설계 장치(100)는 도 9에 도시된 바와 같이, 신규 평면에 내부점 해당 서브스페이스 내에 위치하지 않는 경우, 내부점을 기존 평면에 대해 평행 이동하여 피라미드 서브스페이스 내에 위치하면서 신규평면으로 이동시킬 수 있다. 신규 평면에 대한 법선 벡터 중 서브스페이스(즉, 피라미드 서브스페이스)의 모든 면(기존 평면이라 칭하기로 함)과 평행한 법선 벡터가 존재하지 않는 경우에도 내부점을 해당 서브스페이스 내부에서 이동하면서 신규 평면에 도달할 수 있는 가능성이 있다. 이후 하기에서 도 10을 참조하여 설명하기로 한다.
단계 630에서 분류기 설계 장치(100)는 신규 평면상으로 이동된 내부점이 해당 서브스페이스 내에 위치하는지 여부를 판단한다.
만일 신규 평면으로 이동된 내부점이 해당 서브스페이스 내에 위치하면, 단계 635에서 분류기 설계 장치(100)는 신규 평면을 기준으로 서브스페이스를 분할한다.
그러나 만일 신규 평면으로 이동된 내부점이 해당 서브스페이스 내에 위치하지 않으면, 단계 640에서 분류기 설계 장치(100)는 신규 평면을 기준으로 서브스페이스를 분할하지 않는다.
도 10 및 도 11을 참조하여 이동된 내부점과 신규 평면의 한 지점까지의 패스(path)를 찾고, 이를 이용하여 신규 평면의 기존 서브스페이스 분할 여부를 결정하는 것에 대해 보다 상세히 설명하기로 한다.
도 10을 참조하여 설명하면, 분류기 설계 장치(100)는 가중치 스페이스상에서 신규 평면이 추가되면, 제1 서브스페이스(S1)의 내부점을 신규 평면으로 정사영시킨다. 도 10에 도시된 바와 같이, 신규 평면에 정사영된 내부점은 해당 제1 서브스페이스에 위치되지 않는다. 따라서, 분류기 설계 장치(100)는 제1 서브스페이스의 내부점을 신규 평면의 법선 벡터 방향으로 이동시키게 되고, 내부점의 신규 평면을 향한 법선 벡터 방향으로의 이동에 따라 피라미드 한 개의 평면에 의해 막히게 된다. 도 10에는 내부점의 신규 평면을 향한 법선 벡터 방향으로의 이동에 따라 해당 피라미드 평면과 만나게 된 지점이 P1으로 도시되어 있다.
이와 같이, 블로킹(blocking)된 피라미드 평면과 만나게 되면, 내부점은 블로킹된 피라미드 평면에 평행한 방향으로 신규 평면을 향해 이동된다. 이와 같이 신규 평면을 향해 평행 이동된 내부점이 신규 평면에 도달하면 신규 평면에 평행한 방향이 약간 이동된다. 약간 이동 후 피라미드 스페이스내에 내부점이 위치하게 되는 경우, 해당 신규 평면을 기준으로 서브스페이스는 분할될 수 있다.
다른 예를 들어, 도 11을 참조하여 설명하면, 제1 서브스페이스의 내부점을 신규 평면에 정사영시키면, 정사영된 내부점이 제1 서브스페이스 내에 위치하지 않으므로, 분류기 설계 장치(100)는 제1 서브스페이스의 내부점을 신규 평면의 법선 벡터 방향으로 이동시킨다. 이에 따라 신규 평면의 법선 벡터 방향으로 이동된 내부점을 제1 서브스페이스의 피라미드 평면을 만나게 된다. 해당 지점이 도 10에는 P1으로 도시되어 있다. 피라미드 평면과 만난 내부점은 블로킹된 피라미드 평면에 평행한 방향으로 신규 평면을 향해 이동된다. 이와 같이 신규 평면을 향해 평행 이동된 내부점이 신규 평면에 도달 후 신규 평면에 평행한 방향을 약간 이동하게 된다. 이 경우 약간 이동된 내부점이 가중치 스페이스상의 원점을 지나게 되어 더 이상 피라미드 스페이스내에 위치하지 않으므로, 해당 신규 평면에 따른 제1 서브스페이스는 분할하지 않는다.
지금까지 도 10 및 도 11을 참조하여 신규 평면에 정사영된 내부점이 서브스페이스에 위치하지 않는 경우, 내부점을 이동하는 방법에 대해 설명하였다.
다시 도 6를 참조하여, 분류기 설계 장치(100)는 각 서브스페이스에 대한 내부점을 이용하여 해당 각 서브스페이스에 대한 갱신 과정(도 6)을 반복하여 수행할 수 있다. 또한, 분류기 설계 장치(100)는 각 서브스페이스에 대한 갱신 과정이 완료되면, 신규 평면에 도달한 내부점을 신규 평면 법선 벡터 양방향으로 이동시켜 해당 분할된 서브스페이스의 내부점으로 설정할 수 있다(도 12 참조).
다시, 도 1을 참조하여, 단계 125에서 분류기 설계 장치(100)는 갱신된 서브스페이스에 대한 컨퓨전 매트릭스를 생성하여 갱신한다. 또한, 분할되지 않은 서브스페이스에 대한 컨퓨전 매트릭스도 갱신한다.
예를 들어, 분류기 설계 장치(100)는 서브스페이스 갱신 이전의 각 서브스페이스에 대한 컨퓨전 매트릭스를 참조하여 갱신된 서브스페이스 각각에 대한 컨퓨전 매트릭스를 생성하여 갱신할 수 있다.
컨퓨전 매트릭스는 각 서브스페이스에서 각 클래스로 샘플이 정확하게 분류되는 개수(정확한 분류 개수)와 각 클래스에 대해 다른 클래스로 샘플이 부정확하게 분류되는 개수(부정확한 분류 개수)를 포함한다.
두 클래스 분류인 경우, 각 서브스페이스에서의 컨퓨전 매트릭스는 수 19와 같이 나타낼 수 있다.
Figure 112014078957353-pat00081
여기서,
Figure 112014078957353-pat00082
은 각각 분류 개수를 나타내며,
Figure 112014078957353-pat00083
Figure 112014078957353-pat00084
은 각각 클래스를 나타낸다.
즉, 수 19와 같이 두 클래스를 가정하는 경우, 컨퓨전 매트릭스의 각 행은 각 클래스로 분류되는 샘플 개수를 나타낸다. 보다 상세하게 컨퓨전 매트릭스의 각 행은 각 클래스에 대해 자기 자신으로 정확하게 분류된 샘플의 개수와 다른 클래스로 틀리게 분류된 샘플의 개수를 포함한다.
이에 따라, 제1행의 제1 칼럼은 제1 클래스(
Figure 112014078957353-pat00085
)에서 제1 클래스(
Figure 112014078957353-pat00086
)로 분류된 샘플의 개수를 나타내고, 제1 행의 제2 칼럼은 제1 클래스(
Figure 112014078957353-pat00087
)에서 제2 클래스(
Figure 112014078957353-pat00088
)로 분류된 샘플의 개수(즉, 부정확하게 분류된 샘플의 개수)를 나타낸다.
마찬가지로, 제2행의 제1 칼럼은 제2 클래스(
Figure 112014078957353-pat00089
)에서 제1 클래스(
Figure 112014078957353-pat00090
)로 틀리게 분류된 샘플의 개수(즉, 부정확하게 분류된 샘플의 개수)를 나타내고, 제2 행의 제2 칼럼은 제2 클래스(
Figure 112014078957353-pat00091
)에서 제2 클래스(
Figure 112014078957353-pat00092
)로 분류된 샘플의 개수를 나타낸다.
즉, 컨퓨전 매트릭스에서 대각선 요소(diagonal element)는 각각 자신의 클래스로 정확하게 분류된 샘플의 개수를 나타내고, 컨퓨전 매트릭스에서 비대각선 요소(non-diagonal element)는 다른 클래스로 틀리게 분류된 샘플의 개수를 나타낸다.
본 발명의 일 실시예에서는 이해와 설명의 편의를 도모하기 위해 두 클래스로 한정하여 설명하고 있으나, 다수의 클래스인 경우에도 동일하게 적용될 수 있으므로 이에 대한 별도의 설명은 생략하기로 한다.
이해와 설명의 편의를 도모하기 위해 도 2의 (a)와 같이 서브스페이스가 분할되어 갱신되었다고 가정하자.
도 2의 제1 서브스페이스(S1,1)에 대한 컨퓨전 매트릭스를 생성하면, 제1 서브스페이스(S1,1)의 모든 가중치 벡터는 제1 클래스로 정확하게 제1 샘플(Y1)을 분류하므로, 제1 서브스페이스에 대한 컨퓨전 매트릭스는
Figure 112014078957353-pat00093
와 같이 생성된다.
그러나, 제2 서브스페이스(S1,2)의 모든 가중치 벡터는 제1 클래스로 제1 제1 샘플(Y1)을 모두 부정확하게 분류하므로, 제2 서브스페이스에 대한 컨퓨전 매트릭스는
Figure 112014078957353-pat00094
과 같이 생성된다.
이와 같은 방식으로, 각 서브스페이스가 갱신될 때마다 각 서브스페이스에 대한 컨퓨전 매트릭스도 다시 생성 계산될 수 있다. 또한, 새로운 샘플에 의해 신규 평면이 추가될 때 서브스페이스가 분할되지 않는 서브스페이스에 대해서도 컨퓨전 매트릭스는 갱신되어야 한다.
다시 도 1을 참조하면, 단계 130에서 분류기 설계 장치(100)는 모든 미분류 샘플에 대해 단계 110 내지 단계 125를 수행하였는지 여부를 판단한다.
만일 모든 미분류 샘플에 대해 단계 110 내지 단계 125를 수행하지 않은 경우, 단계 110으로 진행한다.
모든 미분류 샘플에 대하여 가중치 스페이스상에 존재하는 각 서브스페이스의 신규 평면에 의해 구분되는 서브스페이스를 갱신하는 과정이 완료되면, 단계 135에서 분류기 설계 장치(100)는 컨퓨전 매트릭스를 이용하여 갱신 완료된 서브스페이스 중 어느 하나의 서브스페이스의 내부점을 클래스 분류를 위한 가중치 벡터로 선택하여 선형 분류기를 설계하고, 설계된 선형 분류기에 대한 결정클래스와 설계된 선형 분류기를 출력한다.
이어, 단계 140에서 분류기 설계 장치(100)는 출력된 선형 분류기를 이용하여 샘플을 분류한 후 출력된 결정클래스로 분류된 샘플에 대해서만 분류 결과로 결정하고, 결정클래스 이외의 나머지 다른 클래스로 분류된 샘플은 미분류 상태로 남겨둔다.
본 발명의 일 실시예에 따르면, 출력된 선형 분류기가 결정클래스로 샘플을 분류하는 경우, 오류가 없어야 한다. 예를 들어, 출력된 선형 분류기의 컨퓨전 매트릭스가
Figure 112014078957353-pat00095
인 경우, 출력된 선형 분류기가 제2 클래스(
Figure 112014078957353-pat00096
)로 분류하는 경우, 항상 정확하게 샘플을 분류한 것이 된다. 즉, 결정클래스에 해당하는 칼럼(column)의 비대각 요소가 영(zero)인 것이 바람직하다. 물론, 컨퓨전 매트릭스에서 오류 샘플 수가 맞게 분류되는 샘플 수에 비하여 현저하게 작은 경우, 해당 서브스페이스에서의 가중치 벡터를 선택하는 것이 가능하다. 즉, 비대각 요소와 대각 요소의 비율을 계산하여 특정 값보다 적은 경우 해당 서브스페이스에서 가중치 벡터를 선택하는 것이 가능하다.
단계 145에서 분류기 설계 장치(100)는 분류가 결정된 샘플을 제외하고 미분류 상태로 남아 있는 샘플에 대해 상기 과정을 반복한다.
이때, 분류기 설계 장치(100)는 모든 샘플에 대한 분류가 완료될 때까지 상기 과정을 반복할 수 있다. 모든 과정이 완료되면, 복수개의 선형 분류기가 결정클래스와 함께 설계된다.
본 발명의 일 실시예에 따르면, 미분류 상태로 남아 있는 샘플에 대해 상기 과정을 반복할 때, 단계 110부터 시작할 수도 있으며, 생성된 서브스페이스에 대해 분류가 결정된 샘플을 제외하고 각 컨퓨전 매트릭스를 갱신하여 수행할 수도 있다.
예를 들어, 도 14의 (a)을 참조하여 제2 서브스페이스(S4,2)가 선택되면, 제2 클래스(
Figure 112014078957353-pat00097
)의 일부 샘플(도14a에서는 Y2)을 정확하게 분류할 수 있다. 이 때 Y2에 해당하는 평면을 제거하면 도14의 (b)와 같이 일부 서브스페이스가 통합되게 된다 (S4,1과 S4,2통합, S4,4과 S4,5통합). 통합되는 서브스페이스에서는 분류가 결정된 샘플을 제외하면 동일한 컨퓨전 매트릭스 갖게 된다. 예로 통합되는 S4,1과 S4,2의 경우 분류가 결정된 Y2를 제외하면 동일한 컨퓨전 매트릭스
Figure 112014078957353-pat00098
를 갖는다. 여기서, 통합되지 않은 서브스페이스의 컨퓨전 매트릭스도 Y2를 제외하여 갱신하여야 한다.
전술한 바와 같이 모든 샘플에 대한 상기의 과정이 완료되면, 복수의 서브스페이스가 생성된다. 생성된 복수의 서브스페이스에 하나의 서브스페이스를 선택하는 과정을 반복하여 복수개의 선형 분류기를 순차적으로 적용하는 분류기 설계 과정을 상세히 설명하면 도 13과 같다.
모든 샘플에 대한 서브스페이스 갱신 과정이 완료되면(단계 1310), 단계 1315에서 분류기 설계 장치(100)는 각 서브스페이스에 대한 컨퓨전 매트릭스가 생성되면, 컨퓨전 매트릭스의 비대각선 요소(non-diagonal element)가 제1값(예를 들어, 0)인 칼럼을 가지는 서브스페이스를 선택한다.
이때, 비대각선 요소가 제1 값인 칼럼을 가지는 서브스페이스가 복수인 경우, 분류기 설계 장치(100)는 비대각선 요소가 제1 값인 칼럼 중 대각선 요소(diagonal element)가 가장 큰 값을 가지는 서브스페이스를 선택할 수 있다.
또한, 분류기 설계 장치(100)는 각 서브스페이스의 컨퓨전 매트릭스의 비대각선 요소를 확인하여 비대각선 요소의 값이 최소인 서브스페이스를 선택할 수 있다.
또한, 분류기 설계 장치(100)는 각 서브스페이스의 컨퓨전 매트릭스의 비대각선 요소와 대각선 요소의 비율(비대각/대각)을 확인하여 비대각선 요소와 대각선 요소의 비율이 최소인 서브스페이스를 선택할 수도 있다.
예를 들어, 임의의 칼럼(column)의 비대각선 요소가 1이고, 대각선 요소가 1000이면, 이는 1000개의 샘플은 맞게 분류되고 1개의 샘플만이 틀리게 분류됨을 의미한다.
컨퓨전 매트릭스를 이용하여 어느 하나의 서브스페이스가 선택되면, 단계 1320에서 분류기 설계 장치(100)는 선택된 서브스페이스의 내부점(가중치 벡터)에 의해 모든 샘플이 정확하게 분류되면, 선택된 서브스페이스의 내부점을 분류기의 가중치 벡터로 선택하여 최종 출력한 후 종료한다. 최종 출력되는 선형분류기는 미분류 없이 모든 샘플에 대해 분류 결정을 한다.
예를 들어, 분류기 설계 장치(100)는 각 서브스페이스의 컨퓨전 매트릭스의 비대각선 요소가 제1 값이 칼럼을 가지는 서브스페이스가 복수인 경우, 해당 열의 대각선 요소가 가장 큰 값을 선택하고 해당 열에 대응하는 클래스를 결정클래스로 출력할 수 있다.
단계 1325에서 분류기 설계 장치(100)는 선택된 서브스페이스의 내부점(가중치 벡터)에 의해 모든 샘플이 정확하게 분류되지 않으면, 컨퓨전 매트릭스의 비대각선 요소가 제1 값인 칼럼을 가지는 복수의 서브스페이스 중 칼럼의 대각선 요소가 가장 큰 값을 가지는 서브스페이스를 선택하고, 해당 선택된 서브스페이스에서 분류기의 가중치 벡터로 선택하고, 해당 칼럼에 대응하는 클래스를 결정클래스로 출력한다.
단계 1330에서 분류기 설계 장치(100)는 결정클래스로 분류되는 샘플은 분류가 결정된 샘플로 결정하여 추후 고려 대상에서 제외시키고, 선택된 가중치 벡터가 다른 클래스로 분류하는 샘플은 미분류 상태로 남겨둔다. 그리고, 분류기 설계 장치(100)는 미분류된 샘플을 가지고 단계 1310 내지 단계 1325를 반복 수행한다. 이때, 분류기 설계 장치(100)는 단계 1320에서 모든 샘플이 정확하게 분류되면, 최종 선형분류기의 가중치 벡터를 출력하고 종료한다. 상술한 바와 같이 최종 출력되는 선형분류기는 미분류 없이 모든 샘플에 대해 분류 결정을 한다.
단계 1320에서 출력되는 복수개의 가중치 벡터와 결정클래스를 취합하면, 본 발명의 일 실시예에 따른 분류 방법이 된다. 즉, 적용순서가 정해진 복수개의 선형 분류기가 결정클래스와 함께 출력될 수 있다.
이와 같은 과정을 상세히 설명하기 위하여 도 14의 (a)를 참조하면, 분류기 설계 장치(100)는 컨퓨전 매트릭스를 이용하여 제2 서브스페이스(S4,2) 또는 제8 서브스페이스(S4,8) 중 어느 하나의 서브스페이스를 선택할 수 있다
분류기 설계 장치(100)는 선택된 서브스페이스의 가중치 벡터를 사용하여 모든 샘플을 정확하게 분류할 수 있으면 가중치 벡터를 출력하고 분류기 설계 과정을 종료할 수 있다.
예를 들어, 분류기 설계 장치(100)가 제2 서브스페이스(S4,2)와 제8 서브스페이스(S4,8) 중 제2 서브스페이스(S4,2)를 선택하였다고 가정하자. 이 때 S4,2에 대한 결정클래스는
Figure 112014078957353-pat00099
이 된다. 즉 출력되는 가중치와 결정클래스는 S4,2의 임의의 내부점과
Figure 112014078957353-pat00100
이 된다.
이 때 선택된 가중치를 사용하여 선형 분류하는 경우 결정클래스(
Figure 112014078957353-pat00101
)로 분류되는 제2 샘플(Y2)이고, 나머지 3개의 샘플(Y1, Y3, Y4)은
Figure 112014078957353-pat00102
로 분류되어 미분류 상태로 남게 된다. 미분류 상태인 3개의 샘플(Y1, Y3, Y4)에 대하여 도 13의 과정을 반복한다. 미분류 상태인 3개의 샘플(Y1, Y3, Y4)은 선형 분류가 가능함으로 단계 1320에서 본 발명의 일 실시예에 따른 분류기 설계 과정은 종료될 수 있다. 즉 최종적으로 출력되는 가중치 벡터는 모든 클래스에 대하여 분류 결정을 내리게 된다.
앞서 기술한 바와 같이 미분류 상태인 3개의 샘플(Y1, Y3, Y4)에 대하여 단계 1310을 반복하는 대신, 기존에 생성된 서브스페이스를 통합 갱신한 후 단계 1325부터 반복할 수 있다. 즉, 분류기 설계 장치(100)는 분류 결정이 확정된 샘플 (도14의 (a)에서는 Y2)에 해당하는 평면을 제거하여 일부 서브스페이스를 다른 서브스페이스와 통합된다. 도 14의 (a)에서 Y2에 해당하는 평면을 제거하면, 도 14의 (b)와 같이 8개의 서브스페이스가 6개의 서브스페이스로 통합 갱신될 수 있다. 이 때 모든 6개의 서브스페이스의 컨퓨전 매트릭스도 갱신된다.
이어, 통합 갱신된 서브스페이스의 컨퓨전 매트릭스도 앞서 기술한 방법에 따라 갱신한다. 도 14의 (b)에 도시된 바와 같이, 서브스페이스의 통합에 따라 각 서브스페이스에 대한 컨퓨전 매트릭스가 달라진 것을 알 수 있다.
즉, 분류기 설계 장치(100)는 통합된 서브스페이스 각각에 대해 계산된 컨퓨전 매트릭스를 참조하여, 컨퓨전 매트릭스에서 비대각선 요소의 값이 제1 값인 칼럼을 갖는 컨퓨전 매트릭스의 서브스페이스를 선택하고, 선택된 서브스페이스의 내부점을 클래스에 대한 가중치 벡터로 선정하여 결정클래스와 함께 출력한다. 이러한 과정을 모든 샘플에 대한 분류결정이 완료될 때까지 반복 수행한다.
도 15는 본 발명의 일 실시예에 따른 비선형 결정 경계를 갖는 분류 문제를 복수개의 분류기를 이용하여 순차적으로 분류하는 방법을 설명하기 위해 도시한 도면이고, 도 16 및 도 18은 본 발명의 일 실시예에 따른 비선형 결정경계를 갖는 분류 문제를 복수개의 선형 분류기를 사용하여 순차적으로 선형 분류하는 방법을 설명하기 위해 도시한 도면이다.
단계 1510에서 분류 장치는 복수개의 분류기와 각 분류기에 대한 결정클래스를 입력 받는다.
이어, 단계 1515에서 분류 장치는 적용 순서가 정해진 복수개의 분류기와 결정클래스를 주어진 순서대로 분류기를 적용하되, 결정클래스로 분류된 샘플만 분류 결과로 결정하고, 다른 클래스로 분류된 샘플은 미결정 샘플로 남겨둔다.
분류 장치는 적용 순서에 따라 단계 1515를 순차적으로 수행한다.
단계 1520에서 분류 장치는 적용 순서에 따라 마지막 분류기를 적용할 때는 모든 미분류 샘플에 대한 최종 분류를 결정한다.
도 15의 상술한 분류 방법을 도 16 내지 도 18을 참조하여 설명하면 다음과 같다.
도 16의 (a)는 비선형 결정경계를 갖는 두 클래스 데이터를 분류하는 방법을 예시한 것이다. 도 1에서 전술한 방법에 따라 설계된 적용순서가 정해진 복수개의 선형분류기(가중치 벡터)와 결정클래스를 사용하여 비선형 결정경계를 갖는 두 클래스 데이터를 분류한다. 제1 선형 분류기를 사용하여 ?1로 분류된 일부 샘플(도 15의 (b)에서 직선의 화살표 방향 쪽에 있는 영역)에 대해서만 분류 결정을 내리고 ?0으로 분류된 샘플은 미분류 상태로 남겨둔다. 제2 선형분류기를 ?0로 분류된 일부 샘플(도 15의 (c)에서 직선의 화살표 방향 쪽에 있는 영역)에 대해서만 분류 결정을 내리고 w1으로 분류된 샘플은 미분류 상태로 남겨둔다. 마지막 분류기인 제3 분류기를 사용하여 미분류로 남아 있는 모든 데이터를 분류한다(도 15의 (d)).
도 17에 도시된 바와 같이, 비선형 결정경계를 갖는 두 클래스 데이터 분류하는 방법은 많은 가능성이 존재한다. 즉 도 17에 표시된 선형분류기(3개의 직선) 중 어떠한 것을 사용하여도 ?0의 일부를 정확하게 분류할 수 있다. 이와 같은 경우, 분류 시간을 단축하고 복잡도를 감소시키기 위하여 가장 큰 영역을 정확하게 분류하는 선형분류기를 선택하는 것이 유리하다.
이와 같이, 비선형 결정경계를 갖는 샘플들을 복수개의 선형분류기를 순차적으로 적용하여 정확하게 분류할 수 있다.
도 18은 앞서 기술한 방법을 적용하기가 어려운 비선형 결정경계 문제의 예를 보여 준다. 이 경우, 어떠한 선형분류기도 데이터의 일부를 하나의 클래스로 정확하게 분류하는 것이 불가능한 경우이다. 이러한 경우 도 16의 (a)의 예시와 같은 경우, 분류기 설계 장치(100)는 특정 클래스로의 분류 결정 없이 전체 데이터를 복수개의 그룹으로 분할하는 가중치를 출력한다 (도 16(b)의 직선에 해당하는 가중치). 분할된 복수개의 그룹은 도 16의 (c)와 (d)에 도시된 바와 같이, 전술한 방법을 사용하여 순차적으로 분류할 수 있다. 즉 2개의 그룹으로 분할 후, 분류기 설계 장치(100)는 총 7번의 선형 분류 과정을 통해 정확하게 데이터를 분류할 수 있는 7개의 가중치 벡터와 해당 결정클래스를 출력한다. 이 때 출력되는 가중치 벡터가 어느 그룹인지 명시되어야 함은 물론이고, 각 그룹의 마지막 분류기인 3번과 7번은 결정클래스가 없다. 즉, 마지막 분류기는 각 그룹에서 미분류로 남아 있는 모든 데이터를 분류한다.
도 19는 3개 이상의 클래스(이하, 멀티 클래스)가 존재하는 분류 문제를 전술한 방법을 이용하여 분류하는 방법을 적용한 일 예를 도시한 것이다. 도 19에 도시한 바와 같이 멀티 클래스 분류의 경우, 분류기 설계 장치(100)는 하나의 클래스를 선택하고, 남은 클래스를 단일 타클래스로 취급하여 처리하는 과정을 반복적으로 수행할 수 있다.
도 19는 멀티 클래스 분류를 설명하기 위한 것으로, 도 19의 (a)와 같이 4 클래스로 데이터가 존재한다고 가정하자. 이때, 분류기 설계 장치(100)는 제1 클래스(
Figure 112014078957353-pat00103
)를 하나의 클래스로 선택하고, 남은 3개의 클래스의 데이터를 단일 타클래스(the other)로 취급하여 앞서 기술한 방법을 적용한다. 이 경우 가중치 벡터 선정 시 반드시 제1 클래스(
Figure 112014078957353-pat00104
가 결정클래스인 가중치 벡터만을 선정한다 (도 17의 (b)). 이 경우 제1 클래스(
Figure 112014078957353-pat00105
전체에 대하여 분류 결정을 내리게 된다. (도 17의 (b)에서 직선의 화살표 방향 쪽에 있는 영역)
이어, 분류기 설계 장치(100)는 제2 클래스(
Figure 112014078957353-pat00106
)를 타겟 클래스로 선택하고, 나머지를 단일 타클래스로 간주하여 동일한 방법으로 제2 클래스(
Figure 112014078957353-pat00107
)의 일부 데이터를 선형 분류할 수 있다(도 17의 (c)에서 직선의 화살표 방향 쪽에 있는 영역).
또한, 분류기 설계 장치(100)는 제3 클래스(
Figure 112014078957353-pat00108
)를 타겟 클래스를 선택하고, 나머지를 단일 타클래스로 간주하여 제3 클래스의 일부 데이터를 선형 분류할 수 있다 (도 17의 (d)에서 직선의 화살표 방향 쪽에 있는 영역). 그리고, 분류기 설계 장치(100)는 제4 클래스(
Figure 112014078957353-pat00109
)를 타겟 클래스로 선택하고, 나머지를 단일 타클래스로 간주하여 제4 클래스(
Figure 112014078957353-pat00110
의 전체 데이터를 선형 분류한다(도 17의 (e)에서 직선의 화살표 방향 쪽에 있는 영역). 아직 미분류로 남은 샘플에 대해서는 상기 과정을 반복한다. 도 17의 경우 도 17(e) 이후, 미분류로 남은 샘플에 대해 1회의 선형 분류기를 적용하면 모든 샘플이 분류할 수 있게 된다. 분류기 설계에서는 가중치 벡터와 타겟 클래스(이 경우 결정클래스와 동일)를 순차적으로 출력한다. 출력된 복수개의 가중치 벡터와 결정클래스를 사용하여 비선형 결정 경계를 갖는 멀티클래스 데이터의 분류를 수행할 수 있음은 전술한 바와 같다.
상술한 바와 같이, 본 발명의 일 실시예에 따르면, 멀티 클래스 분류의 경우, 하나의 클래스를 타겟 클래스로 선택한 후 나머지를 단일 타클래스로 간주하여 타겟 클래스의 일부 샘플을 분류하는 과정을 모든 샘플이 분류될 때까지 반복적으로 수행할 수 있다.
이로 인해, 본 발명의 일 실시예에 따른 분류기 설계 장치(100)는 비선형 결정경계를 갖는 데이터를 복수 개의 선형 분류기를 순차적으로 적용하여 정확하게 분류할 수 있는 이점이 있다. 또한 본 발명의 일 실시예에 따른 분류기 설계 장치(100)는 데이터에 일부 변경(샘플 추가, 클래스 추가 등)이 발생하는 경우 국부 조정만으로 성능을 유지할 수 있는 장점이 있다. 즉 데이터에 일부 변경이 발생하여도, 대부분의 분류기와 결정클래스는 계속 사용하는 것이 가능하다. 또한 데이터가 지속적으로 추가되더라도, 기존에 설계된 분류기와 결정클래스는 계속 사용하거나 국부적으로 조정하여 사용하는 것이 가능하고, 점진적으로 학습하여 성능을 유지할 수 있는 장점이 있다. 예로 도 20의 (g)와 같이 ?0가 2개의 클래스(?0, ?4)로 분리되는 경우, 기존이 모든 분류기와 결정클래스를 그대로 사용하고, 하나의 선형분류기를 추가함으로 모든 샘플을 정확하게 분류할 수 있다.
도 20은 본 발명의 일 실시예에 따른 데이터 차원을 축소한 후 도 1 내지 도 19를 이용하여 설명한 방법을 적용하고, 미분류된 샘플에 대해서만 주어진 차원에서 분류하는 방법을 설명하기 위해 도시한 도면이다.
도 20의 (a)는 3차원 공간에서 완전히 분류가 가능한 문제를 보여 준다. 이를 임의의 2차원 공간으로 투영하면 도 20의 (b)와 같이 된다. 이 경우, 일부 중첩된 영역의 샘플을 제외하고 나머지 모든 샘플은 2차원 공간에서 정확하게 분류될 수 있다.
따라서, 중첩된 부분(overlap)에 대해서는 미분류 상태로 남겨 두고, 중첩되지 않은 영역의 샘플은 2차원 공간에서 도 1 내지 도 19를 이용하여 전술한 방법으로 정확하게 분류한다. 중첩된 영역에 속한 샘플은 미분류 상태로 남겨둔다. 즉, 2차원 공간에서 최대한의 분류를 수행하고, 중첩된 부분에 속한 미분류 샘플에 한하여 원래 3차원 공간에서 도 1 내지 도 19를 이용하여 전술한 방법으로 분류를 수행한다. 이와 같이 저차원에서 최대한의 분류를 수행함으로 분류 시간과 연산량을 크게 단축할 수 있는 장점이 있다. 이 경우 분류기 설계 시, 축소된 차원 정보를 출력한 후, 가중치 벡터와 타겟 클래스(이 경우 결정클래스와 동일)를 순차적으로 출력한다. 중첩된 영역의 데이터를 처리하기 위하여 다음에 사용된 차원 정보를 출력한 후 동일한 과정을 반복한다. 차원 정보 및 출력된 복수개의 가중치 벡터와 결정클래스를 사용하여 분류를 수행할 수 있음과 앞 서 기술한 바와 동일하다. 단 저차원에서 중첩된 영역에 속하는 샘플은 미분류 상태로 남겨 두고, 이러한 미분류 샘플은 보다 높은 차원에서 앞서 기술한 방법대로 설계된 적용순서가 정해진 복수개의 분류기와 결정클래스를 사용하여 분류를 수행한다. 도 20에서는 2개의 차원(2차원 및 3차원)에서 수행하는 방법을 설명하였으나 중간 단계의 차원을 추가할 수 있음은 당연하다. 예로 100차원의 데이터가 주어지는 경우, 먼저 2차원으로 투영하여 최대한 분류를 수행하고, 미분류 샘플에 대하여 10차원으로 투영하여 최대한 분류를 수행하는 등, 복수개의 차원에서 분류를 수행하여 연산량을 최소로 하는 것이 가능하다.
이상에서는 적용 순서가 정해진 복수개의 분류기에 있는 모든 분류기는 선형 분류기를 가정하였으나 이 중의 일부를 기존의 비선형 분류기로 대체할 수 있음은 물론이다. 즉 기존에 알려진 비선형 분류기 (예, Gaussian ML classifier, 신경망 등) 사용하여 일부 선형 분류기를 대체할 수도 있음은 당연하다.
도 21은 본 발명의 일 실시예에 따른 선형 분류기 설계 장치의 내부 구성을 개략적으로 도시한 블록도이다.
도 21을 참조하면, 본 발명의 일 실시예에 따른 분류기 설계 장치(100)는 평면 계산부(2110), 갱신부(2115), 매트릭스 생성부(2120), 가중치 및 클래스 출력부(2125), 메모리(2130) 및 제어부(2135)를 포함하여 구성된다.
평면 계산부(2110) 는 N(2이상의 자연수)차원 가중치 스페이스상에서 신규 샘플에 대한 신규 평면을 구성할 수 있다. 전술한 바와 같이, 샘플에 상수항을 추가하여 차원을 확정하고, 차원이 확장된 샘플에 대해 가중치 스페이스상에서의 신규 평면을 생성할 수 있다. 이는 도 1에서 전술한 바와 동일하므로 상세한 설명은 생략하기로 한다.
갱신부(2115)는 신규 평면에 의해 가중치 스페이스상에 존재하는 각 서브스페이스의 분할 여부를 판단하여 해당 서브스페이스를 갱신하는 기능을 수행한다.
예를 들어, 갱신부(1015)는 각 서브스페이스의 내부점을 상기 신규 평면상으로 이동하여 내부점이 각 서브스페이스 내에 위치하면, 신규 평면에 의해 구분되는 서브스페이스를 분할하여 갱신할 수 있다.
또한, 갱신부(2115)는 복수개의 부등식의 해를 구하여 서브스페이스의 분할 여부를 결정할 수 있다. 이는 이미 전술한 바와 동일하므로 중복되는 설명은 생략하기로 한다.
매트릭스 생성부(2120)는 모든 샘플에 대한 가중치 스페이스상에서의 서브스페이스 갱신 과정이 완료되면, 각 서브스페이스에서의 각 클래스로 정확하게 분류되는 샘플의 개수와 부정확하게 분류되는 샘플의 개수를 포함하는 컨퓨전 매트릭스를 생성한다. 이는 전술한 바와 동일하므로 중복되는 설명은 생략하기로 한다.
가중치 및 클래스 출력부(2125)는 각 서브스페이스의 컨퓨전 메트릭스를 이용하여 각 서브스페이스 중 어느 하나의 서브스페이스에서 내부점을 클래스 분류를 위한 가중치 벡터로 선택하고, 선택된 가중치 벡터에 대한 결정클래스를 결정하며, 가중치 벡터와 결정클래스를 출력하는 기능을 수행한다. 이에 대해서는 도 1 내지 도 19를 참조하여 설명한 바와 동일하므로 중복되는 설명은 생략하기로 한다.
메모리(2130)는 본 발명의 일 실시예에 따른 분류기 설계 장치(100)를 운용하기 위해 필요한 알고리즘, 데이터 등을 저장하는 기능을 한다.
제어부(2135)는 본 발명의 일 실시예에 따른 분류기 설계 장치(100)의 내부 구성 요소들(예를 들어, 평면 계산부(2110), 갱신부(2115), 매트릭스 생성부(2120), 가중치 및 클래스 출력부(2125), 메모리(2130) 등)을 제어하는 기능을 한다.
또한, 제어부(2135)는 컨퓨전 매트릭스의 비대각 요소의 값이 제1 값을 갖는 서브스페이스가 없는 경우, 전체 샘플을 복수의 그룹으로 분할하는 사전 프로세스를 수행할 수도 있다.
또한, 제어부(2135)는 모든 샘플에 대한 분류가 완료될때까지 평면 계산부(2110), 갱신부(2115), 매트릭스 생성부(2120), 가중치 및 클래스 출력부(2125)가 반복적으로 수행되도록 제어할 수도 있다.
또한, 제어부(2135)는 클래스가 다수인 경우, 다수의 클래스 중 어느 하나를 타겟 클래스로 선택하고, 나머지 클래스를 단일 타클래스로 설정하는 사전 프로세스를 수행할 수도 있다. 이와 같은 경우, 상기 가중치 및 클래스 출력부에 의해 상기 가중치 벡터 선택에 따른 분류 결정이 완료되는 클래스는 타겟 클래스일 수 있다.
도 22는 본 발명의 일 실시예에 따른 분류 장치의 내부 구성을 개략적으로 도시한 블록도이다.
도 22를 참조하면, 본 발명의 일 실시예에 따른 분류 장치(2200)는 입력부(2210), 투영부(2215), 분류부(2220), 메모리(2225) 및 제어부(2230)를 포함하여 구성된다.
입력부(2210)는 복수의 가중치 벡터와 결정클래스를 입력 받기 위한 수단이다. 물론, 입력부(2210)는 분류를 위한 데이터를 입력 받을 수도 있음은 당연하다.
투영부(2215)는 주어진 차원의 데이터를 낮은 차원으로 투영하기 위한 수단이다. 예를 들어, 투영부(2215)는 3차원 데이터를 2차원으로 투영할 수 있다. 물론, 투영부(2215)는 100차원의 데이터를 2차원으로 투영할 수도 있으며, 필요에 따라 10차원과 같이 중간 차원으로 투영할 수도 있음은 당연하다.
투영부(2215)는 제어부(2230)의 제어에 따라 동작될 수도 있으며, 동작되지 않을 수도 있다.
분류부(2220)는 정해진 순서대로 분류기를 적용하고 분류기에 대응하는 결정클래스로 분류된 샘플만 분류 결과로 결정하고, 나머지 타클래스로 분류되는 샘플은 미결정 상태로 남겨둔다. 이때, 분류부는 분류 결과로 결정된 샘플을 제외하고 상기 미결정 상태로 남겨진 샘플에 대한 분류 과정을 반복 수행한다.
또한, 분류부(2220)는 낮은 차원으로의 투영에 따라 미중첩 영역의 샘플을 상기 적용 순서가 정해진 상기 분류기와 결정클래스를 이용하여 분류하고, 낮은 차원으로의 투영에 따라 중첩된 영역의 샘플을 상기 주어진 차원에서 적용 순서가 정해진 복수개의 분류기와 결정클래스를 이용하여 분류할 수도 있다.
분류부(2220)의 동작은 이미 전술한 바와 동일하므로 중복되는 설명은 생략하기로 한다.
메모리(2225)는 본 발명의 일 실시예에 따른 분류 장치를 운용하기 위해 필요한 다양한 알고리즘, 분류 과정에서 파생되는 다양한 데이터를 저장한다.
제어부(2230)는 본 발명의 일 실시예에 따른 분류 장치(2200)의 내부 구성들(예를 들어, 입력부(2210), 투영부(2215), 분류부(2220), 메모리(2225) 등)을 제어하는 기능을 수행한다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
2110: 평면 계산부
2115: 갱신부
2120: 매트릭스 생성부
2125: 가중치 및 클래스 출력부
2130: 메모리
2135: 제어부

Claims (28)

  1. (a) N(2이상의 자연수)차원 가중치 스페이스상에서 샘플에 대한 신규 평면을 구성하는 단계;
    (b) 상기 가중치 스페이스에 존재하는 복수의 서브스페이스가 상기 신규 평면에 의해 분할되는지 여부에 따라 상기 신규 평면을 이용하여 상기 서브스페이스를 분할하여 갱신하는 단계;
    (c) 상기 갱신된 서브스페이스 각각에 대해 각 클래스에 대한 정확하게 분류되는 샘플 개수 및 부정확하게 분류되는 샘플 개수를 포함하는 컨퓨전 매트릭스를 생성하고, 미갱신된 서브스페이스 각각에 대해 각 클래스에 대한 정확하게 분류되는 샘플 개수 및 부정확하게 분류되는 샘플 개수를 포함하는 컨퓨전 매트릭스를 갱신하는 단계; 및
    (d) 상기 생성 또는 갱신된 컨퓨전 매트릭스를 이용하여 상기 갱신된 서브스페이스와 상기 미갱신된 서브스페이스 중 어느 하나의 서브스페이스의 내부점을 클래스 분류를 위한 가중치 벡터로 선택하고, 상기 선택된 가중치 벡터에 대한 결정클래스를 결정하며, 상기 가중치 벡터와 결정클래스를 출력하는 단계를 포함하는 분류기 설계 방법.
  2. 제1 항에 있어서,
    상기 생성 또는 갱신된 컨퓨전 매트릭스는,
    각 클래스로의 정확하게 분류되는 샘플 개수를 대각선 요소로 포함하고, 상기 각 클래스의 샘플이 다른 클래스로 부정확하게 분류되는 샘플 개수를 비대각선 요소로 포함하여 생성되되,
    컨퓨전 매트릭스의 각 행과 각 칼럼은 각 클래스의 인덱스를 순차적으로 나타내고 각 요소는 각 행에 따른 클래스가 각 칼럼에 따른 클래스로 분류되는 샘플 개수를 포함하는 것을 특징으로 하는 분류기 설계 방법.
  3. 제1 항에 있어서,
    상기 (d) 단계 이전에,
    상기 모든 샘플에 대해 상기 (a) 단계 내지 상기 (c) 단계를 반복하는 것을 특징으로 하는 분류기 설계 방법.
  4. 제1 항에 있어서,
    상기 (d) 단계 이전에,
    상기 생성 또는 갱신된 컨퓨전 매트릭스의 비대각 요소의 값이 제1 값을 갖는 서브스페이스가 없는 경우, 전체 샘플을 복수의 그룹으로 분할 한 후 각 그룹에 대해 상기 (a) 단계 내지 상기 (d) 단계를 수행하는 것을 특징으로 하는 분류기 설계 방법.
  5. 제1 항에 있어서,
    상기 (d) 단계는,
    (d1) 상기 갱신된 서브스페이스와 상기 미갱신된 서브스페이스 각각에 대한 컨퓨전 매트릭스에서 제1값을 갖는 비대각선 요소를 포함하는 칼럼(column)을 가지는 컨퓨전 매트릭스를 포함하는 서브스페이스를 선택하는 단계; 및
    (d2) 상기 선택된 서브스페이스의 내부점을 분류를 위한 가중치 벡터로 선택하고 상기 칼럼에 해당하는 클래스를 결정클래스로 하여 상기 가중치 벡터와 상기 결정클래스를 출력하는 단계를 포함하는 분류기 설계 방법.
  6. 제5 항에 있어서,
    상기 (d) 단계는,
    상기 선택된 서브스페이스의 컨퓨전 매트릭스의 모든 비대각선 요소가 영(zero)인 경우, 상기 선택된 서브스페이스의 내부점을 분류를 위한 마지막 가중치 벡터로 선택하여 출력하고 분류기 설계 과정을 종료하는 것을 특징으로 하는 분류기 설계 방법.
  7. 제1 항에 있어서,
    상기 (d) 단계는,
    상기 선택된 가중치 벡터를 이용하여 제1 클래스로 분류되는 샘플에 대해서만 분류 결정을 완료하고, 제2 클래스로 분류되는 샘플에 대해서는 미분류 상태로 남겨두는 것을 특징으로 하는 분류기 설계 방법.
  8. 제7 항에 있어서,
    상기 미분류 상태로 남겨진 샘플에 대해 상기 (a) 단계 내지 상기 (d) 단계를 반복 수행하는 것을 특징으로 하는 분류기 설계 방법.
  9. 제7 항에 있어서,
    상기 (d) 단계 이후,
    상기 가중치 스페이스에서 상기 분류 결정이 완료된 샘플에 대한 평면을 제거하고, 상기 제거된 평면으로 인한 일부 서브스페이스를 통합하며, 상기 분류 결정이 완료된 샘플의 제외에 따른 각 서브스페이스의 컨퓨전 매트릭스를 갱신한 후 상기 (d) 단계부터 반복 수행하는 것을 특징으로 하는 분류기 설계 방법.
  10. 제1 항에 있어서,
    상기 (a) 단계 이전에,
    전체 샘플을 복수개의 그룹으로 분할 후, 각각의 그룹에 대하여 상기 (a) 단계에서 상기 (d)단계를 수행하는 것을 특징으로 하는 분류기 설계 방법.
  11. 제1 항에 있어서,
    상기 클래스가 다수인 경우, 상기 (a) 단계 이전에,
    상기 다수의 클래스 중 어느 하나를 타겟 클래스로 선택하고, 나머지 클래스를 단일 타클래스로 설정하는 단계를 더 수행하되,
    상기 (d) 단계에서 상기 가중치 벡터 선택에 따른 분류 결정이 완료되는 클래스는 상기 타겟 클래스인 것을 특징으로 하는 분류기 설계 방법.
  12. 복수의 분류기와 결정클래스를 이용하여 데이터를 분류하는 방법에 있어서,
    (a) 정해진 순서대로 분류기를 적용하고 상기 분류기에 대응하는 결정클래스로 분류된 샘플만 분류 결과로 결정하고, 나머지 타클래스로 분류되는 샘플은 미결정 상태로 남겨두는 단계를 포함하되,
    상기 분류 결과로 결정된 샘플을 제외하고 상기 미결정 상태로 남겨진 샘플에 대해 상기 (a) 단계를 적용 순서에 따라 순차적으로 반복 수행하는 것을 특징으로 하는 데이터 분류 방법.
  13. 제12 항에 있어서,
    최종 분류기를 적용할 때는 모든 미분류 샘플에 대해 분류 결정을 수행하고 모든 데이터 분류 과정을 종료하는 것을 특징으로 하는 데이터 분류 방법.
  14. 주어진 차원의 데이터를 낮은 차원으로 투영하는 단계;
    상기 낮은 차원으로의 투영에 따라 미중첩 영역의 샘플에 대해 적용 순서가 정해진 복수개의 분류기와 결정클래스를 설계하고, 중첩 영역의 샘플은 미분류 상태로 남겨 두는 단계; 및
    상기 낮은 차원으로의 투영에 따라 중첩된 영역의 미분류 샘플을 상기 주어진 차원에서 분류할 수 있는 적용 순서가 정해진 복수개의 분류기와 결정클래스를 설계하는 단계를 포함하는 분류기 설계 방법.
  15. 주어진 차원에서 적용하도록 설계된 복수개의 분류기 및 결정클래스와 낮은 차원에서 적용하도록 설계된 복수개의 분류기 및 결정클래스를 이용하여 데이터를 분류하는 방법에 있어서,
    주어진 차원의 데이터를 낮은 차원으로 투영하는 단계;
    상기 낮은 차원으로의 투영 후 상기 낮은 차원에서 적용하도록 설계된 적용 순서가 정해진 상기 분류기와 결정클래스를 이용하여 분류하는 단계; 및
    상기 낮은 차원에서 미분류된 샘플은 상기 주어진 차원에서 적용하도록 설계된 적용 순서가 정해진 복수개의 분류기와 결정클래스를 이용하여 분류하는 단계를 포함하는 데이터 분류 방법.
  16. 제1항 내지 제15항 중 어느 하나의 항에 따른 방법을 수행하기 위한 컴퓨팅 장치에 의해 수행되는 프로그램 코드를 기록한 컴퓨터로 판독가능한 기록매체.
  17. N(2이상의 자연수)차원 가중치 스페이스상에서 샘플에 대한 신규 평면을 구성하는 평면 구성부;
    상기 가중치 스페이스에 존재하는 복수의 서브스페이스가 상기 신규 평면에 의해 분할되는지 여부에 따라 상기 신규 평면을 이용하여 상기 서브스페이스를 분할하여 갱신하는 갱신부;
    상기 갱신된 서브스페이스 각각에 대해 각 클래스에 대한 정확하게 분류되는 샘플 개수 및 부정확하게 분류되는 샘플 개수를 포함하는 컨퓨전 매트릭스를 생성 하고, 미갱신된 서브스페이스 각각에 대해 각 클래스에 대한 정확하게 분류되는 샘플 개수 및 부정확하게 분류되는 샘플 개수를 포함하는 컨퓨전 매트릭스를 갱신하는 매트릭스 생성부; 및
    상기 생성 또는 갱신된 컨퓨전 매트릭스를 이용하여 상기 갱신된 서브스페이스와 상기 미갱신된 서브스페이스 중 어느 하나의 서브스페이스의 내부점을 클래스 분류를 위한 가중치 벡터로 선택하고, 상기 선택된 가중치 벡터에 대한 결정클래스를 결정하며, 상기 가중치 벡터와 결정클래스를 출력하는 가중치 및 클래스 출력부를 포함하는 분류기 설계 장치.
  18. 제17 항에 있어서,
    상기 생성 또는 갱신된 컨퓨전 매트릭스는,
    각 클래스로의 정확하게 분류되는 샘플 개수를 대각선 요소로 포함하고, 상기 각 클래스의 샘플이 다른 클래스로 부정확하게 분류되는 샘플 개수를 비대각선 요소로 포함하여 생성되되,
    컨퓨전 매트릭스의 각 행과 각 칼럼은 각 클래스의 인덱스를 순차적으로 나타내고 각 요소는 각 행에 따른 클래스가 각 칼럼에 따른 클래스로 분류되는 샘플 개수를 포함하는 것을 특징으로 하는 분류기 설계 장치.
  19. 제17 항에 있어서,
    상기 평면 구성부, 상기 갱신부 및 상기 매트릭스 생성부는 모든 샘플에 대해 상기 평면 구성, 서브스페이스 갱신, 컨퓨전 매트릭스 생성 또는 갱신을 반복적으로 수행하는 것을 특징으로 하는 분류기 설계 장치.
  20. 제17 항에 있어서,
    상기 생성 또는 갱신된 컨퓨전 매트릭스의 비대각 요소의 값이 제1 값을 갖는 서브스페이스가 없는 경우, 전체 샘플을 복수의 그룹으로 분할하는 제어부를 더 포함하되,
    상기 제어부는 상기 분할된 각 그룹에 대해 상기 평면 구성부, 상기 갱신부 및 상기 매트릭스 생성부와 상기 가중치 및 클래스 출력부가 정해진 순서에 따라 수행되도록 제어하는 것을 특징으로 하는 분류기 설계 장치.
  21. 제17 항에 있어서,
    상기 가중치 및 클래스 출력부는,
    상기 갱신된 서브스페이스와 상기 미갱신된 서브스페이스 각각에 대한 컨퓨전 매트릭스에서 제1값을 갖는 비대각선 요소를 포함하는 칼럼(column)을 가지는 컨퓨전 매트릭스를 포함하는 서브스페이스를 선택하고,
    상기 선택된 서브스페이스의 내부점을 분류를 위한 가중치 벡터로 선택하고 상기 칼럼에 해당하는 클래스를 결정클래스로 하여 상기 가중치 벡터와 상기 결정클래스를 출력하는 것을 특징으로 하는 분류기 설계 장치.
  22. 제21 항에 있어서,
    상기 가중치 및 클래스 출력부는,
    상기 선택된 서브스페이스의 컨퓨전 매트릭스의 모든 비대각선 요소가 영(zero)인 경우, 상기 선택된 서브스페이스의 내부점을 분류를 위한 마지막 가중치 벡터로 선택하여 출력하고 분류기 설계 과정을 종료하는 것을 특징으로 하는 분류기 설계 장치.
  23. 제17 항에 있어서,
    상기 가중치 및 클래스 출력부는,
    상기 선택된 가중치 벡터를 이용하여 제1 클래스로 분류되는 샘플에 대해서만 분류 결정을 완료하고, 제2 클래스로 분류되는 샘플에 대해서는 미분류 상태로 남겨두는 것을 특징으로 하는 분류기 설계 장치.
  24. 제23 항에 있어서,
    상기 가중치 및 클래스 출력부는,
    상기 가중치 스페이스에서 상기 분류 결정이 완료된 샘플에 대한 평면을 제거하고, 상기 제거된 평면으로 인한 일부 서브스페이스를 통합하며, 상기 분류 결정이 완료된 샘플의 제외에 따른 각 서브스페이스의 컨퓨전 매트릭스를 갱신한 후 상기 컨퓨전 매트릭스를 이용하여 상기 갱신된 서브스페이스 중 어느 하나의 서브스페이스의 내부점을 클래스 분류를 위한 가중치 벡터로 선택하고, 상기 선택된 가중치 벡터에 대한 결정클래스를 결정하며, 상기 가중치 벡터와 결정클래스를 출력하는 것을 특징으로 하는 분류기 설계 장치.
  25. 제17 항에 있어서,
    전체 샘플을 복수의 그룹으로 분할하는 제어부를 더 포함하되,
    상기 제어부는 상기 분할된 각 그룹에 대해 상기 평면 구성부, 상기 갱신부 및 상기 매트릭스 생성부와 상기 가중치 및 클래스 출력부가 정해진 순서에 따라 수행되도록 제어하는 것을 특징으로 하는 분류기 설계 장치.
  26. 제17 항에 있어서,
    상기 클래스가 다수인 경우, 상기 다수의 클래스 중 어느 하나를 타겟 클래스로 선택하고, 나머지 클래스를 단일 타클래스로 설정하는 제어부를 더 포함하되,
    상기 가중치 및 클래스 출력부에 의해 상기 가중치 벡터 선택에 따른 분류 결정이 완료되는 클래스는 상기 타겟 클래스인 것을 특징으로 하는 분류기 설계 장치.
  27. 복수의 분류기와 결정클래스를 이용하여 데이터를 분류하는 장치에 있어서,
    정해진 순서대로 분류기를 적용하고 상기 분류기에 대응하는 결정클래스로 분류된 샘플만 분류 결과로 결정하고, 나머지 타클래스로 분류되는 샘플은 미결정 상태로 남겨두는 분류 과정을 수행하는 분류부를 포함하되,
    상기 분류 결과로 결정된 샘플을 제외하고 상기 미결정 상태로 남겨진 샘플에 대해 상기 분류 과정을 적용 순서에 따라 순차적으로 반복 수행하는 것을 특징으로 하는 분류 장치.
  28. 설계된 분류기 및 결정클래스를 이용하여 데이터를 분류하는 장치에 있어서,
    주어진 차원의 데이터를 낮은 차원으로 투영하는 투영부; 및
    상기 낮은 차원으로의 투영에 따라 미중첩 영역의 샘플을 적용 순서가 정해진 상기 분류기와 결정클래스를 이용하여 분류하고, 상기 낮은 차원으로의 투영에 따라 중첩된 영역의 샘플을 상기 주어진 차원에서 상기 적용 순서가 정해진 복수개의 분류기와 결정클래스를 이용하여 분류하는 분류 과정을 수행하는 분류부를 포함하는 분류 장치.
KR1020140108531A 2014-08-20 2014-08-20 점진 학습 및 국부 조정이 가능한 분류기 설계 방법 및 그 장치 KR101596590B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140108531A KR101596590B1 (ko) 2014-08-20 2014-08-20 점진 학습 및 국부 조정이 가능한 분류기 설계 방법 및 그 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140108531A KR101596590B1 (ko) 2014-08-20 2014-08-20 점진 학습 및 국부 조정이 가능한 분류기 설계 방법 및 그 장치

Publications (1)

Publication Number Publication Date
KR101596590B1 true KR101596590B1 (ko) 2016-02-23

Family

ID=55449327

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140108531A KR101596590B1 (ko) 2014-08-20 2014-08-20 점진 학습 및 국부 조정이 가능한 분류기 설계 방법 및 그 장치

Country Status (1)

Country Link
KR (1) KR101596590B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112783907A (zh) * 2020-12-31 2021-05-11 深圳云天励飞技术股份有限公司 数据更新方法、应用端数据更新方法及相关产品
CN112783907B (zh) * 2020-12-31 2024-06-07 深圳云天励飞技术股份有限公司 数据更新方法、应用端数据更新方法及相关产品

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130142154A (ko) * 2010-11-18 2013-12-27 퀄컴 인코포레이티드 견고한 패턴 분류를 위한 시스템 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130142154A (ko) * 2010-11-18 2013-12-27 퀄컴 인코포레이티드 견고한 패턴 분류를 위한 시스템 및 방법

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"다중 클래스 데이터를 위한 분류오차 최소화 기반 특징 추출 기법", 대한전자공학회/전자공학회논문지(P.129-139), 2000년 03월 *
"다중 클래스 분류를 위한 강인한 SVM 설계 방법", 한국컴퓨터종합학술대회 2005 논문집 VOL.32,NO.1(B)(P.160-762), 2005년 *
"다중 클래스 분포 문제에 대한 분류 정확도 분석", 대한전자공학회 종합 학술 대회 논문집(하계)(P.190-193), 2000년 06월 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112783907A (zh) * 2020-12-31 2021-05-11 深圳云天励飞技术股份有限公司 数据更新方法、应用端数据更新方法及相关产品
CN112783907B (zh) * 2020-12-31 2024-06-07 深圳云天励飞技术股份有限公司 数据更新方法、应用端数据更新方法及相关产品

Similar Documents

Publication Publication Date Title
US11455515B2 (en) Efficient black box adversarial attacks exploiting input data structure
Van Der Maaten Accelerating t-SNE using tree-based algorithms
US20180247193A1 (en) Neural network training using compressed inputs
JP4618098B2 (ja) 画像処理システム
Bui et al. Tree-structured Gaussian process approximations
JPWO2018016608A1 (ja) ニューラルネットワーク装置、車両制御システム、分解処理装置、及びプログラム
US10970313B2 (en) Clustering device, clustering method, and computer program product
CN104699743B (zh) 用于搜索新材料的系统和方法
US10181086B2 (en) Image analysis method for extracting feature of image and apparatus therefor
WO2019202292A1 (en) Interaction property prediction system and method
Stoica et al. ABC Shadow algorithm: a tool for statistical analysis of spatial patterns
US11507842B2 (en) Learning method, learning apparatus, and non-transitory computer-readable storage medium for storing learning program
Karaca et al. Comparison of deep learning and support vector machine learning for subgroups of multiple sclerosis
CN115617867A (zh) 时间序列的预测方法、电子设备和存储介质
Yousefzadeh et al. Interpreting neural networks using flip points
US11410065B2 (en) Storage medium, model output method, and model output device
KR101596590B1 (ko) 점진 학습 및 국부 조정이 가능한 분류기 설계 방법 및 그 장치
Carey Graph construction for manifold discovery
Boiculese et al. Improving recall of k-nearest neighbor algorithm for classes of uneven size
KR101562141B1 (ko) 선형 분류기 설계 방법 및 그 장치
KR102073362B1 (ko) 웨이퍼 맵을 불량 패턴에 따라 분류하는 방법 및 컴퓨터 프로그램
Lam et al. A fast binary quadratic programming solver based on stochastic neighborhood search
Goncharov et al. Analysis of dissimilarity set between time series
Swaney et al. Efficient skin segmentation via neural networks: HP-ELM and BD-SOM
Du et al. Clustering i: Basic clustering models and algorithms

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee