KR20120040015A - 벡터 분류기 및 그것의 벡터 분류 방법 - Google Patents

벡터 분류기 및 그것의 벡터 분류 방법 Download PDF

Info

Publication number
KR20120040015A
KR20120040015A KR1020100101509A KR20100101509A KR20120040015A KR 20120040015 A KR20120040015 A KR 20120040015A KR 1020100101509 A KR1020100101509 A KR 1020100101509A KR 20100101509 A KR20100101509 A KR 20100101509A KR 20120040015 A KR20120040015 A KR 20120040015A
Authority
KR
South Korea
Prior art keywords
vector
compressed
support vector
support
classification
Prior art date
Application number
KR1020100101509A
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 KR1020100101509A priority Critical patent/KR20120040015A/ko
Priority to US13/189,345 priority patent/US20120095947A1/en
Publication of KR20120040015A publication Critical patent/KR20120040015A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명의 실시 예에 따른 벡터 분류기는, 입력 벡터를 압축하는 벡터 압축기, 압축된 서포트 벡터를 저장하는 서포트 벡터 저장부; 및 상기 압축된 입력 벡터 및 상기 압축된 서포트 벡터를 입력받아 분류 결정식에 따라 연산하는 서포트 벡터 머신 연산부를 포함한다. 본 발명에 따른 벡터 분류기 및 그것의 벡터 분류 방법은, 입력 벡터와 서포트 벡터의 차수를 줄여서 연산함으로써, 입력 벡터를 실시간으로 분류할 수 있게 된다.

Description

