KR101646887B1 - 클러스터링 방법, 장치 및 단말 장치 - Google Patents

클러스터링 방법, 장치 및 단말 장치 Download PDF

Info

Publication number
KR101646887B1
KR101646887B1 KR1020157001990A KR20157001990A KR101646887B1 KR 101646887 B1 KR101646887 B1 KR 101646887B1 KR 1020157001990 A KR1020157001990 A KR 1020157001990A KR 20157001990 A KR20157001990 A KR 20157001990A KR 101646887 B1 KR101646887 B1 KR 101646887B1
Authority
KR
South Korea
Prior art keywords
neighboring
objects
visited
domain
distance
Prior art date
Application number
KR1020157001990A
Other languages
English (en)
Other versions
KR20150111343A (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 시아오미 아이엔씨.
Publication of KR20150111343A publication Critical patent/KR20150111343A/ko
Application granted granted Critical
Publication of KR101646887B1 publication Critical patent/KR101646887B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F17/30705
    • 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/762Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
    • G06V10/763Non-hierarchical techniques, e.g. based on statistics of modelling distributions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/30Scenes; Scene-specific elements in albums, collections or shared content, e.g. social network photos or video
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification

Landscapes

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

Abstract

클러스터링 방법, 장치 및 단말 장치가 제공된다. 클러스터링 방법에서는, 이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는 것이 결정되고, 방문할 오브젝트가 코어 오브젝트로 결정된다. 방문할 오브젝트는 제1 그룹으로 클러스터링되고, 확장 클러스터링이 방문할 오브젝트의 미리 정해진 이웃 도메인 내의 직접 밀도 도달 가능 이웃 오브젝트들에 대하여 수행된다. 직접 밀도 도달 가능 이웃 오브젝트가 코어 오브젝트가 아닌 경우, 확장 클러스터링이 정지되고 방문할 모든 오브젝트가 클러스터링될 때까지 방문할 다음 오브젝트가 결정된다. 복수의 이웃 도메인이 방문할 오브젝트가 코어 오브젝트인지의 여부를 결정하는데 사용되기 때문에, 스캐닝 반경 및 포함된 도트들의 최소수의 제한이 감소된다. 따라서, Eps 및 MinPts에 대한 클러스터링 결과의 민감도가 감소되고 클러스터링 결과의 정확도가 개선된다.

Description

클러스터링 방법, 장치 및 단말 장치{CLUSTERING METHOD, APPARATUS AND TERMINAL APPARATUS}
본 출원은 2014년 2월 28일자로 중국 특허청에 출원된 중국 특허출원 제201410073496.5호의 우선권 및 이익을 주장하는 것으로, 참조로 그 전체 내용이 본 명세서에 포함된다.
본 개시의 실시예들은 일반적으로 컴퓨터 기술에 관한 것으로, 보다 구체적으로 클러스터링 방법, 장치 및 단말 장치에 관한 것이다.
클러스터링은 피지컬 또는 요약 오브젝트들의 세트를 아날로그 오브젝트들의 복수의 그룹으로 분할하는 프로세스, 즉 오브젝트들을 상이한 그룹들 또는 클러스터들로 분할하는 프로세스이고, 동일한 그룹 내의 오브젝트들은 큰 유사성을 가지며, 상이한 그룹들 내의 오브젝트들은 큰 차이점을 갖는다.
많은 타입의 클러스터링 방법이 있고, 밀도(density)에 기초한 클러스터링 방법이 다른 클러스터링 방법들과 차이나는 점은 다양한 거리(distance) 대신에 밀도에 기초한다는 것이고, 도메인 내의 도트(dot)들의 밀도가 미리 정해진 임계값보다 크기만 하면, 도메인은 유사한 그룹 내에 추가된다. 따라서, 거리에 기초한 클러스터링 방법이 "준원형(quasi-circular)" 그룹만을 찾을 수 있는 클러스터링 결함이 극복될 수 있다. 예를 들면, DBSCAN(Density-Based Spatial Clustering of Applications with Noise) 알로리즘이 밀도에 기초한 클러스터링 방법들의 통상적인 알고리즘이다. DBSCAN 알고리즘은, 클러스터를 접속된 밀도들을 갖는 도트들의 최대 세트로서 규정하고, 충분히 높은 밀도를 갖는 도메인을 클러스터로 분할하고 노이즈의 공간 데이터베이스 내의 임의의 형상의 클러스터를 찾을 수 있다. DBSCAN 알고리즘은 코어 오브젝트의 개념 및 2개의 초기 파라미터 Eps(스캐닝 반경) 및 MinPts(포함된 도트들의 최소수)를 도입한다. 소정의 오브젝트 부근의 Eps의 범위 내의 오브젝트들의 수가 MinPts 이상인 경우, 소정의 오브젝트는 코어 오브젝트이다. 코어 오브젝트 및 이 코어 오브젝트 부근의 Eps의 범위 내의 이웃 오브젝트들이 클러스터를 형성한다. 클러스터 내에 복수의 코어 오브젝트가 있는 경우, 이들 코어 오브젝트들 상의 중심에 있는 클러스터들이 함께 조합되어야 한다. 그러나, 이 클러스터링 방법의 클러스터링 결과는 파라미터들 Eps 및 MinPts의 값에 매우 민감하고, 즉 Eps 및 MinPts의 상이한 값들에 기인하여 상이한 클러스터링 결과가 야기되어, 클러스터링 결과의 불확실성을 초래한다.
관련 기술 분야의 문제점을 극복하기 위해서, 클러스터링 방법, 장치 및 단말 장치가 본 개시의 실시예들에 의해 제공된다.
상기 문제점들을 해결하기 위해서, 본 개시의 실시예들은 다음과 같은 기술적인 해결책들을 제공한다.
본 개시의 제1 양태의 실시예들은 클러스터링 방법을 제공하고, 상기 클러스터링 방법은,
방문할 오브젝트의 각 이웃 오브젝트를 취득하는 단계;
상기 방문할 오브젝트의 상기 복수의 이웃 도메인 내에 이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는지의 여부를 결정하는 단계;
이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는 것으로 결정된 경우, 방문할 오브젝트를 제1 그룹으로 클러스터링하는 단계; 및
이웃 오브젝트들이 더 이상 제1 그룹에 들어갈 수 없을 때까지 방문할 오브젝트의 미리 정해진 이웃 도메인 내의 직접 밀도 도달 가능(directly density-reachable) 이웃 오브젝트들에 대하여 확장 클러스터링(expanded clustering)을 수행하는 단계를 포함한다.
제1 양태에 대하여, 제1 양태의 제1 가능 실시예에서, 이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는지의 여부를 결정하는 단계는,
이웃 오브젝트와 방문할 오브젝트 간의 거리를 취득하는 단계;
상기 복수의 이웃 도메인의 스캐닝 반경이 커지는 시퀀스(ascending sequence)에 따라 상기 거리에 의해 제1 이웃 도메인 내의 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인지의 여부를 결정하는 단계;
제1 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 값 이상인 경우, 방문할 오브젝트를 코어 오브젝트로 결정하는 단계;
제1 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 값보다 적은 경우, 방문할 오브젝트의 복수의 이웃 도메인 각각이 결정되어 있는지의 여부를 결정하는 단계;
방문할 오브젝트의 복수의 이웃 도메인 모두가 결정되어 있지 않은 경우, 상기 복수의 이웃 도메인의 스캐닝 반경이 커지는 시퀀스(ascending sequence)에 따라 상기 거리에 의해 제2 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 값 이상인지의 여부를 결정하는 단계; 및
방문할 오브젝트의 복수의 이웃 도메인 각각이 결정되어 있는 경우, 방문할 오브젝트를 코어 오브젝트가 아닌 것으로 결정하는 단계를 포함한다.
제1 양태에 대하여, 제1 양태의 제2 가능 실시예에서, 이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는지의 여부를 결정하는 단계는,
이웃 오브젝트와 방문할 오브젝트 간의 거리를 취득하는 단계;
거리에 대응하는 중량 계수(weight coefficient)를 취득하는 단계 - 중량 계수는 상기 거리와 연관되어 있음 -;
거리 및 대응하는 중량 계수에 따라 제1 이웃 도메인 내의 이웃 오브젝트들의 수를 계산하는 단계;
상기 복수의 이웃 도메인들의 스캐닝 반경이 커지는 시퀀스에 따라 제1 이웃 도메인 내의 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인지의 여부를 결정하는 단계;
제1 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 값 이상인 경우, 방문할 오브젝트를 코어 오브젝트로 결정하는 단계;
제1 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 값보다 적은 경우, 방문할 오브젝트의 복수의 이웃 도메인 각각이 결정되어 있는지의 여부를 결정하는 단계;
방문할 오브젝트의 복수의 이웃 도메인 모두가 결정되어 있지 않은 경우, 상기 복수의 이웃 도메인들의 스캐닝 반경이 커지는 시퀀스에 따라 상기 거리에 의해 제2 이웃 도메인 내의 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인지의 여부를 결정하는 단계; 및
방문할 오브젝트의 복수의 이웃 도메인 각각이 결정되어 있는 경우, 방문할 오브젝트를 코어 오브젝트가 아닌 것으로 결정하는 단계를 포함한다.
제1 양태의 제2 가능 실시예에 대하여, 제1 양태의 제3 가능 실시예에서, 거리와 연관된 대응하는 중량 계수를 취득하는 단계는,
이웃 오브젝트 및 방문할 오브젝트로부터의 거리와 이웃 오브젝트가 방문할 오브젝트와 동일할 확률 간의 대응관계(correspondence)를 취득하는 단계;
상기 대응관계를 쿼링(querying)하여 이웃 오브젝트가 거리에 대응하는 방문할 오브젝트와 동일할 확률을 취득하는 단계; 및
거리와 확률을 곱셈하여 거리와 연관된 대응하는 중량 계수를 취득하는 단계 - 중량 계수는 확률과 양의 상관 관계(positive correlation)에 있음 - 를 포함한다.
제1 양태 또는 제1 양태의 제1 내지 제3 실시예들 중 어느 하나에 대하여, 제1 양태의 제4 가능 실시예에서, 이웃 오브젝트들이 더 이상 제1 그룹에 들어갈 수 없을 때까지 방문할 오브젝트의 미리 정해진 이웃 도메인 내의 직접 밀도 도달 가능 이웃 오브젝트들에 대하여 확장 클러스터링을 수행하는 단계는,
방문할 오브젝트의 미리 정해진 이웃 도메인 내의 각 직접 밀도 도달 가능 이웃 오브젝트를 취득하는 단계 - 미리 정해진 이웃 도메인의 스캐닝 반경이 복수의 이웃 도메인의 최대 스캐닝 반경보다 작음 -;
각 직접 밀도 도달 가능 이웃 오브젝트가 코어 오브젝트인지의 여부를 하나씩 결정하는 단계; 및
직접 밀도 도달 가능 이웃 오브젝트가 코어 오브젝트인 경우, 이웃 오브젝트들이 더 이상 제1 그룹에 들어갈 수 없을 때까지 직접 밀도 도달 가능 이웃 오브젝트가 있는 미리 정해진 이웃 도메인 내의 이웃 오브젝트들을 제1 그룹 내에 추가하는 단계를 포함한다.
제1 양태의 제4 가능 실시예에 대하여, 제1 양태의 제5 가능 실시예에서, 각 직접 밀도 도달 가능 이웃 오브젝트들이 코어 오브젝트인지의 여부를 하나씩 결정하는 단계는,
이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 직접 밀도 도달 가능 이웃 오브젝트의 복수의 이웃 도메인 내에 존재하는지의 여부를 결정하는 단계;
이웃 오브젝트들의 수가 미리 정해진 값 이상인 경우, 직접 밀도 도달 가능 이웃 오브젝트를 코어 오브젝트로 결정하는 단계; 및
직접 밀도 도달 가능 이웃 오브젝트의 복수의 이웃 도메인 각각 내의 이웃 오브젝트들의 수가 미리 정해진 값보다 적은 경우, 직접 밀도 도달 가능 이웃 오브젝트를 코어 오브젝트가 아닌 것으로 결정하는 단계를 포함한다.
제1 양태의 제1 가능 실시예에 대하여, 제1 양태의 제6 가능 실시예에서, 상기 복수의 이웃 도메인의 스캐닝 반경이 커지는 시퀀스에 따라 상기 거리에 의해 제1 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 값 이상인지의 여부를 결정하는 단계는,
각 이웃 오브젝트와 방문할 오브젝트 간의 거리들을 시퀀싱하고 거리들의 시퀀스를 취득하는 단계;
거리들의 시퀀스에 따라 이웃 도메인의 스캐닝 반경보다 작은 방문할 오브젝트에 대한 거리를 갖는 이웃 오브젝트들의 수를 카운팅하는 단계; 및
이웃 도메인의 스캐닝 반경보다 작은 방문할 오브젝트에 대한 거리를 갖는 이웃 오브젝트들의 수가 미리 정해진 값 이하인지의 여부를 결정하는 단계를 포함한다.
본 개시의 제2 양태의 실시예들은 클러스터링 장치를 제공하며, 이 클러스터링 장치는,
방문할 오브젝트의 각 이웃 오브젝트를 취득하기 위한 제1 취득 유닛;
상기 방문할 오브젝트의 상기 복수의 이웃 도메인 내에 이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는지의 여부를 결정하기 위한 제1 판정 유닛 ;
이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재한다고 결정된 경우, 방문할 오브젝트를 제1 그룹으로 클러스터링하기 위한클러스터링 유닛; 및
이웃 오브젝트들이 더 이상 제1 그룹에 들어갈 수 없을 때까지 방문할 오브젝트의 미리 정해진 이웃 도메인 내의 직접 밀도 도달 가능 이웃 오브젝트들에 대하여 확장 클러스터링을 수행하기 위한 확장 클러스터링 유닛을 포함한다.
제2 양태에 대하여, 제2 양태의 제1 가능 실시예에서, 제1 판정 유닛은,
이웃 오브젝트와 방문할 오브젝트 간의 거리를 취득하기 위한 제1 취득 서브유닛;
상기 복수의 이웃 도메인의 스캐닝 반경이 커지는 시퀀스에 따라 상기 거리에 의해 제1 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 값 이상인지의 여부를 결정하기 위한 제1 판정 서브유닛;
상기 제1 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 값 이상인 경우, 방문할 오브젝트를 코어 오브젝트로 결정하기 위한 제1 결정 서브유닛;
제1 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 값보다 적은 경우, 방문할 오브젝트의 복수의 이웃 도메인 각각이 결정되어 있는지의 여부를 결정하고, 방문할 오브젝트의 복수의 이웃 도메인 모두가 결정되어 있지 않은 경우, 제1 판정 서브유닛이, 제2 이웃 도메인 내의 이웃 오브젝트들의 수가 복수의 이웃 도메인의 스캐닝 반경이 커지는 상기 시퀀스에서의 거리에 따라 미리 정해진 값 이상인지의 여부를 결정하게 하기 위한 제2 판정 서브유닛; 및
방문할 오브젝트의 복수의 이웃 도메인 각각이 결정되어 있는 경우, 방문할 오브젝트를 코어 오브젝트가 아닌 것으로 결정하기 위한 제2 결정 서브유닛을 포함한다.
제2 양태에 대하여, 제2 양태의 제2 가능 실시예에서, 제1 판정 유닛은,
이웃 오브젝트와 방문할 오브젝트 간의 거리를 취득하기 위한 제2 취득 서브유닛;
거리에 대응하는 중량 계수를 취득하기 위한 제3 취득 서브유닛 - 중량 계수는 상기 거리와 연관되어 있음 -;
거리 및 대응하는 중량 계수에 따라 제1 이웃 도메인 내의 이웃 오브젝트들의 수를 계산하기 위한 계산 서브유닛;
상기 복수의 이웃 도메인들의 스캐닝 반경이 커지는 시퀀스에 따라 제1 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 값 이상인지의 여부를 결정하기 위한 제3 판정 서브유닛;
제1 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 값 이상인 경우, 방문할 오브젝트를 코어 오브젝트로 결정하기 위한 제3 결정 서브유닛;
제1 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 값보다 적은 경우, 방문할 오브젝트의 복수의 이웃 도메인 각각이 결정되어 있는지의 여부를 결정하여, 방문할 오브젝트의 복수의 이웃 도메인 모두가 결정되어 있지 않은 경우, 계산 서브유닛이, 거리 및 대응하는 중량 계수에 따라 제2 이웃 도메인 내의 이웃 오브젝트들의 수를 계산하게 하기 위한 제4 판정 서브유닛; 및
방문할 오브젝트의 복수의 이웃 도메인 각각이 결정되어 있는 경우, 방문할 오브젝트를 코어 오브젝트가 아닌 것으로 결정하기 위한 제4 결정 서브유닛을 포함한다.
제2 양태의 제2 가능 실시예에 대하여, 제2 양태의 제3 가능 실시예에서, 제3 취득 서브유닛은,
이웃 오브젝트 및 방문할 오브젝트로부터의 거리와 이웃 오브젝트가 방문할 오브젝트와 동일할 확률 간의 대응관계를 취득하기 위한 카운팅 서브유닛;
상기 대응관계를 쿼링하여 이웃 오브젝트가 거리에 대응하는 방문할 오브젝트와 동일할 확률을 취득하기 위한 쿼링 서브유닛; 및
거리와 확률을 곱셈하여 거리와 연관된 대응하는 중량 계수를 취득하기 위한 제4 취득 서브유닛 - 중량 계수는 확률과 양의 상관 관계에 있음 - 을 포함한다.
제2 양태 또는 제2 양태의 제1 내지 제3 실시예들 중 어느 하나에 대하여, 제2 양태의 제4 가능 실시예에서, 확장 클러스터링 유닛은,
방문할 오브젝트의 미리 정해진 이웃 도메인 내의 각 직접 밀도 도달 가능 이웃 오브젝트를 취득하기 위한 제5 서브취득 유닛 - 미리 정해진 이웃 도메인의 스캐닝 반경은 복수의 이웃 도메인의 최대 스캐닝 반경보다 작음 -;
각 직접 밀도 도달 가능 이웃 오브젝트가 코어 이웃인지의 여부를 하나씩 결정하기 위한 제5 판정 서브유닛; 및
직접 밀도 도달 가능 이웃 오브젝트가 코어 오브젝트인 것으로 결정된 경우, 이웃 오브젝트들이 더 이상 제1 그룹에 들어갈 수 없을 때까지 직접 밀도 도달 가능 이웃 오브젝트가 있는 미리 정해진 이웃 도메인 내의 이웃 오브젝트들을 제1 그룹 내에 추가하기 위한 확장 클러스터링 서브유닛을 포함한다.
제2 양태의 제4 가능 실시예에 대하여, 제2 양태의 제5 가능 실시예에서, 제5 판정 서브유닛은,
이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 직접 밀도 도달 가능 이웃 오브젝트의 복수의 이웃 도메인 내에 존재하는지의 여부를 결정하기 위한 제6 판정 서브유닛;
이웃 오브젝트들의 수가 미리 정해진 값 이상인 경우, 직접 밀도 도달 가능 이웃 오브젝트를 코어 오브젝트로 결정하기 위한 제5 결정 서브유닛; 및
직접 밀도 도달 가능 이웃 오브젝트의 복수의 이웃 도메인 각각 내의 이웃 오브젝트들의 수가 미리 정해진 값보다 적은 경우, 직접 밀도 도달 가능 이웃 오브젝트를 코어 오브젝트가 아닌 것으로 결정하기 위한 제6 결정 서브유닛을 포함한다.
제2 양태의 제1 가능 실시예에 대하여, 제2 양태의 제6 가능 실시예에서, 제1 판정 서브유닛은,
각 이웃 오브젝트와 방문할 오브젝트 간의 거리들을 시퀀싱하고 거리들의 시퀀스를 취득하기 위한 시퀀싱 유닛;
거리들의 시퀀스에 따라 이웃 도메인의 스캐닝 반경보다 작은 방문할 오브젝트에 대한 거리를 갖는 이웃 오브젝트들의 수를 카운팅하기 위한 제2 카운팅 서브유닛; 및
이웃 도메인의 스캐닝 반경보다 작은 방문할 오브젝트에 대한 거리를 갖는 이웃 오브젝트들의 수가 미리 정해진 값 이하인지의 여부를 결정하기 위한 제7 판정 서브유닛을 포함한다.
본 개시의 제3 양태의 실시예들은 단말 장치를 제공하고, 이 단말 장치는,
프로세서; 및
프로세서에 의해 실행 가능한 명령을 저장하기 위한 메모리를 포함하며,
이 프로세서는,
방문할 오브젝트의 각 이웃 오브젝트들을 취득하고;
상기 방문할 오버젝트의 상기 복수의 이웃 도메인 내에 이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는지의 여부를 결정하며 ;
상기 방문할 오버젝트의 상기 복수의 이웃 도메인 내에 이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는 것으로 결정된 경우, 방문할 오브젝트를 제1 그룹으로 클러스터링하고;
이웃 오브젝트들이 더 이상 제1 그룹에 들어갈 수 없을 때까지 방문할 오브젝트의 미리 정해진 이웃 도메인 내의 직접 밀도 도달 가능 이웃 오브젝트들에 대하여 확장 클러스터링을 수행하도록 구성된다.
본 개시의 실시예들에 의해 제공된 기술적인 해결책들은 다음과 같은 유리한 효과들을 갖는다. 클러스터링 방법에 따르면, 방문할 오브젝트의 각 이웃 오브젝트가 취득되고, 이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는 것으로 결정되고 방문할 오브젝트가 코어 오브젝트로 결정된다. 방문할 오브젝트가 제1 그룹으로 클러스터링되고, 확장 클러스터링이 방문할 오브젝트의 미리 정해진 이웃 도메인 내의 직접 밀도 도달 가능 이웃 오브젝트들에 대하여 수행된다. 직접 밀도 도달 가능 이웃 오브젝트가 코어 오브젝트가 아닌 경우, 확장 클러스터링이 정지되고 그러면 방문할 모든 오브젝트가 클러스터링될 때까지 방문할 다음 오브젝트가 결정된다. 클러스터링 방법에서 방문할 오브젝트가 코어 오브젝트인지의 여부를 결정하는데 복수의 이웃 도메인이 사용되기 때문에, Eps(스캐닝 반경) 및 MinPts(포함된 도트들의 최소수)의 제한이 감소된다. 따라서, Eps 및 MinPts에 대한 클러스터링 결과의 민감도가 감소되고 클러스터링 결과의 정확도가 개선된다.
상기한 일반적인 설명 및 다음의 상세한 설명 양쪽은, 청구된 바와 같이 예시 및 설명만을 위한 것으로, 본 개시를 제한하는 것이 아니다.
본 명세서에 포함되며 본 명세서의 일부를 구성하는 첨부된 도면들이 본 개시와 일치하는 실시예들을 도시하며, 설명과 함께 본 개시의 원리들을 설명하기 위해 제공된다.
도 1은 본 개시의 예시적인 실시예에 따른 클러스터링 방법의 플로 차트.
도 2는 본 개시의 예시적인 실시예에 따른 오브젝트 분포의 개략도.
도 3은 본 개시의 예시적인 실시예에 따른 이웃 도메인 분포의 개략도.
도 4는 본 개시의 예시적인 실시예에 따른 단계 S400의 플로차트.
도 5는 본 개시의 예시적인 실시예에 따른 단계 S200의 플로차트.
도 6은 본 개시의 다른 예시적인 실시예에 따른 단계 S200의 플로차트.
도 7은 본 개시의 예시적인 실시예에 따른 중량 계수를 취득하는 단계의 플로 차트.
도 8은 본 개시의 예시적인 실시예에 따른 클러스터링 장치의 개략도.
도 9는 본 개시의 예시적인 실시예에 따른 장치의 블럭도.
상기 도면들에 따라, 본 개시에 의해 개시되는 실시예들이 제시되며, 상세한 설명이 다음과 같이 제공될 것이다. 이들 도면은 본 개시의 범주를 어떠한 방식으로도 한정하려는 것이 아니라, 특정 실시예들을 참조하여 당업자가 본 개시의 사상을 이해하게 하려는 것이다.
이하, 첨부된 도면들에 도시되어 있는 예시적인 실시예들, 예들에 대한 참조가 상세히 이루어질 것이다. 다음의 설명은, 다르게 표현되지 않는 한 다른 도면들에서의 동일한 번호들이 동일 또는 유사한 엘리먼트들을 표현하는 첨부된 도면들을 참조한다. 예시적인 실시예들의 다음의 설명에서 제시된 구현들은 본 개시와 일치하는 모든 구현들을 표현하는 것은 아니다. 대신에, 이러한 구현들은 단지 특허청구범위에서 인용된 바와 같이 본 개시에 관한 양태들과 일치하는 장치들 및 방법들의 예들이다.
본 개시의 실시예들의 상세한 설명 전에, 다음의 용어들의 개념을 우선 본 명세서에 도입한다.
E 이웃 도메인 : 소정의 오브젝트 상의 중심이고 스캐닝 반경 E를 갖는 도메인이 오브젝트의 E 이웃 도메인이라 불린다.
코어 오브젝트 : 오브젝트 P의 E 도메인 내의 이웃 오브젝트들의 수가 최소 포함 오브젝트 임계 MinPts 이상인 경우, 오브젝트가 코어 오브젝트라 불린다.
이웃 오브젝트 : 직접 오브젝트 P와 접속될 수 있는 오브젝트가 오브젝트 P의 이웃 오브젝트라 불린다.
직접 밀도 도달 가능 : 샘플 세트에 대하여, 이웃 오브젝트 Q가 오브젝트 P의 E 이웃 도메인 내에 있고, 오브젝트 P가 코어 오브젝트인 경우, 오브젝트 Q, 즉 E 이웃 도메인 내의 오브젝트 P의 이웃 오브젝트는 오브젝트 P로부터 직접 밀도 도달 가능하다.
도 1은 본 개시의 예시적인 실시예에 따른 클러스터링 방법의 플로 차트이다. 도 1에 나타낸 바와 같이, 이 방법은 다음의 단계들을 포함한다.
단계 S100에서, 방문할 오브젝트의 각 이웃 오브젝트가 취득된다.
본 개시의 클러스터링 방법 내의 오브젝트는 얼굴 이미지일 수 있고, 동일한 사람에 속하는 이미지들이 클러스터를 형성하도록 클러스터링된다. 얼굴 이미지 내의 특징들은 벡터들의 세트로 변형되고, 이에 따라 2개의 오브젝트 간의 거리가 벡터들 간의 거리이다. 물론, 본 개시의 실시예들에 따른 클러스터링 방법은 이미지 외에도 다른 데이터에 적용할 수 있다.
처리될 오브젝트들의 세트에 대하여, 세트 내의 각 오브젝트가 방문할 오브젝트로서 처리되고, 방문할 오브젝트의 각 이웃 오브젝트가 취득된다. 도 2에 나타낸 바와 같이, 오브젝트(5)가 직접 오브젝트들(4, 6 및 7)에 접속되고 이에 따라 오브젝트들(4, 6 및 7)이 오브젝트(5)의 이웃 오브젝트들이다.
방문 식별자는 각 오브젝트마다 설정된다. 소정의 오브젝트를 방문한 경우, 오브젝트의 방문 식별자가 방문함으로 마킹된다. 예를 들면, 소정의 오브젝트를 방문하지 않은 경우, 대응하는 방문 식별자는 "0"이고, 소정의 오브젝트를 방문한 경우, 대응하는 방문 식별자는 "1"이다. 오브젝트가 오브젝트의 방문 식별자에 따라 방문할 오브젝트인지의 여부가 식별된다. 오브젝트가 오브젝트의 방문 식별자에 따라 방문할 오브젝트인지의 여부가 결정된다.
단계 S200에서, 방문할 오브젝트는 복수의 이웃 도메인을 가지며, 이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는지의 여부가 결정된다. 이 단계는 주로 방문할 오브젝트가 코어 오브젝트인지의 여부를 결정하는데 사용된다. 예(Yes)인 경우, 단계 S300이 실행되고; 아닌(No) 경우, 방문할 오브젝트가 노이즈 도트(noise dot)로 마킹되고 그러면 단계 S100이 실행되어 방문할 오브젝트가 더 이상 존재하지 않을 때까지 방문할 오브젝트의 다음 결정을 수행한다.
도 3에 나타낸 바와 같이, 방문할 오브젝트의 3개의 이웃 도메인들이 E1 이웃 도메인, E2 이웃 도메인 및 E3 이웃 도메인이 있다. E1 이웃 도메인의 스캐닝 반경이 E1이고, E2 이웃 도메인의 스캐닝 반경이 E2이며, E3 이웃 도메인의 스캐닝 반경이 E3이고, E1<E2<E3이다. 우선 방문할 오브젝트 P의 E1 이웃 도메인 내의 이웃 오브젝트들의 수 Pst1이 MinPst1 이상인지의 여부를 결정하고, Pst1≥MinPst1인 경우, 방문할 오브젝트 P가 코어 오브젝트인 것으로 결정되며; 그렇지 않으면, E2 이웃 도메인 내의 방문할 오브젝트 P의 이웃 오브젝트들의 수 Pst2가 MinPst2 이상인지의 여부가 또한 결정되고, Pst2≥MinPst2인 경우, 방문할 오브젝트 P가 코어 오브젝트인 것으로 결정되며; 그렇지 않으면, 방문할 오브젝트 P의 E3 이웃 도메인 내의 이웃 오브젝트들의 수 Pst3이 MinPst3 이상인지의 여부가 또한 결정되고, Pst3≥MinPst3인 경우, 방문할 오브젝트 P가 코어 오브젝트인 것으로 결정되며; 그렇지 않으면, 방문할 오브젝트 P가 코어 오브젝트가 아닌 것으로 결정된다. 스캐닝 반경은 오브젝트의 데이터 타입의 상이한 특징들에 따라 설정될 수 있다.
단계 S300에서, 방문할 오브젝트가 제1 그룹으로 클러스터링되고, 즉 방문할 오브젝트가 제1 그룹으로서 처리된다.
그룹 수 C는 오브젝트마다 설정된다. 초기 상태에서, 그룹 수 C는 0이다. 하나의 그룹이 추가될 때마다, 추가된 그룹에 대응하는 그룹 수가 1씩 증가된다. 예를 들면, 오브젝트 P가 코어 오브젝트인 경우, 오브젝트 P는 제1 그룹으로 클러스터링되고 제1 그룹에 대응하는 그룹 수 C가 1로 갱신된다. 오브젝트 P인 제1 그룹에 속하지 않는 코어 오브젝트 Q가 발견된 경우, 코어 오브젝트 Q는 제2 그룹으로 클러스터링되고 제2 그룹에 대응하는 그룹 수가 2로 갱신된다. 이와 같이, 추가된 그룹의 그룹 수는 현존하는 그룹의 그룹 수에 기초하여 1씩 증가된다.
단계 S400에서, 이웃 오브젝트들이 더 이상 제1 그룹에 들어갈 수 없을 때까지 확장 클러스터링이 방문할 오브젝트의 미리 정해진 이웃 도메인 내의 직접 밀도 도달 가능 이웃 오브젝트들에 대하여 수행된다.
미리 정해진 이웃 도메인이 방문할 오브젝트의 복수의 이웃 도메인의 하나 이상일 수 있다. 예를 들면, 도 3에 나타낸 바와 같이, 이웃 도메인의 스캐닝 반경이 클수록, 이웃 도메인의 신뢰도가 낮아지고, 확장 클러스터링은 높은 신뢰도를 갖는 이웃 도메인들 내의 오브젝트들에 대해서만 수행될 수 있다. 예를 들면, 도 3에 나타낸 바와 같이 본 개시의 예시적인 실시예에서, 확장 클러스터링은 방문할 오브젝트 P의 E1 이웃 도메인 및 E2 이웃 도메인 내의 이웃 오브젝트들에 대해서만 수행될 수 있다. 복수의 이웃 도메인 각각이 높은 신뢰도를 갖는 경우, 확장 클러스터링은 복수의 이웃 도메인 각각 내의 이웃 오브젝트들에 대하여 수행될 수 있다.
도 4에 나타낸 바와 같이 본 개시의 예시적인 실시예에서, 단계 S400은 다음의 단계들을 포함한다.
단계 S401에서, 방문할 오브젝트의 미리 정해진 이웃 도메인 내의 각 직접 밀도 도달 가능 이웃 오브젝트가 취득되고, 미리 정해진 이웃 도메인의 스캐닝 반경은 복수의 이웃 도메인의 최대 스캐닝 반경보다 작다.
스캐닝 반경이 클수록, 노이즈 도트를 초래할 확률이 보다 커질 것이다. 따라서, 미리 정해진 이웃 도메인 내의 직접 밀도 도달 가능 이웃 오브젝트는 방문할 오브젝트가 있는 제1 그룹 내에 추가된다.
방문할 오브젝트 P의 미리 정해진 이웃 도메인 내의 모든 이웃 오브젝트들의 큐(queue) NeiborPts가 취득되고, 방문할 오브젝트 P와 오브젝트 P의 이웃 오브젝트 간의 거리가 직접 계산된다. 그러면, 거리가 미리 정해진 도메인의 스캐닝 반경과 비교된다. 거리가 스캐닝 반경 이상인 경우, 이웃 오브젝트가 큐 NeihborPts 내의 오브젝트인 것으로 표시된다. 거리는 코사인 유사도(cosine similarity) 또는 유클리드(Euclidean) 거리일 수 있다. 2개의 오브젝트들 간의 코사인 유사도가 2개의 오브젝트들 간의 거리 관계를 나타내는데 본 명세서에서 사용된 경우, 1과 코사인 유사도 간의 차(1-cosθ)가 2개의 오브젝트들 간의 거리를 표현하는데 사용되고, 2개의 오브젝트들 간의 거리가 짧을수록, 2개의 오브젝트들 간의 유사도가 높아짐에 유의해야 한다.
대안으로, 각 이웃 오브젝트와 방문할 오브젝트 간의 거리가 취득된 후에, 거리들은 각 거리의 사이즈에 따라 시퀀싱된다. 이와 같이, 이웃 도메인 내의 오브젝트들의 수가 결정되었을 때에, 취득된 거리 시퀀스에 따라, 방문할 오브젝트에 대한 거리가 미리 정해진 이웃 도메인의 스캐닝 반경보다 작은 이웃 오브젝트들이 큐 NeihborPts를 형성하도록 카운팅된다.
단계 S402에서, 각 직접 밀도 도달 가능 이웃 오브젝트가 코어 오브젝트인지의 여부가 하나씩 결정된다.
큐 NeihborPts 내의 오브젝트 Pi가 횡단되고, 오브젝트 Pi가 코어 오브젝트인지의 여부가 결정되며, 방문할 오브젝트의 직접 밀도 도달 가능 이웃 오브젝트가 코어 오브젝트인지의 여부를 결정하는 프로세싱은 단계 S200에서의 것과 유사하다.
각 직접 밀도 도달 가능 이웃 오브젝트마다, 이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 직접 밀도 도달 가능 이웃 오브젝트의 복수의 이웃 도메인 내에 존재하는지의 여부가 결정된다. 이웃 오브젝트들의 수가 미리 정해진 값 이상인 경우, 직접 밀도 도달 가능 이웃 오브젝트가 코어 오브젝트로 결정된다. 직접 밀도 도달 가능 이웃 오브젝트의 복수의 이웃 도메인 각각 내의 이웃 오브젝트들의 수가 미리 정해진 값보다 작은 경우, 직접 밀도 도달 가능 이웃 오브젝트는 코어 오브젝트가 아닌 것으로 결정된다.
단계 S403에서, 직접 밀도 도달 가능 이웃 오브젝트가 코어 오브젝트인 것으로 결정된 경우, 직접 밀도 도달 가능 이웃 오브젝트가 있는 미리 정해진 이웃 도메인 내의 이웃 오브젝트들은, 이 이웃 오브젝트들이 더 이상 제1 그룹에 들어갈 수 없을 때까지 제1 그룹 내에 추가된다.
확장 클러스터링을 수행하는 동안에, 큐가 방문할 오브젝트를 저장하도록 생성된다. 예를 들면, 확장 클러스터링이 방문할 오브젝트 P에 대하여 수행되었을 때, 큐가 생성되고 방문할 오브젝트 P의 미리 정해진 이웃 도메인 내의 직접 밀도 도달 가능 이웃 오브젝트들이 우선 큐 내에 추가되고, 예를 들면 큐는 {P1, P2, P3, P4}이다. 우선, P1이 코어 오브젝트인지의 여부가 결정된다. 예인 경우, P1의 미리 정해진 이웃 도메인 내의 직접 밀도 도달 가능 이웃 오브젝트들이 P가 있는 제1 그룹 내에 추가되고, P1의 미리 정해진 이웃 도메인 내의 직접 밀도 도달 가능 이웃 오브젝트들이 큐(스택 데이터 구조) 내에 추가된다. 큐 내의 다음 오브젝트(P2 등)를 방문하고, 오브젝트(P2)가 방문함으로 마킹되며 오브젝트가 코어 오브젝트인지의 여부가 결정된다. 오브젝트가 코어 오브젝트가 아닌 경우, 오브젝트가 다른 그룹의 구성원인지의 여부가 결정된다. 오브젝트가 다른 그룹의 구성원이 아닌 경우, 오브젝트는 오브젝트 P가 있는 제1 그룹 내에 추가된다. 큐 내에 오브젝트가 남아 있지 않을 때까지 큐 내의 다음 오브젝트를 방문한다.
단계 S404에서 직접 밀도 도달 가능 이웃 오브젝트가 코어 오브젝트가 아닌 경우, 각 직접 밀도 도달 가능 이웃 오브젝트가 결정되어 있는지의 여부가 결정된다. 직접 밀도 도달 가능 이웃 오브젝트들 모두가 결정되어 있지 않은 경우, 단계 S402가 실행되고 다음 직접 밀도 도달 가능 이웃 오브젝트가 코어 오브젝트인지의 여부가 결정된다. 각 직접 밀도 도달 가능 이웃 오브젝트가 결정되어 있는 경우, 확장 클러스터링이 종료된다.
본 개시의 실시예들에 따른 클러스터링 방법에 의하면, 방문할 오브젝트의 각 이웃 오브젝트가 취득되고, 이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는 것으로 결정되고 방문할 오브젝트가 코어 오브젝트로 결정된다. 방문할 오브젝트가 제1 그룹으로 클러스터링되고, 확장 클러스터링이 방문할 오브젝트의 미리 정해진 이웃 도메인 내의 직접 밀도 도달 가능 이웃 오브젝트들에 대하여 수행된다. 직접 밀도 도달 가능 이웃 오브젝트가 코어 오브젝트가 아닌 경우, 확장 클러스터링이 정지되고 그러면 방문할 오브젝트가 클러스터링될 때까지 방문할 다음 오브젝트가 결정된다. 클러스터링 방법에서 방문할 오브젝트가 코어 오브젝트인지의 여부를 결정하는데 복수의 이웃 도메인이 사용되기 때문에, Eps(스캐닝 반경) 및 MinPts(포함된 도트들의 최소수)의 제한이 감소된다. 따라서, Eps 및 MinPts에 대한 클러스터링 결과의 민감도가 감소되고 클러스터링 결과의 정확도가 개선된다.
도 5에 나타낸 바와 같이 예시적인 실시예에서, 도 1의 단계 S200은 다음의 단계들을 포함한다.
단계 S210에서, 이웃 오브젝트와 방문할 오브젝트 간의 거리가 취득된다. 거리는 코사인 유사도 및 유클리드 거리일 수 있다.
2개의 오브젝트들 간의 코사인 유사도가 2개의 오브젝트들 간의 거리 관계를 나타내도록 본 명세서에서 사용되고, 1과 코사인 유사도 간의 차(1-cosθ)가 2개의 오브젝트들 간의 거리를 표현하는데 사용되며, 2개의 오브젝트들 간의 거리가 짧을수록, 2개의 오브젝트들 간의 유사도가 높아짐에 유의해야 한다.
단계 S220에서, 제1 이웃 도메인 내의 이웃 오브젝트들의 수가 복수의 이웃 도메인의 스캐닝 반경이 커지는 시퀀스에 따라 거리에 따라 미리 정해진 값 이상인지의 여부가 결정된다. 제1 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 값 이상인 경우, 단계 S230이 실행되고; 제1 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 값보다 적은 경우, 단계 S240이 실행된다.
대안으로, 각 이웃 오브젝트와 방문할 오브젝트 간의 거리가 취득된 후에, 거리들은 각 거리의 사이즈에 따라 시퀀싱된다. 이와 같이, 취득된 거리 시퀀스에 따라, 이웃 도메인 내의 오브젝트들의 수가 결정되었을 때에, 방문할 오브젝트에 대한 거리가 이웃 도메인의 스캐닝 반경보다 작은 이웃 오브젝트들의 수가 카운팅된다. 그러면, 이웃 오브젝트들의 수가 대응하는 미리 정해진 임계값 이상인지의 여부가 결정된다.
예를 들면, 도 3에 나타낸 바와 같이, E1 이웃 도메인 내의 오브젝트들의 수가 우선 결정된다. E1 이웃 도메인 내의 오브젝트들과 오브젝트 P 간의 거리들이 각 거리의 사이즈에 따라 시퀀싱되어 거리 시퀀스를 취득한다. 우선, 거리 시퀀스 내의 스캐닝 반경 E1에 가장 근접한 거리가 검색 방법(바이너리 촙 등)에 따라 결정될 수 있고, 거리 시퀀스 내의 스캐닝 반경 E1에 가장 근접한 거리보다 짧은 거리들의 수가 E1 이웃 도메인 내의 오브젝트들의 수를 결정하도록 카운팅되고, 이에 따라 결정 효율성을 개선시킨다.
또한, E2 이웃 도메인 내의 이웃 오브젝트들의 수를 계속해서 결정하는 것이 필요한 경우, 오브젝트 P에 대한 거리가 거리 시퀀스를 검색함으로써 스캐닝 반경 E2보다 짧고 스캐닝 반경 E1보다 긴 이웃 오브젝트들의 수 Pts21이 카운팅되고, E2 이웃 도메인 내의 이웃 오브젝트들의 수가 Pts1에 Pts21을 더함으로써 취득된다. 마찬가지로, 오브젝트 P에 대한 거리가 거리 시퀀스를 검색함으로써 스캐닝 반경 E3보다 짧고 스캐닝 반경 E2보다 긴 이웃 오브젝트들의 수 Pts32가 카운팅되고, E3 이웃 도메인 내의 이웃 오브젝트들의 수가 Pts21과 Pts1의 합에 Pts32를 더함으로써 취득된다. 보다 많은 이웃 도메인들이 있는 경우, 다른 이웃 도메인들 내의 이웃 오브젝트들의 수가 이와 같이 취득될 수 있다.
방문할 오브젝트 P의 복수의 이웃 도메인에서, 이웃 오브젝트들의 수가 복수의 이웃 도메인의 스캐닝 반경이 커지는 시퀀스로 결정되는 것을 유의해야 한다. 소정의 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 값 이상인 것으로 결정된 경우, 차후의 이웃 도메인들 내의 이웃 오브젝트들의 수를 계속해서 판정할 필요는 없다.
단계 S230에서, 방문할 오브젝트가 코어 오브젝트로 결정된다.
단계 S240에서, 방문할 오브젝트의 복수의 이웃 도메인 각각이 결정되어 있는지의 여부가 결정된다. 방문할 오브젝트의 복수의 이웃 도메인 모두가 결정되어 있지 않은 경우, 그러면 단계 S220이 실행되고 제2 이웃 도메인 내의 이웃 오브젝트들의 수가 복수의 이웃 도메인의 스캐닝 반경이 커지는 시퀀스에서의 거리에 따라 미리 정해진 값 이상인지의 여부가 또한 결정되고; 방문할 오브젝트의 복수의 이웃 도메인 각각이 결정되어 있는 경우, 단계 S250이 실행된다.
예를 들면, 원래 값이 0인 변수 i가 설정될 수 있다. 제1 이웃 도메인이 결정되어 있을 때에, 변수 i는 1만큼 증가한다(즉, i=i+1). 방문할 오브젝트의 복수의 이웃 도메인 각각이 방문할 오브젝트의 복수의 이웃 도메인의 수와 변수 i를 비교함으로써 결정되어 있는지의 여부가 결정될 수 있다.
단계 S250에서, 방문할 오브젝트가 코어 오브젝트가 아닌 것으로 결정된다.
방문할 오브젝트 P가 코어 오브젝트가 아닌 것으로 결정된 경우, 오브젝트 P는 노이즈 도트이고, 방문할 오브젝트가 남아있지 않을 때까지 방문할 다음 오브젝트의 각 이웃 오브젝트를 취득하는 단계가 실행된다.
본 개시의 실시예들에 따라 오브젝트가 코어 오브젝트인지의 여부를 결정하기 위한 방법에 의하면, 이웃 도메인 내의 이웃 오브젝트들의 수가 이웃 오브젝트와 방문할 오브젝트 간의 거리에 따라 직접 결정된다. 방문할 오브젝트의 복수의 이웃 도메인의 소정의 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 임계값 이상인 경우, 방문할 오브젝트는 코어 오브젝트이다 즉, Eps(스캐닝 반경) 및 MinPts(포함된 도트들의 최소수)의 제한이 감소된다. 따라서, Eps 및 MinPts에 대한 클러스터링 결과의 민감도가 감소되고 클러스터링 결과의 정확도가 개선된다.
도 6에 나타낸 바와 같이 본 개시의 다른 예시적인 실시예에서, 도 1의 단계 S200은 다음의 단계들을 포함한다.
단계 S211에서, 이웃 오브젝트와 방문할 오브젝트 간의 거리가 취득된다. 거리는 코사인 유사도 또는 유클리드 거리일 수 있다.
2개의 오브젝트 간의 코사인 유사도는 본 명세서에서 2개의 오브젝트 간의 거리 관계를 나타내는데 사용되고, 1과 코사인 유사도 간의 차이(1-cosθ)가 2개의 오브젝트 간의 거리를 표현하는데 사용되며, 2개의 오브젝트 간의 거리가 짧을수록, 2개의 오브젝트 간의 유사도가 높아지는 것에 유의해야 한다.
단계 S221에서, 거리에 대응하는 중량 계수가 취득되고, 중량 계수는 2개의 오브젝트 간의 거리 및 유사도와 연관된다.
중량 계수는 2개의 오브젝트 간의 거리와 2개의 오브젝트 간의 유사도 간의 관계를 반영할 수 있다. 예를 들면, 거리가 길수록, 유사도가 낮아지고 대응하는 중량 계수가 작아진다. 반대로, 거리가 짧을수록, 유사도가 높아지고 대응하는 중량 계수가 커진다.
본 개시의 예시적인 실시예에서, 중량 계수는 2개의 오브젝트 간의 거리 및 2개의 오브젝트가 서로 일치할 확률에 의해 결정될 수 있다. 도 7에 나타낸 바와 같이, 중량 계수는 다음의 단계들에 의해 취득된다.
단계 S2211에서, 샘플 오브젝트 통계에 따라, 이웃 오브젝트 및 방문할 오브젝트로부터의 거리와 이웃 오브젝트가 방문할 오브젝트와 동일할 확률 간의 대응관계가 취득된다.
2개의 오브젝트 간의 거리(코사인 유사도 또는 유클리드 거리 등)가 취득된다. 2개의 오브젝트를 각각 A와 B라 가정하면, 2개의 오브젝트 간의 코사인 유사도가 식 1에 따라 계산될 수 있다.
[식 1]
Figure 112015007583609-pct00001
여기서 A·B는 벡터 A와 벡터 B의 내적(inner product)이고, |A|는 벡터 A의 길이이며, |B|는 벡터 B의 길이이다.
예를 들면, 얼굴 인식에서, 고차원 특징에 따라 계산된 2개의 얼굴 이미지 간의 코사인 유사도 cosθ는 [0, 1]의 범위에 있다. 큰 스케일의 얼굴 이미지 통계 데이터에 따르면, 코사인 유사도가 [0.4, 1]의 범위에 있는 경우, 2개의 오브젝트가 서로 일치할 확률이 98%이고; 코사인 유사도가 [0.35, 0.4]의 범위에 있는 경우, 2개의 오브젝트가 서로 일치할 확률이 90%이며; 코사인 유사도가 [0.3, 0.35]의 범위에 있는 경우, 2개의 오브젝트가 서로 일치할 확률이 70%이고; 코사인 유사도가 [0.25, 0.3]의 범위에 있는 경우, 2개의 오브젝트가 서로 일치할 확률이 40%이며; 코사인 유사도가 [0, 0.25]의 범위에 있는 경우, 2개의 오브젝트가 서로 일치할 확률이 10%이다.
상기 통계 결과에 따르면, 2개의 오브젝트 간의 거리와 2개의 오브젝트가 서로 일치할 확률 간의 관계가 취득될 수 있다. 이 관계는 테이블 내에 또는 다른 형태들로 저장될 수 있다.
단계 S2212에서, 대응관계를 쿼링하여 이웃 오브젝트가 거리에 대응하는 방문할 오브젝트와 동일할 확률을 취득한다.
단계 S2213에서, 거리와 연관된 대응하는 중량 계수가 거리와 확률을 곱셈하여 취득되고, 중량 계수는 확률과 양의 상관 관계에 있다.
단계 S2211의 통계 결과에 따르면, 중량 계수와 코사인 유사도 간의 관계가 식 2로 표시될 수 있다.
[식 2]
Figure 112015007583609-pct00002
식 2는 2개의 오브젝트가 동일한 사람인지의 여부의 코사인 유사도와 확률 간의 관계를 표현한다. 다른 타입들의 거리에 대하여, 관계 표현은 거리와 대응하는 확률 간의 관계에 따라 요약되거나 추정될 수 있어, 본 명세서에서는 생략된다.
물론, 중량 계수가 2개의 오브젝트 간의 거리와 2개의 오브젝트간의 유사도 간의 관계를 표현할 수 있는 한, 이 중량 계수는 다른 수단들에 의해 취득될 수 있다.
단계 S231에서, 특정 이웃 도메인 내의 이웃 오브젝트들의 수가 중량 계수 및 거리에 따라 계산된다.
대안으로, 각 이웃 오브젝트와 방문할 오브젝트 간의 거리가 취득된 후, 거리들이 각 거리의 사이즈에 따라 시퀀싱될 수 있다. 이와 같이, 이웃 도메인 내의 오브젝트들의 수가 결정되었을 때에, 방문할 오브젝트에 대한 거리가 이웃 도메인의 스캐닝 반경보다 짧은 이웃 오브젝트들의 수가 거리 시퀀스에 따라 카운팅된다. 그러면, 특정 이웃 도메인 내의 이웃 오브젝트와 방문할 오브젝트 간의 거리, 및 대응하는 중량 계수에 따라, E 이웃 도메인 내의 이웃 오브젝트들의 수가 취득된다.
특정 이웃 도메인은, 방문할 오브젝트의 복수의 이웃 도메인 중 어느 하나일 수 있고, 복수의 이웃 도메인의 스캐닝 반경이 커지는 시퀀스로 변경될 수 있다.
식 2의 중량 계수에 따라, 이웃 오브젝트들의 수가 식 3으로 표현될 수 있다.
[식 3]
Figure 112015007583609-pct00003
식 3은 E 이웃 도메인 내의 모든 오브젝트의 총수를 표현한다. 실제로, 각 오브젝트의 수는 1로부터 오브젝트와 방문할 오브젝트 간의 거리에 대응하는 중량 계수 W(d i )로 변경된다. 즉, E 이웃 도메인 내의 오브젝트들의 수를 단지 계산하는 대신에, 오브젝트가 중심 포인트에 근접할수록, 오브젝트의 수의 변환 비율이 커지는 것이 취득되고; 반대로, 오브젝트가 중심 포인트로부터 멀어질수록, 오브젝트의 수의 변환 비율이 작아지는 것이 취득된다.
단계 S241에서, 방문할 오브젝트의 이웃 도메인 내의 이웃 오브젝트들의 수가 대응하는 미리 정해진 임계값 이상인지의 여부가 결정된다. 예인 경우, 단계 S251이 실행되고; 아닌 경우, 단계 S261이 실행된다.
도 5의 미리 정해진 임계값과 다른 미리 정해진 임계값이 중량 계수에 따라 조정될 수 있다. 또한, 본 개시의 예시적인 실시예에서의 미리 정해진 임계값은 도 5의 미리 정해진 임계값보다 작다.
각 이웃 도메인 내의 오브젝트들의 수가 스캐닝 반경들에 따라 차례로 대응하는 임계 요구를 충족시키는지의 여부가 결정된다. 예인 경우, 다음 이웃 도메인 내의 오브젝트들의 수가 결정될 것이다.
단계 S251에서, 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 임계값 이상인 경우, 방문할 오브젝트가 코어 오브젝트로 결정된다. 단계 S261에서, 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 임계값보다 적은 경우, 방문할 오브젝트의 복수의 이웃 도메인 각각이 결정되어 있는지의 여부가 결정된다. 예인 경우, 단계 S271이 실행되고; 아닌 경우, 그러면 단계 S231이 실행되고 방문할 오브젝트의 다음 이웃 도메인 내의 이웃 오브젝트들의 수가 중량 계수 및 거리에 따라 계산된다.
예를 들면, 원래 값이 0인 변수 i가 설정될 수 있다. 제1 이웃 도메인이 결정되었을 때, 변수 1은 1만큼 증가한다(즉, i=i+1). 방문할 오브젝트의 복수의 이웃 도메인들 각각이 방문할 오브젝트의 복수의 이웃 도메인의 수와 변수 i를 비교함으로써 결정되어 있는지의 여부가 결정될 수 있고, ith 이웃 도메인의 스캐닝 반경은 (i+1)th 이웃 도메인의 스캐닝 반경보다 작다.
방문할 오브젝트의 복수의 이웃 도메인 각각이 결정되어 있는 경우, 단계 S271에서, 방문할 오브젝트가 코어 오브젝트로 결정되지 않는다.
방문할 오브젝트 P가 코어 오브젝트가 아닌 것으로 결정된 경우, 오브젝트 P는 노이즈 도트이고, 방문할 오브젝트가 방문함으로 마킹되고 방문할 다음 오브젝트의 각 이웃 오브젝트를 취득하는 단계가 방문할 오브젝트가 남아있지 않을 때까지 실행된다.
방문할 오브젝트가 코어 오브젝트인지의 여부를 결정하기 위한 방법에 의하면, 이웃 오브젝트의 수가 이웃 오브젝트와 방문할 오브젝트 간의 거리에 대응하는 중량 계수에 따라 변환되어, 중심 포인트에 근접한 이웃 오브젝트가 큰 수의 변환 비율을 가지며 이웃 도메인 내의 이웃 오브젝트들의 수에 대하여 상당한 기여도를 가지고; 반대로, 중심 포인트로부터 떨어진 이웃 오브젝트가 낮은 수의 변환 비율을 가지며 이웃 도메인 내의 이웃 오브젝트들의 수에 대하여 작은 기여도를 가지고, 이에 따라 Eps 및 MinPts에 대한 클러스터링 결과의 민감도를 더욱 감소시키며 클러스터링 결과의 정확도를 개선시킨다.
도 8은 본 개시의 예시적인 실시예에 따른 클러스터링 장치의 개략도이다. 도 8을 참조하면, 이 장치는 제1 취득 유닛(100), 제1 판정 유닛(200), 클러스터링 유닛(300) 및 확장 클러스터링 유닛(400)을 포함한다.
제1 취득 유닛(100)은 방문할 오브젝트의 각 이웃 오브젝트를 취득하도록 구성된다.
제1 판정 유닛(200)은 이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는지의 여부를 결정하도록 구성되며, 방문할 오브젝트는 복수의 이웃 도메인을 갖는다.
도 3의 이웃 도메인 분포의 개략도를 참조하면, 제1 판정 유닛(200)은 방문할 오브젝트 P의 E1 이웃 도메인 내의 이웃 오브젝트들의 수 Pst1이 우선 MinPst1 이상인지의 여부를 결정하고, Pst1≥MinPst1인 경우, 제1 판정 유닛(200)은 방문할 오브젝트 P가 코어 오브젝트인 것으로 결정하며; 그렇지 않으면, 제1 판정 유닛(200)은 방문할 오브젝트 P의 E2 이웃 도메인 내의 이웃 오브젝트들의 수 Pst2가 MinPst2 이상인지의 여부를 또한 결정하고, Pst2≥MinPst2인 경우, 제1 판정 유닛(200)은 방문할 오브젝트 P가 코어 오브젝트인 것으로 결정하며; 그렇지 않으면, 제1 판정 유닛(200)은 E3 이웃 도메인 내의 방문할 오브젝트 P의 이웃 오브젝트들의 수 Pst3이 MinPst3 이상인지의 여부를 또한 결정하고, Pst3≥MinPst3인 경우, 제1 판정 유닛(200)은 방문할 오브젝트 P가 코어 오브젝트인 것으로 결정하며; 그렇지 않으면, 제1 판정 유닛(200)은 방문할 오브젝트 P가 코어 오브젝트가 아닌 것으로 결정한다.
클러스터링 유닛(300)은 이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는 것으로 결정된 경우, 방문할 오브젝트를 제1 그룹으로 클러스터링하도록 구성된다.
확장 클러스터링 유닛(400)은 이웃 오브젝트들이 더 이상 제1 그룹에 들어갈 수 없을 때까지 방문할 오브젝트의 미리 정해진 이웃 도메인 내의 직접 밀도 도달 가능 이웃 오브젝트들에 대하여 확장 클러스터링을 수행하도록 구성된다.
본 개시의 예시적인 실시예에서, 확장 클러스터링 유닛은 제5 취득 서브유닛, 제5 판정 서브유닛 및 확장 클러스터링 서브유닛을 포함할 수 있다.
제5 취득 서브유닛은 방문할 오브젝트의 미리 정해진 이웃 도메인 내의 각 직접 밀도 도달 가능 이웃 오브젝트를 취득하도록 구성되며, 미리 정해진 이웃 도메인의 스캐닝 반경은 복수의 이웃 도메인의 최대 스캐닝 반경보다 작다.
스캐닝 반경이 클수록, 노이즈 도트를 초래할 확률이 높아질 것이다. 따라서, 미리 정해진 이웃 도메인 내의 직접 밀도 도달 가능 이웃 오브젝트가 방문할 오브젝트가 있는 제1 그룹 내에 추가된다.
제5 판정 서브유닛은 각 직접 밀도 도달 가능 이웃 오브젝트가 코어 오브젝트인지의 여부를 하나씩 결정하도록 구성된다.
확장 클러스터링 서브유닛은, 직접 밀도 도달 가능 이웃 오브젝트가 코어 오브젝트인 것으로 결정된 경우, 이웃 오브젝트들이 더 이상 제1 그룹에 들어갈 수 없을 때까지 직접 밀도 도달 가능 이웃 오브젝트가 있는 미리 정해진 이웃 도메인 내의 이웃 오브젝트들을 제1 그룹 내에 추가하도록 구성된다.
본 개시의 예시적인 실시예에서, 제5 판정 서브유닛은, 제6 판정 서브유닛, 제5 결정 서브유닛 및 제6 결정 서브유닛을 포함할 수 있다.
제6 판정 서브유닛은 이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 직접 밀도 도달 가능 이웃 오브젝트의 복수의 이웃 도메인 내에 존재하는지의 여부를 결정하도록 구성된다.
제5 결정 서브유닛은, 이웃 오브젝트들의 수가 미리 정해진 값 이상인 경우, 직접 밀도 도달 가능 이웃 오브젝트를 코어 오브젝트로 결정하도록 구성된다.
제6 결정 서브유닛은, 직접 밀도 도달 가능 이웃 오브젝트의 복수의 이웃 도메인 각각 내의 이웃 오브젝트들의 수가 미리 정해진 값보다 작은 경우, 직접 밀도 도달 가능 이웃 오브젝트를 코어 오브젝트가 아닌 것으로 결정하도록 구성된다.
본 개시의 실시예들에 따른 클러스터링 장치에 의하면, 제1 판정 유닛은 이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는지의 여부를 결정하고, 즉 제1 판정 유닛은 방문할 오브젝트가 코어 오브젝트인지의 여부를 결정하고; 방문할 오브젝트가 코어 오브젝트인 경우, 클러스터링 유닛은 방문할 오브젝트를 제1 그룹으로 클러스터링하고; 확장 클러스터링 유닛은 방문할 오브젝트의 미리 정해진 이웃 도메인 내의 직접 밀도 도달 가능 이웃 오브젝트들에 대하여 확장 클러스터링을 수행하며; 직접 밀도 도달 가능 이웃 오브젝트가 코어 오브젝트인 경우, 직접 밀도 도달 가능 이웃 오브젝트가 있는 미리 정해진 이웃 도메인 내의 이웃 오브젝트들이 제1 그룹 내에 추가되고; 직접 밀도 도달 가능 이웃 오브젝트가 코어 오브젝트가 아닌 경우, 확장 클러스터링이 정지된다. 그러면 이웃 오브젝트들이 더 이상 제1 그룹에 들어갈 수 없을 때까지 방문할 다음 오브젝트가 결정된다. 복수의 이웃 도메인이 방문할 오브젝트가 클러스터링 장치 내의 코어 오브젝트인지의 여부를 결정하는데 사용되기 때문에, Eps(스캐닝 반경) 및 MinPts(포함된 도트들의 최소수)의 제한이 감소된다. 따라서, Eps 및 MinPts에 대한 클러스터링 결과의 민감도가 감소되고 클러스터링 결과의 정확도가 개선된다.
도 7에 나타낸 바와 같이 본 개시의 예시적인 실시예에서, 제1 판정 유닛은 제1 취득 서브유닛, 제1 판정 서브유닛, 제1 결정 서브유닛, 제2 판정 서브유닛 및 제2 결정 서브유닛을 포함한다.
제1 취득 서브유닛은 이웃 오브젝트와 방문할 오브젝트 간의 거리를 취득하도록 구성된다.
제1 판정 서브유닛은 제1 이웃 도메인 내의 이웃 오브젝트들의 수가 복수의 이웃 도메인의 스캐닝 반경이 커지는 시퀀스에서의 거리에 따라 미리 정해진 값 이상인지의 여부를 결정하도록 구성된다.
대안으로, 각 이웃 오브젝트와 방문할 오브젝트 간의 거리가 취득된 후에, 거리들이 각 거리의 사이즈에 따라 시퀀싱된다. 이와 같이, 취득된 거리 시퀀스에 따라, 이웃 도메인 내의 오브젝트들의 수가 결정되었을 때에, 방문할 오브젝트에 대한 거리가 이웃 도메인의 스캐닝 반경보다 작은 이웃 오브젝트들의 수가 카운팅된다. 그러면, 이웃 오브젝트들의 수가 대응하는 미리 정해진 임계값 이상인지의 여부가 결정된다.
제1 결정 서브유닛은, 제1 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 값 이상인 경우, 방문할 오브젝트를 코어 오브젝트로 결정하도록 구성된다.
제2 판정 서브유닛은, 제1 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 값보다 적은 경우, 방문할 오브젝트의 복수의 이웃 도메인 각각이 결정되어 있는지의 여부를 결정하여, 방문할 오브젝트의 복수의 이웃 도메인 모두가 결정되어 있지 않은 경우, 제1 판정 서브유닛이 제2 이웃 도메인 내의 이웃 오브젝트들의 수가 복수의 이웃 도메인의 스캐닝 반경이 커지는 시퀀스에서의 거리에 따라 미리 정해진 값 이상인지의 여부를 결정하게 하도록 구성된다.
제2 결정 서브유닛은, 방문할 다음 오브젝트의 복수의 이웃 도메인 각각이 결정되어 있는 경우, 방문할 오브젝트를 코어 오브젝트가 아닌 것으로 결정하여, 방문할 오브젝트를 방문함으로 마킹하고 제1 취득 유닛이 방문할 다음 오브젝트의 각 이웃 오브젝트를 취득하게 제어하도록 구성된다.
본 개시의 실시예들에 따른 제1 판정 유닛에 의하면, 이웃 도메인 내의 이웃 오브젝트들의 수가 이웃 오브젝트와 방문할 오브젝트 간의 거리에 따라 직접 결정되고, 방문할 오브젝트의 복수의 이웃 도메인 중 소정의 하나 내의 이웃 오브젝트들의 수가 미리 정해진 임계값 이상인 경우, 방문할 오브젝트가 코어 오브젝트이다. 즉, Eps(스캐닝 반경) 및 MinPts( 포함된 도트들의 최소수)의 제한이 감소된다. 따라서, Eps 및 MinPts에 대한 클러스터링 결과의 민감도가 감소되고 클러스터링 결과의 정확도가 개선된다.
본 개시의 예시적인 실시예에서, 결정 효율을 개선하기 위해서, 제1 판정 서브유닛은 시퀀싱 유닛, 제2 카운팅 서브유닛 및 제7 판정 서브유닛을 포함한다.
시퀀싱 유닛은 각 이웃 오브젝트와 방문할 오브젝트 간의 거리를 시퀀싱하고 거리들의 시퀀스를 취득하도록 구성된다.
제2 카운팅 서브유닛은 거리들의 시퀀스에 따라 이웃 도메인의 스캐닝 반경보다 작은 방문할 오브젝트에 대한 거리를 갖는 이웃 오브젝트들의 수를 카운팅하도록 구성된다.
제7 판정 서브유닛은 이웃 도메인의 스캐닝 반경보다 작은 방문할 오브젝트에 대한 거리를 갖는 이웃 오브젝트들의 수가 미리 정해진 값 이하인지의 여부를 결정하도록 구성된다.
본 개시의 실시예들에 따른 제1 판정 서브유닛에 의하면, 시퀀싱 유닛은 소정의 이웃 도메인 내의 각 오브젝트와 방문할 오브젝트 간의 거리들을 시퀀싱하고 거리들의 시퀀스를 취득한다. 그러면, 거리 시퀀스 내의 스캐닝 반경에 가장 근접한 거리가 검색 방법(바이너리 촙 등)에 따라 결정되고, 스캐닝 반경에 가장 근접한 거리보다 짧은 거리들의 수가 소정의 이웃 도메인 내의 오브젝트들의 수를 결정하도록 카운팅되고, 이에 따라 결정 효율을 개선시킨다.
도 7에 나타낸 바와 같이 본 개시의 다른 예시적인 실시예에서, 제1 판정 유닛(200)은 제2 취득 서브유닛, 제3 취득 서브유닛, 계산 서브유닛, 제3 판정 서브유닛, 제3 결정 서브유닛, 제4 판정 서브유닛 및 제4 결정 서브유닛을 포함한다.
제2 취득 서브유닛은 이웃 오브젝트와 방문할 오브젝트 간의 거리를 취득하도록 구성된다.
제3 취득 서브유닛은 거리에 대응하는 중량 계수를 취득하도록 구성되고, 중량 계수는 거리와 연관되어 있다.
중량 계수는 2개의 오브젝트 간의 거리와 2개의 오브젝트 간의 유사도 간의 관계를 반영할 수 있다. 예를 들면, 거리가 길수록, 유사도가 낮아지고 대응하는 중량 계수가 작아진다. 반대로, 거리가 짧을수록, 유사도가 높아지고 대응하는 중량 계수가 커진다.
본 개시의 예시적인 실시예에서, 제3 취득 서브유닛은 카운팅 서브유닛, 쿼링 서브유닛 및 제4 취득 유닛을 포함한다.
카운팅 서브유닛은, 이웃 오브젝트 및 방문할 오브젝트로부터의 거리와 이웃 오브젝트가 방문할 오브젝트와 동일할 확률 간의 대응관계를 취득하도록 구성된다.
쿼링 서브유닛은 대응관계를 쿼링하여 이웃 오브젝트가 거리에 대응하는 방문할 오브젝트와 동일할 확률을 취득하도록 구성된다.
제4 취득 유닛은 거리와 확률을 곱셈하여 거리와 연관된 대응하는 중량 계수를 취득하도록 구성되며, 중량 계수는 확률과 양의 상관 관계에 있다.
계산 서브유닛은 중량 계수 및 거리에 따라 이웃 도메인 내의 이웃 오브젝트들의 수를 계산하도록 구성된다. 대안으로, 각 이웃 오브젝트와 방문할 오브젝트 간의 거리가 취득된 후에, 거리들이 각 거리의 사이즈에 따라 시퀀싱될 수 있다. 이와 같이, 거리 시퀀스에 따라, 이웃 도메인 내의 오브젝트들의 수가 결정되었을 때에, 방문할 오브젝트에 대한 거리가 이웃 도메인의 스캐닝 반경보다 작은 이웃 오브젝트들의 수가 카운팅된다. 그러면, 특정 이웃 도메인 내의 이웃 오브젝트와 방문할 오브젝트 간의 거리, 및 대응하는 중량 계수에 따라, E 이웃 도메인 내의 이웃 오브젝트들의 수가 취득된다.
제3 판정 서브유닛은 제1 이웃 도메인 내의 이웃 오브젝트들의 수가 복수의 이웃 도메인의 스캐닝 반경이 커지는 시퀀스에서의 미리 정해진 값 이상인지의 여부를 결정하도록 구성된다.
제3 결정 서브유닛은, 제1 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 값 이상인 경우, 방문할 오브젝트를 코어 오브젝트로 결정하도록 구성된다.
제4 판정 서브유닛은, 제1 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 값보다 작은 경우, 방문할 오브젝트의 복수의 이웃 도메인 각각이 결정되어 있는지의 여부를 결정하여, 방문할 오브젝트의 복수의 이웃 도메인 모두가 결정되어 있지 않은 경우, 계산 서브유닛이 거리 및 대응하는 중량 계수에 따라 제2 이웃 도메인 내의 이웃 오브젝트들의 수를 계산하게 하도록 구성되며; 또한, 제3 판정 서브유닛은 제2 이웃 도메인 내의 이웃 오브젝트들의 수가 미리 정해진 값 이상인 것을 결정한다.
제4 결정 서브유닛은, 방문할 오브젝트의 복수의 이웃 도메인 각각이 결정되어 있는 경우, 방문할 오브젝트가 코어 오브젝트가 아닌 것으로 결정하여, 방문할 오브젝트를 방문함으로 마킹하고 제1 취득 유닛이 방문할 다음 오브젝트의 각 이웃 오브젝트를 취득하게 제어하도록 구성된다.
방문할 오브젝트가 코어 오브젝트인지의 여부를 결정하기 위한 방법에 의하면, 이웃 오브젝트의 수가 이웃 오브젝트와 방문할 오브젝트 간의 거리에 대응하는 중량 계수에 따라 변환되어, 중심 포인트에 근접한 이웃 오브젝트가 큰 수의 변환 비율을 가지며 이웃 도메인 내의 이웃 오브젝트들의 수에 대하여 상당한 기여도를 가지고; 반대로, 중심 포인트로부터 떨어진 이웃 오브젝트가 낮은 수의 변환 비율을 가지며 이웃 도메인 내의 이웃 오브젝트들의 수에 대하여 작은 기여도를 가지고, 이에 따라 Eps 및 MinPts에 대한 클러스터링 결과의 민감도를 더욱 감소시키며 클러스터링 결과의 정확도를 개선시킨다.
상기 실시예들의 장치에 관해서, 동작들을 수행하는 각 유닛의 모드는 관련 방법의 실시예들에서 상세히 설명되어 있어 본 명세서에서는 생략된다.
도 9는 예시적인 실시예에 따른 클러스터링 장치(800)의 블럭도이다. 예를 들면, 장치(800)는 이동 전화, 컴퓨터, 디지털 방송 단말, 메시징 디바이스, 게이밍 콘솔, 태블릿, 의료 디바이스, 운동 장비, PDA(personal digital assistant) 등일 수 있다.
도 9를 참조하면, 장치(800)는 다음의 컴포넌트들, 프로세싱 컴포넌트(802), 메모리(804), 전력 컴포넌트(806), 멀티미디어 컴포넌트(808), 오디오 컴포넌트(810), 입력/출력(I/O) 인터페이스(812), 센서 컴포넌트(814), 및 통신 컴포넌트(816) 중 하나 이상을 포함할 수 있다.
프로세싱 컴포넌트(802)는 통상적으로 디스플레이, 전화 호출, 데이터 통신, 카메라 동작, 및 녹화 동작과 연관된 동작 등의 장치(80)의 전체 동작을 제어한다. 프로세싱 컴포넌트(802)는 상술한 방법들의 전체 또는 일부 단계들을 수행하도록 하는 명령들을 실행하는 하나 이상의 프로세서(820)를 포함할 수 있다. 또한, 프로세싱 컴포넌트(802)는 프로세싱 컴포넌트(802)와 다른 컴포넌트들 간의 상호작용을 촉진하는 하나 이상의 모듈을 포함할 수 있다. 예를 들면, 프로세싱 컴포넌트(802)는 멀티미디어 컴포넌트(808)와 프로세싱 컴포넌트(802) 간의 상호작용을 촉진하는 멀티미디어 모듈을 포함할 수 있다.
메모리(804)는 장치(800)의 작동을 지원하도록 하는 다양한 타입의 데이터를 저장하도록 구성된다. 이러한 데이터의 예들은 장치(800) 상에서 동작하는 임의의 애플리케이션들 또는 방법들을 위한 명령들, 컨택트 데이터, 폰북 데이터, 메시지들, 사진들, 비디오 등을 포함한다. 메모리(804)는, SRAM(static random access memory), EEPROM(electrically erasable programmable read-only memory), EPROM(erasable programmable read-only memory), PROM(programmable read-only memory), ROM(read-only memory), 마그네틱 메모리, 플래시 메모리, 마그네틱 또는 광 디스크 등, 임의의 타입의 휘발성 또는 비휘발성 메모리 디바이스들, 또는 그들의 조합을 사용하여 구현될 수 있다.
전력 컴포넌트(806)는 장치(800)의 다양한 컴포넌트들에 전력을 공급한다. 전력 컴포넌트(806)는 전력 관리 시스템, 하나 이상의 전원, 및 장치(800) 내의 전력 생성, 관리 및 분배에 연관된 임의의 다른 컴포넌트들을 포함할 수 있다.
멀티미디어 컴포넌트(808)는 장치(800)와 사용자 간의 출력 인터페이스를 제공하는 스크린을 포함한다. 일부 실시예에서, 스크린은 액정 디스플레이(LCD) 및 터치 패널(TP)을 포함할 수 있다. 스크린이 터치 패널을 포함하는 경우, 스크린은 사용자로부터의 입력 신호를 수신하는 터치 스크린으로 구현될 수 있다. 터치 패널은 이 터치 패널 상의 터치, 스와이프(swipe) 및 제스처를 감지하는 하나 이상의 터치 센서를 포함한다. 터치 센서들은 터치 또는 스와이프 액션의 경계를 감지할 수 있을 뿐만 아니라, 터치 또는 스와이프 액션과 연관된 시간 주기 및 압력도 감지할 수 있다. 일부 실시예에서, 멀티미디어 컴포넌트(808)는 전방 카메라 및/또는 후방 카메라를 포함한다. 전방 카메라 및 후방 카메라는 장치(800)가 사진 모드 또는 비디오 모드 등의 동작 모드에 있는 동안에 외부 멀티미디어 데이터를 수신할 수 있다. 각각의 전방 카메라 및 후방 카메라는 고정형 광학 렌즈 시스템일 수 있거나 포커스 및 광학 줌 능력을 가질 수 있다.
오디오 컴포넌트(810)는 오디오 신호들을 출력 및/또는 입력하도록 구성된다. 예를 들면, 오디오 컴포넌트(810)는 장치(800)가 호출 모드, 녹화 모드, 및 음성 인식 모드 등의 동작 모드에 있을 때에 외부 오디오 신호를 수신하도록 구성된 마이크로폰(MC)을 포함한다. 수신된 오디오 신호는 메모리(804) 내에 또한 저장될 수 있거나 통신 컴포넌트(816)를 통하여 전송될 수 있다. 일부 실시예에서, 오디오 컴포넌트(810)는 오디오 신호들을 출력하는 스피커를 더 포함한다.
I/O 인터페이스(812)는 프로세싱 컴포넌트(802)와, 키보드, 클릭 휠 등의 주변 인터페이스 모듈들 간의 인터페이스를 제공한다. 버튼들은 홈 버튼, 볼륨 버튼, 시작 버튼, 및 잠금 버튼을 포함할 수 있지만 이에 한정되지 않는다.
센서 컴포넌트(814)는 장치(800)의 다양한 양태들의 상태 평가를 제공하는 하나 이상의 센서를 포함한다. 예를 들면, 센서 컴포넌트(814)는 장치(800)의 개방/폐쇄 상태, 컴포넌트들의 상대적인 위치설정, 예를 들어 장치(800)의 디스플레이 및 키패드, 장치(800) 또는 장치(800)의 컴포넌트의 위치 변화, 장치(800)와 접촉하는 사용자의 존재 유무, 장치(800)의 방위 또는 가속/감속, 및 장치(800)의 온도 변화를 검출할 수 있다. 센서 컴포넌트(814)는 임의의 물리적인 접촉 없이 인접하는 오브젝트들의 존재를 검출하도록 구성된 근접 센서를 포함할 수 있다. 센서 컴포넌트(814)는 또한 이미징 애플리케이션 용도의 CMOS 또는 CCD 이미지 센서 등의 광 센서를 포함할 수 있다. 일부 실시예에서, 센서 컴포넌트(814)는 또한 가속도계 센서, 자이로스코프 센서, 마그네틱 센서, 압력 센서, 또는 온도 센서를 포함할 수 있다.
통신 컴포넌트(816)는 장치(800)와 다른 디바이스들 간의 유선 또는 무선으로 통신을 가능하게 하도록 구성된다. 장치(800)는 WiFi, 2G 또는 3G 등의 통신 표준, 또는 그들의 조합에 기초한 무선 네트워크를 액세스할 수 있다. 하나의 예시적인 실시예에서, 통신 컴포넌트(816)는 방송 채널을 통하여 외부 방송 관리 시스템으로부터 방송 신호 또는 방송 관련 정보를 수신한다. 하나의 예시적인 실시예에서, 통신 컴포넌트(816)는 짧은 범위 통신을 가능하게 하는 NFC(near field communication) 모듈을 더 포함한다. 예를 들면, NFC 모듈은 RFID(radio frequency identification) 기술, IrDA(infrared data association) 기술, UWB(ultra-wideband) 기술, BT(Bluetooth) 기술, 및 다른 기술들에 기초하여 구현될 수 있다.
예시적인 실시예들에서, 장치(800)는 상술한 방법들을 수행하기 위해서, 하나 이상의 ASIC(application specific integrated circuit)들, DSP(digital signal processor)들, DSPD(digital signal processing device)들, PLD(programmable logic device)들, FPGA(field programmable gate array)들, 컨트롤러들, 마이크로컨트롤러들, 마이크로프로세서들, 또는 다른 전자 컴포넌트들로 구현될 수 있다.
예시적인 실시예들에서는, 상술한 방법들을 수행하기 위해서, 메모리(804) 내에 포함되고, 장치(800) 내의 프로세서(820)에 의해 실행될 수 있는 등의, 명령들을 포함하는 비일시적인 컴퓨터 판독 가능한 저장 매체가 또한 제공된다. 예를 들면, 비일시적인 컴퓨터 판독 가능한 저장 매체는, ROM, RAM, CD-ROM, 마그네틱 테이프, 플로피 디스크, 광 데이터 저장 장치 등일 수 있다.
비일시적인 컴퓨터 판독 가능한 저장 매체가 제공되며, 이 저장 매체 내의 명령들이 이동 단말의 프로세서에 의해 실행될 때에, 이동 단말이 클러스터링 방법을 실행할 수 있고, 이 클러스터링 방법은,
방문할 오브젝트의 각 이웃 오브젝트를 취득하는 단계;
이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는지의 여부를 결정하는 단계 - 방문할 오브젝트는 복수의 이웃 도메인을 가짐 -;
이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는 것으로 결정된 경우, 방문할 오브젝트를 제1 그룹으로 클러스터링하는 단계; 및
이웃 오브젝트들이 더 이상 제1 그룹에 들어갈 수 없을 때까지 방문할 오브젝트의 미리 정해진 이웃 도메인 내의 직접 밀도 도달 가능 이웃 오브젝트들에 대하여 확장 클러스터링을 수행하는 단계를 포함한다.
본 개시는 상기에서 설명되어 있고 첨부된 도면에 도시되어 있는 정확한 구성에 한정되는 것이 아니라, 그 범주를 이탈하지 않고서 다양한 변형 및 변경이 이루어질 수 있음이 명백할 것이다. 본 개시의 범주는 이하의 특허청구범위에 의해서만 한정되는 것이다.
본 명세서에서의 "제1" 및 "제2" 등의 관련 용어들은 단지 하나의 엔티티 또는 동작을 다른 엔티티 또는 동작과 구별하고자 하는 것이지만, 이들 엔티티 또는 동작 간의 임의의 관계 또는 시퀀스를 암시하는 것이 아님을 유의해야 한다. 또한, "포함하다", "구비하다" 또는 다른 변형들 등의 용어들은, 배타적이지 않은 의미를 포함하려고 하는 것으로, 일련의 엘리먼트들을 포함하는 프로세스, 방법, 오브젝트 또는 장치가 분명히 윤곽이 드러나지 않은 다른 엘리먼트들을 더 포함할 수 있거나 프로세스, 방법, 오브젝트 또는 장치의 고유 엘리먼트들을 포함할 수 있다. 달리 명시하지 않는 한, 문장 "…을 구비하다"로 한정된 엘리먼트는, 엘리먼트를 포함하는 프로세스, 방법, 오브젝트 또는 장치가 다른 일치하는 엘리먼트들을 더 포함할 수 있을 가능성을 배제하는 것이 아니다.
상기에서는 본 개시의 실시예들만이 있고 당업자가 본 개시의 이해 또는 구현하는 것을 돕고자 하는 것이다. 이들 실시예들의 다양한 변형들이 당업자에게는 명백하고, 본 명세서에 규정된 일반적인 원리는 본 개시의 사상 및 범주를 이탈하지 않고서 다른 실시예들에서 수행될 수 있다. 따라서, 본 개시는 본 명세서에서의 이들 실시예들에 한정되는 것이 아니라, 본 개시의 원리 및 신규한 특징들에 순응하여 가장 넓은 범주를 청구한다.

Claims (15)

  1. 클러스터링 방법으로서,
    방문할 오브젝트의 각 이웃 오브젝트를 취득하는 단계;
    상기 이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는지의 여부를 결정하는 단계를 포함하되, 상기 방문할 오브젝트는 복수의 이웃 도메인들을 포함하고;
    상기 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는 것으로 결정된 경우, 상기 방문할 오브젝트를 제1 그룹으로 클러스터링하는 단계; 및
    상기 이웃 오브젝트들이 더 이상 상기 제1 그룹에 들어갈 수 없을 때까지 상기 방문할 오브젝트의 미리 정해진 이웃 도메인 내의 직접 밀도 도달 가능(directly density-reachable) 이웃 오브젝트들에 대하여 확장 클러스터링(expanded clustering)을 수행하는 단계
    를 포함하는 것을 특징으로 하는 클러스터링 방법.
  2. 제1항에 있어서,
    상기 이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는지의 여부를 결정하는 단계는,
    이웃 오브젝트와 상기 방문할 오브젝트 간의 거리를 취득하는 단계;
    상기 복수의 이웃 도메인의 스캐닝 반경이 커지는 시퀀스(ascending sequence)에 따라 상기 거리에 의해 제1 이웃 도메인 내의 상기 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인지의 여부를 결정하는 단계;
    상기 제1 이웃 도메인 내의 상기 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인 경우, 상기 방문할 오브젝트를 코어 오브젝트로 결정하는 단계;
    상기 제1 이웃 도메인 내의 상기 이웃 오브젝트들의 수가 상기 미리 정해진 값보다 작은 경우, 상기 방문할 오브젝트의 상기 복수의 이웃 도메인 각각이 결정되어 있는지의 여부를 결정하는 단계;
    상기 방문할 오브젝트의 상기 복수의 이웃 도메인 모두가 결정되어 있지 않은 경우, 상기 복수의 이웃 도메인의 스캐닝 반경이 커지는 시퀀스에 따라 상기 거리에 의해 제2 이웃 도메인 내의 상기 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인지의 여부를 결정하는 단계; 및
    상기 방문할 오브젝트의 상기 복수의 이웃 도메인 각각이 결정되어 있는 경우, 상기 방문할 오브젝트를 상기 코어 오브젝트가 아닌 것으로 결정하는 단계
    를 포함하는 것을 특징으로 하는 클러스터링 방법.
  3. 제1항에 있어서,
    상기 이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는지의 여부를 결정하는 단계는,
    이웃 오브젝트와 상기 방문할 오브젝트 간의 거리를 취득하는 단계;
    상기 거리에 대응하는 중량 계수(weight coefficient)를 취득하는 단계 - 상기 중량 계수는 상기 거리와 연관되어 있음 -;
    상기 거리 및 상기 대응하는 중량 계수에 따라 제1 이웃 도메인 내의 상기 이웃 오브젝트들의 수를 계산하는 단계;
    상기 복수의 이웃 도메인들의 스캐닝 반경이 커지는 시퀀스에 따라 상기 제1 이웃 도메인 내의 상기 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인지의 여부를 결정하는 단계;
    상기 제1 이웃 도메인 내의 상기 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인 경우, 상기 방문할 오브젝트를 코어 오브젝트로 결정하는 단계;
    상기 제1 이웃 도메인 내의 상기 이웃 오브젝트들의 수가 상기 미리 정해진 값보다 적은 경우, 상기 방문할 오브젝트의 상기 복수의 이웃 도메인 각각이 결정되어 있는지의 여부를 결정하는 단계;
    상기 방문할 오브젝트의 상기 복수의 이웃 도메인 모두가 결정되어 있지 않은 경우, 상기 복수의 이웃 도메인들의 스캐닝 반경이 커지는 시퀀스에 따라 상기 거리에 의해 제2 이웃 도메인 내의 상기 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인지의 여부를 결정하는 단계; 및
    상기 방문할 오브젝트의 상기 복수의 이웃 도메인 각각이 결정되어 있는 경우, 상기 방문할 오브젝트를 상기 코어 오브젝트가 아닌 것으로 결정하는 단계
    를 포함하는 것을 특징으로 하는 클러스터링 방법.
  4. 제3항에 있어서,
    상기 거리와 연관된 대응하는 중량 계수를 취득하는 단계는,
    상기 이웃 오브젝트 및 상기 방문할 오브젝트로부터의 거리와 상기 이웃 오브젝트가 방문할 오브젝트와 동일할 확률 간의 대응관계(correspondence)를 취득하는 단계;
    상기 대응관계를 쿼링(querying)하여 상기 이웃 오브젝트가 상기 거리에 대응하는 상기 방문할 오브젝트와 동일할 상기 확률을 취득하는 단계; 및
    상기 거리와 상기 확률을 곱셈하여 상기 거리와 연관된 상기 대응하는 중량 계수를 취득하는 단계 - 상기 중량 계수는 확률과 양의 상관 관계(positive correlation)에 있음 -
    를 포함하는 것을 특징으로 하는 클러스터링 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 이웃 오브젝트들이 더 이상 상기 제1 그룹에 들어갈 수 없을 때까지 상기 방문할 오브젝트의 미리 정해진 이웃 도메인 내의 직접 밀도 도달 가능 이웃 오브젝트들에 대하여 확장 클러스터링을 수행하는 단계는,
    상기 방문할 오브젝트의 상기 미리 정해진 이웃 도메인 내의 각 직접 밀도 도달 가능 이웃 오브젝트를 취득하는 단계 - 상기 미리 정해진 이웃 도메인의 스캐닝 반경은 상기 복수의 이웃 도메인의 최대 스캐닝 반경보다 작음 -;
    각 직접 밀도 도달 가능 이웃 오브젝트가 코어 오브젝트인지의 여부를 하나씩 결정하는 단계; 및
    상기 직접 밀도 도달 가능 이웃 오브젝트가 상기 코어 오브젝트인 것으로 결정된 경우, 상기 이웃 오브젝트들이 더 이상 상기 제1 그룹에 들어갈 수 없을 때까지 상기 직접 밀도 도달 가능 이웃 오브젝트가 있는 상기 미리 정해진 이웃 도메인 내의 상기 이웃 오브젝트들을 상기 제1 그룹 내에 추가하는 단계
    를 포함하는 것을 특징으로 하는 클러스터링 방법.
  6. 제5항에 있어서,
    각 직접 밀도 도달 가능 이웃 오브젝트가 상기 코어 오브젝트인지의 여부를 하나씩 결정하는 단계는,
    상기 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인 하나의 이웃 도메인이 상기 직접 밀도 도달 가능 이웃 오브젝트의 상기 복수의 이웃 도메인 내에 존재하는지의 여부를 결정하는 단계;
    상기 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인 경우, 상기 직접 밀도 도달 가능 이웃 오브젝트를 코어 오브젝트로 결정하는 단계; 및
    상기 직접 밀도 도달 가능 이웃 오브젝트의 상기 복수의 이웃 도메인 각각 내의 상기 이웃 오브젝트들의 수가 상기 미리 정해진 값보다 적은 경우, 상기 직접 밀도 도달 가능 이웃 오브젝트를 상기 코어 오브젝트가 아닌 것으로 결정하는 단계
    를 포함하는 것을 특징으로 하는 클러스터링 방법.
  7. 제2항에 있어서,
    상기 복수의 이웃 도메인들의 스캐닝 반경이 커지는 시퀀스에 따라 상기 거리에 의해 상기 제1 이웃 도메인 내의 상기 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인지의 여부를 결정하는 단계는,
    각 이웃 오브젝트와 상기 방문할 오브젝트 간의 상기 거리들을 시퀀싱하고 상기 거리들의 시퀀스를 취득하는 단계;
    상기 거리들의 상기 시퀀스에 따라 상기 이웃 도메인의 상기 스캐닝 반경보다 작은 상기 방문할 오브젝트에 대한 상기 거리를 갖는 상기 이웃 오브젝트들의 수를 카운팅하는 단계; 및
    상기 이웃 도메인의 상기 스캐닝 반경보다 작은 상기 방문할 오브젝트에 대한 상기 거리를 갖는 상기 이웃 오브젝트들의 수가 상기 미리 정해진 값 이하인지의 여부를 결정하는 단계
    를 포함하는 것을 특징으로 하는 클러스터링 방법.
  8. 클러스터링 장치로서,
    방문할 오브젝트의 각 이웃 오브젝트를 취득하기 위한 제1 취득 유닛;
    상기 이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는지의 여부를 결정하기 위한 제1 판정 유닛을 포함하되, 상기 방문할 오브젝트는 복수의 이웃 도메인들을 포함하고;
    상기 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는 것으로 판정된 경우, 상기 방문할 오브젝트를 제1 그룹으로 클러스터링하기 위한 클러스터링 유닛; 및
    상기 이웃 오브젝트들이 더 이상 상기 제1 그룹에 들어갈 수 없을 때까지 상기 방문할 오브젝트의 미리 정해진 이웃 도메인 내의 직접 밀도 도달 가능 이웃 오브젝트들에 대하여 확장 클러스터링을 수행하기 위한 확장 클러스터링 유닛
    을 포함하는 것을 특징으로 하는 클러스터링 장치.
  9. 제8항에 있어서,
    상기 제1 판정 유닛은,
    이웃 오브젝트와 상기 방문할 오브젝트 간의 거리를 취득하기 위한 제1 취득 서브유닛;
    상기 복수의 이웃 도메인의 스캐닝 반경이 커지는 시퀀스에 따라 상기 거리에 의해 제1 이웃 도메인 내의 상기 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인지의 여부를 결정하기 위한 제1 판정 서브유닛;
    상기 제1 이웃 도메인 내의 상기 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인 경우, 상기 방문할 오브젝트를 코어 오브젝트로 결정하기 위한 제1 결정 서브유닛;
    상기 제1 이웃 도메인 내의 상기 이웃 오브젝트들의 수가 상기 미리 정해진 값보다 적은 경우, 상기 방문할 오브젝트의 상기 복수의 이웃 도메인 각각이 결정되어 있는지의 여부를 결정하고, 상기 방문할 오브젝트의 상기 복수의 이웃 도메인 모두가 결정되어 있지 않은 경우, 상기 제1 결정 서브유닛이, 제2 이웃 도메인 내의 상기 이웃 오브젝트들의 수가 상기 복수의 이웃 도메인의 스캐닝 반경이 커지는 상기 시퀀스에서의 상기 거리에 따라 상기 미리 정해진 값 이상인지의 여부를 결정하기 위한 제2 판정 서브유닛; 및
    상기 방문할 오브젝트의 상기 복수의 이웃 도메인 각각이 결정되어 있는 경우, 상기 방문할 오브젝트를 상기 코어 오브젝트가 아닌 것으로 결정하도록 구성된 제2 결정 서브유닛
    을 포함하는 것을 특징으로 하는 클러스터링 장치.
  10. 제8항에 있어서,
    상기 제1 판정 유닛은,
    이웃 오브젝트와 상기 방문할 오브젝트 간의 거리를 취득하기 위한 제2 취득 서브유닛;
    상기 거리에 대응하는 중량 계수를 취득하기 위한 제3 취득 서브유닛 - 상기 중량 계수는 상기 거리와 연관되어 있음 -;
    상기 거리 및 상기 대응하는 중량 계수에 따라 제1 이웃 도메인 내의 상기 이웃 오브젝트들의 수를 계산하기 위한 계산 서브유닛;
    상기 복수의 이웃 도메인의 스캐닝 반경이 커지는 시퀀스에 따라 상기 제1 이웃 도메인 내의 상기 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인지의 여부를 결정하기 위한 제3 판정 서브유닛;
    상기 제1 이웃 도메인 내의 상기 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인 경우, 상기 방문할 오브젝트를 코어 오브젝트로 결정하기 위한 제3 결정 서브유닛;
    상기 제1 이웃 도메인 내의 상기 이웃 오브젝트들의 수가 상기 미리 정해진 값보다 적은 경우, 상기 방문할 오브젝트의 상기 복수의 이웃 도메인 각각이 결정되어 있는지의 여부를 결정하고, 상기 방문할 오브젝트의 상기 복수의 이웃 도메인 모두가 결정되어 있지 않은 경우, 상기 계산 서브유닛이, 상기 거리 및 상기 대응하는 중량 계수에 따라 제2 이웃 도메인 내의 상기 이웃 오브젝트들의 수를 계산하게 하기 위한 제4 판정 서브유닛; 및
    상기 방문할 오브젝트의 상기 복수의 이웃 도메인 각각이 결정되어 있는 경우, 상기 방문할 오브젝트를 상기 코어 오브젝트가 아닌 것으로 결정하기 위한 제4 결정 서브유닛
    을 포함하는 것을 특징으로 하는 클러스터링 장치.
  11. 제10항에 있어서,
    상기 제3 취득 서브유닛은,
    상기 이웃 오브젝트 및 상기 방문할 오브젝트로부터의 상기 거리와 상기 이웃 오브젝트가 상기 방문할 오브젝트와 동일할 확률 간의 대응관계를 취득하기 위한 카운팅 서브유닛;
    상기 대응관계를 쿼링하여 상기 이웃 오브젝트가 상기 거리에 대응하는 상기 방문할 오브젝트와 동일할 확률을 취득하기 위한 쿼링 서브유닛; 및
    상기 거리와 상기 확률을 곱셈하여 상기 거리와 연관된 상기 대응하는 중량 계수를 취득하기 위한 제4 취득 서브유닛 - 상기 중량 계수는 상기 확률과 양의 상관 관계에 있음 -
    을 포함하는 것을 특징으로 하는 클러스터링 장치.
  12. 제8항 내지 제 11항 중 어느 한 항에 있어서,
    상기 확장 클러스터링 유닛은,
    상기 방문할 오브젝트의 상기 미리 정해진 이웃 도메인 내의 각 직접 밀도 도달 가능 이웃 오브젝트를 취득하기 위한 제5 취득 서브유닛 - 상기 미리 정해진 이웃 도메인의 스캐닝 반경은 상기 복수의 이웃 도메인의 최대 스캐닝 반경보다 작음 -;
    각 직접 밀도 도달 가능 이웃 오브젝트가 코어 오브젝트인지의 여부를 하나씩 결정하기 위한 제5 판정 서브유닛; 및
    상기 직접 밀도 도달 가능 이웃 오브젝트가 상기 코어 오브젝트인 것으로 결정된 경우, 상기 이웃 오브젝트들이 더 이상 상기 제1 그룹에 들어갈 수 없을 때까지 상기 직접 밀도 도달 가능 이웃 오브젝트가 있는 상기 미리 정해진 이웃 도메인 내의 이웃 오브젝트들을 상기 제1 그룹 내에 추가하기 위한 확장 클러스터링 서브유닛
    을 포함하는 것을 특징으로 하는 클러스터링 장치.
  13. 제12항에 있어서,
    상기 제5 판정 서브유닛은,
    상기 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 상기 직접 밀도 도달 가능 이웃 오브젝트의 복수의 이웃 도메인 내에 존재하는지의 여부를 결정하기 위한 제6 판정 서브유닛;
    상기 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인 경우, 상기 직접 밀도 도달 가능 이웃 오브젝트를 상기 코어 오브젝트로 결정하기 위한 제5 결정 서브유닛; 및
    상기 직접 밀도 도달 가능 이웃 오브젝트의 상기 복수의 이웃 도메인 각각 내의 상기 이웃 오브젝트들의 수가 상기 미리 정해진 값보다 적은 경우, 상기 직접 밀도 도달 가능 이웃 오브젝트를 상기 코어 오브젝트가 아닌 것으로 결정하기 위한 제6 결정 서브유닛
    을 포함하는 것을 특징으로 하는 클러스터링 장치.
  14. 제9항에 있어서,
    상기 제1 판정 서브유닛은,
    각 이웃 오브젝트와 상기 방문할 오브젝트 간의 상기 거리들을 시퀀싱하고 상기 거리들의 시퀀스를 취득하기 위한 시퀀싱 유닛;
    상기 거리들의 상기 시퀀스에 따라 상기 이웃 도메인의 상기 스캐닝 반경보다 작은 상기 방문할 오브젝트에 대한 상기 거리를 갖는 상기 이웃 오브젝트들의 수를 카운팅하기 위한 제2 카운팅 서브유닛; 및
    상기 이웃 도메인의 상기 스캐닝 반경보다 작은 상기 방문할 오브젝트에 대한 상기 거리를 갖는 상기 이웃 오브젝트들의 수가 상기 미리 정해진 값 이하인지의 여부를 결정하기 위한 제7 판정 서브유닛
    을 포함하는 것을 특징으로 하는 클러스터링 장치.
  15. 단말 장치로서,
    프로세서; 및
    상기 프로세서에 의해 실행 가능한 명령을 저장하도록 구성된 메모리
    를 포함하며,
    상기 프로세서는,
    방문할 오브젝트의 각 이웃 오브젝트들을 취득하고;
    상기 이웃 오브젝트들의 수가 미리 정해진 값 이상인 적어도 하나의 이웃 도메인이 존재하는지의 여부를 결정하되, 상기 방문할 오브젝트는 복수의 이웃 도메인들을 포함하고;
    상기 방문할 오브젝트의 상기 복수의 이웃 도메인 내에 상기 이웃 오브젝트들의 수가 상기 미리 정해진 값 이상인 상기 적어도 하나의 이웃 도메인이 존재하는 것으로 결정된 경우, 상기 방문할 오브젝트를 제1 그룹으로 클러스터링하고;
    상기 이웃 오브젝트들이 더 이상 상기 제1 그룹에 들어갈 수 없을 때까지 상기 방문할 오브젝트의 미리 정해진 이웃 도메인 내의 직접 밀도 도달 가능 이웃 오브젝트들에 대하여 확장 클러스터링을 수행하기 위한 것을 특징으로 하는 단말 장치.
KR1020157001990A 2014-02-28 2014-11-14 클러스터링 방법, 장치 및 단말 장치 KR101646887B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201410073496.5A CN103902655B (zh) 2014-02-28 2014-02-28 聚类方法、装置及终端设备
CN201410073496.5 2014-02-28
PCT/CN2014/091197 WO2015127801A1 (zh) 2014-02-28 2014-11-14 聚类方法、装置及终端设备

Publications (2)

Publication Number Publication Date
KR20150111343A KR20150111343A (ko) 2015-10-05
KR101646887B1 true KR101646887B1 (ko) 2016-08-08

Family

ID=50993978

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157001990A KR101646887B1 (ko) 2014-02-28 2014-11-14 클러스터링 방법, 장치 및 단말 장치

Country Status (7)

Country Link
EP (1) EP2913780A3 (ko)
JP (1) JP6104454B2 (ko)
KR (1) KR101646887B1 (ko)
CN (1) CN103902655B (ko)
BR (1) BR112015002059A2 (ko)
MX (1) MX2015001410A (ko)
WO (1) WO2015127801A1 (ko)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103902655B (zh) * 2014-02-28 2017-01-04 小米科技有限责任公司 聚类方法、装置及终端设备
CN106204118A (zh) * 2016-06-30 2016-12-07 百度在线网络技术(北京)有限公司 一种用于商圈发现的方法与装置
KR102410825B1 (ko) * 2017-08-14 2022-06-20 삼성전자주식회사 문장의 도메인 판단 방법 및 장치
CN108038500B (zh) * 2017-12-07 2020-07-03 东软集团股份有限公司 聚类方法、装置、计算机设备、存储介质和程序产品
CN111723959B (zh) 2019-03-19 2023-12-12 腾讯科技(深圳)有限公司 区域的划分方法、装置、存储介质及电子装置
CN110113228B (zh) * 2019-04-25 2020-12-18 新华三信息安全技术有限公司 一种网络连接检测方法及装置
CN110097126B (zh) * 2019-05-07 2023-04-21 江苏优聚思信息技术有限公司 基于dbscan聚类算法的核查重点人员、房屋漏登记的方法
CN110188810A (zh) * 2019-05-23 2019-08-30 西北工业大学 一种基于密度聚类的在线野值检测、识别与修正方法
CN110276401A (zh) * 2019-06-24 2019-09-24 广州视源电子科技股份有限公司 样本聚类方法、装置、设备及存储介质
CN110717428A (zh) * 2019-09-27 2020-01-21 上海依图网络科技有限公司 一种融合多个特征的身份识别方法、装置、系统、介质及设备
CN111968365B (zh) * 2020-07-24 2022-02-15 武汉理工大学 一种非信号交叉口车辆行为分析方法、系统及存储介质
CN112070140B (zh) * 2020-09-01 2022-05-03 中国人民解放军陆军工程大学 一种基于维度分解的密度聚类类标模式识别方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103577875A (zh) 2013-11-20 2014-02-12 北京联合大学 一种基于fast的计算机辅助cad人数统计方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101536591B (zh) * 2006-10-30 2012-06-06 Lm爱立信电话有限公司 用于改善定位的扩展聚类
CN101996198B (zh) * 2009-08-31 2016-06-29 中国移动通信集团公司 聚类实现方法及系统
US8429153B2 (en) * 2010-06-25 2013-04-23 The United States Of America As Represented By The Secretary Of The Army Method and apparatus for classifying known specimens and media using spectral properties and identifying unknown specimens and media
JP5551986B2 (ja) * 2010-07-05 2014-07-16 株式会社Kadokawa 情報処理装置、情報処理方法、及びプログラム
CN102185919B (zh) * 2011-05-04 2013-05-08 江苏大学 一种基于节点置信半径的p2p网络分布式聚类方法
CN102670251B (zh) * 2012-05-29 2014-04-02 飞依诺科技(苏州)有限公司 基于数值排序加权平均的超声图像空间滤波方法
CN103679148B (zh) * 2013-12-11 2017-04-26 哈尔滨工业大学深圳研究生院 一种基于聚类角点加权面积的群体聚散检测的方法与装置
CN103902655B (zh) * 2014-02-28 2017-01-04 小米科技有限责任公司 聚类方法、装置及终端设备
CN103902654B (zh) * 2014-02-28 2017-02-08 小米科技有限责任公司 聚类方法、装置及终端设备

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103577875A (zh) 2013-11-20 2014-02-12 北京联合大学 一种基于fast的计算机辅助cad人数统计方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Ankerst M. et al. "OPTICS: ordering points to identify the clustering structure" SIGMOD Record, ACM 1999.
Kriegel H. et al. "Hierarchical Density-based Clustering of Uncertain Data", Data Mining 2005.

Also Published As

Publication number Publication date
WO2015127801A1 (zh) 2015-09-03
BR112015002059A2 (pt) 2017-07-04
CN103902655A (zh) 2014-07-02
MX2015001410A (es) 2016-04-27
KR20150111343A (ko) 2015-10-05
JP2016520896A (ja) 2016-07-14
CN103902655B (zh) 2017-01-04
EP2913780A3 (en) 2015-09-30
JP6104454B2 (ja) 2017-03-29
EP2913780A2 (en) 2015-09-02

Similar Documents

Publication Publication Date Title
KR101646887B1 (ko) 클러스터링 방법, 장치 및 단말 장치
TWI759722B (zh) 神經網路訓練方法及裝置、圖像處理方法及裝置、電子設備和計算機可讀存儲介質
JP6862586B1 (ja) ニューラルネットワークのトレーニング方法、装置および記憶媒体
US20210117726A1 (en) Method for training image classifying model, server and storage medium
CN108010060B (zh) 目标检测方法及装置
RU2604429C2 (ru) Способ и аппарат для автоматического подключения беспроводной сети
KR101639502B1 (ko) 클러스터링 방법, 관련장치, 프로그램 및 기록매체
KR20150117202A (ko) 클러스터링 방법, 관련 장치, 프로그램 및 기록매체
KR102240490B1 (ko) 멀티 빔 선택 방법 및 장치
WO2021098256A1 (zh) 一种预测方法及装置、电子设备和存储介质
EP3767488A1 (en) Method and device for processing untagged data, and storage medium
CN105824955B (zh) 短信聚类方法及装置
WO2020192113A1 (zh) 图像处理方法及装置、电子设备和存储介质
JP2016517110A5 (ko)
CN103902654A (zh) 聚类方法、装置及终端设备
WO2021031311A1 (zh) 超网络构建方法、使用方法、装置及介质
CN110674932A (zh) 一种二阶段卷积神经网络目标检测网络训练方法及装置
CN107515853B (zh) 一种细胞词库推送方法及装置
US20150248472A1 (en) Clustering method, apparatus, and terminal apparatus
CN110471538B (zh) 一种输入预测方法及装置
US20150262033A1 (en) Method and terminal device for clustering
CN113254707B (zh) 模型确定、关联媒体资源确定方法和装置
WO2023220987A1 (zh) 目标点确定方法、装置、电子设备及存储介质
CN114003808A (zh) 信息推荐方法、装置和设备
CN115827624A (zh) 检索数据的处理方法、数据检索方法、装置及电子设备

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