KR101953479B1 - 거리의 상대적 비율을 적용한 그룹 탐색 최적화 데이터 클러스터링 방법 및 시스템 - Google Patents

거리의 상대적 비율을 적용한 그룹 탐색 최적화 데이터 클러스터링 방법 및 시스템 Download PDF

Info

Publication number
KR101953479B1
KR101953479B1 KR1020170148422A KR20170148422A KR101953479B1 KR 101953479 B1 KR101953479 B1 KR 101953479B1 KR 1020170148422 A KR1020170148422 A KR 1020170148422A KR 20170148422 A KR20170148422 A KR 20170148422A KR 101953479 B1 KR101953479 B1 KR 101953479B1
Authority
KR
South Korea
Prior art keywords
data
solution
clustering
clusters
value
Prior art date
Application number
KR1020170148422A
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 KR1020170148422A priority Critical patent/KR101953479B1/ko
Application granted granted Critical
Publication of KR101953479B1 publication Critical patent/KR101953479B1/ko

Links

Images

Classifications

    • 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/24Querying
    • G06F16/245Query processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 거리의 상대적 비율을 적용하여 최적의 데이터 클러스터링 해를 탐색하는 그룹 탐색 최적화 데이터 클러스터링 시스템 및 그 방법에 관한 것으로서, 데이터에 대한 사전 정보가 없을 때에도 제한된 시간 내에서 클러스터 개수를 적응적으로 결정할 수 있고, 클러스터 내에서의 거리뿐만 아니라 거리의 상대적 비율을 고려함으로써, 데이터 클러스터링 문제에서 최적의 해를 효율적으로 탐색하는 데이터 클러스터링 방법 및 시스템을 제안한다.

Description