벡터 분류기 및 그것의 벡터 분류 방법{VECTOR CLASSIFIER AND VECTOR CLASSIFICATION METHOD THEREOF}
벡터 분류기 및 그것의 벡터 분류 방법에 관한 것이다.
서포트 벡터 머신(Support Vector Machine; SVM)은 기본적으로 두 클래스를 갖는 객체들을 분류하는 방법에 관한 것으로, 1976년 Vapnik(1995)에 의해 제안되었다. 두 개의 클래스로 구성된 N개의 객체가 P차원 공간에 위치하는데, 하나의 초평면(hyperplane)으로 구분되는 경우, 두 클래스 사이에는 무수히 많은 초평면이 존재할 수 있으나, 서포트 벡터 머신에는 각 클래스의 경계를 유지하는 객체들을 지나는 초평면이 존재하는데, 이 두 개의 초평면과 두 클래스를 구분하는 초평면 간의 거리인 마진 이 최대가 되는 초평면을 선택한다. 두 개의 클래스를 정확하게 구분하는 초평면이 존재하지 않을 경우, 오차를 인정하는 초평면을 선택할 수 있으며, 개별적인 적용에 적당한 커널 함수(kernel function)를 사용하여 임의의 차원으로 객체들을 매핑(mapping)시킨 후, 그 차원에서 구분되는 초평면을 구하여 두 클래스를 분류할 수도 있다.
본 발명의 목적은 적은 연산으로 벡터 분류를 할 수는 있는 벡터 분류기 및 그것의 벡터 분류 방법을 제공하는데 있다.
본 발명의 실시 예에 따른 벡터 분류기는, 입력 벡터를 압축하는 벡터 압축기, 압축된 서포트 벡터를 저장하는 서포트 벡터 저장부; 및 상기 압축된 입력 벡터 및 상기 압축된 서포트 벡터를 입력받아 분류 결정식에 따라 연산하는 서포트 벡터 머신 연산부를 포함한다.
실시 예에 있어서, 상기 분류 결정식은,
Figure pat00001
을 만족하고,
여기서, M은 압축된 서포트 벡터의 개수이고, αi는 i번째 압축된 서포트 벡터의 가중치이고, y i는 클래스이고, b는 바이어스이고, K(u,vi)는 분류 커널 함수이고, vi는 압축된 서포트 벡터이고, u는 상기 압축된 입력 벡터이다.
실시 예에 있어서, 상기 분류 커널 함수는 선형, 다항식, 비선형의 RBF(Radial Basis Function)일 수 있다.
실시 예에 있어서, 상기 벡터 압축부는, 서포트 벡터의 고유 벡터의 영향력을 줄이도록 상기 입력 벡터를 압축한다.
실시 예에 있어서, 상기 입력 벡터를 압축하기 위하여,
Figure pat00002
를 만족하고,
여기서, X는 상기 입력 벡터이고,
Figure pat00003
Xs ,M은 M번째 서포트 벡터이고,
Us, Vs는 직교 및 단일 행렬(orthonormal and unitary matrix) 이고
Figure pat00004
이고,
여기서, (:,1:P)에서 처음 ':'은 모든 행(row)의 요소들을 포함한다는 의미이고, '1:P'는 모든 열(column)의 요소들 중 처음 P개만을 선택한다는 의미이다.
실시 예에 있어서, 상기 압축된 입력 벡터는 XVs(:,1:P)이고, 상기 압축된 서포트 벡터는 UsDs(:,1:P)의 행벡터이다.
실시 예에 있어서, 상기 서포트 벡터 저장부는, 상기 입력 벡터의 차수에 상기 압축된 입력 벡터의 차수를 곱한 만큼의 저장 공간과, 상기 압축된 서포트 벡터의 차수에 상기 압축된 입력 벡터의 차수를 곱한 만큼의 저장 공간을 포함한다.
실시 예에 있어서, 상기 서포트 벡터 머신 연산부는, 상기 압축된 입력 벡터와 상기 압축된 서포트 벡터를 입력받아 소정의 분류 커널 함수에 따라 커널 값을 계산하는 커널 계산기, 상기 계산된 커널 값에 대응하는 가중치를 상기 커널 값에 곱하는 곱셈기, 상기 곱셈기의 출력 값을 누적하는 레지스터 및 상기 레지스터에 누적된 값을 부호함수를 이용하여 분류 값을 생성하는 필터를 포함한다.
실시 예에 있어서, 상기 압축된 서포트 벡터를 출력하는 서포트 벡터 머신 훈련기를 더 포함한다.
실시 예에 있어서, 상기 서포트 벡터 머신 훈련기는, 훈련 벡터들을 저장하는 훈련 벡터 저장부, 상기 훈련 벡터 저장부로부터 출력된 훈련 벡터를 압축하는 훈련 벡터 압축부, 및 상기 압축된 훈련 벡터를 이용하여 서포트 벡터를 선택하는 벡터 훈련부를 포함한다.
본 발명의 실시 예에 따른 벡터 분류기의 벡터 분류 방법은, 입력 벡터의 차수를 줄이도록 상기 입력 벡터를 압축하는 단계, 및 상기 압축된 입력 벡터와 압축된 서포트 벡터를 입력받아 분류 결정식에 따라 분류하는 단계를 포함한다.
실시 예에 있어서, 서포트 벡터를 압축하는 단계를 더 포함한다.
실시 예에 있어서, 상기 서포트 벡터를 압축하는 단계는, 훈련 벡터를 압축하고, 압축된 훈련 벡터를 이용하여 서포트 벡터를 선택하는 단계를 포함한다.
실시 예에 있어서, 상기 선택된 서포트 벡터가 상기 압축된 서포트 벡터이다.
상술한 바와 같이 본 발명에 따른 벡터 분류기 및 그것의 벡터 분류 방법은, 입력 벡터와 서포트 벡터의 차수를 줄여서 연산함으로써, 입력 벡터를 실시간으로 분류할 수 있게 된다.
또한 본 발명에 따른 벡터 분류기는, 압축된 서포트 벡터를 저장함으로써, 서포트 벡터 머신의 저장 공간의 크기를 줄일 수 있다.
도 1은 본 발명의 실시 예에 따른 벡터 분류기를 보여주는 블록도이다.
도 2는 도 1에 도시된 서포트 벡터 연산기에 대한 실시 예를 보여주는 도면이다.
도 3은 도 1에 도시된 서포트 벡터 저장부를 설명하기 위한 도면이다.
도 4는 본 발명의 실시 예에 따른 벡터 분류기의 벡터 분류 방법을 보여주는 흐름도이다.
도 5는 본 발명의 실시 예에 따른 서포트 벡터 훈련기에 대한 블록도이다.
도 6은 본 발명에 따른 서포트 벡터 머신의 분류 정밀도를 보여주는 도면이다.
도 7은 본 발명에 따른 벡터 압축시 하드웨어 리소스 및 정확도를 보여주는 표이다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있도록 본 발명의 실시 예를 첨부된 도면을 참조하여 설명할 것이다.
본 발명의 이해를 돕기 위하여, 아래에서는 서포트 벡터 머신(Support Vector Machine) 관련된 몇 가지 수학적 표시를 설명하겠다.
서포트 벡터 머신은 통계 훈련 이론으로부터의 구조적 위험 최소화 원칙(Structural Risk Minimization:SRM)으로 회귀, 분류 및 밀도 추정 문제에 적용되고 있다. 서포트 벡터 머신은 최대 마진 분류자의 카테고리에 속해 있고, 서포트 벡터 머신의 특징 공간에서, 음의 표본으로부터 양의 표본을 쪼개는(spilt) 결정 초표면(hypersurface)을 발견함으로써, 이진 분류(즉, 이들은 2 개의 출력 클래스를 가진다)를 수행한다.
서포트 벡터 머신은, 훈련 태스크(task)를 설명하기 위해 고정되었으나, 공지되지 않은 분포 Pr(x,y)로부터 크기(n)의 독립적이고 동일하게 분포된 훈련 샘플(
Figure pat00005
)을 입력받는다. 여기서 xi는 분류되는 입력 데이터를 나타내는 벡터이고, 세트 {-1, +1}에서의 yi는 클래스 표시이다.
서포트 벡터 머신은 아래의 수학식에 따라 이진, 선형 결정 규칙을 훈련한다.
Figure pat00006
여기서, 결정 함수는 가중치 벡터(w) 및 역치 값(b)에 의해 설명된다. 입력 벡터(x)가 놓여 있는 초표면의 측면에 따라, 클래스 '+1' 또는 '-1'로 분류된다. 구조적 위험 최소화의 개념은, 가장 낮은 오류 확률이 보장되어 있는 가설(h)를 찾는 것이다. 이는 서포트 벡터 머신으로, 목표가 분리가능한 데이터에 대한 가장 큰 마진을 가진 초표면을 발견하는 것으로 해석될 수 있다. 다시 말해, 분리가능한 훈련 세트에 대해, 서포트 벡터 머신은, 가장 큰 마진으로, 각각, "+" 및 "-"로 표시되어 있는, 양 및 음의 훈련 표본을 분리하는 초표면(h)를 찾는다. 초표면(h)에 가장 가까운 표본은 서포트 벡터(support vector)로 불린다.
초표면 계산은 라그랑지안(Lagrangian) 표현에서, 아래의 수학식에서 2차 최적화 문제를 해결하는 것과 같다.
Figure pat00007
Figure pat00008
서포트 벡터는 αi>0 양의 라그랑지안 계수에 대응하는 훈련 벡터(xi) 이다. 이 최적화 문제의 해결로부터 결정 규칙이 다음의 수학식으로 계산될 수 있다.
Figure pat00009
여기서 b를 계산하기 위한 훈련 표본(xtsv, ytsv)은 αtsv < C를 만족하는 서포트 벡터이다.
훈련된 결정 규칙을 적용하는 것뿐 아니라 2차 최적화 문제를 해결하는 것에 대하여, 관찰 벡터 사이의 내적이 계산될 수 있다. 이러한 특성을 이용하여, K(x1, x2)에 의해 표시되어 있는, 커널 함수(kernel function)의 사용은 비선형 결정 규칙의 훈련에 도입된다. 이러한 커널 함수는 몇 개의 고차원 특징 공간에서 내적을 계산하고 아래의 수학식으로 내적을 대체한다.
일반적으로 커널 함수(kernel function)는 선형, 다항의, RBF(radial basis function), 및 시그모이드(sigmoid)일 수 있다.
Figure pat00010
커널 함수의 유형에 따라, 서포트 벡터 머신은 선형 분류자, 다항 분류자, RBF 분류자 또는 2 층의 시그모이드 신경망일 수 있다. 아래에서는 설명의 편의를 위하여 커널 함수가 RBF라고 가정하겠다.
본 발명의 실시 예에 따른 벡터 분류기는 입력 벡터를 압축하여 연산함으로써, 일반적인 그것과 비교하여 보다 적은 연산으로 벡터 분류를 수행할 수 있다. 이로써, 본 발명에 따른 벡터 분류기는 실시간으로 벡터 분류를 할 수 있다.
도 1은 본 발명의 실시 예에 따른 벡터 분류기(100)를 보여주는 블록도이다. 도 1를 참조하면, 벡터 분류기(100)는 벡터 압축부(120), 서포트 벡터 저장부(140) 및 서포트 벡터 머신 연산부(160)를 포함한다.
벡터 압축부(120)는 서포트 벡터(Xs)를 이용하여 입력 벡터(X)를 압축시킨다. 여기서, 서포트 벡터(Xs)는 서포트 벡터 데이터(Support Vector Data; SVD)을 통해 UsDsVs T로 분해된다. 여기서, Us와 Vs는 고유 벡터 셋으로 정규화된 값이고, Ds는 대각 행렬(diagonal matrix)로써, 그 값은 고유 벡터의 영향력을 의미한다.
입력 벡터(X)를 압축하기 위하여, 고유 벡터(Ds) 중 가장 영향력이 큰 P개의 값이 유지되고 나머지 부분이 제거될 것이다. 이때, 고유 벡터의 영향력 변화를 최소화시킨 상태로 벡터가 압축될 수 있다. RBF 분류 커널 함수를 이용하여 분류할 때, 입력 벡터(X)를 압축하기 위한 수학식은 아래와 같다.
Figure pat00011
여기서,
Figure pat00012
Us, Vs는 직교 및 단일 행렬(orthonormal and unitary matrix) 이고
Figure pat00013
이다.
한편, XVs(:,1:P)는 압축된 입력 벡터(u)이고, UsDs(:,1:P)는 압축된 서포트 벡터(v)이다. 여기서,(:,1:P)에서 처음 ':'은 모든 행(row)의 요소들을 포함한다는 의미이고, '1:P'는 모든 열(column)의 요소들 중 처음 P개만을 선택한다는 의미이다.
서포트 벡터 저장부(140)는 압축된 서포트 벡터(v)를 저장한다. 여기서 압축된 서포트 벡터(v)는 서포트 벡터 머신 훈련부(도시되지 않음)로부터 제공될 수 있다.
서포트 벡터 머신 연산부(160)는 압축된 입력 벡터(u)와 압축된 서포트 벡터(v)를 입력받아 분류 결정식에 따라 연산을 수행한다. 여기서, 분류 결정식은 아래의 수학식으로 표현될 수 있다.
Figure pat00014
여기서, M은 사용되는 압축된 서포트 벡터의 수이며, αi는 i번째 압축된 서포트 벡터의 가중치이고, y i는 클래스(1/-1)이고, vi 는 i번째 압축된 서포트 벡터이고, b는 바이어스이고, K(u,v)는 분류 커널 함수이다. 여기서, 분류 커널 함수는 선형 혹은 비선형일 수 있다.
실시 예에 있어서, 분류 커널 함수가 비선형의 RBF(Radial Basis Function)라면, K(u,v)는 아래의 수학식을 만족한다.
Figure pat00015
여기서, γ는 RBF 분류 커널 함수의 계수이다.
본 발명의 실시 예에 따른 벡터 분류기(100)는 서포트 벡터(Xs)를 이용하여 입력 벡터(X) 및 서포트 벡터(Xs)를 압축하고, 압축된 입력 벡터(v) 및 압축된 서포트 벡터(u)를 입력받아 분류 결정식에 따라 연산을 수행한다. 이에, 본 발명의 벡터 분류기(100)는 입력 벡터(X) 및 서포트 벡터(Xs)의 차수를 줄임으로써, 실시간의 입력 벡터(X)를 분류할 수 있다.
도 2는 도 1에 도시된 서포트 벡터 저장부(140)의 구조를 예시적으로 보여주는 도면이다. 도 2를 참조하면, 서포트 벡터 저장부(140)는 일반적인 서포트 벡터 저장부와 비교하여 저장 공간을 크게 줄일 수 있다.
일반적인 서포트 벡터 저장부는 입력 벡터의 차수(N)과 서포트 벡터의 차수(M)의 곱(N×M)만큼의 저장 공간을 필요로 한다.
반면에, 본 발명의 서포트 벡터 저장부(140)는 압축된 차수(P)와 입력 벡터의 차수(N)의 곱(P×N) 만큼의 저장 공간과 압축된 차수(P)와 서포트 벡터의 차수(M)의 곱(P×M) 만큼의 저장 공간을 필요로 한다. 여기서, P는 M 및 N 보다 작다. 저장 공간(P×N)은 Vs를 저장하고, 저장 공간(P×M)은 압축된 서포트 벡터(v=Us , iDs(:,1:P))를 저장한다.
실시 예에 있어서, 본 발명에 따른 분류 결정식은, 소프트웨어적으로 구현될 수 있다. 다른 실시 예에 있어서, 본 발명에 따른 분류 결정식은 하드웨어적으로 구현될 수 있다.
도 3는 도 1에 도시된 서포트 벡터 머신 연산부(160)에 대한 실시 예를 보여주는 도면이다. 도 3을 참조하면, 서포트 벡터 머신 연산부(160)는, 커널 계산기(161), 가중치 저장기(162), 곱셈기(163), 덧셈기(164), 레지스터(165), 스위치(166) 및 필터(167)를 포함한다.
커널 계산기(161)는 압축된 입력 벡터(u) 및 압축된 서포트 벡터(v) 입력 받아 커널 값(K(u,v))을 계산한다. 커널 계산부(161)는 선형(linear) 분류 커널 함수, 다항(polynomial) 분류 커널 함수, RBF(Radial Basis Function) 분류 커널 함수들 중 어느 하나를 내장할 수 있다.
가중치 저장기(162)는 각 서포트 벡터에 대응하는 가중치들을 저장한다. 가중치 저장기(162)는 커널 계산기(161)로부터 계산된 커널 값(K(u,v))에 대응하는 가중치(α)를 출력하도록 구현된다.
곱셈기(163)는 커널 계산기(161)의 커널 값(K(u,v))과 가중치 저장기(162)로부터 출력된 가중치(α)를 입력받아 곱셈 연산을 수행한다.
덧셈기(164)는 곱셈기(163)의 출력 값과 레지스터(165)에 저장된 값을 입력받아 덧셈 연산을 수행한다.
레지스터(165)는 덧셈기(164)의 출력 값을 누적한다. 레지스터(165)에 누적된 출력 값은 아래의 수학식을 만족한다.
Figure pat00016
여기서, M은 사용되는 압축된 서포트 벡터의 수이며, αi는 i번째 압축된 서포트 벡터의 가중치이고, vi 는 i번째 압축된 서포트 벡터이다.
스위치(166)는 레지스터(165)에 누적된 값을 필터(167)로 전송할지 여부를 스위칭한다. 예를 들어, 압축된 서포트의 벡터의 개수만큼 커널 값이 누적되었을 때, 스위치(166)는 레지스터(165)에 누적된 값을 필터(167)로 출력시킨다.
필터(167)는 레지스터(165)의 저장된 값을 필터링하여 최종적인 분류 값(f(X))을 출력한다. 여기서, 필터(167)는 부호함수(sign function)를 이용할 수 있다. 이때, 필터(167)의 출력 값(f(X))은 '-1', '0', 및 '1' 중 어느 하나이다.
본 발명의 실시 예에 따른 서포트 벡터 머신 연산부(160)는 분류 결정식에 따라 압축된 입력 벡터(u)에 대한 커널 값들을 누적하고, 누적된 값을 부호 함수를 이용하여 부호화시킨다.
도 4는 본 발명에 따른 벡터 분류기의 벡터 분류 방법을 예시적으로 보여주는 흐름도이다. 도 4를 참조하면, 벡터 분류 방법은, 입력 벡터의 차수를 압축하고(S110), 압축된 벡터와 압축된 서포트 벡터를 입력받아 사전에 결정된 분류 결정식에 따라 분류한다(S120).
실시 예에 있어서, 입력 벡터를 압축하는 단계는, 입력 벡터의 차수를 줄이는 단계를 포함할 수 있다.
실시 예에 있어서, 훈련 벡터를 압축하고, 압축된 훈련 벡터를 이용하여 서포트 벡터를 선택하는 단계를 더 포함할 수 있다. 여기서, 선택된 서포트 벡터가 상기 압축된 서포트 벡터일 것이다.
본 발명의 실시 예에 따른 벡터 분류 방법은, 입력 벡터 및 서포트 벡터의 차수를 줄여서 연산함으로써, 벡터 분류기의 연산 속도를 빠르게 할 수 있다.
도 5는 본 발명에 따른 서포트 벡터 머신 훈련기(200)를 예시적으로 보여주는 블록도이다. 도 5를 참조하면, 서포트 벡터 머신 훈련기(200)는 훈련 벡터 저장부(220), 벡터 압축부(240), 및 벡터 훈련부(260)를 포함한다.
훈련 벡터 저장부(220)는 복수의 훈련 벡터들을 저장한다.
벡터 압축부(240)는 훈련 벡터 저장부(220)로부터 출력된 훈련 벡터(X)를 입력받아 압축시킨다. 여기서 압축된 훈련 벡터(XVs)는 훈련 벡터(X)의 차수가 낮아진다.
벡터 훈련부(260)는 벡터 압축부(240)로부터 압축된 훈련 벡터(XVs)를 입력받아 서포트 벡터(SVs)를 선택하고, 선택된 서포트 벡터(SVs)를 출력한다. 여기서, 선택된 서포트 벡터(SVs)는 도 1의 서포트 벡터 저장부(140)에 저장된 압축된 서포트 벡터(v)일 수 있다.
본 발명의 실시 예에 따른 서포트 벡터 머신 훈련기(200)는 압축된 서포트 벡터(SVs)를 생성한다. 즉, 본 발명의 서포트 벡터 머신 훈련기(200)는 일반적인 그것과 비교하여 서포트 벡터(Vs)의 차수를 낮출 수 있다.
도 6은 본 발명에 따른 벡터 분류기의 분류 정밀도를 보여주는 도면이다. 도 6에 도시된 분류 정밀도는, 입력 벡터(X)의 차수(N)가 48이고, 서포트 벡터(Vs)의 차수(M)가 96인 보행자 인식용 영상에 관한 것이다. 전체의 차수는 1980(=48×96)이고, 압축 차수(P)를 180 이상으로 할 때 정밀도의 열화가 거의 없다. 도 6을 참조하면, 본 발명에 따른 서포트 벡터 머신의 정밀도는, 종래의 서포트 벡터 머신의 그것과 비슷하다. 또한, 본 발명에 따른 서포트 벡터 머신의 정밀도는, 아다부스트(Adaboost)를 이용하는 분류기의 그것보다 높다. 아다부스트를 이용하는 분류기일 때, 도 6의 가로축은 약한 분류기(Weak Classifier)의 개수이다.
도 7은 본 발명에 따른 입력 벡터 압축시 하드웨어 리소스 및 정밀도를 예시적으로 보여주는 표이다.
압축하지 않고 원래의 입력 벡터가 이용될 때, 메모리 워드 개수 및 곱셈기의 개수는 각각 2,781,900개(100%) 필요하고, 덧셈기 혹은 뺄셈기의 개수는 2,780,495개 필요하다. 이때 정밀도는 99.6%이다.
반면에, 압축 차수(P)가 400일 때, 메모리 워드 개수 및 곱셈기의 개수는 각각 1,354,000개(49%)가 필요하고, 덧셈기 혹은 뺄셈기의 개수는 1,350,615개(49%)개 필요하다. 즉, 압축 차수(P)가 400일 때 51% 하드웨어 절감 효과가 발생한다. 이때 정밀도는 99.5%이다.
한편, 압축 차수(P)가 200일 때, 메모리 워드 개수 및 곱셈기의 개수는 각각 677,000개(24%)가 필요하고, 덧셈기 혹은 뺄셈기의 개수는 673,615개(24%)개 필요하다. 즉, 압축 차수(P)가 200일 때 761% 하드웨어 절감 효과가 발생한다. 이때 정밀도는 99.4%이다.
한편, 본 발명의 상세한 설명에서는 구체적인 실시 예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지로 변형할 수 있다. 그러므로 본 발명의 범위는 상술한 실시 예에 국한되어 정해져서는 안되며 후술하는 특허 청구범위뿐만 아니라 이 발명의 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100: 벡터 분류기
120: 벡터 압축부
140: 서포트 벡터 저장부
160: 서포트 벡터 머신 연산부
200: 서포트 벡터 머신 훈련기
220: 훈련 벡터 저장부
240: 벡터 압축부
260: 벡터 훈련부

