KR20210092546A - 평행 초평면을 이용한 데이터 포인트 분류 방법 및 장치 - Google Patents

평행 초평면을 이용한 데이터 포인트 분류 방법 및 장치 Download PDF

Info

Publication number
KR20210092546A
KR20210092546A KR1020200006072A KR20200006072A KR20210092546A KR 20210092546 A KR20210092546 A KR 20210092546A KR 1020200006072 A KR1020200006072 A KR 1020200006072A KR 20200006072 A KR20200006072 A KR 20200006072A KR 20210092546 A KR20210092546 A KR 20210092546A
Authority
KR
South Korea
Prior art keywords
hyperplane
parallel
cluster
clusters
data points
Prior art date
Application number
KR1020200006072A
Other languages
English (en)
Other versions
KR102282343B1 (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 KR1020200006072A priority Critical patent/KR102282343B1/ko
Publication of KR20210092546A publication Critical patent/KR20210092546A/ko
Application granted granted Critical
Publication of KR102282343B1 publication Critical patent/KR102282343B1/ko

Links

Images

Classifications

    • 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
    • G06K9/6269
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/906Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • G06K9/481
    • G06K9/6211
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • G06V10/469Contour-based spatial representations, e.g. vector-coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/757Matching configurations of points or features

Landscapes

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

Abstract

본 발명은 평행 초평면을 이용한 데이터 포인트 분류 방법 및 장치에 관한 것으로, 본 발명의 일 실시예에 따른 평행 초평면을 이용한 데이터 포인트 분류 방법은, 데이터 포인트를 복수 개의 클러스터로 클러스터링하는 단계, 상기 클러스터링된 복수 개의 클러스터의 중심 집합을 이용하여 근사적인 초평면(Approximate Hyperplane)을 검색하는 단계, 및 상기 검색된 근사적인 초평면을 기준으로 양쪽에 각각 위치하고 상기 근사적인 초평면과 평행한 평행 초평면(Parallel Hyperplane)을 제외한 잔여 데이터 포인트 세트를 분류하는 단계를 포함한다.

Description

평행 초평면을 이용한 데이터 포인트 분류 방법 및 장치{METHODS AND APPARATUSES FOR CLASSIFYING DATA POINT USING PARALLEL HYPERPLANE}
본 발명은 평행 초평면을 이용한 데이터 포인트 분류 방법 및 장치에 관한 것이다.
무선 센서 네트워크는 IoT(Internet of Things) 환경에서 효율적인 데이터 수집 및 전송을 가능하게 한다. 또한, 서포트 벡터 머신(SVM, Support Vector Machine)은 뛰어난 견고성으로 인해 다양한 분류 문제에 널리 적용되는 효율적인 기계 학습 기술이다.
하지만, 데이터양이 기하급수적으로 증가함에 따라 트레이닝(Training) 시간이 많이 증가한다. 서포트 벡터 머신에서 트레이닝 데이터의 수가 증가함에 따라 시간 복잡도가 급격히 증가한다. 그러므로, 대규모 데이터 세트의 경우 서포트 벡터 머신이 비실용적이다. 결과적으로, 서포트 벡터 머신의 성능은 현저히 낮아지게 된다. 서포트 벡터 머신은 대규모 데이터 세트에 대한 문제를 해결하기에 적합하지 않다는 문제점이 있다.
본 발명의 실시예들은 대규모 데이터 세트를 효율적으로 분류하여 트레이닝 시간을 크게 단축시키기 위한, 평행 초평면을 이용한 데이터 포인트 분류 방법 및 장치를 제공하고자 한다.
본 발명의 실시예들은 서포트 벡터 머신을 사용하되, 시간 복잡도를 최대한 감소시키기 위한, 평행 초평면을 이용한 데이터 포인트 분류 방법 및 장치를 제공하고자 한다.
다만, 본 발명의 해결하고자 하는 과제는 이에 한정되는 것이 아니며, 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위의 환경에서도 다양하게 확장될 수 있을 것이다.
본 발명의 일 실시예에 따르면, 데이터 포인트 분류 장치에 의해 수행되는 데이터 포인트 분류 방법에 있어서, 데이터 포인트를 복수 개의 클러스터로 클러스터링하는 단계; 상기 클러스터링된 복수 개의 클러스터의 중심 집합을 이용하여 근사적인 초평면(Approximate Hyperplane)을 검색하는 단계; 및 상기 검색된 근사적인 초평면을 기준으로 양쪽에 각각 위치하고 상기 근사적인 초평면과 평행한 평행 초평면(Parallel Hyperplane)을 제외한 잔여 데이터 포인트 세트를 분류하는 단계를 포함하는, 평행 초평면을 이용한 데이터 포인트 분류 방법이 제공될 수 있다.
상기 클러스터링하는 단계는, K-평균 클러스터링(K-mean Clustering) 알고리즘을 사용하여 상기 데이터 포인트를 복수 개의 클러스터로 분할할 수 있다.
상기 복수 개의 클러스터의 수는, 상기 데이터 포인트의 개수 및 상기 데이터 포인트로 이루어지는 데이터 세트의 구조에 기초하여 선택될 수 있다.
상기 클러스터링된 복수 개의 클러스터는, 적어도 하나의 단일 클래스 레이블을 가진 단일 클러스터와 적어도 하나의 두 개의 클래스 레이블을 가진 듀오 클러스터(Duo Cluster)를 포함할 수 있다.
상기 클러스터링하는 단계는, 상기 클러스터링된 클러스터가 두 개의 클래스 레이블을 가진 듀오 클러스터이면, 상기 듀오 클러스터를 단일 클러스터로 다시 클러스터링할 수 있다.
상기 근사적인 초평면을 검색하는 단계는, 상기 클러스터링된 각 클러스터의 중심점과 각 클러스터 내부의 데이터 포인트 사이의 거리를 결정할 수 있다.
상기 잔여 데이터 포인트 세트를 분류하는 단계는, 상기 검색된 근사적인 초평면을 기준으로 양쪽에 각각 위치한 클러스터의 중심 집합의 중심점을 통과하는 상기 근사적인 초평면과 평행한 평행 초평면을 검색하는 단계; 상기 검색된 근사적인 초평면을 기준으로 상기 검색된 평행 초평면을 초과하는 클러스터를 제거하는 단계; 및 상기 클러스터링된 복수 개의 클러스터 중에서 상기 제거된 클러스터를 제외한 잔여 데이터 포인트 세트를 분류하는 단계를 포함할 수 있다.
상기 평행 초평면을 검색하는 단계는, 상기 검색된 근사적인 초평면을 기준으로 일측에 위치한 클러스터의 중심 집합의 제1 중심점을 검색하고, 상기 검색된 근사적인 초평면을 기준으로 타측에 위치한 클러스터의 중심 집합의 제2 중심점을 검색할 수 있다.
상기 평행 초평면을 검색하는 단계는, 상기 검색된 제1 중심점을 통과하고 상기 검색된 근사적인 초평면과 평행한 제1 평행 초평면을 검색하고, 상기 검색된 제2 중심점을 통과하고 상기 검색된 근사적인 초평면과 평행한 제2 제1 평행 초평면을 검색할 수 있다.
상기 클러스터를 제거하는 단계는, 상기 검색된 제1 평행 초평면의 양의 측(Positive Side)에 위치한 클러스터를 제거하고, 상기 검색된 제2 평행 초평면의 음의 측(Negative Side)에 위치한 클러스터를 제거할 수 있다.
상기 잔여 데이터 포인트 세트를 분류하는 단계는, 상기 잔여 데이터 포인트 세트에 대해 서포트 벡터 머신을 적용하여 상기 잔여 데이터 포인트를 분류할 수 있다.
한편, 본 발명의 다른 실시예에 따르면, 하나 이상의 프로그램을 저장하는 메모리; 및 상기 저장된 하나 이상의 프로그램을 실행하는 프로세서를 포함하고, 상기 프로세서는, 데이터 포인트를 복수 개의 클러스터로 클러스터링하고, 상기 클러스터링된 복수 개의 클러스터의 중심 집합을 이용하여 근사적인 초평면(Approximate Hyperplane)을 검색하고, 상기 검색된 근사적인 초평면을 기준으로 양쪽에 각각 위치하고 상기 근사적인 초평면과 평행한 평행 초평면(Parallel Hyperplane)을 제외한 잔여 데이터 포인트 세트를 분류하는, 평행 초평면을 이용한 데이터 포인트 분류 장치가 제공될 수 있다.
상기 프로세서는, K-평균 클러스터링(K-mean Clustering) 알고리즘을 사용하여 상기 데이터 포인트를 복수 개의 클러스터로 분할할 수 있다.
상기 복수 개의 클러스터의 수는, 상기 데이터 포인트의 개수 및 상기 데이터 포인트로 이루어지는 데이터 세트의 구조에 기초하여 선택될 수 있다.
상기 클러스터링된 복수 개의 클러스터는, 적어도 하나의 단일 클래스 레이블을 가진 단일 클러스터와 적어도 하나의 두 개의 클래스 레이블을 가진 듀오 클러스터(Duo Cluster)를 포함할 수 있다.
상기 프로세서는, 상기 클러스터링된 클러스터가 두 개의 클래스 레이블을 가진 듀오 클러스터이면, 상기 듀오 클러스터를 단일 클러스터로 다시 클러스터링할 수 있다.
상기 프로세서는, 상기 클러스터링된 각 클러스터의 중심점과 각 클러스터 내부의 데이터 포인트 사이의 거리를 결정할 수 있다.
상기 프로세서는, 상기 검색된 근사적인 초평면을 기준으로 양쪽에 각각 위치한 클러스터의 중심 집합의 중심점을 통과하는 상기 근사적인 초평면과 평행한 평행 초평면을 검색하고, 상기 검색된 근사적인 초평면을 기준으로 상기 검색된 평행 초평면을 초과하는 클러스터를 제거 하고, 상기 클러스터링된 복수 개의 클러스터 중에서 상기 제거된 클러스터를 제외한 잔여 데이터 포인트 세트를 분류할 수 있다.
상기 프로세서는, 상기 검색된 근사적인 초평면을 기준으로 일측에 위치한 클러스터의 중심 집합의 제1 중심점을 검색하고, 상기 검색된 근사적인 초평면을 기준으로 타측에 위치한 클러스터의 중심 집합의 제2 중심점을 검색할 수 있다.
상기 프로세서는, 상기 검색된 제1 중심점을 통과하고 상기 검색된 근사적인 초평면과 평행한 제1 평행 초평면을 검색하고, 상기 검색된 제2 중심점을 통과하고 상기 검색된 근사적인 초평면과 평행한 제2 제1 평행 초평면을 검색할 수 있다.
상기 프로세서는, 상기 검색된 제1 평행 초평면의 양의 측(Positive Side)에 위치한 클러스터를 제거하고, 상기 검색된 제2 평행 초평면의 음의 측(Negative Side)에 위치한 클러스터를 제거할 수 있다.
상기 프로세서는, 상기 잔여 데이터 포인트 세트에 대해 서포트 벡터 머신을 적용하여 상기 잔여 데이터 포인트를 분류할 수 있다.
한편, 본 발명의 다른 실시예에 따르면, 프로세서에 의해 실행 가능한 하나 이상의 프로그램을 포함하는 비일시적 컴퓨터 판독가능 저장 매체로서, 상기 하나 이상의 프로그램은 상기 프로세서에 의해 실행될 때, 상기 프로세서로 하여금: 데이터 포인트를 복수 개의 클러스터로 클러스터링하고, 상기 클러스터링된 복수 개의 클러스터의 중심 집합을 이용하여 근사적인 초평면을 검색하고, 상기 검색된 근사적인 초평면을 기준으로 양쪽에 각각 위치한 클러스터의 중심 집합의 중심점과 상기 근사적인 초평면과 평행한 평행 초평면을 검색하고, 상기 검색된 근사적인 초평면을 기준으로 상기 검색된 평행 초평면을 초과하는 클러스터를 제거하고, 상기 클러스터링된 복수 개의 클러스터 중에서 상기 제거된 클러스터를 제외한 잔여 데이터 포인트 세트를 분류하게 하는 명령어들을 포함하는, 비 일시적 컴퓨터 판독 가능한 저장 매체가 제공될 수 있다.
개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
본 발명의 실시예들은 대규모 데이터 세트를 효율적으로 분류하여 트레이닝 시간을 크게 단축시킬 수 있다.
본 발명의 실시예들은 서포트 벡터 머신을 사용하되, 새로운 평행 초평면을 이용하여 불필요한 트레이닝 데이터를 효율적으로 제거함으로써, 시간 복잡도를 최대한 감소시킬 수 있다.
본 발명의 실시예들은 종래의 클러스터 기반 감축 기법과 종래의 SMO(Sequential Minimal Optimization) 기법에 비해 트레이닝 시간을 크게 단축시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 평행 초평면을 이용한 데이터 포인트 분류 장치의 구성을 나타낸 구성도이다.
도 2는 본 발명의 일 실시예에 따른 평행 초평면을 이용한 데이터 포인트 분류 방법을 나타낸 흐름도이다.
도 3은 두 개의 개별 레이블의 클러스터링된 데이터 포인트의 예를 나타낸 도면이다.
도 4는 도 3에 본 발명의 일 실시예에 적용되어 데이터 포인트가 제거된 결과를 나타낸 도면이다.
도 5는 데이터 포인트의 정규 분포에 표준 편차를 증가시키는 효과를 나타낸 도면이다.
도 6 및 도 7은 3과 6 클러스터의 서로 다른 수로 나뉘게 되는 클러스터링 예시를 나타낸 도면이다.
도 8 내지 도 11은 본 발명의 일 실시예에 따른 평행 초평면을 이용한 데이터 포인트 분류 방법의 주요 동작을 나타낸 도면이다.
도 12는 본 발명의 일 실시예에 따른 평행 초평면을 이용한 데이터 포인트 분류 방법에 대한 흐름도이다.
도 13 및 도 14는 본 발명의 일 실시예와 종래 기술에 따른 정규 분포 데이터에 대한 트레이닝 시간과 정확도의 비교를 나타낸 도면이다.
도 15 및 도 16은 본 발명의 일 실시예와 종래 기술에 따른 혼합 분포 데이터에 대한 트레이닝 시간과 정확도의 비교를 나타낸 도면이다.
도 17 내지 도 20은 다른 수의 클러스터를 갖는 잔여 데이터 포인트의 수의 백분율을 나타낸 도면이다.
도 21은 본 발명의 일 실시예에 따른 혼합 분포를 갖는 잔여 데이터 포인트의 수를 나타낸 도면이다.
도 22는 본 발명의 일 실시예와 종래 기술에 따른 스킨 세그먼테이션 데이터 세트에 대해 트레이닝 시간의 비교를 나타낸 도면이다.
본 발명은 다양한 변환을 가할 수 있고 여러가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 구체적으로 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 기술적 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해될 수 있다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들이 용어들에 의해 한정되는 것은 아니다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 발명에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 본 발명에서 사용한 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나 이는 당 분야에 종사하는 기술자의 의도, 판례, 또는 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 발명에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
이하, 본 발명의 실시예들을 첨부 도면을 참조하여 상세히 설명하기로 하며, 첨부 도면을 참조하여 설명함에 있어, 동일하거나 대응하는 구성요소는 동일한 도면번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
도 1은 본 발명의 일 실시예에 따른 평행 초평면을 이용한 데이터 포인트 분류 장치의 구성을 나타낸 구성도이다.
도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 평행 초평면을 이용한 데이터 포인트 분류 장치(100)는 메모리(110) 및 프로세서(120)를 포함한다. 그러나 도시된 구성요소 모두가 필수 구성요소인 것은 아니다. 도시된 구성요소보다 많은 구성요소에 의해 데이터 포인트 분류 장치(100)가 구현될 수도 있고, 그보다 적은 구성요소에 의해서도 데이터 포인트 분류 장치(100)가 구현될 수 있다.
이하, 도 1의 본 발명의 일 실시예에 따른 평행 초평면을 이용한 데이터 포인트 분류 장치(100)의 각 구성요소들의 구체적인 구성 및 동작을 설명한다.
메모리(110)는 하나 이상의 프로그램을 저장한다. 또한, 메모리(110)는 SVM의 트레이닝을 위한 트레이닝 데이터 포인트를 저장한다.
프로세서(120)는 메모리(110)에 저장된 하나 이상의 프로그램을 실행한다.
프로세서(120)는 데이터 포인트를 복수 개의 클러스터로 클러스터링하고, 클러스터링된 복수 개의 클러스터의 중심 집합을 이용하여 근사적인 초평면(Approximate Hyperplane)을 검색하고, 그 검색된 근사적인 초평면을 기준으로 양쪽에 각각 위치한 클러스터의 중심 집합의 중심점과 근사적인 초평면과 평행한 평행 초평면(Parallel Hyperplane)을 검색하고, 그 검색된 근사적인 초평면을 기준으로 상기 검색된 평행 초평면을 초과하는 클러스터를 제거하고, 그 클러스터링된 복수 개의 클러스터 중에서 그 제거된 클러스터를 제외한 잔여 데이터 포인트 세트(Remaining data point)를 분류한다.
실시예들에 따르면, 프로세서(120)는 K-평균 클러스터링(K-mean Clustering) 알고리즘을 사용하여 상기 데이터 포인트를 복수 개의 클러스터로 분할할 수 있다.
실시예들에 따르면, 복수 개의 클러스터의 수는 데이터 포인트의 개수 및 데이터 포인트로 이루어지는 데이터 세트의 구조에 기초하여 선택될 수 있다.
실시예들에 따르면, 클러스터링된 복수 개의 클러스터는 적어도 하나의 단일 클래스 레이블을 가진 단일 클러스터와 적어도 하나의 두 개의 클래스 레이블을 가진 듀오 클러스터(Duo Cluster)를 포함할 수 있다.
실시예들에 따르면, 프로세서(120)는 클러스터링된 클러스터가 두 개의 클래스 레이블을 가진 듀오 클러스터이면, 듀오 클러스터를 단일 클러스터로 다시 클러스터링할 수 있다.
실시예들에 따르면, 프로세서(120)는 클러스터링된 각 클러스터의 중심점과 각 클러스터 내부의 데이터 포인트 사이의 거리를 결정할 수 있다.
실시예들에 따르면, 프로세서(120)는 검색된 근사적인 초평면을 기준으로 일측에 위치한 클러스터의 중심 집합의 제1 중심점을 검색하고, 검색된 근사적인 초평면을 기준으로 타측에 위치한 클러스터의 중심 집합의 제2 중심점을 검색할 수 있다.
실시예들에 따르면, 프로세서(120)는 검색된 제1 중심점을 통과하고 그 검색된 근사적인 초평면과 평행한 제1 평행 초평면을 검색하고, 검색된 제2 중심점을 통과하고 그 검색된 근사적인 초평면과 평행한 제2 제1 평행 초평면을 검색할 수 있다.
실시예들에 따르면, 프로세서(120)는 검색된 제1 평행 초평면의 양의 측(Positive Side)에 위치한 클러스터를 제거하고, 검색된 제2 평행 초평면의 음의 측(Negative Side)에 위치한 클러스터를 제거할 수 있다.
실시예들에 따르면, 프로세서(120)는 잔여 데이터 포인트 세트에 대해 서포트 벡터 머신을 적용하여 상기 잔여 데이터 포인트를 분류할 수 있다.
이와 같이, 본 발명의 일 실시예에 따른 평행 초평면을 이용한 데이터 포인트 분류 장치(100)는 종래의 클러스터 기반 감축 기법과 종래의 SMO 기법에 비해 트레이닝 시간을 크게 단축시킬 수 있다. 데이터 포인트 분류 장치(100)는 평행 초평면(Parallel Hyperplane)을 이용하여 트레이닝 샘플을 제거함으로써, 메모리 오버 헤드 관점에서 서포트 벡터 머신(SVM, Support Vector Machine)의 성능을 향상시킬 수 있다. 데이터 포인트 분류 장치(100)는 데이터 포인트를 효율적으로 찾을 수 있다.
도 2는 본 발명의 일 실시예에 따른 평행 초평면을 이용한 데이터 포인트 분류 방법을 나타낸 흐름도이다.
단계 S101에서, 데이터 포인트 분류 장치(100)는 데이터 포인트를 클러스터링하여 복수 개의 클러스터를 생성한다. 단계 S101은 데이터 포인트의 클러스터링 동작이다. 데이터 포인트를 클러스터링한 후, 일부 클러스터에는 두 개의 클래스 레이블(Duo class label)의 데이터가 포함될 수 있다. 다른 클러스터는 단 하나의 클래스 레이블만 수행할 수 있다. 이를 위해 k 개의 클러스터는 다음과 같이 두 개의 서브 집합인 클러스터 집합 U와 클러스터 집합 V로 분류된다. k 개의 클러스터는
Figure pat00001
Figure pat00002
로 출력된다. 클러스터 집합 U는 오직 하나의 클래스 레이블의 클러스터에 의해 구성되는 반면, 두 개의 클래스 레이블의 클러스터 집합 V에 의해 구성된다. 모든 클러스터 C의 집합은
Figure pat00003
이다. 도 3에서 두 개의 하위 클러스터(204)의 중앙 클러스터는 듀오 클러스터(203)의 예이다. (k-r)개의 듀오 클러스터가 존재하는 경우, 그들을 2로 나눈 후 총 클러스터 수는
Figure pat00004
이 된다.
단계 S102에서, 데이터 포인트 분류 장치(100)는 생성된 복수 개의 클러스터에 대해 각 클러스터의 무게 중심(Centroid)을 식별한다. k-평균 클러스터링을 적용하면서, 단계 S102는 각 클러스터
Figure pat00005
의 중심을 결정한다. 또한, 각 클러스터에 대해 중심점과 클러스터 내부의 데이터 포인트 사이의 거리가 결정된다.
Figure pat00006
는 단일 클러스터 U의 중심 집합이다.
Figure pat00007
의 각 클러스터에 대해, 클러스터의 중심점은 하기의 [수학식 1]을 이용하여 계산한다.
Figure pat00008
여기서, n은 클러스터
Figure pat00009
에서 데이터 포인트의 수를 나타낸다.
Figure pat00010
은 VL의 클러스터의 중심 집합으로 정의된다. 각 데이터 포인트와 각 클러스터에서의 대응하는 중심 사이의 거리가 결정되고, 각 클러스터에서의 최대 거리 d(max)i (i = 1,…, (2k-r))가 결정된다.
단계 S103에서, 데이터 포인트 분류 장치(100)는 식별된 각 클러스터의 중심 집합을 이용하여 근사적인 초평면을 검색한다. 단계 S103은 근사적인 초평면을 검색하기 위한 단계로서, 모든 데이터 포인트 대신 트레이닝 데이터의 클러스터 중심만으로 발견된다. 이 초평면은 법선 벡터
Figure pat00011
와 바이어스(bias) b로 표현된다.
단계 S104에서, 데이터 포인트 분류 장치(100)는 근사적인 초평면을 기준으로 클러스터의 중심 집합의 중심점을 검색한다. 단계 S104는 근사적인 초평면의 양쪽 두 면에서 클러스터 중심 집합의 중심점을 검색한다. 양의 중심 집합
Figure pat00012
은 양의 레이블(label_+1)의 클러스터를 나타낸다. 음의 중심 집합
Figure pat00013
은 음의 레이블(label_(-1))에 대한 것이다. 중심 집합
Figure pat00014
Figure pat00015
의 중심점은 각각
Figure pat00016
Figure pat00017
로 표시된다. 하기의 [수학식 2]는 각 측에 n개의 클러스터를 가정한 것이다.
Figure pat00018
단계 S105에서, 데이터 포인트 분류 장치(100)는 검색된 클러스터의 중심 집합의 중심점을 통과하고 근사적인 초평면과 평행한 평행 초평면을 검색한다. 단계 S105는 평행 초평면(PH+ 및 PH-)을 검색하기 위한 단계이다. 평행 초평면(PH)은 각각 양의 측의 중심점
Figure pat00019
와 음의 측의 중심점
Figure pat00020
를 통과한다. 양의 측의 중심점
Figure pat00021
를 통과하는 양의 평행 초평면은
Figure pat00022
로 표시되고, 음의 측의 중심점
Figure pat00023
를 통과하는 음의 평행 초평면은
Figure pat00024
로 표시된다. 초평면은
Figure pat00025
으로 정의되며, 이 초평면의 법선 벡터는
Figure pat00026
로 정의된다. 포인트
Figure pat00027
를 지나는 초평면은 하기의 [수학식 3]과 같다.
Figure pat00028
도 3은 두 개의 개별 레이블의 클러스터링된 데이터 포인트의 예를 나타내고, 도 4는 도 3에 본 발명의 일 실시예에 적용되어 데이터 포인트가 제거된 결과를 나타낸 도면이다.
도 3에는 두 개의 개별 클래스 레이블의 클러스터링된 데이터 포인트의 예가 표시된다. 점과 별은 각각 레이블_1(label_1)과 레이블_2(label_2)의 각 클러스터의 중심을 나타낸다. 근사적인 초평면(210)은 실선으로 표현된다. 양의 중심점
Figure pat00029
와 음의 중심점
Figure pat00030
은 근사적인 초평면의 두 개의 서로 다른 측면에서 클러스터의 중심 집합의 중심점을 나타낸다. 양의 중심점
Figure pat00031
와 음의 중심점
Figure pat00032
를 각각 통과하는 양의 평행 초평면 PH+ (211)과 음의 초평면 PH- (212)은 점선으로 표시된다. 도 3에서 평행 초평면 PH+ (211)과 PH- (212)를 초과하는 클러스터(202)는 근사적인 초평면(210) 및 결과적으로 분류 프로세스에 거의 영향을 미치지 않는다. 이들을 효율적으로 식별하는 것이 본 발명의 일 실시예의 주요 목표이며, 도 4는 한 번의 데이터 제거 반복의 결과물이다. 근사적인 초평면(210)을 기준으로 양의 평행 초평면 PH+ (211)과 음의 초평면 PH- (212) 이내의 클러스터(201)은 제거되지 않는다.
단계 S106에서, 데이터 포인트 분류 장치(100)는 평행 초평면을 초과하는 클러스터를 제거한다. 단계 S106는 PH+ 의 양 측면과 PH- 의 음 측면에 각각 위치하는 클러스터를 제거하는 단계로서, 근사적인 초평면을 기준으로 멀리 떨어진 트레이닝 데이터를 제거한다. 이를 위해 양의 평행 초평면 PH+ 의 양의 측과 PH- 의 음의 측에 위치한 클러스터는 제거된다.
단계 S107에서, 데이터 포인트 분류 장치(100)는 클러스터링된 복수 개의 클러스터 중에서 제거된 클러스터를 제외한 잔여 데이터 포인트 세트에 서포트 벡터 머신을 적용하여 분류한다.
도 5는 데이터 포인트의 정규 분포에 표준 편차를 증가시키는 효과를 나타낸 도면이다.
다음으로 데이터 모델링(Data Modeling) 과정이 있다. 정규 및 지수 분포는 무작위로 학습 데이터를 생성하는 데 사용된다. 정규 분포와 지수 분포의 확률 밀도 함수(PDF, Probability Density Function)는 하기의 [수학식 4] 및 [수학식 5]와 같이 정의된다.
Figure pat00033
Figure pat00034
여기서,
Figure pat00035
Figure pat00036
는 정규 분포의 평균과 표준 편차이고,
Figure pat00037
는 지수 분포의 속도 매개 변수이다. 낮은 표준 편차는 데이터 포인트가 세트의 데이터 평균에 가까운 것을 의미하며, 큰 값은 광범위한 것을 의미한다. 도 5는 데이터 포인트의 정규 분포에 표준 편차를 증가시키는 효과를 나타낸다.
도 6 및 도 7은 3과 6 클러스터의 서로 다른 수로 나뉘게 되는 클러스터링 예시를 나타낸 도면이다.
데이터 포인트들 사이의 최대 거리에서 클러스터 수의 영향을 조사하기 위해, 100개의 데이터 포인트의 피셔 아이리스 데이터 세트(Fisher's Iris dataset)는 도 6 및 도 7과 같이 3개와 6개 클러스터의 서로 다른 수로 나뉘게 된다. 도 6에서의 각 클러스터의 분산은 도 7에서의 클러스터의 분산보다 크다. 클러스터의 수가 증가할수록 평균 거리는 감소된다.
도 8 내지 도 11은 본 발명의 일 실시예에 따른 평행 초평면을 이용한 데이터 포인트 분류 방법의 주요 동작을 나타낸 도면이다.
클러스터의 수와 표준 편차는 중요한 요인이므로, 본 발명의 일 실시예의 성능 평가에서 변수로 취급된다.
도 8은 1과 2의 클래스 레이블을 갖는, 상위 세트의 경우에 대해 N(3, 1.69)의 정규 분포와 하위 세트의 경우에 대해 N(-3, 1.69)의 정규 분포인 두 개를 사용하여 생성된 2000개의 데이터 포인트를 가진 이진 클래스 데이터 세트를 도시한다. 본 발명의 일 실시예는 트레이닝 시간과 메모리 요구를 감소시키기 위해, 데이터 포인트의 작은 그룹만을 사용하여 효과적인 분류기를 찾는 것이다.
그리고 90개 클러스터의 경우는 도 9에 표시되어 있다.
이후, 클러스터 중심에서 얻어진 근사적인 초평면(210)은 도 10의 실선으로 표시되어 있다. 또한, 근사적인 초평면(210)의 안전 마진(Safety Margin)인 양의 평행 초평면(211)과 음의 평행 초평면(212)도 점선으로 표시된다.
본 발명의 일 실시예는 서포트 벡터(Support Vector)가 될 가능성이 없는 불필요한 데이터 포인트(Redundant data point)가 트레이닝 데이터로부터 제거된다.
데이터 포인트의 제거 동작 후, 잔여 데이터 포인트는 도 11에 도시되어 있다. 트레이닝 데이터로서 313개의 데이터 포인트만이 남는다. 본 발명의 일 실시예는 그것들을 사용하여, 최종적으로 데이터 포인트를 분류할 수 있는 분류기인 초평면(220)과 안전 마진(221)을 검색한다. 이는 도 10에서 초평면(220)과 안전 마진(221)은 점선으로 표시된다.
도 12는 본 발명의 일 실시예에 따른 평행 초평면을 이용한 데이터 포인트 분류 방법에 대한 흐름도이다.
단계 S201에서, 데이터 포인트 분류 장치(100)는 데이터 포인트에 대해 K-평균 클러스터링을 수행한다.
단계 S202에서, 데이터 포인트 분류 장치(100)는 클러스터링된 클러스터가 단일 클래스 레이블 데이터를 포함하는 클러스터인지를 확인한다.
단계 S203에서, 데이터 포인트 분류 장치(100)는 단일 클래스 레이블 데이터를 포함하는 클러스터가 아니면, 복수의 클래스 레이블을 포함하는 클러스터를 별개의 클러스터로 나눈다.
단계 S204에서, 데이터 포인트 분류 장치(100)는 단일 클래스 레이블 데이터를 포함하는 클러스터이면, 각 클러스터의 중심을 검색한다.
단계 S205에서, 데이터 포인트 분류 장치(100)는 검색된 클러스터의 중심 집합에 대해 서포트 벡터 머신(SVM)을 적용하여 근사적 초평면을 검색한다.
단계 S206에서, 데이터 포인트 분류 장치(100)는 + 및 - 클래스에 대한 클러스터의 중심 집합의 중심점을 검색한다.
단계 S207에서, 데이터 포인트 분류 장치(100)는 중심점을 통과하고 근사적 초평면에 평행한 평행 초평면을 각각 검색한다.
단계 S208에서, 데이터 포인트 분류 장치(100)는 i=1 을 수행한다.
단계 S209에서, 데이터 포인트 분류 장치(100)는 i ≤ 클러스터의 수인지를 확인한다.
단계 S210에서, 데이터 포인트 분류 장치(100)는 i ≤ 클러스터이면, 클러스터가 음의 평행 초평면 PH- 의 음의 측 또는 양의 평행 초평면 PH+ 의 양의 측에 있는지를 확인한다.
단계 S211에서, 데이터 포인트 분류 장치(100)는 클러스터가 음의 평행 초평면 PH- 의 음의 측 또는 양의 평행 초평면 PH+ 의 양의 측에 있으면, 해당 클러스터를 제거한다. 데이터 포인트 분류 장치(100)는 다른 클러스터에 대해서도 단계 S209를 수행한다.
단계 S212에서, 데이터 포인트 분류 장치(100)는 음의 평행 초평면 PH- 의 음의 측 또는 양의 평행 초평면 PH+ 의 양의 측에 있는 클러스터가 없으면, 단계 S211에서 적어도 하나의 클러스터가 제거되었는지를 확인한다.
단계 S213에서, 데이터 포인트 분류 장치(100)는 i ≤ 클러스터가 아니면, 적어도 하나의 클러스터가 제거되었으면, 단계 S206부터 다시 수행한다.
단계 S213에서, 데이터 포인트 분류 장치(100)는 적어도 하나의 클러스터가 제거되지 않았으면, 잔여 클러스터에 서포트 벡터 머신(SVM)을 적용하여 데이터 세트를 분류한다.
도 13 및 도 14는 본 발명의 일 실시예와 종래 기술에 따른 정규 분포 데이터에 대한 트레이닝 시간과 정확도의 비교를 나타낸 도면이다.
본 발명의 일 실시예를 검증하기 위하여 UCI 기계 학습 데이터베이스 저장소(UCI Machine Learning Repository)의 스킨 세그먼테이션 데이터 세트는 선택되며, 여러 개의 대규모 데이터 세트는 인공 데이터 세트로 무작위로 생성된다. 시뮬레이션은 인공 데이터 세트와 실제 데이터 세트로 나누어 수행하였다.
도 13에 도시된 바와 같이, 종래의 SMO 알고리즘은 클러스터링 없이 데이터 포인트를 분류하기 때문에 클러스터 수에 관계없이 일정한 성능을 보인다. 본 발명의 일 실시예는 클러스터의 수를 50부터 150까지 증가시키면, 데이터 포인트의 분류의 트레이닝 시간이 종래의 클러스터링 기반(Clustering based) 알고리즘에 비해 현저하게 줄어든 것을 보여준다.
도 14에 도시된 바와 같이, 본 발명의 일 실시예에 따른 정확도는 종래의 SMO 알고리즘과 거의 동일하고, 종래의 클러스터링 기반 알고리즘보다는 높다는 것을 나타낸다. 이는 본 발명의 일 실시예가 불필요한 데이터 포인트를 생략함에 있어서 서포트 벡터(SV)를 보존하므로 초평면의 구성에 해를 끼치지 않기 때문이다. 본 발명의 일 실시예는 다른 종래 방식에 비해 트레이닝 시간이 적게 걸리면서도 높은 정확도를 일관되게 제공한다.
도 15 및 도 16은 본 발명의 일 실시예와 종래 기술에 따른 혼합 분포 데이터에 대한 트레이닝 시간과 정확도의 비교를 나타낸 도면이다.
도 15 및 도 16은 혼합 분포에서 100000개 데이터 포인트를 갖는 세 가지 분류 체계에 의해 달성된 학습 시간과 정확도를 보여준다. 본 발명의 일 실시예는 종래의 SMO 및 클러스터링 기반 스키마보다 혼합된 분산의 데이터를 더 빨리 분류할 수 있음을 보여준다. 또한, 본 발명의 일 실시예는 종래 기술보다 정확도가 높다는 것을 보여준다.
한편, 초평면 주위의 지수 분포의 데이터 포인트의 밀도는 정규 분포의 밀도보다 낮다. 결과적으로, 도 15의 본 발명의 일 실시예에 따른 방식의 트레이닝 시간은 도 13의 트레이닝 시간보다 짧다.
도 17 내지 도 20은 다른 수의 클러스터를 갖는 잔여 데이터 포인트의 수의 백분율을 나타낸 도면이다.
도 17 내지 도 20은 상이한 크기의 데이터 세트, 군집 수 및 표준 편차(σ)에 대해 본 발명의 일 실시예에 따른 나머지 데이터 포인트의 백분율을 도시한다. 여기서, 데이터 포인트는 도 17 내지 도 20에 각각 도시된 1000, 10000, 100000 및 500000의 4가지 상이한 크기에서 μ1 = (3, 3) 및 μ2 = (-3, -3)의 2 개의 정규 분포를 사용하여 생성된다. 각각의 경우에 표준 편차 0.5, 0.8, 1 및 1.3의 4 가지 값이 고려된다.
도 17 내지 도 20에 도시된 바와 같이, 표준 편차가 증가할 때 남아있는 데이터의 백분율의 감소 추세가 관찰된다. 이는 본 발명의 일 실시예의 성능이 더 큰 표준 편차의 데이터에 대해 더 높다는 것을 의미한다. 클러스터의 수가 증가함에 따라 동일한 특성이 관찰된다.
클러스터 수를 50에서 100으로 늘리면 나머지 데이터 포인트 수를 크게 줄일 수 있지만 200과 250 사이에서 눈에 띄는 감소는 없다. 특정 포인트까지 클러스터의 수를 증가시키면 트레이닝 데이터 포인트의 수를 크게 줄일 수 있다. 그러나, 그것보다 더 증가하면 데이터 포인트의 감소에 거의 영향을 미치지 않는다.
도 20은 본 발명의 일 실시예에 따른 초평면 체계가 효과적으로 250개의 클러스터를 사용하여 교육 데이터 수를 500,000개에서 4948개로 줄어들었으며, 트레이닝 데이터 세트에서 중복 데이터 포인트가 99% 제거됨을 보여준다.
도 21은 본 발명의 일 실시예에 따른 혼합 분포를 갖는 잔여 데이터 포인트의 수를 나타낸 도면이다.
정규 분포와 지수 분포의 조합의 데이터에 대해 본 발명의 일 실시예에 따른 초평면 체계의 결과는 도 21에 도시되어 있다. 남아있는 데이터 포인트의 수의 현저한 감소는 특정 포인트까지의 클러스터 수의 증가와 함께 관찰된다. 도 20과 비교하여, 일부 수의 트레이닝 데이터 포인트 및 클러스터에 대해 더 적은 수의 나머지 데이터 포인트가 관찰된다. 예를 들어, 100 개의 클러스터를 갖는 100000 개의 트레이닝 데이터 포인트에 대해, 도 20의 정규 분포에 대한 나머지 데이터 포인트의 수는 10884이고, 도 21에서 2639이다.
도 22는 본 발명의 일 실시예와 종래 기술에 따른 스킨 세그먼테이션 데이터 세트에 대해 트레이닝 시간의 비교를 나타낸 도면이다.
도 22에 도시된 바와 같이, 선형으로 분리 가능한 데이터 세트에 더하여, 본 발명의 일 실시예는 대부분의 데이터 포인트가 선형으로 분리 가능한 반면, 데이터 포인트의 작은 부분이 중첩된 영역에 위치하는 비선형적으로 분리 가능한 데이터 세트에 적용될 수 있다. 비선형적으로 분리 가능한 데이터 세트에 적용됨으로써, 본 발명의 일 실시예의 트레이닝 시간이 종래의 기술에 비해 현저히 짧음을 보여주며, 높은 정확성을 보장한다. 도 22는 본 발명의 일 실시예의 트레이닝 시간이 다른 방식의 트레이닝 시간보다 실질적으로 낮으면서 종래의 SMO 방식으로서 높은 정확도를 허용함을 도시한다.
한편, 프로세서에 의해 실행 가능한 하나 이상의 프로그램을 포함하는 비일시적 컴퓨터 판독가능 저장 매체로서, 상기 하나 이상의 프로그램은 상기 프로세서에 의해 실행될 때, 상기 프로세서로 하여금: 데이터 포인트를 복수 개의 클러스터로 클러스터링하고, 상기 클러스터링된 복수 개의 클러스터의 중심 집합을 이용하여 근사적인 초평면을 검색하고, 상기 검색된 근사적인 초평면을 기준으로 양쪽에 각각 위치한 클러스터의 중심 집합의 중심점과 상기 근사적인 초평면과 평행한 평행 초평면을 검색하고, 상기 검색된 근사적인 초평면을 기준으로 상기 검색된 평행 초평면을 초과하는 클러스터를 제거하고, 상기 클러스터링된 복수 개의 클러스터 중에서 상기 제거된 클러스터를 제외한 잔여 데이터 포인트 세트를 분류하게 하는 명령어들을 포함하는, 비 일시적 컴퓨터 판독 가능한 저장 매체가 제공될 수 있다.
한편, 본 발명의 일 실시예에 따르면, 이상에서 설명된 다양한 실시예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media)에 저장된 명령어를 포함하는 소프트웨어로 구현될 수 있다. 기기는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 개시된 실시예들에 따른 전자 장치(예: 전자 장치(A))를 포함할 수 있다. 명령이 프로세서에 의해 실행될 경우, 프로세서가 직접, 또는 프로세서의 제어 하에 다른 구성요소들을 이용하여 명령에 해당하는 기능을 수행할 수 있다. 명령은 컴파일러 또는 인터프리터에 의해 생성 또는 실행되는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.
또한, 본 발명의 일 실시예에 따르면, 이상에서 설명된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 온라인으로 배포될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
또한, 본 발명의 일 실시예에 따르면, 이상에서 설명된 다양한 실시예들은 소프트웨어(software), 하드웨어(hardware) 또는 이들의 조합을 이용하여 컴퓨터(computer) 또는 이와 유사한 장치로 읽을 수 있는 기록 매체 내에서 구현될 수 있다. 일부 경우에 있어 본 명세서에서 설명되는 실시예들이 프로세서 자체로 구현될 수 있다. 소프트웨어적인 구현에 의하면, 본 명세서에서 설명되는 절차 및 기능과 같은 실시예들은 별도의 소프트웨어 모듈들로 구현될 수 있다. 소프트웨어 모듈들 각각은 본 명세서에서 설명되는 하나 이상의 기능 및 동작을 수행할 수 있다.
한편, 상술한 다양한 실시예들에 따른 기기의 프로세싱 동작을 수행하기 위한 컴퓨터 명령어(computer instructions)는 비일시적 컴퓨터 판독 가능 매체(non-transitory computer-readable medium)에 저장될 수 있다. 이러한 비일시적 컴퓨터 판독 가능 매체에 저장된 컴퓨터 명령어는 특정 기기의 프로세서에 의해 실행되었을 때 상술한 다양한 실시예에 따른 기기에서의 처리 동작을 특정 기기가 수행하도록 한다. 비일시적 컴퓨터 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 비일시적 컴퓨터 판독 가능 매체의 구체적인 예로는, CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등이 있을 수 있다.
또한, 상술한 다양한 실시예들에 따른 구성 요소(예: 모듈 또는 프로그램) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소가 다양한 실시예에 더 포함될 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따른, 모듈, 프로그램 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 개시에 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
100: 데이터 포인트 분류 장치
110: 메모리
120: 프로세서

Claims (23)

  1. 데이터 포인트 분류 장치에 의해 수행되는 데이터 포인트 분류 방법에 있어서,
    데이터 포인트를 복수 개의 클러스터로 클러스터링하는 단계;
    상기 클러스터링된 복수 개의 클러스터의 중심 집합을 이용하여 근사적인 초평면(Approximate Hyperplane)을 검색하는 단계; 및
    상기 검색된 근사적인 초평면을 기준으로 양쪽에 각각 위치하고 상기 근사적인 초평면과 평행한 평행 초평면(Parallel Hyperplane)을 제외한 잔여 데이터 포인트 세트를 분류하는 단계를 포함하는, 평행 초평면을 이용한 데이터 포인트 분류 방법.
  2. 제1항에 있어서,
    상기 클러스터링하는 단계는,
    K-평균 클러스터링(K-mean Clustering) 알고리즘을 사용하여 상기 데이터 포인트를 복수 개의 클러스터로 분할하는, 평행 초평면을 이용한 데이터 포인트 분류 방법.
  3. 제1항에 있어서,
    상기 복수 개의 클러스터의 수는,
    상기 데이터 포인트의 개수 및 상기 데이터 포인트로 이루어지는 데이터 세트의 구조에 기초하여 선택되는, 평행 초평면을 이용한 데이터 포인트 분류 방법.
  4. 제1항에 있어서,
    상기 클러스터링된 복수 개의 클러스터는,
    적어도 하나의 단일 클래스 레이블을 가진 단일 클러스터와 적어도 하나의 두 개의 클래스 레이블을 가진 듀오 클러스터(Duo Cluster)를 포함하는, 평행 초평면을 이용한 데이터 포인트 분류 방법.
  5. 제4항에 있어서,
    상기 클러스터링하는 단계는,
    상기 클러스터링된 클러스터가 두 개의 클래스 레이블을 가진 듀오 클러스터이면, 상기 듀오 클러스터를 단일 클러스터로 다시 클러스터링하는, 평행 초평면을 이용한 데이터 포인트 분류 방법.
  6. 제1항에 있어서,
    상기 근사적인 초평면을 검색하는 단계는,
    상기 클러스터링된 각 클러스터의 중심점과 각 클러스터 내부의 데이터 포인트 사이의 거리를 결정하는, 평행 초평면을 이용한 데이터 포인트 분류 방법.
  7. 제1항에 있어서,
    상기 잔여 데이터 포인트 세트를 분류하는 단계는,
    상기 검색된 근사적인 초평면을 기준으로 양쪽에 각각 위치한 클러스터의 중심 집합의 중심점을 통과하는 상기 근사적인 초평면과 평행한 평행 초평면을 검색하는 단계;
    상기 검색된 근사적인 초평면을 기준으로 상기 검색된 평행 초평면을 초과하는 클러스터를 제거하는 단계; 및
    상기 클러스터링된 복수 개의 클러스터 중에서 상기 제거된 클러스터를 제외한 잔여 데이터 포인트 세트를 분류하는 단계를 포함하는, 평행 초평면을 이용한 데이터 포인트 분류 방법.
  8. 제7항에 있어서,
    상기 평행 초평면을 검색하는 단계는,
    상기 검색된 근사적인 초평면을 기준으로 일측에 위치한 클러스터의 중심 집합의 제1 중심점을 검색하고, 상기 검색된 근사적인 초평면을 기준으로 타측에 위치한 클러스터의 중심 집합의 제2 중심점을 검색하는, 평행 초평면을 이용한 데이터 포인트 분류 방법.
  9. 제8항에 있어서,
    상기 평행 초평면을 검색하는 단계는,
    상기 검색된 제1 중심점을 통과하고 상기 검색된 근사적인 초평면과 평행한 제1 평행 초평면을 검색하고, 상기 검색된 제2 중심점을 통과하고 상기 검색된 근사적인 초평면과 평행한 제2 제1 평행 초평면을 검색하는, 평행 초평면을 이용한 데이터 포인트 분류 방법.
  10. 제9항에 있어서,
    상기 클러스터를 제거하는 단계는,
    상기 검색된 제1 평행 초평면의 양의 측(Positive Side)에 위치한 클러스터를 제거하고, 상기 검색된 제2 평행 초평면의 음의 측(Negative Side)에 위치한 클러스터를 제거하는, 평행 초평면을 이용한 데이터 포인트 분류 방법.
  11. 제1항에 있어서,
    상기 잔여 데이터 포인트 세트를 분류하는 단계는,
    상기 잔여 데이터 포인트 세트에 대해 서포트 벡터 머신을 적용하여 상기 잔여 데이터 포인트를 분류하는, 평행 초평면을 이용한 데이터 포인트 분류 방법.
  12. 하나 이상의 프로그램을 저장하는 메모리; 및
    상기 저장된 하나 이상의 프로그램을 실행하는 프로세서를 포함하고,
    상기 프로세서는,
    데이터 포인트를 복수 개의 클러스터로 클러스터링하고,
    상기 클러스터링된 복수 개의 클러스터의 중심 집합을 이용하여 근사적인 초평면(Approximate Hyperplane)을 검색하고,
    상기 검색된 근사적인 초평면을 기준으로 양쪽에 각각 위치하고 상기 근사적인 초평면과 평행한 평행 초평면(Parallel Hyperplane)을 제외한 잔여 데이터 포인트 세트를 분류하는, 평행 초평면을 이용한 데이터 포인트 분류 장치.
  13. 제12항에 있어서,
    상기 프로세서는,
    K-평균 클러스터링(K-mean Clustering) 알고리즘을 사용하여 상기 데이터 포인트를 복수 개의 클러스터로 분할하는, 평행 초평면을 이용한 데이터 포인트 분류 장치.
  14. 제12항에 있어서,
    상기 복수 개의 클러스터의 수는,
    상기 데이터 포인트의 개수 및 상기 데이터 포인트로 이루어지는 데이터 세트의 구조에 기초하여 선택되는, 평행 초평면을 이용한 데이터 포인트 분류 장치.
  15. 제12항에 있어서,
    상기 클러스터링된 복수 개의 클러스터는,
    적어도 하나의 단일 클래스 레이블을 가진 단일 클러스터와 적어도 하나의 두 개의 클래스 레이블을 가진 듀오 클러스터(Duo Cluster)를 포함하는, 평행 초평면을 이용한 데이터 포인트 분류 장치.
  16. 제15항에 있어서,
    상기 프로세서는,
    상기 클러스터링된 클러스터가 두 개의 클래스 레이블을 가진 듀오 클러스터이면, 상기 듀오 클러스터를 단일 클러스터로 다시 클러스터링하는, 평행 초평면을 이용한 데이터 포인트 분류 장치.
  17. 제12항에 있어서,
    상기 프로세서는,
    상기 클러스터링된 각 클러스터의 중심점과 각 클러스터 내부의 데이터 포인트 사이의 거리를 결정하는, 평행 초평면을 이용한 데이터 포인트 분류 장치.
  18. 제12항에 있어서,
    상기 프로세서는,
    상기 검색된 근사적인 초평면을 기준으로 양쪽에 각각 위치한 클러스터의 중심 집합의 중심점을 통과하는 상기 근사적인 초평면과 평행한 평행 초평면을 검색하고,
    상기 검색된 근사적인 초평면을 기준으로 상기 검색된 평행 초평면을 초과하는 클러스터를 제거 하고,
    상기 클러스터링된 복수 개의 클러스터 중에서 상기 제거된 클러스터를 제외한 잔여 데이터 포인트 세트를 분류하는, 평행 초평면을 이용한 데이터 포인트 분류 장치.
  19. 제18항에 있어서,
    상기 프로세서는,
    상기 검색된 근사적인 초평면을 기준으로 일측에 위치한 클러스터의 중심 집합의 제1 중심점을 검색하고, 상기 검색된 근사적인 초평면을 기준으로 타측에 위치한 클러스터의 중심 집합의 제2 중심점을 검색하는, 평행 초평면을 이용한 데이터 포인트 분류 장치.
  20. 제19항에 있어서,
    상기 프로세서는,
    상기 검색된 제1 중심점을 통과하고 상기 검색된 근사적인 초평면과 평행한 제1 평행 초평면을 검색하고, 상기 검색된 제2 중심점을 통과하고 상기 검색된 근사적인 초평면과 평행한 제2 제1 평행 초평면을 검색하는, 평행 초평면을 이용한 데이터 포인트 분류 장치.
  21. 제20항에 있어서,
    상기 프로세서는,
    상기 검색된 제1 평행 초평면의 양의 측(Positive Side)에 위치한 클러스터를 제거하고, 상기 검색된 제2 평행 초평면의 음의 측(Negative Side)에 위치한 클러스터를 제거하는, 평행 초평면을 이용한 데이터 포인트 분류 장치.
  22. 제12항에 있어서,
    상기 프로세서는,
    상기 잔여 데이터 포인트 세트에 대해 서포트 벡터 머신을 적용하여 상기 잔여 데이터 포인트를 분류하는, 평행 초평면을 이용한 데이터 포인트 분류 장치.
  23. 프로세서에 의해 실행 가능한 하나 이상의 프로그램을 포함하는 비일시적 컴퓨터 판독가능 저장 매체로서, 상기 하나 이상의 프로그램은 상기 프로세서에 의해 실행될 때, 상기 프로세서로 하여금:
    데이터 포인트를 복수 개의 클러스터로 클러스터링하고,
    상기 클러스터링된 복수 개의 클러스터의 중심 집합을 이용하여 근사적인 초평면(Approximate Hyperplane)을 검색하고,
    상기 검색된 근사적인 초평면을 기준으로 양쪽에 각각 위치하고 상기 근사적인 초평면과 평행한 평행 초평면(Parallel Hyperplane)을 제외한 잔여 데이터 포인트 세트를 분류하게 하는 명령어들을 포함하는, 비 일시적 컴퓨터 판독 가능한 저장 매체.
KR1020200006072A 2020-01-16 2020-01-16 평행 초평면을 이용한 데이터 포인트 분류 방법 및 장치 KR102282343B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200006072A KR102282343B1 (ko) 2020-01-16 2020-01-16 평행 초평면을 이용한 데이터 포인트 분류 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200006072A KR102282343B1 (ko) 2020-01-16 2020-01-16 평행 초평면을 이용한 데이터 포인트 분류 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20210092546A true KR20210092546A (ko) 2021-07-26
KR102282343B1 KR102282343B1 (ko) 2021-07-28

Family

ID=77124933

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200006072A KR102282343B1 (ko) 2020-01-16 2020-01-16 평행 초평면을 이용한 데이터 포인트 분류 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102282343B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115994305A (zh) * 2022-12-06 2023-04-21 中国电力科学研究院有限公司 一种基于自检告警信息确定继电保护设备运行状态的方法及系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4859351B2 (ja) * 2004-06-14 2012-01-25 財団法人電力中央研究所 事例データベースの構築方法、判別装置の学習方法、データ判別支援装置、データ判別支援プログラム
KR101116663B1 (ko) * 2010-04-15 2012-03-07 성균관대학교산학협력단 고차원 데이터의 유사도 검색을 위한 데이터 분할방법
JP6871807B2 (ja) * 2017-05-31 2021-05-12 株式会社Screenホールディングス 分類器構築方法、分類器および分類器構築装置
JP2019079167A (ja) * 2017-10-23 2019-05-23 オリンパス株式会社 情報処理装置、情報処理システム、情報処理方法、及び、プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115994305A (zh) * 2022-12-06 2023-04-21 中国电力科学研究院有限公司 一种基于自检告警信息确定继电保护设备运行状态的方法及系统

Also Published As

Publication number Publication date
KR102282343B1 (ko) 2021-07-28

Similar Documents

Publication Publication Date Title
US11907672B2 (en) Machine-learning natural language processing classifier for content classification
US20130097704A1 (en) Handling Noise in Training Data for Malware Detection
US8280830B2 (en) Systems and methods for using multiple in-line heuristics to reduce false positives
US8635171B1 (en) Systems and methods for reducing false positives produced by heuristics
JP7064668B2 (ja) 重なり合った染色体をシミュレーションに基づき分離するための認識モデルを訓練する方法、認識モデルを用いて重なり合った染色体の分離を実施するための方法及びシステム
US8559672B2 (en) Determining detection certainty in a cascade classifier
JP7024515B2 (ja) 学習プログラム、学習方法および学習装置
US10580436B2 (en) Method and device for processing speech based on artificial intelligence
KR102282343B1 (ko) 평행 초평면을 이용한 데이터 포인트 분류 방법 및 장치
CN117557872B (zh) 一种优化存储模式的无监督异常检测方法及装置
KR102234013B1 (ko) 클러스터 중심 기반 컨벡스 헐을 사용한 데이터 포인트 분류 방법 및 장치
JP7287699B2 (ja) 機械学習を通じての学習モデルを使った情報提供方法および装置
US11822589B2 (en) Method and system for performing summarization of text
CN111640438B (zh) 音频数据处理方法、装置、存储介质及电子设备
CN111783088A (zh) 一种恶意代码家族聚类方法、装置和计算机设备
CN111488400B (zh) 数据分类方法、装置和计算机可读存储介质
KR102234014B1 (ko) 클러스터링 기반 컨벡스 헐을 사용한 데이터 포인트 분류 방법 및 장치
CN112528021B (zh) 一种模型训练方法、模型训练装置及智能设备
US20230023148A1 (en) System and method for performing face recognition
US20170293863A1 (en) Data analysis system, and control method, program, and recording medium therefor
US11113569B2 (en) Information processing device, information processing method, and computer program product
CN111241275B (zh) 一种短文本相似度评估方法和装置以及设备
CN110059180B (zh) 文章作者身份识别及评估模型训练方法、装置及存储介质
CN109918905B (zh) 行为推论模型生成装置及其行为推论模型生成方法
CN109947933B (zh) 用于对日志进行分类的方法及装置

Legal Events

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