거리의 상대적 비율을 적용한 그룹 탐색 최적화 데이터 클러스터링 방법 및 시스템{GROUP SEARCH OPTIMIZATION DATA CLUSTERING METHOD AND SYSTEM USING THE RELATIVE RATIO OF DISTANCE}
본 발명은 그룹 탐색 최적화 데이터 클러스터링 시스템 및 그 방법에 관한 것으로서, 보다 상세하게는 거리의 상대적 비율을 적용하여 최적의 데이터 클러스터링 해를 탐색하는 기술에 관한 것이다.
최근 널리 사용되고 있는 사물인터넷(Internet of Things; IoT) 기기는 사물의 상태를 감지하는 센싱 기능을 포함함으로써, 수많은 데이터들을 생성하며 수집하고 있다. 이에, 수집된 빅 데이터를 분석하여 가치 있는 정보를 추출하여 비즈니스 모델을 생성하는 등과 같은 수익 창출의 필요성이 대두되고 있다.
이와 같은 필요성에 따라, 가치 있는 정보 추출을 위한 데이터 분석 분야 중 데이터 클러스터링 방법 개발이 꾸준히 진행되어 왔다. 데이터 클러스터링 기법 중 가장 널리 사용되어온 K­means는 효과적인 방법이지만 다음과 같은 문제점이 존재한다. 첫째, K­means는 초기값에 민감하고 지역 해에 빠질 가능성이 높다. 둘째, 클러스터 개수를 결정하기 위하여 사전 데이터 정보가 요구되며, 클러스터 개수가 고정된 상태에서만 적용 가능하다. 셋째, K­means는 데이터 클러스터링 문제의 해를 평가하는 평가 기준으로 클러스터 내에서의 거리만을 고려하기 때문에, 클러스터간의 거리를 전혀 고려하지 못한다.
이에, 초기값에 민감하고 지역 해에 빠질 가능성이 높은 문제점을 해결하기 위해 진화 알고리즘과 같은 휴리스틱 알고리즘을 이용하거나, K­means와 파티클 군집 최적화를 혼합하여 이용하거나, 인공 벌 군집 기법을 이용하거나, 그룹 탐색 최적화 기법을 이용하는 연구가 진행되어 왔다.
나아가, 데이터 클러스터링하는 경우 가장 중요한 의사 결정인 클러스터 개수를 결정하기 위한 평가 기준이 필요한데, 실루엣(Silhouette)은 각 클러스터 내에서 데이터들이 어떻게 군포되어 있는지, 또한 클러스터 사이가 얼마나 뚜렷하게 구분되는지 평가하는 기준이기 때문에 적절한 클러스터 개수를 결정할 수 있는 평가기준이다. 이에, 실루엣 평가기준을 적용하고, 유전자 알고리즘(Genetic Algorithm, GA)을 사용하여 적절한 클러스터 개수를 결정하여 해를 탐색하는 그룹 탐색 최적화(Group Search Optimization, GSO) 방법이 제안되었다.
다만, 상기 실루엣은 적절한 클러스터 개수와 해를 최적화 방법으로 탐색할 수 있는 유용한 평가기준이나, 모든 데이터의 거리 계산을 바탕으로 산출되기 때문에 데이터의 크기가 커질 경우, 계산시간의 부담이 매우 높아지기 때문에 빅데이터를 분석할 때 시간을 단축할 수 있는 기술이 요구된다.
본 발명의 목적은 데이터에 대한 사전 정보가 없을 때, 실루엣을 적용하여 적절한 클러스터 개수와 클러스터링 해를 제공할 수 있는 간단하고 빠른 방법을 제안하고자 한다.
또한, 본 발명의 목적은 복수의 클러스터들 각각 내에서 p차원 특징을 나타내는 데이터들 사이의 거리, 및 거리의 상대적 비율을 산출하여 실루엣 값이 적합한 해를 획득하고, 휴리스틱 알고리즘에 초기해로 적용하여 최적의 해를 효율적으로 탐색함으로써, 실루엣 평가기준의 계산 부담을 최소화할 수 있는 시스템 및 그 방법을 제공하고자 한다.
본 발명의 실시예에 따른 거리의 상대적 비율을 적용한 그룹 탐색 최적화 데이터 클러스터링 방법에 있어서, 복수의 데이터들 각각이 복수의 클러스터들로 클러스터링되는 해와 관련하여, 상기 복수의 클러스터들 각각 내에서 p차원 특징을 나타내는 데이터들 사이의 거리, 및 상기 거리의 상대적 비율을 산출하는 단계, 상기 복수의 데이터들을 산출되는 데이터 중심에 클러스터링하며, 클러스터링된 초기 해에 대한 실루엣 값을 산출하여 클러스터링 해를 획득하는 단계, 상기 클러스터링 해를 그룹 탐색 최적화 기법에 따라 업데이트하여 최적의 해를 획득하는 단계 및 상기 최적의 해를 참조하여 상기 복수의 데이터들을 상기 복수의 클러스터들로 최종 클러스터링하는 단계를 포함한다.
상기 데이터들 사이의 거리 및 상기 거리의 상대적 비율을 산출하는 단계는 상기 복수의 데이터들 중 상기 p차원 특징을 나타내는 제i 데이터에서 제j 데이터까지의 거리(dij)를 산출하여 저장하는 단계 및 상기 복수의 데이터들에서 상기 제j 데이터까지 거리의 상대적 비율을 산출하는 단계를 포함할 수 있다.
상기 p차원 특징은 상기 제i 데이터의 특징 데이터인 상기 제j 데이터를 나타낼 수 있다.
상기 클러스터링 해를 획득하는 단계는 상기 상대적 비율의 산출 값 중 최소값의 순차대로 임의의 클러스터 수에 따른 상기 데이터 중심을 획득하는 단계, 상기 획득된 데이터 중심을 기반으로 상기 복수의 데이터들을 클러스터링하는 단계, 클러스터링된 복수의 상기 초기 해에 대한 상기 실루엣 값을 산출하는 단계 및 상기 산출된 실루엣 값에 기반하여 클러스터 개수 및 상기 클러스터링 해를 획득하는 단계를 포함할 수 있다.
상기 데이터 중심을 획득하는 단계는 상기 산출 값을 최소값부터 최대값까지 순차적으로 배열한 후, 상기 클러스터 개수만큼 상기 최소값을 추출하여 상기 데이터 중심을 획득할 수 있다.
상기 복수의 데이터들을 클러스터링하는 단계는 상기 복수의 데이터들 중에서, 상기 데이터 중심에 근접한 데이터들을 클러스터링하여 복수의 클러스터를 형성할 수 있다.
상기 클러스터 개수 및 상기 클러스터링 해를 획득하는 단계는 상기 산출된 실루엣 값 중 정수 1에 가장 근접한 값을 추출하여 클러스터 개수 및 상기 클러스터링 해를 획득할 수 있다.
상기 클러스터링 해를 획득하는 단계는 상기 데이터들 사이의 거리 및 상기 거리의 상대적 비율을 산출하는 단계에서 산출되어 저장 및 유지되는 상대적 비율 값을 재사용하여 상기 클러스터링 해를 획득할 수 있다.
상기 최적의 해를 획득하는 단계는 상기 클러스터링 해 중 상기 실루엣 값을 최대화하는 프로듀서(producer) 해를 선택하는 단계, 상기 클러스터링 해 중 상기 프로듀서 해를 제외한 나머지 해들 중 미리 설정된 확률에 따라 스크라운저(scrounger) 해를 획득하는 단계, 상기 클러스터링 해 중 상기 프로듀서 행 및 상기 스크라운저 해를 제외한 나머지 해들을 레인저(ranger) 해로 설정하는 단계, 적어도 하나의 세대 동안에, 상기 실루엣 값을 이용하여 상기 프로듀서 해, 상기 스크라운저 해 및 상기 레이저 해를 업데이트하는 단계 및 상기 업데이트된 프로듀서 해, 상기 업데이트된 스크라운저 해 및 상기 업데이트된 레이저 해 중 상기 실루엣 값을 최대화하는 상기 최적의 해를 결정하는 단계를 포함할 수 있다.
상기 최적의 해를 획득하는 단계는 상기 업데이트된 프로듀서 해, 상기 업데이트된 스크라운저 해 및 상기 업데이트된 레이저 해 중 상기 복수의 클러스터들간 데이터들 사이의 거리 및 상기 복수의 클러스터들 각각 내에서 데이터들 사이의 거리 차가 가장 큰 상기 최적의 해를 결정할 수 있다.
본 발명의 실시예에 따른 거리의 상대적 비율을 적용한 그룹 탐색 최적화 데이터 클러스터링 방법을 실행시키기 위해 컴퓨터로 읽을 수 있는 매체에 저장된 컴퓨터 프로그램에 있어서, 상기 그룹 탐색 최적화 데이터 클러스터링 방법은 복수의 데이터들 각각이 복수의 클러스터들로 클러스터링되는 해와 관련하여, 상기 복수의 클러스터들 각각 내에서 p차원 특징을 나타내는 데이터들 사이의 거리, 및 상기 거리의 상대적 비율을 산출하는 단계, 상기 복수의 데이터들을 산출되는 데이터 중심에 클러스터링하며, 클러스터링된 초기 해에 대한 실루엣 값을 산출하여 클러스터링 해를 획득하는 단계, 상기 클러스터링 해를 그룹 탐색 최적화 기법에 따라 업데이트하여 최적의 해를 획득하는 단계 및 상기 최적의 해를 참조하여 상기 복수의 데이터들을 상기 복수의 클러스터들로 최종 클러스터링하는 단계를 포함한다.
본 발명의 실시예에 따른 거리의 상대적 비율을 적용한 그룹 탐색 최적화 데이터 클러스터링 시스템에 있어서, 복수의 데이터들 각각이 복수의 클러스터들로 클러스터링되는 해와 관련하여, 상기 복수의 클러스터들 각각 내에서 p차원 특징을 나타내는 데이터들 사이의 거리, 및 상기 거리의 상대적 비율을 산출하는 산출부, 상기 복수의 데이터들을 산출되는 데이터 중심에 클러스터링하며, 클러스터링된 초기 해에 대한 실루엣 값을 산출하여 클러스터링 해를 획득하는 클러스터링 해 획득부, 상기 클러스터링 해를 그룹 탐색 최적화 기법에 따라 업데이트하여 최적의 해를 획득하는 최적 해 획득부 및 상기 최적의 해를 참조하여 상기 복수의 데이터들을 상기 복수의 클러스터들로 최종 클러스터링하는 최종 클러스터링부를 포함한다.
상기 산출부는 상기 복수의 데이터들 중 상기 p차원 특징을 나타내는 제i 데이터에서 제j 데이터까지의 거리(dij)를 산출하여 저장하는 거리 산출부 및 상기 복수의 데이터들에서 상기 제j 데이터까지 거리의 상대적 비율을 산출하는 상대적 비율 산출부를 포함할 수 있다.
상기 클러스터링 해 획득부는 상기 상대적 비율의 산출 값 중 최소값의 순차대로 임의의 클러스터 수에 따른 상기 데이터 중심을 획득하는 데이터 중심 획득부, 상기 획득된 데이터 중심을 기반으로 상기 복수의 데이터들을 클러스터링하는 데이터 클러스터링부, 클러스터링된 복수의 상기 초기 해에 대한 상기 실루엣 값을 산출하는 실루엣 값 산출부 및 상기 산출된 실루엣 값에 기반하여 클러스터 개수 및 상기 클러스터링 해를 획득하는 결과 획득부를 포함할 수 있다.
상기 최적 해 획득부는 상기 클러스터링 해 중 상기 실루엣 값을 최대화하는 프로듀서(producer) 해를 선택하고, 상기 클러스터링 해 중 상기 프로듀서 해를 제외한 나머지 해들 중 미리 설정된 확률에 따라 스크라운저(scrounger) 해를 획득하며, 상기 클러스터링 해 중 상기 프로듀서 행 및 상기 스크라운저 해를 제외한 나머지 해들을 레인저(ranger) 해로 설정하는 그룹 탐색 최적화 해 설정부, 적어도 하나의 세대 동안에, 상기 실루엣 값을 이용하여 상기 프로듀서 해, 상기 스크라운저 해 및 상기 레이저 해를 업데이트하는 해 업데이트부 및 상기 업데이트된 프로듀서 해, 상기 업데이트된 스크라운저 해 및 상기 업데이트된 레이저 해 중 상기 실루엣 값을 최대화하는 상기 최적의 해를 결정하는 최적 해 결정부를 포함할 수 있다.
본 발명의 실시예에 따르면, 데이터에 대한 사전 정보가 없을 때에도 제한된 시간 내에서 클러스터 개수를 적응적으로 결정할 수 있고, 클러스터 내에서의 거리뿐만 아니라 거리의 상대적 비율을 고려함으로써, 데이터 클러스터링 문제에서 최적의 해를 효율적으로 탐색하는 데이터 클러스터링 방법 및 시스템을 제안할 수 있다.
도 1은 복수의 데이터들이 복수의 클러스터들로 클러스터링되는 데이터 클러스터링 문제 및 실루엣 목적 함수를 설명하기 위해 도시한 것이다.
도 2는 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 시스템의 세부 구성에 대한 블록도를 도시한 것이다.
도 3 및 도 4는 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 방법의 흐름도를 도시한 것이다.
도 5는 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 방법에서 최적의 클러스터링 해를 획득하는 예를 설명하기 위해 도시한 것이다.
도 6은 본 발명의 실시예에 따른 클러스터 수에 따른 실루엣 값의 실험 데이터를 도시한 것이다.
도 7a 내지 도 7d는 본 발명의 실시예에 따른 그룹 탐색 최적화를 적용한 클러스터 수에 따른 실루엣 값의 실험 결과 그래프를 도시한 것이다.
도 8은 기존 방법과 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 방법을 적용한 비교 결과를 도시한 것이다.
이하, 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 또한, 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
또한, 본 명세서에서 사용되는 용어(terminology)들은 본 발명의 바람직한 실시예를 적절히 표현하기 위해 사용된 용어들로서, 이는 시청자, 운용자의 의도 또는 본 발명이 속하는 분야의 관례 등에 따라 달라질 수 있다. 따라서, 본 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 복수의 데이터들이 복수의 클러스터들로 클러스터링되는 데이터 클러스터링 문제 및 실루엣 목적 함수를 설명하기 위해 도시한 것이다.
도 1을 참조하면, 데이터 클러스터링(Clustering)은 복수의 데이터들 각각이 복수의 클러스터(Cluster)들로 클러스터링되는 무제의 해로서 수리적으로 정립화될 수 있다.
예를 들어, 복수의 데이터들이
Figure 112017111062340-pat00001
과 같이 n개의 데이터 집합으로 구성되고(각 데이터
Figure 112017111062340-pat00002
는 p차원 특징(feature)로 구성되며, 제i 데이터의 특징데이터 j의 값은
Figure 112017111062340-pat00003
로 표현됨), 복수의 데이터들이 K개의 복수의 클러스터들(복수의 클러스터들 중 어느 하나의 클러스터 k는
Figure 112017111062340-pat00004
의 값을 가짐)로 클러스터링되는 경우, 복수의 데이터들이 복수의 클러스터들로 클러스터링되는 데이터 클러스터링 문제의 해는 하기의 [수식 1]과 같이 제1 논리값 또는 제2 논리값 중 어느 하나로 결정되는 이진 변수로 표현되는 매트릭스
Figure 112017111062340-pat00005
로 정의될 수 있다.
[수식 1]
Figure 112017111062340-pat00006
[수식 1]에서, i번째 데이터 xi가 k번째 클러스터에 클러스터링되는 경우에 wik는 1의 이진 변수로 표시되며, 그렇지 않는 경우에는 0의 이진 변수로 표시된다.
또한, 데이터 클러스터링 문제의 해는, 복수의 데이터들 각각이 복수의 클러스터들 중 하나의 클러스터에 클러스터링되는 조건 및 복수의 클러스터들 각각에 복수의 데이터들 중 적어도 하나 이상의 데이터가 클러스터링되는 조건을 만족해야 한다. 즉, 데이터 클러스터링 문제는 i번째 데이터 xi가 하나의 클러스터에 클러스터링되는 것과 k번째 클러스터에 적어도 하나 이상의 데이터가 클러스터링되는 것을 전제로 한다.
이에, [수식 1]을 기반으로 i번째 데이터 xi가 k번째 클러스터에 클러스터링되는 여부는 하기의 [수식 2]와 같이 표현된다.
[수식 2]
Figure 112017111062340-pat00007
또한, [수식 2]를 기반으로 k번째 클러스터에 적어도 하나 이상의 i번째 데이터 xi가 포함되는 여부는 [수식 3]과 같이 표현된다.
[수식 3]
Figure 112017111062340-pat00008
한편, 데이터 클러스터링 문제에서 실루엣 평가 함수는, 복수의 클러스터들 각각 내에서 데이터들(동일한 클러스터로 클러스터링된 데이터들)이 얼마나 조밀하게 모여 있는지, 그리고 복수의 클러스터들 사이가 얼마나 뚜렷하게 구분되는지를 평가하는 평가 기준으로 사용된다. 따라서, 실루엣 평가 함수는 복수의 클러스터들 각각 내에서 데이터들 사이의 거리와 복수의 클러스터들간 데이터들 사이의 거리로 표현될 수 있다.
보다 상세하게는, 클러스터 A에 클러스터링되어 있는 데이터 xi와 클러스터 A에 클러스터링되어 있는 다른 데이터들 사이의 평균 거리
Figure 112017111062340-pat00009
는, 클러스터 A 내에서 데이터들이 조밀하게 모여있는 정도를 나타낸다. 예를 들어,
Figure 112017111062340-pat00010
가 작을수록 클러스터 A 내에서 데이터들이 조밀하게 모여있음을 의미한다.
또한, 클러스터 A와 다른 클러스터 B 및 C가 존재하고, 클러스터 A에 클러스터링되어 있는 i번째 데이터 xi에서 다른 클러스터 B 및 C의 각 데이터들과의 평균 거리를 각각
Figure 112017111062340-pat00011
Figure 112017111062340-pat00012
라 할 때,
Figure 112017111062340-pat00013
는 하기의 [수식 4]와 같이, 클러스터 A에 클러스터링되어 있는 i번째 데이터 xi에서 다른 클러스터 B 및 C의 각 데이터들 사이의 평균 거리 중 가장 작은 값을 의미한다. 예를 들어,
Figure 112017111062340-pat00014
Figure 112017111062340-pat00015
보다 작다면,
Figure 112017111062340-pat00016
가 된다.
[수식 4]
Figure 112017111062340-pat00017
[수식 4]에서,
Figure 112017111062340-pat00018
의 값이 클수록 클러스터들간의 구별이 뚜렷함을 의미한다.
따라서, [수식 5]와 같이 표현되는 실루엣 값
Figure 112017111062340-pat00019
는 i번째 데이터 xi가 클러스터링되어 있는 클러스터 내에서 데이터들 사이의 거리 및 i번째 데이터 xi와 다른 클러스터(i번째 데이터 xi가 클러스터링되어 있는 클러스터와 다른 클러스터)에 클러스터링된 데이터들 사이의 거리를 나타낸다.
[수식 5]
Figure 112017111062340-pat00020
즉, [수식 5]에서, 실루엣 값
Figure 112017111062340-pat00021
이 클수록 i번째 데이터 xi가 클러스터링되어 있는 클러스터 내에서 데이터들은 조밀하게 모여 있고, i번째 데이터 xi가 클러스터링되어 있는 클러스터와 다른 클러스터간 데이터들 사이가 뚜렷하게 구별됨을 의미한다.
이에, 복수의 데이터들 모두에 대해 실루엣 값
Figure 112017111062340-pat00022
을 구하여 합한 값을 복수의 데이터들의 개수 n으로 나누면, 평균 실루엣 값
Figure 112017111062340-pat00023
이 하기의 [수식 6]과 같이 산출된다.
[수식 6]
Figure 112017111062340-pat00024
[수식 6]에서, 평균 실루엣 값
Figure 112017111062340-pat00025
이 1에 가까운 경우는 데이터 클러스터링이 매우 잘된 것을 의미하고, ­1에 가까운 경우는 데이터 클러스터링이 잘 되지 않음을 의미한다. 평균 실루엣 값
Figure 112017111062340-pat00026
이 0에 가까운 경우는 데이터 클러스터링에서 데이터 클러스터 소속이 불분명한 경우를 의미한다.
데이터 클러스터 과정에서 평균 실루엣 값
Figure 112017111062340-pat00027
이 산출되는 예시는 다음과 같다. 도 1에 도시된 바와 같이, 10개의 데이터들
Figure 112017111062340-pat00028
각각이 특징 a1과 a2로 구성되고, K=3으로 3개의 클러스터들로 10개의 데이터들이 클러스터링되어, 클러스터 1에 데이터 x1(1,1), x2(1,2), x3(2,1)가 클러스터링되고, 클러스터 2에 데이터 x4(5,6), x5(5,7), x6(6,6), x7(6,7)가 클러스터링되며, 클러스터 3에 데이터 x8(9,2), x9(10,1), x10(10,2)가 클러스터링된 경우, 클러스터 1에 속한 x1과 클러스터 1의 다른 데이터들과의 평균 거리 a(x1)이 1.207로 산출되고, 클러스터 1에 속한 데이터 x1에서 다른 클러스터 2의 각 데이터들과의 평균거리 d(x1,2)가 7.1238로 산출되며, 클러스터 1에 속한 데이터 x1에서 다른 클러스터 3의 각 데이터들과의 평균 거리 d(x1,3)가 8.7058로 산출될 수 있다.
이에, [수식 4]에 따라,
Figure 112017111062340-pat00029
이 7.1238로 산출되고, [수식 5]에 따라,
Figure 112017111062340-pat00030
이 0.8596으로 산출된다. 이와 같이,
Figure 112017111062340-pat00031
내지
Figure 112017111062340-pat00032
도 동일한 방식으로 산출되어, 최종적으로 [수기 6]에 의해 평균 실루엣 값
Figure 112017111062340-pat00033
이 0.8214로 산출될 수 있다.
이러한 평균 실루엣 값
Figure 112017111062340-pat00034
은 실루엣 목적 함수로서, 실시예에 따른 데이터 클러스터링 문제에서 평가 기준으로 활용될 수 있다.
구체적으로, 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 방법 및 시스템은, 복수의 데이터들 사이의 거리, 거리의 상대적 비율을 산출하고, 산출되는 데이터 중심에 복수의 데이터들을 클러스터링하며, 클러스터링 개수 및 클러스터링 해를 획득하는 과정에서 [수식 4] 내지 [수식 6]을 통해
Figure 112017111062340-pat00035
에 대한 실루엣 값
Figure 112017111062340-pat00036
을 산출할 수 있으며, 그룹 탐색 최적화(Group Search Optimization; GSO) 기법을 적용하는 과정에서 평가 기준으로 평균 실루엣 값
Figure 112017111062340-pat00037
을 활용할 수 있다. 이에 대한 상세한 설명은 도 2 내지 도 8을 참조하여 기재하기로 한다.
도 2는 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 시스템의 세부 구성에 대한 블록도를 도시한 것이고, 도 3 및 도 4는 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 방법의 흐름도를 도시한 것이다.
본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 시스템(200)은 거리의 상대적 비율을 적용하여 복수의 데이터들을 복수의 클러스터들로 최종 클러스터링한다.
이를 위해, 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 시스템(200)은 산출부(210), 클러스터링 해 획득부(220), 최적 해 획득부(230) 및 최종 클러스터링부(240)를 포함한다.
이 때, 산출부(210), 클러스터링 해 획득부(220), 최적 해 획득부(230) 및 최종 클러스터링부(240)는 도 3 및 도 4의 단계들(310~340)을 수행하기 위해 구성될 수 있다.
단계 310에서, 산출부(210)는 복수의 데이터들 각각이 복수의 클러스터들로 클러스터링되는 해와 관련하여, 복수의 클러스터들 각각 내에서 p차원 특징을 나타내는 데이터들 사이의 거리, 거리의 상대적 비율을 산출한다.
예를 들면, 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 시스템(200)은 n개의 데이터를 K개의 그룹으로 클러스터링 해를 평가하는 평가기준인 실루엣을 하기의 [수식 7] 및 [수식 8]과, 전술한 [수식 4] 내지 [수식 6]을 통해 수리적으로 정립화할 수 있다. 이 때, 각각의 데이터는
Figure 112017111062340-pat00038
과 같이 n개의 데이터 집합으로 구성되고, 각 데이터
Figure 112017111062340-pat00039
는 p차원 특징(feature)로 구성되며,
Figure 112017111062340-pat00040
는 제i 데이터의 특징데이터 j의 값을 나타낸다.
본 발명의 실시예에 따른 산출부(210)는 간단하고 빠른, 최적의 클러스터링 해 탐색 방법을 제공하기 위해, 하기의 [수식 7]을 통해 p개의 특징을 가진 제i 데이터에서 제j 데이터까지의 거리
Figure 112017111062340-pat00041
를 산출한다.
[수식 7]
Figure 112017111062340-pat00042
실시예에 따라서, 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 시스템(200)은 [수식 7]을 통해 산출된 거리
Figure 112017111062340-pat00043
를 저장하여 유지할 수 있으며, 필요에 따라 재사용할 수도 있다.
이후, 산출부(210)는 [수식 7]을 통해 산출된
Figure 112017111062340-pat00044
를 이용하여 하기의 [수식 8]을 통해 모든 데이터에서 제j 데이터까지 거리의 상대적 비율
Figure 112017111062340-pat00045
을 산출한다.
[수식 8]
Figure 112017111062340-pat00046
이 때, 거리의 상대적 비율
Figure 112017111062340-pat00047
이 작을수록 해당 데이터 j가 클러스터링할 때 중심 데이터 역할을 하는 것이 유리하고, 실루엣 값
Figure 112017111062340-pat00048
이 적합한 해 탐색에 효과적으로 적용될 수 있다.
단계 320에서, 클러스터링 해 획득부(220)는 복수의 데이터들을 데이터 중심에 클러스터링하며, 클러스터링된 초기 해에 대한 실루엣 값을 산출하여 클러스터링 해를 획득한다.
예를 들면, 단계 320에서, 클러스터링 해 획득부(220)는 상대적 비율 값(
Figure 112017111062340-pat00049
) 중 최소값부터 순차대로 임의의 클러스터 수 K개의 데이터 중심을 획득하는 단계(미도시), 획득된 데이터 중심을 기반으로 복수의 데이터들(나머지 데이터들)을 가장 근접한 데이터 중심에 포함시켜 클러스터링하는 단계(미도시)를 포함할 수 있다. 이후, 클러스터링 해 획득부(220)는 클러스터링된 복수의 초기 해에 대한 실루엣 값
Figure 112017111062340-pat00050
을 산출하는 단계(미도시) 및 산출된 실루엣 값에 기반하여 클러스터 개수 및 클러스터링 해를 획득하는 단계(미도시)를 더 포함할 수 있다.
보다 상세하게는, 클러스터링 해 획득부(220)는 상기 데이터 중심을 획득하는 단계에서, 복수의 상대적 비율 값(
Figure 112017111062340-pat00051
)을 최소값부터 최대값까지 순차적으로 배열한 후, 클러스터 수 K만큼 최소값을 추출하여 데이터 중심을 획득할 수 있다. 이후, 상기 클러스터링하는 단계에서, 복수의 데이터들 중 데이터 중심을 제외한 나머지 데이터들을 근접한 데이터 중심에 포함시켜 클러스터링할 수 있다.
또한, 클러스터링 해 획득부(220)는 상기 클러스터 개수 및 클러스터링 해를 획득하는 단계에서, 산출된 실루엣 값
Figure 112017111062340-pat00052
중 정수 1에 가장 근접한 K를 적합한 클러스터 수로 결정하고, 결정된 클러스터 수에 따른 클러스터 개수 및 클러스터링 해를 획득할 수 있다. 이 때, 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 시스템(200)은 클러스터링 해를 평가할 때, 전술한 [수식 4] 내지 [수식 6]을 사용하여 데이터
Figure 112017111062340-pat00053
에 대한 실루엣 값
Figure 112017111062340-pat00054
을 산출할 수 있다.
단계 330에서, 최적 해 획득부(230)는 클러스터링 해를 그룹 탐색 최적화 기법에 따라 업데이트하여 최적의 해를 획득한다.
도 4를 참조하면, 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 시스템(200)은, 최적의 해를 획득하는 과정을 다음과 같이 세부 과정을 통하여 수행할 수 있다.
우선, 그룹 탐색 최적화 데이터 클러스터링 시스템(200)의 그룹 탐색 최적화 해 설정부(미도시)는, 클러스터링 해 중 실루엣 값을 최대화하는 프로듀서(producer) 해를 선택할 수 있다(단계 331).
이어서, 그룹 탐색 최적화 설정부(미도시)는 클러스터링 해 중 프로듀서 해를 제외한 나머지 해들 중 미리 설정된 확률에 따라 스크라운저(scrounger) 해를 획득할 수 있다(단계 332).
그 다음, 그룹 탐색 최적화 설정부(미도시)는 클러스터링 해 중 프로듀서 행 및 스크라운저 해를 제외한 나머지 해들을 레인저(ranger) 해로 설정할 수 있다(단계 333).
그 다음, 그룹 탐색 최적화 데이터 클러스터링 시스템(200)의 해 업데이트부(미도시)는 적어도 하나의 세대 동안에, 실루엣 값을 이용하여 프로듀서 해, 스크라운저 해 및 레이저 해를 업데이트할 수 있다(단계 334).
예를 들어, 단계 334에서, 그룹 탐색 최적화 데이터 클러스터링 시스템(200)은, 프로듀서 해 상에서 복수의 데이터들 각각에 대한 난수를 생성하고, 복수의 데이터들 각각에 대한 난수를 미리 설정된 기준 확률과 비교하며, 비교 결과에 기초하여 복수의 데이터들 중 적어도 일부 데이터가 클러스터링되는 클러스터를 임의로 변경함으로써, 프로듀서 해의 이웃 해를 생성한 뒤, 프로듀서 해 및 이웃 해 중 실루엣 목적 함수를 최대화하는 해로 프로듀서 해를 업데이트할 수 있다.
다른 예를 들면, 단계 334에서, 그룹 탐색 최적화 데이터 클러스터링 시스템(200)은, 스크라운저 해들 각각에서 복수의 데이터들 각각에 대한 난수를 생성하고, 복수의 데이터들 각각에 대한 난수를 미리 설정된 기준 확률과 비교하며, 비교 결과에 기초하여 복수의 데이터들 중 적어도 일부 데이터가 클러스터링되는 클러스터를 프로듀서 해와 동일하게 변경함으로써, 스크라운저 해들의 이웃 해들을 생성한 뒤, 스크라운저 해들 및 이웃 해들 중 실루엣 목적 함수를 최대화하는 해들로 스크라운저 해들을 업데이트할 수 있다.
또 다른 예를 들면, 단계 334에서, 그룹 탐색 최적화 데이터 클러스터링 시스템(200)은, 레이저 해들 각각에서 복수의 데이터들 각각에 대한 난수를 생성하고, 복수의 데이터들 각각에 대한 난수를 미리 설정된 기준 확률과 비교하며, 비교 결과에 기초하여 복수의 데이터들 중 적어도 일부 데이터가 클러스터링되는 클러스터를 임의로 변경함으로써, 레인저 해들의 전역 해들을 생성한 뒤, 레이저 해들 및 전역 해들 중 실루엣 목적 함수를 최대화하는 해들로 레인저 해들을 업데이트할 수 있다.
이와 같은 프로듀서 해, 스크라운저 해들 및 레이저 해들의 업데이트 과정은, 적어도 하나의 세대의 반복 횟수와 미리 설정된 반복 횟수를 비교하거나, 획득된 최적의 해와 미리 설정된 기준 해를 비교하거나, 최적의 해를 획득하는데 소요된 시간과 미리 설정된 시간을 비교함으로써, 중지될 수 있다.
또한, 단계 34에서 업데이트된 이번 세대의 프로듀서 해, 스크라운저 해들, 헤인저 해들은 다음 세대 동안에 초기 프로듀서 해, 초기 스크라운저 해들, 초기 레인저 해들로 사용될 수도 있다. 그러나, 이에 제한되거나 한정되지 않고, 단계 334에서 업데이트된 이번 세대의 프로듀서 해, 스크라운저 해, 레이저 해는 다음 세대 동안의 단계 331 내지 단계 333을 통하여 선택, 획득, 설정된 프로듀서 해, 스크라운저 해, 레인저 해 각각과 실루엣 평가 함수를 평가 기준으로 비교되는 것으로 사용될 수도 있다.
그 후, 그룹 탐색 최적화 데이터 클러스터링 시스템(200)의 최적 해 결정부(미도시)는 업데이트된 프로듀서 해, 업데이트된 스크라운저 해 및 업데이트된 레이저 해 중 실루엣 값을 최대화하는 최적의 해를 결정할 수 있다(단계 335).
단계 335에서, 최적 해 결정부(미도시)는 업데이트된 프로듀서 해, 업데이트된 스크라운저 해 및 업데이트된 레이저 해 중 복수의 클러스터들간 데이터들 사이의 거리 및 복수의 클러스터들 각각 내에서 데이터들 사이의 거리의 차가 가장 큰 최적의 해를 결정할 수 있다.
즉, 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 방법은 [수식 8]로부터 획득되는 거리의 상대적 비율 값
Figure 112017111062340-pat00055
을 이용하여 그룹 탐색 최적화(Group Search Optimization, GSO)를 수행하며, 이에 따라서 랜덤으로 생성한 해 보다 높은 실루엣 값을 그룹 탐색 최적화에 적용함으로써, 프로듀서가 될 확률이 높고, 프로듀싱할 때 현재의 프로듀서보다 더 좋은 적합한 해를 생성할 수 있다. 또한, 나머지 스크라운저 해들은 거리의 상대적 비율 값
Figure 112017111062340-pat00056
을 고려함으로써, 현재의 프로듀서를 모방하면서 새로운 해들을 생성하여 더 좋은 해들을 탐색하게 되는 스크라운징(scrounging)을 진행하고, 나머지 단계들도 마무리될 수 있다. 이에, 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 방법은 거리의 상대적 비율 값
Figure 112017111062340-pat00057
이 적용된 해를 포함하는 초기 해들을 그룹 탐색 최적화에 적용함으로써, 최적의 해를 보다 효율적으로 탐색하여 계산시간을 최소화할 수 있다.
다시 도 3을 참조하면, 단계 340에서, 최종 클러스터링부(240)는 최적의 해를 참조하여 복수의 데이터들을 복수의 클러스터들로 최종 클러스터링한다.
도 5는 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 방법에서 최적의 클러스터링 해를 획득하는 예를 설명하기 위해 도시한 것이다.
본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 방법은 데이터에 대한 사전 정보가 없는 경우, 실루엣을 적용하여 적합한 클러스터 개수 및 클러스터링 해를 제시하고자 한다.
예를 들면, 그룹 탐색 최적화 데이터 클러스터링 방법은 클러스터 수 K가 2인 경우, 거리의 상대적 비율
Figure 112017111062340-pat00058
중 최소값 2개를 선택하여 해당 데이터 2개를 데이터의 중심으로 설정하고, 나머지 데이터들을 해당 데이터 2개의 데이터 중 가장 근접한 데이터 중심의 클러스터로 포함시켜 클러스터링 해를 구성하며, 클러스터링 해에 대한 실루엣 값
Figure 112017111062340-pat00059
을 산출할 수 있다. 추가적으로, 클러스터 수가 3 내지 K인 경우로 수행하여 해당 실루엣 값을 산출하고, 복수의 실루엣 값 중 1에 가장 근접한 실루엣 값에 대한 클러스터 수 K를 적합한 클러스터 개수로 결정할 수 있다.
이와 같이, 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 방법은 적합한 클러스터 개수 및 클러스터링 해를 결정할 수 있는 간단하고 빠른 과정을 제시하며, 이하에서는 도 5를 참조하여 10개의 데이터 예제를 통해 보다 상세히 설명하고자 한다.
도 5를 참조하면, 10개의 데이터
Figure 112017111062340-pat00060
와, 각 데이터의 특징
Figure 112017111062340-pat00061
Figure 112017111062340-pat00062
를 나타낸다. 이 때, 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 방법은 전술한 [수식 7]을 사용하여 모든 데이터간의 거리를 산출하고, [수식 8]을 사용하여 10개의 데이터에 대한 거리의 상대적 비율 값을 산출한다.
실시예에 따라서, 클러스터 수 K가 2인 경우, 거리의 상대적 비율 값
Figure 112017111062340-pat00063
이 가장 작은 x7과 x5가 데이터 중심으로 선택되고, 나머지 데이터 x1, x2, x3, x4, x6, x8, x9, x10 중 x1, x2, x3, x4는 데이터 중심 x5에 근접하여 한 개의 클러스터가 형성되고, 다른 나머지 데이터 x6, x8, x9, x10은 데이터 중심 x7에 근접하여 다른 한 개의 클러스터가 형성될 수 있다. 이와 같이, 2개의 클러스터로 구성된 클러스터링 해의 실루엣 값
Figure 112017111062340-pat00064
은 [수식 4] 내지 [수식 6]을 사용하여 0.272938로 산출된다.
다른 실시예에 따라서, 클러스터 수 K가 3인 경우, 거리의 상대적 비율 값
Figure 112017111062340-pat00065
이 가장 작은 x7, x5, x6이 데이터 중심으로 선택되고, 나머지 데이터 x1, x2, x3, x4, x8, x9, x10 중 x1, x2, x3, x4는 데이터 중심 x5에 근접하여 한 개의 클러스터가 형성되고, 다른 데이터 x8, x9, x10은 데이터 중심 x7에 근접하여 다른 한 개의 클러스터가 형성되며, 나머지 데이터 x6은 1개의 데이터로 또 다른 한 개의 클러스터가 형성될 수 있다. 이와 같이, 3개의 클러스터로 구성된 클러스터링 해의 실루엣 값
Figure 112017111062340-pat00066
은 [수식 4] 내지 [수식 6]을 사용하여 0.181605로 산출된다.
또 다른 실시예에 따라서, 클러스터 수 K가 4인 경우, 거리의 상대적 비율 값
Figure 112017111062340-pat00067
이 가장 작은 x7, x5, x6, x4가 데이터 중심으로 선택되고, 나머지 데이터 x1, x2, x3, x8, x9, x10 중 x1, x2, x3은 데이터 중심 x5에 근접하여 한 개의 클러스터가 형성되고, 다른 데이터 x8, x9, x10은 데이터 중심 x7에 근접하여 다른 한 개의 클러스터가 형성되며, 나머지 데이터 x4 및 x6은 각각 1개의 데이터로 하나의 클러스터가 형성될 수 있다. 이와 같이, 4개의 클러스터로 구성된 클러스터링 해의 실루엣 값
Figure 112017111062340-pat00068
은 [수식 4] 내지 [수식 6]을 사용하여 0.390931로 산출된다.
본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 방법은 가능한 클러스터 수 K의 모든 경우를 산출한 후, 실루엣 값이 가장 클 때(1에 가장 근접할 때)의 K값을 적절한 클러스터 수로 선택할 수 있고, 가장 작은 K개의 거리의 상대적 비율 값
Figure 112017111062340-pat00069
을 갖는 데이터 중심으로 다른 모든 데이터가 클러스터링되어 해를 획득할 수 있다.
도 6은 본 발명의 실시예에 따른 클러스터 수에 따른 실루엣 값의 실험 데이터를 도시한 것이다.
도 6을 참조하면, 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 방법은 데이터 Ruspini, Iris, Wine, Breastcancer에 대하여 클러스터 수 K개의 데이터 중심을 결정하고, 나머지 데이터를 가장 근접한 데이터 중심에 소속시켜 데이터 클러스터링 했을 경우, 해당 해에서 획득할 수 있는 실루엣 값을 각각의 K에 대하여 산출한 결과를 나타낸다.
이 때, 실루엣 값이 가장 클 때의 K를 가장 적합한 클러스터 수 K로 결정할 수 있다.
예를 들어 도 6을 참조하면, Ruspini 데이터는 K=4인 경우, 실루엣 값이 0.737657이므로, 클러스터 수 K가 4일 때 최적값(1에 근접한 값)에 근사한 값을 획득할 수 있다. 또한, Iris 데이터, Wine 데이터 및 Breastcancer 데이터는 K가 2일 때 각 실루엣 값 0.686232, 0.660087와 0.595527을 나타내므로, 클러스터 수 K가 2일 때 최적값에 근사한 값을 획득할 수 있다.
이에 따라서, 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 방법은 최적화 방법을 통해 추가적인 계산시간을 사용하지 않더라도 실루엣 값이 0.5에 근접하거나 그 이상인 해를 획득할 수 있다.
도 7a 내지 도 7d는 본 발명의 실시예에 따른 그룹 탐색 최적화를 적용한 클러스터 수에 따른 실루엣 값의 실험 결과 그래프를 도시한 것이다.
보다 상세하게는, 도 7a 내지 도 7d의 실험 결과 그래프는 도 6에 도시한 바와 같은 Ruspini 데이터, Iris 데이터, Wine 데이터 및 Breastcancer 데이터 각각에 대한 세대 수에 따른 실루엣 평가 값의 그래프를 도시한 것이다. 예를 들면, 도 7a 내지 도 7d는 빠른 해 탐색을 위해 그룹 탐색 최적화를 적용한 결과 그래프를 나타낸다.
도 6 및 도 7a를 참조하면, Ruspini 데이터에서 실루엣 값이 가장 큰 클러스터 수는 3, 4, 5이며, RUSPINI_3, RUSPINI_4, RUSPINI_5로 나타낸다. 이 때, 클러스터 수가 4일 때 가장 적합한 값 0.737657이 탐색될 수 있다.
도 6 및 도 7b를 참조하면, Iris 데이터에서 실루엣 값이 가장 큰 클러스터 수는 2, 3, 4이며, IRIS_2, IRIS_3, IRIS_4로 나타낸다. 이 때, 클러스터 수가 2일 때 가장 적합한 값 0.686232가 탐색될 수 있다.
도 6 및 도 7c를 참조하면, Wine 데이터에서 실루엣 값이 가장 큰 클러스터 수는 2, 3, 4이며, WINE_2, WINE_3, WINE_4로 나타낸다. 이 때, 클러스터 수가 2일 때 가장 적합한 값 0.660087이 탐색될 수 있다.
도 6 및 도 7d를 참조하면, Breastcancer(BC) 데이터에서 실루엣 값이 가장 큰 클러스터 수는 2, 3, 4이며, BC_2, BC_3, BC_4로 나타낸다. 이 때, 클러스터 수가 2일 때 가장 적합한 값 0.595527이 탐색될 수 있다.
도 8은 기존 방법과 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 방법을 적용한 비교 결과를 도시한 것이다.
보다 상세하게는, 도 8은 기존의 그룹 탐색 최적화(Group Search Optimization, GSO) 방법(GSO[1])과 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 방법(간단하고 빠른 해 탐색 방법 적용 GSO) 각각에 따른 실루엣 평가 값과 계산 시간 결과를 비교한 것이다.
이 때, Ruspini 데이터는 도 6에서 실루엣 값이 가장 큰 클러스터 수 3, 4, 5를 이용하여 실험하였고, Iris 데이터 및 Wine 데이터는 실루엣 값이 가장 큰 클러스터 수 2와 근접한 3, 4를 이용하여 실험하였으며, Breastcancer는 실루엣 값이 가장 큰 2, 3, 4를 이용하여 실험하였다.
도 8을 참조하면, 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 방법의 성능이 기존 방법의 성능에 비해 월등한 것을 확인할 수 있다. Ruspini 데이터, Iris 데이터, Wine 데이터 각각에 본 발명의 방법을 적용한 경우, 비슷한 실루엣 평가 값의 해를 탐색하는데 소요되는 계산시간이 기존 방법에 비해 각각 약 24% 내지 27%, 약 16% 내지 21%, 약 10% 내지 13% 정도 감소한 것을 확인할 수 있다.
다만, 데이터의 수가 683개로 다른 데이터보다 상대적으로 큰 사이즈의 Breastcancer는 클러스터 수 K가 증가할수록 가능 해의 경우의 수가 기하급수적으로 증가하여 기존 방법의 한계로 인하여 클러스터링 해 탐색이 어렵고, 탐색한 실루엣 값들이 0에 가까워(K=3일 때 0.110928, K=4일 때 ­0.00716) 적절한 클러스터링 해를 탐색해 낼 수 없었다.
그러나, 새롭게 제안하는 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 방법은 실루엣 값이 0.5에 근접하거나 그 이상의 해(K=3일 때 0.572383, K=4일 때 0.503771)를 탐색해 낼 수 있으므로, 적절한(reasonable) 클러스터링 해를 탐색해낼 수 있다.
이에, 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 방법은 실루엣의 계산 부담의 한계를 극복하기 위해, 모든 데이터의 거리를 한번에 계산하여 저장하고, 필요 시 재사용하여 거리의 상태적인 비율을 사용함으로써, 실루엣 값에 따른 좋은 해를 간단하고 쉽게 획득할 수 있다. 아울러, 본 발명의 실시예에 따른 그룹 탐색 최적화 데이터 클러스터링 방법은 탐색 시, 전역해 탐색이 가능하고, 추가적인 수렴이 가능하므로, 실루엣 평가 값이 상당히 개선되고, 계산시간이 크게 단축될 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD­ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기­광 매체(magneto­optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (15)

  1. 거리의 상대적 비율을 적용한 그룹 탐색 최적화 데이터 클러스터링 방법에 있어서,
    복수의 데이터들 각각이 복수의 클러스터들로 클러스터링되는 해와 관련하여, 상기 복수의 클러스터들 각각 내에서 p차원 특징을 나타내는 데이터들 사이의 거리, 및 상기 거리의 상대적 비율을 산출하는 단계;
    상기 복수의 데이터들을 산출되는 데이터 중심에 클러스터링하며, 클러스터링된 초기 해에 대한 실루엣 값을 산출하여 클러스터링 해를 획득하는 단계;
    상기 클러스터링 해를 그룹 탐색 최적화 기법에 따라 업데이트하여 최적의 해를 획득하는 단계; 및
    상기 최적의 해를 참조하여 상기 복수의 데이터들을 상기 복수의 클러스터들로 최종 클러스터링하는 단계를 포함하되,
    상기 클러스터링 해를 획득하는 단계는
    상기 상대적 비율의 산출 값 중 최소값의 순차대로 임의의 클러스터 수에 따른 상기 데이터 중심을 획득하는 단계;
    상기 획득된 데이터 중심을 기반으로 상기 복수의 데이터들을 클러스터링하는 단계;
    클러스터링된 복수의 상기 초기 해에 대한 상기 실루엣 값을 산출하는 단계; 및
    상기 산출된 실루엣 값에 기반하여 클러스터 개수 및 상기 클러스터링 해를 획득하는 단계를 포함하며,
    상기 데이터 중심을 획득하는 단계는
    상기 산출 값을 최소값부터 최대값까지 순차적으로 배열한 후, 상기 클러스터 개수만큼 상기 최소값을 추출하여 상기 데이터 중심을 획득하는 그룹 탐색 최적화 데이터 클러스터링 방법.
  2. 제1항에 있어서,
    상기 데이터들 사이의 거리 및 상기 거리의 상대적 비율을 산출하는 단계는
    상기 복수의 데이터들 중 상기 p차원 특징을 나타내는 제i 데이터에서 제j 데이터까지의 거리(dij)를 산출하여 저장하는 단계; 및
    상기 복수의 데이터들에서 상기 제j 데이터까지 거리의 상대적 비율을 산출하는 단계
    를 포함하는 그룹 탐색 최적화 데이터 클러스터링 방법.
  3. 제2항에 있어서,
    상기 p차원 특징은
    상기 제i 데이터의 특징 데이터인 상기 제j 데이터를 나타내는 그룹 탐색 최적화 데이터 클러스터링 방법.
  4. 삭제
  5. 삭제
  6. 제1항에 있어서,
    상기 복수의 데이터들을 클러스터링하는 단계는
    상기 복수의 데이터들 중에서, 상기 데이터 중심에 근접한 데이터들을 클러스터링하여 복수의 클러스터를 형성하는 것을 특징으로 하는 그룹 탐색 최적화 데이터 클러스터링 방법.
  7. 제1항에 있어서,
    상기 클러스터 개수 및 상기 클러스터링 해를 획득하는 단계는
    상기 산출된 실루엣 값 중 정수 1에 가장 근접한 값을 추출하여 클러스터 개수 및 상기 클러스터링 해를 획득하는 그룹 탐색 최적화 데이터 클러스터링 방법.
  8. 제1항에 있어서,
    상기 클러스터링 해를 획득하는 단계는
    상기 데이터들 사이의 거리 및 상기 거리의 상대적 비율을 산출하는 단계에서 산출되어 저장 및 유지되는 상대적 비율 값을 재사용하여 상기 클러스터링 해를 획득하는 그룹 탐색 최적화 데이터 클러스터링 방법.
  9. 거리의 상대적 비율을 적용한 그룹 탐색 최적화 데이터 클러스터링 방법에 있어서,
    복수의 데이터들 각각이 복수의 클러스터들로 클러스터링되는 해와 관련하여, 상기 복수의 클러스터들 각각 내에서 p차원 특징을 나타내는 데이터들 사이의 거리, 및 상기 거리의 상대적 비율을 산출하는 단계;
    상기 복수의 데이터들을 산출되는 데이터 중심에 클러스터링하며, 클러스터링된 초기 해에 대한 실루엣 값을 산출하여 클러스터링 해를 획득하는 단계;
    상기 클러스터링 해를 그룹 탐색 최적화 기법에 따라 업데이트하여 최적의 해를 획득하는 단계; 및
    상기 최적의 해를 참조하여 상기 복수의 데이터들을 상기 복수의 클러스터들로 최종 클러스터링하는 단계를 포함하되,
    상기 최적의 해를 획득하는 단계는
    상기 클러스터링 해 중 상기 실루엣 값을 최대화하는 프로듀서(producer) 해를 선택하는 단계;
    상기 클러스터링 해 중 상기 프로듀서 해를 제외한 나머지 해들 중 미리 설정된 확률에 따라 스크라운저(scrounger) 해를 획득하는 단계;
    상기 클러스터링 해 중 상기 프로듀서 해 및 상기 스크라운저 해를 제외한 나머지 해들을 레인저(ranger) 해로 설정하는 단계;
    적어도 하나의 세대 동안에, 상기 실루엣 값을 이용하여 상기 프로듀서 해, 상기 스크라운저 해 및 상기 레인저 해를 업데이트하는 단계; 및
    상기 업데이트된 프로듀서 해, 상기 업데이트된 스크라운저 해 및 상기 업데이트된 레인저 해 중 상기 실루엣 값을 최대화하는 상기 최적의 해를 결정하는 단계를 포함하며,
    상기 최적의 해를 결정하는 단계는
    상기 업데이트된 프로듀서 해, 상기 업데이트된 스크라운저 해 및 상기 업데이트된 레인저 해 중 상기 복수의 클러스터들간 데이터들 사이의 거리 및 상기 복수의 클러스터들 각각 내에서 데이터들 사이의 거리 차가 가장 큰 상기 최적의 해를 결정하는 그룹 탐색 최적화 데이터 클러스터링 방법.
  10. 삭제
  11. 삭제
  12. 거리의 상대적 비율을 적용한 그룹 탐색 최적화 데이터 클러스터링 시스템에 있어서,
    복수의 데이터들 각각이 복수의 클러스터들로 클러스터링되는 해와 관련하여, 상기 복수의 클러스터들 각각 내에서 p차원 특징을 나타내는 데이터들 사이의 거리, 및 상기 거리의 상대적 비율을 산출하는 산출부;
    상기 복수의 데이터들을 산출되는 데이터 중심에 클러스터링하며, 클러스터링된 초기 해에 대한 실루엣 값을 산출하여 클러스터링 해를 획득하는 클러스터링 해 획득부;
    상기 클러스터링 해를 그룹 탐색 최적화 기법에 따라 업데이트하여 최적의 해를 획득하는 최적 해 획득부; 및
    상기 최적의 해를 참조하여 상기 복수의 데이터들을 상기 복수의 클러스터들로 최종 클러스터링하는 최종 클러스터링부를 포함하되,
    상기 클러스터링 해 획득부는
    상기 상대적 비율의 산출 값 중 최소값의 순차대로 임의의 클러스터 수에 따른 상기 데이터 중심을 획득하는 데이터 중심 획득부;
    상기 획득된 데이터 중심을 기반으로 상기 복수의 데이터들을 클러스터링하는 데이터 클러스터링부;
    클러스터링된 복수의 상기 초기 해에 대한 상기 실루엣 값을 산출하는 실루엣 값 산출부; 및
    상기 산출된 실루엣 값에 기반하여 클러스터 개수 및 상기 클러스터링 해를 획득하는 결과 획득부를 포함하며,
    상기 데이터 중심 획득부는
    상기 산출 값을 최소값부터 최대값까지 순차적으로 배열한 후, 상기 클러스터 개수만큼 상기 최소값을 추출하여 상기 데이터 중심을 획득하는 그룹 탐색 최적화 데이터 클러스터링 시스템.
  13. 제12항에 있어서,
    상기 산출부는
    상기 복수의 데이터들 중 상기 p차원 특징을 나타내는 제i 데이터에서 제j 데이터까지의 거리(dij)를 산출하여 저장하는 거리 산출부; 및
    상기 복수의 데이터들에서 상기 제j 데이터까지 거리의 상대적 비율을 산출하는 상대적 비율 산출부
    를 포함하는 그룹 탐색 최적화 데이터 클러스터링 시스템.
  14. 삭제
  15. 거리의 상대적 비율을 적용한 그룹 탐색 최적화 데이터 클러스터링 시스템에 있어서,
    복수의 데이터들 각각이 복수의 클러스터들로 클러스터링되는 해와 관련하여, 상기 복수의 클러스터들 각각 내에서 p차원 특징을 나타내는 데이터들 사이의 거리, 및 상기 거리의 상대적 비율을 산출하는 산출부;
    상기 복수의 데이터들을 산출되는 데이터 중심에 클러스터링하며, 클러스터링된 초기 해에 대한 실루엣 값을 산출하여 클러스터링 해를 획득하는 클러스터링 해 획득부;
    상기 클러스터링 해를 그룹 탐색 최적화 기법에 따라 업데이트하여 최적의 해를 획득하는 최적 해 획득부; 및
    상기 최적의 해를 참조하여 상기 복수의 데이터들을 상기 복수의 클러스터들로 최종 클러스터링하는 최종 클러스터링부를 포함하되,
    상기 최적 해 획득부는
    상기 클러스터링 해 중 상기 실루엣 값을 최대화하는 프로듀서(producer) 해를 선택하고, 상기 클러스터링 해 중 상기 프로듀서 해를 제외한 나머지 해들 중 미리 설정된 확률에 따라 스크라운저(scrounger) 해를 획득하며, 상기 클러스터링 해 중 상기 프로듀서 해 및 상기 스크라운저 해를 제외한 나머지 해들을 레인저(ranger) 해로 설정하는 그룹 탐색 최적화 해 설정부;
    적어도 하나의 세대 동안에, 상기 실루엣 값을 이용하여 상기 프로듀서 해, 상기 스크라운저 해 및 상기 레인저 해를 업데이트하는 해 업데이트부; 및
    상기 업데이트된 프로듀서 해, 상기 업데이트된 스크라운저 해 및 상기 업데이트된 레인저 해 중 상기 실루엣 값을 최대화하는 상기 최적의 해를 결정하는 최적 해 결정부를 포함하며,
    상기 최적 해 결정부는
    상기 업데이트된 프로듀서 해, 상기 업데이트된 스크라운저 해 및 상기 업데이트된 레인저 해 중 상기 복수의 클러스터들간 데이터들 사이의 거리 및 상기 복수의 클러스터들 각각 내에서 데이터들 사이의 거리 차가 가장 큰 상기 최적의 해를 결정하는 그룹 탐색 최적화 데이터 클러스터링 시스템.
KR1020170148422A 2017-11-09 2017-11-09 거리의 상대적 비율을 적용한 그룹 탐색 최적화 데이터 클러스터링 방법 및 시스템 KR101953479B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170148422A KR101953479B1 (ko) 2017-11-09 2017-11-09 거리의 상대적 비율을 적용한 그룹 탐색 최적화 데이터 클러스터링 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170148422A KR101953479B1 (ko) 2017-11-09 2017-11-09 거리의 상대적 비율을 적용한 그룹 탐색 최적화 데이터 클러스터링 방법 및 시스템

Publications (1)

Publication Number Publication Date
KR101953479B1 true KR101953479B1 (ko) 2019-05-23

Family

ID=66680895

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170148422A KR101953479B1 (ko) 2017-11-09 2017-11-09 거리의 상대적 비율을 적용한 그룹 탐색 최적화 데이터 클러스터링 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR101953479B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110705602A (zh) * 2019-09-06 2020-01-17 平安科技(深圳)有限公司 大规模数据聚类方法、装置及计算机可读存储介质
CN113011460A (zh) * 2021-02-19 2021-06-22 建信金融科技有限责任公司 一种基于局部搜索聚类算法的用户画像方法和装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140047182A (ko) * 2012-09-18 2014-04-22 한국과학기술원 익명화를 위한 시드 선택 방법, 익명화 방법 및 이를 이용하는 정보 보호 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140047182A (ko) * 2012-09-18 2014-04-22 한국과학기술원 익명화를 위한 시드 선택 방법, 익명화 방법 및 이를 이용하는 정보 보호 장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110705602A (zh) * 2019-09-06 2020-01-17 平安科技(深圳)有限公司 大规模数据聚类方法、装置及计算机可读存储介质
CN113011460A (zh) * 2021-02-19 2021-06-22 建信金融科技有限责任公司 一种基于局部搜索聚类算法的用户画像方法和装置

Similar Documents

Publication Publication Date Title
Oh et al. Crowd counting with decomposed uncertainty
EP3340129B1 (en) Artificial neural network class-based pruning
Zhou et al. Dense teacher: Dense pseudo-labels for semi-supervised object detection
CN112116001B (zh) 图像识别方法、装置及计算机可读存储介质
CN110008853B (zh) 行人检测网络及模型训练方法、检测方法、介质、设备
CN112990222B (zh) 一种基于图像边界知识迁移的引导语义分割方法
CN106033425A (zh) 数据处理设备和数据处理方法
WO2016095068A1 (en) Pedestrian detection apparatus and method
CN111967271A (zh) 分析结果的生成方法、装置、设备及可读存储介质
US9436912B1 (en) Symmetric schema instantiation method for use in a case-based reasoning system
KR101953479B1 (ko) 거리의 상대적 비율을 적용한 그룹 탐색 최적화 데이터 클러스터링 방법 및 시스템
KR102039244B1 (ko) 반딧불 알고리즘을 이용한 데이터 클러스터링 방법 및 시스템
Costa et al. Genetic adaptation of segmentation parameters
CN113821657A (zh) 基于人工智能的图像处理模型训练方法及图像处理方法
KR20210111677A (ko) 뉴럴 네트워크의 클리핑 방법, 뉴럴 네트워크의 컨벌루션 계산 방법 및 그 방법을 수행하기 위한 전자 장치
KR101919698B1 (ko) 실루엣을 적용한 그룹 탐색 최적화 데이터 클러스터링 방법 및 시스템
KR102264969B1 (ko) 빅데이터 분석을 위한 시장 세분화 반딧불 알고리즘 방법 및 시스템
Kharinov et al. Object detection in color image
Nakamura et al. Stochastic batch size for adaptive regularization in deep network optimization
JP2021527859A (ja) 深層領域拡張を使用した画像内の不規則形状のセグメント化
Wei et al. Learning and exploiting interclass visual correlations for medical image classification
Hussein et al. The patch-levy-based bees algorithm applied to dynamic optimization problems
CN115019342A (zh) 一种基于类关系推理的濒危动物目标检测方法
CN111556018B (zh) 一种基于cnn的网络入侵检测方法及电子装置
Burdescu et al. A Spatial Segmentation Method.

Legal Events

Date Code Title Description
R401 Registration of restoration