Claims (16)

  1. 입력 벡터를 압축하는 벡터 압축기;
    압축된 서포트 벡터를 저장하는 서포트 벡터 저장부; 및
    상기 압축된 입력 벡터 및 상기 압축된 서포트 벡터를 입력받아 분류 결정식에 따라 연산하는 서포트 벡터 머신 연산부를 포함하는 벡터 분류기.
  2. 제 1 항에 있어서,
    상기 분류 결정식은,
    Figure pat00017
    을 만족하고,
    여기서, M은 압축된 서포트 벡터의 개수이고, αi는 i번째 압축된 서포트 벡터의 가중치이고, y i는 클래스이고, b는 바이어스이고, K(u,vi)는 분류 커널 함수이고, vi는 압축된 서포트 벡터이고, u는 상기 압축된 입력 벡터인 벡터 분류기.
  3. 제 2 항에 있어서,
    상기 분류 커널 함수는 선형인 벡터 분류기.
  4. 제 2 항에 있어서,
    상기 분류 커널 함수는 다항식인 벡터 분류기.
  5. 제 2 항에 있어서,
    상기 분류 커널 함수는 비선형의 RBF(Radial Basis Function)인 벡터 분류기.
  6. 제 5 항에 있어서,
    상기 벡터 압축부는, 서포트 벡터의 고유 벡터의 영향력을 줄이도록 상기 입력 벡터를 압축하는 벡터 분류기.
  7. 제 6 항에 있어서,
    상기 입력 벡터를 압축하기 위하여,
    Figure pat00018
    를 만족하고,
    여기서, X는 상기 입력 벡터이고,
    Figure pat00019

    Xs ,M은 M번째 서포트 벡터이고,
    Us, Vs는 직교 및 단일 행렬(orthonormal and unitary matrix) 이고
    Figure pat00020
    이고,
    여기서, (:,1:P)에서 처음 ':'은 모든 행(row)의 요소들을 포함한다는 의미이고, '1:P'는 모든 열(column)의 요소들 중 처음 P개만을 선택한다는 의미인 벡터 분류기.
  8. 제 7 항에 있어서,
    상기 압축된 입력 벡터는 XVs(:,1:P)이고,
    상기 압축된 서포트 벡터는 UsDs(:,1:P)의 행벡터인 벡터 분류기.
  9. 제 7 항에 있어서,
    상기 서포트 벡터 저장부는, 상기 입력 벡터의 차수에 상기 압축된 입력 벡터의 차수를 곱한 만큼의 저장 공간과, 상기 압축된 서포트 벡터의 차수에 상기 압축된 입력 벡터의 차수를 곱한 만큼의 저장 공간을 포함하는 벡터 분류기.
  10. 제 1 항에 있어서,
    상기 서포트 벡터 머신 연산부는,
    상기 압축된 입력 벡터와 상기 압축된 서포트 벡터를 입력받아 소정의 분류 커널 함수에 따라 커널 값을 계산하는 커널 계산기;
    상기 계산된 커널 값에 대응하는 가중치를 상기 커널 값에 곱하는 곱셈기;
    상기 곱셈기의 출력 값을 누적하는 레지스터; 및
    상기 레지스터에 누적된 값을 부호함수를 이용하여 분류 값을 생성하는 필터를 포함하는 벡터 분류기.
  11. 제 1 항에 있어서,
    상기 압축된 서포트 벡터를 출력하는 서포트 벡터 머신 훈련기를 더 포함하는 벡터 분류기.
  12. 제 11 항에 있어서,
    상기 서포트 벡터 머신 훈련기는,
    훈련 벡터들을 저장하는 훈련 벡터 저장부;
    상기 훈련 벡터 저장부로부터 출력된 훈련 벡터를 압축하는 훈련 벡터 압축부; 및
    상기 압축된 훈련 벡터를 이용하여 서포트 벡터를 선택하는 벡터 훈련부를 포함하는 벡터 분류기.
  13. 벡터 분류기의 벡터 분류 방법에 있어서:
    입력 벡터의 차수를 줄이도록 상기 입력 벡터를 압축하는 단계; 및
    상기 압축된 입력 벡터와 압축된 서포트 벡터를 입력받아 분류 결정식에 따라 분류하는 단계를 포함하는 벡터 분류 방법.
  14. 제 13 항에 있어서,
    서포트 벡터를 압축하는 단계를 더 포함하는 벡터 분류 방법
  15. 제 13 항에 있어서,
    상기 서포트 벡터를 압축하는 단계는,
    훈련 벡터를 압축하고, 압축된 훈련 벡터를 이용하여 서포트 벡터를 선택하는 단계를 포함하는 벡터 분류 방법.
  16. 제 15 항에 있어서,
    상기 선택된 서포트 벡터가 상기 압축된 서포트 벡터인 벡터 분류 방법.
