KR101725121B1 - 특징 벡터 분류 장치 및 방법 - Google Patents

특징 벡터 분류 장치 및 방법 Download PDF

Info

Publication number
KR101725121B1
KR101725121B1 KR1020110106863A KR20110106863A KR101725121B1 KR 101725121 B1 KR101725121 B1 KR 101725121B1 KR 1020110106863 A KR1020110106863 A KR 1020110106863A KR 20110106863 A KR20110106863 A KR 20110106863A KR 101725121 B1 KR101725121 B1 KR 101725121B1
Authority
KR
South Korea
Prior art keywords
error
vector
calculated
value
training
Prior art date
Application number
KR1020110106863A
Other languages
English (en)
Other versions
KR20130042783A (ko
Inventor
윤상훈
여준기
천익재
석정희
노태문
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020110106863A priority Critical patent/KR101725121B1/ko
Priority to US13/494,906 priority patent/US9275304B2/en
Publication of KR20130042783A publication Critical patent/KR20130042783A/ko
Application granted granted Critical
Publication of KR101725121B1 publication Critical patent/KR101725121B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • 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/211Selection of the most significant subset of features
    • 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/2411Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Medical Informatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Operations Research (AREA)
  • Probability & Statistics with Applications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 특징 벡터 분류 장치 및 방법에 관한 것이다. 본 발명의 실시예에 의한 특징 벡터 분류 장치는 초기 조건 설정부, 훈련 벡터를 입력받아 상기 초기 조건 설정부에서 설정된 값을 통해 오차 및 가중치를 계산하는 변수 계산부, 상기 계산된 오차 및 가중치를 입력받고, 상기 계산된 오차와 오차 문턱을 비교하여 재계산 여부를 결정하는 루프 결정부 및 상기 루프 결정부로부터 종료 신호를 입력받으면 경계면을 생성하는 경계면 생성부를 포함한다. 따라서 본 발명은 높은 분류 성능을 가지면서도 적은 연산만을 요구하는 특징 벡터 분류 장치 및 방법을 제공한다.

Description

특징 벡터 분류 장치 및 방법{FEATURE VECTOR CLASSIFICATION DEVICE AND METHOD THEREOF}
본 발명은 특징 벡터 분류 장치 및 방법에 관한 것이다.
특징 벡터의 분류는 인식 기술의 성능과 속도를 결정하는 가장 중요한 요소 중 하나이다. 그 중 서포트 벡터 머신(Support Vector Machine, 이하 SVM)은 기계를 이용한 물체 분류 및 인식 등에 사용되는 많은 방식 중 우수한 성능으로 인해 가장 많이 사용되고 있는 방법 중 하나이다.
하지만 SVM을 이용하여 높은 복잡도를 나타내기 위해서는 비선형 커널을 이용하여 많은 수의 서포트 벡터를 저장해야 한다. 또한 입력 벡터와 서포트 벡터간의 복잡한 연산도 필요로 한다. 이를 실시간 처리하기 위해서는 많은 병렬처리용 하드웨어가 소요되므로 임베디드 시스템으로의 구현에 많은 어려움이 있다.
이와 같은 연산 복잡도를 간략화하기 위하여 종래에는 서포트 벡터의 수를 감소시키는 방법이 사용되었으나 이와 같은 방법들은 분류 성능이 심각하게 저하되는 단점이 있다. 따라서 이를 개선하기 위한 기술이 요구되는 상황이다.
본 발명은 높은 분류 성능을 가지면서도 적은 연산만을 요구하는 특징 벡터 분류 장치 및 방법을 제공하는데에 그 목적이 있다.
본 발명의 실시예에 의한 특징 벡터 분류 장치는 초기 조건 설정부, 훈련 벡터를 입력받아 상기 초기 조건 설정부에서 설정된 값을 통해 오차 및 가중치를 계산하는 변수 계산부, 상기 계산된 오차 및 가중치를 입력받고, 상기 계산된 오차와 오차 문턱을 비교하여 재계산 여부를 결정하는 루프 결정부 및 상기 루프 결정부로부터 종료 신호를 입력받으면 경계면을 생성하는 경계면 생성부를 포함한다.
실시예에 있어서, 상기 변수 계산부에서 계산된 오차는 표준화된 평균 제곱 오차이다.
실시예에 있어서, 상기 변수 계산부는 상기 훈련 벡터를 확장하여 계산한다.
본 발명의 실시예에 의한 특정 벡터 분류 방법은 초기 조건을 설정하는 단계, 훈련 벡터를 입력받는 단계, 상기 훈련 벡터의 기저를 하나씩 선택하여 오차 및 가중치를 계산하는 단계, 상기 계산된 오차들 중 특정 조건을 만족하는 오차를 판별하는 단계 및
상기 특정된 오차의 값과 오차 문턱을 비교하여 경계면을 생성할지 여부를 판별하는 단계를 포함한다.
실시예에 있어서, 상기 초기 조건에는 상기 오차 문턱과 상기 훈련 벡터 특성의 최소 개수가 포함된다.
실시예에 있어서, 상기 특정된 오차의 값과 오차 문턱을 비교하여 경계면을 생성할지 여부를 판별하는 단계는 상기 특정된 오차의 값이 상기 오차 문턱 이상이면 상기 훈련 벡터 특성의 개수를 증가시켜 상기 훈련 벡터의 특성을 하나 더 선택하여 오차 및 가중치를 계산하는 단계를 반복하는 단계를 포함한다.
실시예에 있어서, 상기 특정된 오차의 값과 오차 문턱을 비교하여 경계면을 생성할지 여부를 판별하는 단계는 상기 특정된 오차의 값이 상기 오차 문턱보다 작으면 상기 특정된 오차에 대한 선택된 상기 특성과 상기 가중치를 이용하여 경계면을 생성하는 단계를 포함한다.
실시예에 있어서, 상기 계산된 오차들 중 특정 조건을 만족하는 오차를 판별하는 단계에서 특정된 오차는 상기 계산된 오차들 중 최소값을 가지는 오차이다.
본 발명의 실시예에 따른 특징 벡터 분류 장치 및 방법은 높은 분류 성능을 가지는 경계면을 제공하면서도 적은 연산만을 요구한다.
도 1은 본 발명의 실시예에 따른 특징 벡터 분류 방법을 도시하는 순서도이다.
도 2는 본 발명의 다른 실시예에 따른 특징 벡터 분류 장치를 도시하는 블록도이다.
도 3은 본 발명의 실시예에 따른 특징 벡터 분류 방법을 도시하는 순서도이다.
도 4는 본 발명의 또 다른 실시예에 따른 특징 벡터 분류 방법을 도시하는 순서도이다.
도 5는 본 발명의 효과를 실험하기 위하여 HOG-LBP descriptor를 이용하여 계산의 복잡도를 측정하는데 사용된 파라미터들을 나타낸 표이다.
도 6은 도 5의 파라미터들을 이용하여 HOG와 HOG-LBP descriptor를 사용하였을 때 감소된 곱셈 연산수를 나타내는 표이다.
도 7은 종래 기술과 본 발명의 실시예에 따른 특징 벡터 분류 방법의 false positive per window 당 미검출(miss detection)률을 도시하는 그래프이다.
이하, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있도록 본 발명의 실시 예를 첨부된 도면을 참조하여 설명한다.
도 1은 본 발명의 실시예에 따른 특징 벡터 분류 방법을 도시한 순서도이다. 도 1의 벡터 분류 방법은 SVM(Support Vector Machine) 알고리즘을 기반으로 하여 특징 벡터를 분류한다. SVM(Support Vector Machine)은 구조적 위험 최소화(structural risk minimization)에 기반하여 특징 벡터를 클래스(class) 별로 분류하는 방법이다.
도 1을 참조하면, 먼저 특징 벡터를 분류하기 위해서 훈련 벡터를 입력받는다(S10). 이때 훈련 벡터는 클래스를 분류하기 위하여 미리 조사된 샘플 벡터이다. N개의 훈련 벡터의 집합 X는 수학식 0과 같이 표현될 수 있다.
Figure 112011081682775-pat00001
xi는 d개의 특성(feature)을 가지는 훈련 벡터이다. 각 특성은 벡터를 분류하기 위하여 기정규화된 특징을 나타내는 원소이다. yi는 훈련 벡터 xi의 클래스를 나타낸다.
그리고 기설정된 커널 알고리즘을 이용하여 훈련 벡터 중 서포트 벡터와 그에 대한 가중치를 선택한다(S20). 서포트 벡터는 훈련 벡터 사이에서 선택된 경계면을 결정짓는 벡터이다.
이어서 상기 계산된 서포트 벡터와 가중치를 이용하여 특징 벡터를 분류하는 경계면(hyperplane; decision surface)을 생성한다(S30). 이때 경계면은 가중치가 곱해진 서포트 벡터들의 합으로 이루어진 조합(weighted combination)이다. 따라서 SVM에 의하여 경계면을 만들기 위해서는 서포트 벡터와 그에 대응하는 가중치를 계산해야 한다. 이렇게 특징 벡터를 분류하기 위하여 경계면을 생성하는 과정을 훈련 과정이라 한다.
커널 알고리즘 중 가장 간단한 형태는 선형적인 LSVM(Linear Support Vector Machine)이다. LSVM을 사용하면 훈련 과정의 계산의 복잡도는 서포트 벡터의 개수와 서포트 벡터의 차원의 곱에 비례한다. 따라서 가장 간단한 형태를 취하여도 특징 벡터 분류 과정에 소모되는 시간을 줄이기 위해서는 서포트 벡터의 개수 혹은 차원을 감소시켜야 한다. 그러나 서포트 벡터의 개수를 감소시키는 것은 경계면 함수의 정확도를 급격히 감소시킨다. 본 발명의 다른 실시예는 SVM의 위와 같은 문제점을 해결하기 위하여 사용되는 훈련 벡터의 차원을 최소화하여 계산의 복잡도를 감소시키면서도 높은 효율을 얻을 수 있는 알고리즘을 제안한다.
도 2는 본 발명의 다른 실시예에 의한 특징 벡터 분류 장치를 간단하게 나타낸 개념도이다.
도 2를 참조하면, 본 발명의 실시예에 따른 특징 벡터 분류 장치(100)는 초기 조건 설정부(110), 변수 계산부(120), 루프 결정부(130) 및 경계면 생성부(140)를 포함한다.
초기 조건 설정부(110)는 훈련 과정의 초기 조건을 설정한다. 먼저, 초기 조건 설정부(110)는 오차 문턱(Threshold)을 설정한다. 그리고 초기 조건 설정부(110)는 경계면 생성에 사용될 훈련 벡터의 특성 개수(이하, k)의 초기값을 설정한다.
또 초기 조건 설정부(110)는 오차값(이하, t)의 초기값을 설정한다. 또한 초기 조건 설정부(110)는 중요도(이하, χ)를 설정할 수 있다.
오차 문턱은 훈련을 종료하고 경계면을 생성할 것인지를 결정하는 기준값이다. 오차 문턱이 낮을수록 생성된 경계면의 분류 정확도는 높아진다. 그러나 오차 문턱이 낮을수록 훈련 과정의 계산 시간은 증가된다.
k는 경계면 생성에 사용될 훈련 벡터가 가지는 차원이다. 즉, 경계면 생성에 사용될 훈련 벡터의 특성의 개수이다. k가 클수록 훈련 과정의 복잡도는 증가하지만 분류 성능은 향상된다. 초기 조건 설정부(110)에서 설정되지 않으면 k의 초기값은 1로 지정될 수 있다.
t는 오차값으로, 판정의 정확도를 나타낸다. t는 평균제곱오차(Mean Square Error)를 통해 계산될 수 있다. 초기 조건 설정부(110)에서 설정되지 않으면 기본적으로 t의 초기값은 ∞로 지정된다.
χ는 중요도로, 오검출(false positive) 확률과 미검출(miss detect) 간의 중요도를 결정하기 위한 상수이다. χ를 조절하여 경계면의 검출 특성을 조절할 수 있다.
변수 계산부(120)는 상기 초기 조건 설정부(110)에서 설정된 값을 입력받는다. 또, 변수 계산부(120)는 훈련 벡터를 입력받는다. 변수 계산부(120)는 상기 설정된 값 내에서 결정면을 생성하기 위한 훈련 벡터에 대한 가중치(이하,α)와 그에 대응하는 t를 계산한다.
가중치는 생성된 경계면이 최소의 평균제곱오차(이하, MSE)를 가지도록 계산된다.
현재 루프에서 사용되는 훈련 벡터의 특성의 개수(k)에 대하여, (k-1)개의 특성을 선택했을 때의 훈련 벡터에 대한 가중치는 이미 계산되어 있다. 변수 계산부(120)는 여기에 새로 하나의 훈련 벡터 특성(예를 들어, m 번째 특성)을 더 선택한다. 그리고 변수 계산부(120)는 선택된 k개의 특성에 대하여 α와 t를 계산한다. 변수 계산부(120)는 이 동작을 선택 가능한 모든 특성에 대하여 실시한다.
실시예로서 벡터의 클래스(class)가 참(TRUE) 및 거짓(FALSE)의 2개만 존재(bipartite)한다고 하자. 이때 본 실시예에서 참 벡터(클래스가 참인 벡터)와 거짓 벡터(클래스가 거짓인 벡터)의 분포는 가우시안 분포를 가진다고 가정한다. 이때 편차(σ)에 대하여 최소 평균 제곱 오차를 가지도록 오차값 t를 계산하면 수학식 1과 같다. 그러나 본 발명은 위의 조건들에 한정되지 않는다.
Figure 112011081682775-pat00002
t, 즉 오차값은 본 실시예에서 정규화된 평균제곱오차(Mean Square Error)를 이용하여 계산된다. t가 작을수록 판정의 정확도가 높음을 의미한다. 따라서 경계면의 분류 효율을 높이기 위해서 t는 가능한 작아야 한다.
위 식에서 NT는 참 벡터의 개수이다. NF는 거짓 벡터의 개수이다. fn ,T는 n번째 참 벡터의 결정값(decision variable)이다. fn ,F는 n번째 거짓 벡터의 결정값이다. fT는 상기 참 벡터들(fn ,T)의 결정값의 평균값이다. fF는 상기 거짓 벡터들(fn ,F)의 결정값의 평균값이다. 결정값은 상기 벡터가 참인지 거짓인지를 판정하는 기준이 되는 값이다.
변수 계산부(120)에서 (k-1)개의 특성에 더하여 훈련 벡터의 m번째 특성을 추가하여 선택했다 하자. f(k) n,T는 훈련 벡터의 특성이 k개일 때의 n번째 참 벡터의 결정값이다. f(k) n,F는 훈련 벡터의 특성이 k개일 때의 n번째 거짓 벡터의 결정값이다. 그러면 f(k) n,T와 f(k) n,F는 예전 루프((k-1)개의 특성)에서의 결정값 f(k-1) n,F와 f(k-1) n,F에 대하여 수학식 2와 같이 계산된다.
Figure 112011081682775-pat00003
수학식 2에서 gn ,m,T는 n번째 참 벡터의 m번째 특성의 값을 나타낸다. gn ,m,F는 n번째 거짓 벡터의 m번째 특성의 값을 나타낸다. α는 n번째 벡터에 대한 가중치이다. 이에 따라 현재 훈련 벡터의 특성 개수가 k개일 때 fT fF는 수학식 3,4 및 5와 같이 계산된다. 아래 식에서 fT (k)는 훈련 벡터의 특성의 개수가 k개일 때의 참 벡터들(fn ,T (k))의 결정값의 평균값이다. fF (k)는 훈련 벡터의 특성의 개수가 k개일 때의 거짓 벡터들(fn ,F (k))의 결정값의 평균값이다.
Figure 112011081682775-pat00004
Figure 112011081682775-pat00006
따라서 추가된 특성에 의하여 결정된 경계면에 대한 오차값(t)과 가중치(α)는 수학식 6 및 7과 같이 나타내어진다.
Figure 112011081682775-pat00007
Figure 112011081682775-pat00008
여기에서 a,b,c,q,s는 계산의 편의를 위해 정의된 변수들로서 각각 수학식 8 내지 12와 같이 나타난다.
Figure 112011081682775-pat00009
Figure 112011081682775-pat00010
Figure 112011081682775-pat00011
Figure 112011081682775-pat00012
Figure 112011081682775-pat00013
이때 위 식에 나타난 문자들은 수학식 13 내지 16과 같이 계산되어진다.
Figure 112011081682775-pat00014
Figure 112011081682775-pat00015
Figure 112011081682775-pat00016
Figure 112011081682775-pat00017
위와 같이 변수 계산부(120)는 모든 기존에 선택되지 않은 훈련 벡터의 특성에 대하여 그 특성이 추가되었을 때의 오차값(t)과 그에 대한 가중치(α)를 계산한다. 그리고 계산된 t들 중 최소값을 가지는 최소 오차(tmin)를 판별하여 이때의 특성(m)과 그때의 가중치(αm)를 판별한다.
루프 결정부(130)는 tmin을 지정된 오차 문턱(threshold)과 비교한다. tmin이 오차 문턱보다 크면, 루프 결정부(130)는 설정된 훈련 벡터의 특성의 개수 k를 하나 증가시키는 명령을 변수 계산부(120)에 전송한다. 루프 결정부(130)의 명령을 입력받은 변수 계산부(120)는 위의 α및 t 계산 과정을 변경된 k에 대하여 반복한다.
tmin이 오차 문턱보다 작으면, 루프 결정부(130)는 선택된 특성에 대하여 계산된 α를 경계면 생성부(140)로 전송한다. 경계면 생성부(140)는 입력받은 정보를 이용하여 경계면을 생성하고 훈련 과정을 종료한다.
이때, tmin을 지정된 오차 문턱(Threshold)과 비교하는 것 만으로는 오차값이 원하는 결과에 수렴하는지의 여부를 알 수 없다. 따라서 루프 결정부(130)는 최소 오차 대신 비교 오차(td)를 계산할 수 있다. td는 tmin과 예전 루프(훈련 벡터의 특성 개수가 (k-1)개일 때)에서의 최소 오차(과거 최소 오차, t_prev)와의 차이이다. 루프 결정부(130)는 td를 오차 문턱과 비교하여 조건 달성 여부를 판단하는 것으로 안정된 결과를 얻을 수 있다.
따라서 본 발명에서 제공하는 특징 벡터 분류 장치(100)은 경계면 생성에 사용될 훈련 벡터의 특성의 개수를 원하는 정확도에 도달할 때까지 하나씩 추가한다. 이때 특성은 최소의 오차를 가지는 순서대로 추가된다. 따라서, 본 발명의 실시예에 따른 특징 벡터 분류 장치(100)은 최소의 훈련 벡터 차원을 가져 낮은 복잡도를 나타내면서도 높은 정확도를 가지는 경계면을 제공할 수 있다.
또한, 훈련 벡터 차원(사용되는 훈련 벡터의 특성 개수)을 축소하면 계산 시간은 단축되지만 성능이 SVM에 비하여 감소하므로, 이를 보완하기 위한 방법이 요구된다. 본 발명의 실시예는 훈련 벡터를 변수 계산부(120)에 인가할 때, 훈련 벡터의 원본을 사용하지 않고 훈련 벡터를 확장하여 사용함으로써 성능을 향상시킬 수 있다. 예를 들어, 원래의 훈련 벡터가 [(x)] 였다면, [(x), (x)2, (x)3, e(x) ..] 등으로 훈련 벡터를 확장시킬 수 있다.
도 3은 본 발명의 실시예에 따른 특징 벡터 분류 방법을 도시한 순서도이다. 먼저, 훈련 과정의 초기 조건이 설정된다(S110). 상기 초기 조건은 오차 문턱(th), 사용될 훈련 벡터 특성수(k) 및 오차(t)를 포함하여 구성된다. 또, 상기 초기 조건에는 중요도(χ)가 포함될 수 있다.
다음으로, 경계면을 생성하기 위하여 훈련 벡터를 입력받는다(S120). 이때 훈련 벡터는 기존에 설정된 값 이상으로 확장되어 입력될 수 있다.
사용될 훈련 벡터의 특성 개수가 (k-1)개일 때의 가중치 및 오차는 이미 계산되어 있다. 여기에서, 특성 하나(예를 들어, m번째 특성)를 더 추가하여 선택한다(S130). 위에서 설명한 바와 같이 선택된 특성들에 대한 최소 MSE를 가지는 가중치와 그에 대한 오차가 계산된다(S140). 상기 동작은 기존에 선택되지 않은 훈련 벡터의 모든 특성에 대하여 수행된다(S150).
이어서, 상기 계산된 오차들 중 가장 작은 오차값을 선택한다(최소 오차, tmin). 그리고 상기 최소 오차에 대응하는 특성 및 가중치를 판별한다(S160).
다음으로, 상기 최소 오차와 기설정된 오차 문턱을 비교한다(S170). 오차 문턱이 최소 오차보다 작으면, k를 하나 증가시켜(S175) S130부터의 과정을 다시 수행한다. 오차 문턱이 최소 오차보다 크면, 원하는 조건이 달성되었다 판정하고 상기 계산된 가중치로 경계면을 생성한다(S180).
도 4는 본 발명의 다른 실시예에 따른 특징 벡터 분류 방법을 도시한 순서도이다. 도 3의 실시예와 도 4의 실시예는 최소 오차 대신 비교 오차를 사용하는 것 이외의 방법은 동일하므로 유사한 단계에 대하여 유사한 참조 번호를 사용하였다. 위에서 설명한 바와 같이, 최소 오차 대신 비교 오차를 계산하는 것으로 특징 벡터 분류 방법의 정확도를 향상시킬 수 있다. 따라서 S210에 과거 최소 오차(t_prev)의 초기값을 설정하는 과정이 추가된다. 또, S270에서는 최소 오차 대신 비교 오차(t_prev-tmin)를 계산하여 이를 오차 문턱과 비교한다. S275에서는 과거 최소 오차(t_prev)에 현재 최소 오차(tmin)를 대입하는 과정이 추가된다.
도 5는 본 발명의 효과를 실험하기 위하여 HOG-LBP descriptor를 이용하여 계산의 복잡도를 측정하는데 사용된 파라미터들을 나타낸 표이다.
도 6은 도 5의 파라미터들을 이용하여 HOG와 HOG-LBP descriptor를 사용하였을 때 감소된 곱셈 연산수를 나타내는 표이다. 여기서, 본 발명에 의한 방식은 AddBoost라 명명하였다. 도 6을 참조하면, 기존의 LSVM 방식에 비하여 본 발명의 실시예에 의한 방식은 64% 이상 감소된 연산수를 가짐을 확인할 수 있다.
도 7은 위의 상태에서 윈도우 당 오검출(false positive per window,FPPW) 당 미검출(miss detection)률을 실험한 결과이다. 도 7에서 K는 훈련 벡터의 특성수, X는 훈련 벡터의 개수를 나타낸다. 도 7을 참조하면, HOG-LBP와 HOG 양쪽 모두에서 본 발명에 의한 분류 방법은 기존의 LSVM에 비하여 우수한 결과를 나타내고 있음을 알 수 있다.
본 발명의 상세한 설명에서는 구체적인 실시예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지로 변형될 수 있다. 그러므로 본 발명의 범위는 상술한 실시예에 국한되어서는 안되며 후술하는 특허 청구범위 뿐 만 아니라 이 발명의 특허 청구범위와 균등한 범위에 대하여도 적용되어야 한다.
100 : 특징 벡터 분류 장치
110: 초기 조건 생성부
120: 변수 계산부
130: 루프 결정부
140: 경계면 생성부

Claims (13)

  1. 초기 조건 설정부;
    적어도 하나의 특성을 갖는 훈련 벡터를 입력받아 상기 초기 조건 설정부에서 설정된 값을 통해 상기 훈련 벡터의 선택된 특성에 대한 오차 및 가중치를 계산하는 변수 계산부;
    상기 계산된 오차 및 가중치를 입력받고, 상기 계산된 오차와 오차 문턱을 비교하여 재계산 여부를 결정하는 루프 결정부 및
    상기 루프 결정부로부터 종료 신호를 입력받으면 상기 선택된 특성에 대하여 계산된 상기 가중치에 근거하여 특징 벡터를 분류하는 경계면을 생성하는 경계면 생성부를 포함하고,
    상기 훈련 벡터는 상기 특징 벡터의 클래스를 분류하기 위한 샘플 벡터이고, 상기 특성은 상기 특징 벡터의 클래스를 분류하기 위하여 기정규화되고, 상기 오차는 상기 클래스에 대응되는 훈련 벡터의 결정값에 근거하여 계산되는 특징 벡터 분류 장치.
  2. 제 1항에 있어서,
    상기 변수 계산부에서 계산된 오차는 표준화된 평균 제곱 오차인 특징 벡터 분류 장치.
  3. 제 1항에 있어서,
    상기 변수 계산부는 상기 훈련 벡터에 근거하여 생성된 복수의 확장된 벡터들을 이용하여 상기 오차 및 상기 가중치를 계산하는 특징 벡터 분류 장치.
  4. 초기 조건을 설정하는 단계;
    특징 벡터의 클래스를 분류하기 위한 훈련 벡터를 입력받는 단계;
    상기 훈련 벡터의 특성을 하나씩 선택하여 상기 훈련 벡터의 선택된 특성에 대한 오차 및 가중치를 계산하는 단계;
    상기 계산된 오차들 중 특정 조건을 만족하는 오차를 판별하는 단계; 및
    상기 특정된 오차의 값과 오차 문턱을 비교하여 상기 선택된 특성에 대하여 계산된상기 가중치에 근거하여 상기 특징 벡터를 분류하는 경계면을 생성할지 여부를 판별하는 단계를 포함하고,
    상기 특성은 상기 특징 벡터의 클래스를 분류하기 위하여 기정규화되고, 상기 오차는 상기 클래스에 대응되는 훈련 벡터의 결정값에 근거하여 계산되는 특징 벡터 분류 방법.
  5. 제 4항에 있어서,
    상기 초기 조건에는 상기 오차 문턱과 상기 훈련 벡터 특성의 최소 개수가 포함되는 특징 벡터 분류 방법.
  6. 제 4항에 있어서,
    상기 특정된 오차의 값과 오차 문턱을 비교하여 경계면을 생성할지 여부를 판별하는 단계는 상기 특정된 오차의 값이 상기 오차 문턱 이상이면 상기 훈련 벡터의 특성의 개수를 증가시켜 상기 훈련 벡터의 특성을 하나 더 선택하여 오차 및 가중치를 계산하는 단계를 반복하는 단계를 포함하는 특징 벡터 분류 방법.
  7. 제 4항에 있어서,
    상기 특정된 오차의 값과 오차 문턱을 비교하여 경계면을 생성할지 여부를 판별하는 단계는 상기 특정된 오차의 값이 상기 오차 문턱보다 작으면 상기 특정된 오차에 대한 선택된 상기 특성들과 계산된 상기 가중치를 이용하여 경계면을 생성하는 단계를 포함하는 특징 벡터 분류 방법.
  8. 제 4항에 있어서,
    상기 계산된 오차들 중 특정 조건을 만족하는 오차를 판별하는 단계에서 특정된 오차는 상기 계산된 오차들 중 최소값을 가지는 오차인 특징 벡터 분류 방법.
  9. 제 4항에 있어서,
    상기 오차는 표준화된 평균 제곱 오차인 특징 벡터 분류 방법.
  10. 제 4항에 있어서,
    상기 오차 문턱을 설정할 때에 중요도를 설정하는 단계를 더 포함하는 특징 벡터 분류 방법.
  11. 제 4 항에 있어서,
    상기 계산된 오차들 중 특정 조건을 만족하는 오차를 판별하는 단계에서 상기 특정된 오차는 상기 계산된 오차들 중 최소값을 갖는 오차에 근거하여 생성되는 특징 벡터 분류 방법.
  12. 제 4항에 있어서,
    상기 오차 및 가중치를 계산하는 단계는 상기 훈련 벡터에 근거하여 생성된 복수의 확장된 벡터들을 이용하여 상기 오차 및 상기 가중치를 계산하는 특징 벡터 분류 방법.
  13. 제 4항에 있어서,
    상기 오차와 상기 가중치는 상기 훈련 벡터의 분포가 가우시안 분포인 것에 대하여 계산되는 특징 벡터 분류 방법.
KR1020110106863A 2011-10-19 2011-10-19 특징 벡터 분류 장치 및 방법 KR101725121B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020110106863A KR101725121B1 (ko) 2011-10-19 2011-10-19 특징 벡터 분류 장치 및 방법
US13/494,906 US9275304B2 (en) 2011-10-19 2012-06-12 Feature vector classification device and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110106863A KR101725121B1 (ko) 2011-10-19 2011-10-19 특징 벡터 분류 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20130042783A KR20130042783A (ko) 2013-04-29
KR101725121B1 true KR101725121B1 (ko) 2017-04-12

Family

ID=48136813

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110106863A KR101725121B1 (ko) 2011-10-19 2011-10-19 특징 벡터 분류 장치 및 방법

Country Status (2)

Country Link
US (1) US9275304B2 (ko)
KR (1) KR101725121B1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11139048B2 (en) 2017-07-18 2021-10-05 Analytics For Life Inc. Discovering novel features to use in machine learning techniques, such as machine learning techniques for diagnosing medical conditions
US11062792B2 (en) 2017-07-18 2021-07-13 Analytics For Life Inc. Discovering genomes to use in machine learning techniques
US10740619B2 (en) * 2017-11-21 2020-08-11 Uber Technologies, Inc. Characterizing content with a predictive error representation
CN111833634B (zh) * 2019-04-17 2021-07-13 青岛海信网络科技股份有限公司 一种信号灯故障检测方法及装置
US11451456B2 (en) 2019-04-19 2022-09-20 Cisco Technology, Inc. Learning stable representations of devices for clustering-based device classification systems
KR20210073168A (ko) 2019-12-10 2021-06-18 한국전자통신연구원 노치 필터를 이용한 학습 데이터 증강 장치 및 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100901371B1 (ko) 2008-10-09 2009-06-05 인하대학교 산학협력단 서포트 벡터 머신을 이용한 선택 모드 보코더 코덱의 음성 및 음악 분류 방법

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5946675A (en) * 1992-09-18 1999-08-31 Gte Laboratories Incorporated Apparatus for machine learning
US6327581B1 (en) * 1998-04-06 2001-12-04 Microsoft Corporation Methods and apparatus for building a support vector machine classifier
US6714925B1 (en) * 1999-05-01 2004-03-30 Barnhill Technologies, Llc System for identifying patterns in biological data using a distributed network
US7970718B2 (en) * 2001-05-18 2011-06-28 Health Discovery Corporation Method for feature selection and for evaluating features identified as significant for classifying data
US20050105794A1 (en) * 2003-08-25 2005-05-19 Glenn Fung Greedy support vector machine classification for feature selection applied to the nodule detection problem
KR100607586B1 (ko) 2004-12-16 2006-08-02 인하대학교 산학협력단 컨커런트 서포트 벡터 머신 프로세서

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100901371B1 (ko) 2008-10-09 2009-06-05 인하대학교 산학협력단 서포트 벡터 머신을 이용한 선택 모드 보코더 코덱의 음성 및 음악 분류 방법

Also Published As

Publication number Publication date
KR20130042783A (ko) 2013-04-29
US9275304B2 (en) 2016-03-01
US20130103620A1 (en) 2013-04-25

Similar Documents

Publication Publication Date Title
KR101725121B1 (ko) 특징 벡터 분류 장치 및 방법
US9563825B2 (en) Convolutional neural network using a binarized convolution layer
US8315954B2 (en) Device, method, and program for high level feature extraction
CN107392312B (zh) 一种基于dcgan性能的动态调整方法
US9037518B2 (en) Classifying unclassified samples
Kawai et al. Improved malgan: Avoiding malware detector by leaning cleanware features
US9111388B2 (en) Information processing apparatus, control method, and recording medium
Sangari et al. Convergence analysis of two loss functions in soft-max regression
US20190163666A1 (en) Assessment of machine learning performance with limited test data
US20220036178A1 (en) Dynamic gradient aggregation for training neural networks
US20220004920A1 (en) Classification device, classification method, and classification program
US20190147357A1 (en) Automatic detection of learning model drift
KR20220027830A (ko) 양자 노이즈 프로세스 분석 방법, 시스템, 저장 매체 및 전자 기기
US20060074823A1 (en) Methods and apparatus for detecting temporal process variation and for managing and predicting performance of automatic classifiers
WO2020121867A1 (ja) 検出学習装置、方法、及びプログラム
KR102093080B1 (ko) 레이블 데이터 및 비레이블 데이터를 이용한 생성적 적대 신경망 기반의 분류 시스템 및 방법
Sarnelle et al. Quantifying the limited and gradual concept drift assumption
Agrawal et al. Evaluating machine learning classifiers to detect android malware
US20220004908A1 (en) Information processing apparatus, information processing system, information processing method, and non-transitory computer readable medium storing program
CN112508126A (zh) 深度学习模型训练方法、装置、电子设备及可读存储介质
US11892944B2 (en) Anomaly factor estimation apparatus, anomaly factor estimation method and program
WO2023167817A1 (en) Systems and methods of uncertainty-aware self-supervised-learning for malware and threat detection
US11699311B2 (en) Storage medium storing anomaly detection program, anomaly detection method, and anomaly detection apparatus
JP2021022316A (ja) 学習装置、学習方法及び学習プログラム
US20190066285A1 (en) Image inspection apparatus, image inspection method, and image inspection program

Legal Events

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