KR1020100101509A 2010-10-18 2010-10-18 벡터 분류기 및 그것의 벡터 분류 방법 KR20120040015A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020100101509A KR20120040015A (ko) 2010-10-18 2010-10-18 벡터 분류기 및 그것의 벡터 분류 방법
US13/189,345 US20120095947A1 (en) 2010-10-18 2011-07-22 Vector classifier and vector classification method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100101509A KR20120040015A (ko) 2010-10-18 2010-10-18 벡터 분류기 및 그것의 벡터 분류 방법

Publications (1)

Publication Number Publication Date
KR20120040015A true KR20120040015A (ko) 2012-04-26

Family

ID=45934973

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100101509A KR20120040015A (ko) 2010-10-18 2010-10-18 벡터 분류기 및 그것의 벡터 분류 방법

Country Status (2)

Country Link
US (1) US20120095947A1 (ko)
KR (1) KR20120040015A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016118257A1 (en) * 2015-01-22 2016-07-28 Qualcomm Incorporated Model compression and fine-tuning
KR102286229B1 (ko) * 2020-02-19 2021-08-06 한국기술교육대학교 산학협력단 특징벡터 기반 싸움 이벤트 인식 방법

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103106062B (zh) * 2013-02-04 2016-01-20 中国科学院半导体研究所 校正光学向量-矩阵乘法器激光通路一致性的方法
CN103295031B (zh) * 2013-04-15 2016-12-28 浙江大学 一种基于正则风险最小化的图像目标计数方法
CN113628403A (zh) * 2020-07-28 2021-11-09 威海北洋光电信息技术股份公司 基于多核支持向量机的光纤振动传感周界安防入侵行为识别算法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5802208A (en) * 1996-05-06 1998-09-01 Lucent Technologies Inc. Face recognition using DCT-based feature vectors
US7295977B2 (en) * 2001-08-27 2007-11-13 Nec Laboratories America, Inc. Extracting classifying data in music from an audio bitstream
EP2345256B1 (en) * 2008-10-07 2018-03-14 Euclid Discoveries, LLC Feature-based video compression
TW201022959A (en) * 2008-10-30 2010-06-16 Ibm Method, device, computer program and computer program product for determining a representation of a signal
US8731317B2 (en) * 2010-09-27 2014-05-20 Xerox Corporation Image classification employing image vectors compressed using vector quantization

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016118257A1 (en) * 2015-01-22 2016-07-28 Qualcomm Incorporated Model compression and fine-tuning
US10223635B2 (en) 2015-01-22 2019-03-05 Qualcomm Incorporated Model compression and fine-tuning
KR102286229B1 (ko) * 2020-02-19 2021-08-06 한국기술교육대학교 산학협력단 특징벡터 기반 싸움 이벤트 인식 방법

Also Published As

Publication number Publication date
US20120095947A1 (en) 2012-04-19

Similar Documents

Publication Publication Date Title
US11657267B2 (en) Neural network apparatus, vehicle control system, decomposition device, and program
US10783454B2 (en) Scalable-effort classifiers for energy-efficient machine learning
WO2017139927A1 (en) Region proposal for image regions that include objects of interest using feature maps from multiple layers of a convolutional neural network model
US9002101B2 (en) Recognition device, recognition method, and computer program product
Chan et al. Bayesian poisson regression for crowd counting
US8532399B2 (en) Large scale image classification
US20190005324A1 (en) Method and apparatus for separating text and figures in document images
EP3729338A1 (en) Neural entropy enhanced machine learning
KR102142403B1 (ko) 저사양 임베디드 환경에서의 합성곱 신경망 연산을 위한 역 잔여 블록의 채널 확장 매개변수 설정 시스템 및 방법
KR20120040015A (ko) 벡터 분류기 및 그것의 벡터 분류 방법
US11120298B2 (en) Tensor image mapping device, method, and computer program product
US20140297707A1 (en) Information processing apparatus, information processing method and storage medium
US9058748B2 (en) Classifying training method and apparatus using training samples selected at random and categories
Pichel et al. A new approach for sparse matrix classification based on deep learning techniques
US20130156319A1 (en) Feature vector classifier and recognition device using the same
Moon et al. Meta learning of bounds on the Bayes classifier error
KR101704736B1 (ko) 다단계의 부분 분류기를 이용한 서포트 벡터 머신 기반 데이터 분류 장치 및 그 방법
EP3166021A1 (en) Method and apparatus for image search using sparsifying analysis and synthesis operators
US20220405576A1 (en) Multi-layer neural network system and method
CN111788582A (zh) 电子设备及其控制方法
CN112381338B (zh) 事件概率预测模型训练、事件概率预测方法及相关装置
US11593621B2 (en) Information processing apparatus, information processing method, and computer program product
WO2022104271A1 (en) Automatic early-exiting machine learning models
Thanomsingh et al. A comparison study of using linear and nonlinear classifiers on object recognition based on inception convolutional neural networks with different numbers of inception-block
US8019762B2 (en) Binary data classification method, binary data classification device, computer program, and storage medium

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application