KR102372251B1 - 전역 최적화를 위한 강건한 k-평균 방법 및 그 장치 - Google Patents

전역 최적화를 위한 강건한 k-평균 방법 및 그 장치 Download PDF

Info

Publication number
KR102372251B1
KR102372251B1 KR1020200058189A KR20200058189A KR102372251B1 KR 102372251 B1 KR102372251 B1 KR 102372251B1 KR 1020200058189 A KR1020200058189 A KR 1020200058189A KR 20200058189 A KR20200058189 A KR 20200058189A KR 102372251 B1 KR102372251 B1 KR 102372251B1
Authority
KR
South Korea
Prior art keywords
data
solution
sum
calculated
initial solution
Prior art date
Application number
KR1020200058189A
Other languages
English (en)
Other versions
KR20210141065A (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 KR1020200058189A priority Critical patent/KR102372251B1/ko
Publication of KR20210141065A publication Critical patent/KR20210141065A/ko
Application granted granted Critical
Publication of KR102372251B1 publication Critical patent/KR102372251B1/ko

Links

Images

Classifications

    • 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
    • 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
    • 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
    • G06F16/355Class or cluster creation or modification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Algebra (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

전역 최적화를 위한 강건한 K-평균 방법 및 그 장치가 개시된다. 본 발명의 일 실시예에 따른 K-평균 방법은 모든 데이터 간의 상대적인 거리 비율의 합을 계산하는 단계; 상기 계산된 상대적인 거리 비율의 합에 기초하여 초기해를 선택하는 단계; 및 상기 선택된 초기해를 이용하여 K-평균(K-means)을 수행하는 단계를 포함하고, 상기 선택하는 단계는 상기 계산된 상대적인 거리 비율의 합에 대하여 룰렛 휠 선택(Roulette wheel selection) 방법을 적용함으로써, 상기 초기해를 선택할 수 있다.

Description

전역 최적화를 위한 강건한 K-평균 방법 및 그 장치 {ROBUST K-MEANS METHOD FOR GLOBAL OPTIMIZATION AND APPARATUS THEREFORE}
본 발명은 전역 최적화를 위한 K-평균(K-means) 기술에 관한 것으로, 보다 상세하게는 초기해를 임의적으로 선택하지 않고 데이터간의 거리 비율을 확률적으로 고려한 좋은 해들을 생성하고 그 해들 중 가장 좋은 해를 초기해로 선택함으로써, 최종 해들의 표준편차를 줄이고 안정적인 해 탐색이 가능한 K-means 방법 및 그 장치에 관한 것이다.
데이터 분석을 하기 위한 K-평균(K-means)은 효율적이고 적용하기 쉬우나, 임의로 선택하는 초기해에 따라 해 탐색 결과가 민감하고 탐색 해의 편차가 매우 크며 지역해에 빠질 가능성이 높다는 문제점이 있다. 이와 같은 K-means의 한계점을 극복하고 안정적인 해를 탐색할 수 있는 강건한 K-means 방법의 개발이 필요하다.
종래 일 실시예에 따른 기술은 효과적인 초기해 선택을 통하여 전역해 탐색이 가능한 K-means 방법을 제안하였다. 종래 다른 일 실시예에 따른 기술은 K-means의 초기해를 임의적으로 선택하는 대신에 데이터의 밀도를 고려하여 선택하는 방법을 제안하였다. 종래 또 다른 일 실시예에 따른 기술은 전체적인 데이터 기여 정도를 확률적으로 계산하여 초기 중심을 선택하는 K-means++를 제안하였다. 종래 다른 일 실시예에 따른 기술은 K-means의 초기값을 랜덤하게 선택하지만 여러 연구에서 어떻게 초기값을 효과적으로 선택했는지 비교 분석하였다. 종래 다른 일 실시예에 따른 기술은 더 좋은 초기값 선정과 서로 다른 초기값 반복 선택으로 K-means가 얼마나 개선될 수 있는지 연구하였다. 이 연구에 따르면 분석하고자 하는 데이터가 오버랩(overlap)되어 있을 경우 상기 두 가지 방법이 K-means의 성능을 상당히 개선시켰다고 서술하였다. 이와 같이 최근까지도 K-means의 약점인 초기값 선택 문제를 해결하기 위해 다양한 연구가 진행되고 있다.
본 발명의 실시예들은, 초기해를 임의적으로 선택하지 않고 데이터간의 거리 비율을 확률적으로 고려한 좋은 해들을 생성하고 그 해들 중 가장 좋은 해를 초기해로 선택함으로써, 최종 해들의 표준편차를 줄이고 안정적인 해 탐색이 가능한 K-means 방법 및 그 장치를 제공한다.
본 발명의 일 실시예에 따른 K-평균 방법은 모든 데이터 간의 상대적인 거리 비율의 합을 계산하는 단계; 상기 계산된 상대적인 거리 비율의 합에 기초하여 초기해를 선택하는 단계; 및 상기 선택된 초기해를 이용하여 K-평균(K-means)을 수행하는 단계를 포함한다.
상기 계산하는 단계는 상기 모든 데이터 간의 거리를 계산하고, 상기 계산된 거리를 이용하여 데이터 각각을 기준으로 하는 상기 모든 데이터 간의 상대적인 거리 비율의 합을 계산할 수 있다.
상기 선택하는 단계는 상기 계산된 상대적인 거리 비율의 합에 대하여 룰렛 휠 선택(Roulette wheel selection) 방법을 적용함으로써, 상기 초기해를 선택할 수 있다.
상기 선택하는 단계는 상기 계산된 상대적인 거리 비율의 합을 이용하여 데이터 각각의 선택 확률을 계산하고, 상기 데이터 각각에 대하여 랜덤 확률 값을 할당하여 상기 계산된 선택 확률의 구간에 포함되는지 확인함으로써, 미리 설정된 개수의 중심데이터를 선택하며, 상기 선택된 중심데이터를 기준으로 클러스터를 재구성하여 상기 재구성된 클러스터 각각의 해를 생성하고, 상기 생성된 해 각각의 평가값을 계산한 후 가장 좋은 평가값의 해를 상기 초기해로 선택할 수 있다.
상기 선택하는 단계는 상기 재구성된 각 클러스터 내에서 평균과 소속된 데이터 사이의 유클리드 거리(Intra-cluster distance)의 총합을 평가값으로 계산할 수 있다.
본 발명의 다른 일 실시예에 따른 K-평균 방법은 모든 데이터 간의 상대적인 거리 비율의 합을 계산하는 단계; 상기 계산된 상대적인 거리 비율의 합에 대하여 룰렛 휠 선택(Roulette wheel selection) 방법을 적용함으로써, 초기해를 선택하는 단계; 및 상기 선택된 초기해를 이용하여 K-평균(K-means)을 수행하는 단계를 포함한다.
본 발명의 일 실시예에 따른 K-평균 장치는 모든 데이터 간의 상대적인 거리 비율의 합을 계산하는 계산부; 상기 계산된 상대적인 거리 비율의 합에 기초하여 초기해를 선택하는 선택부; 및 상기 선택된 초기해를 이용하여 K-평균(K-means)을 수행하는 수행부를 포함한다.
상기 계산부는 상기 모든 데이터 간의 거리를 계산하고, 상기 계산된 거리를 이용하여 데이터 각각을 기준으로 하는 상기 모든 데이터 간의 상대적인 거리 비율의 합을 계산할 수 있다.
상기 선택부는 상기 계산된 상대적인 거리 비율의 합에 대하여 룰렛 휠 선택(Roulette wheel selection) 방법을 적용함으로써, 상기 초기해를 선택할 수 있다.
상기 선택부는 상기 계산된 상대적인 거리 비율의 합을 이용하여 데이터 각각의 선택 확률을 계산하고, 상기 데이터 각각에 대하여 랜덤 확률 값을 할당하여 상기 계산된 선택 확률의 구간에 포함되는지 확인함으로써, 미리 설정된 개수의 중심데이터를 선택하며, 상기 선택된 중심데이터를 기준으로 클러스터를 재구성하여 상기 재구성된 클러스터 각각의 해를 생성하고, 상기 생성된 해 각각의 평가값을 계산한 후 가장 좋은 평가값의 해를 상기 초기해로 선택할 수 있다.
상기 선택부는 상기 재구성된 각 클러스터 내에서 평균과 소속된 데이터 사이의 유클리드 거리(Intra-cluster distance)의 총합을 평가값으로 계산할 수 있다.
본 발명의 실시예에 따르면, 초기해를 임의적으로 선택하지 않고 데이터간의 거리 비율을 확률적으로 고려한 좋은 해들을 생성하고 그 해들 중 가장 좋은 해를 초기해로 선택함으로써, 최종 해들의 표준편차를 줄이고 안정적인 해 탐색이 가능하여 지역 해에 빠질 확률을 줄일 수 있다.
즉, 본 발명은 기존 일반적인 K-means보다 탐색한 최종 해들의 표준편차가 작아 안정적인 해 탐색이 가능하고 지역 해에 빠질 확률이 낮아져 전역 해 탐색이 가능해 진다.
이러한 본 발명은 다양한 데이터 클러스터링 분야에 적용될 수 있다.
도 1은 K-means 해 탐색을 위한 초기해를 선택하는 과정을 설명하기 위한 일 예시도를 나타낸 것이다.
도 2는 본 발명의 일 실시예에 따른 강건한 K-means 방법에 대한 동작 흐름도를 나타낸 것이다.
도 3은 초기해 선택 방법을 적용한 강건한 K-means 방법에 대한 일 예시도를 나타낸 것이다.
도 4a 내지 도 4j는 기존의 K-menas와 본 발명의 방법(RK-means)의 수렴 그래프를 비교한 것이다.
도 5는 본 발명의 일 실시예에 따른 강건한 K-means 장치에 대한 구성을 나타낸 것이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며, 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예들을 보다 상세하게 설명하고자 한다. 도면 상의 동일한 구성요소에 대해서는 동일한 참조 부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
데이터 클러스터링을 할 때 가장 보편적으로 사용되는 K-means 방법은 초기해 선택을 임의적으로 하기 때문에 지역해에 빠질 가능성이 높고 안정적인 해 탐색을 할 수 없어 탐색한 해 편차가 크다.
본 발명의 실시예들은, 초기해를 임의적으로 선택하지 않고 데이터간의 거리 비율을 확률적으로 고려한 좋은 해들을 생성하고 그 해들 중 가장 좋은 해를 초기해로 선택함으로써, K-means의 성능을 개선시키는 것을 그 요지로 한다.
구체적으로, 본 발명은 모든 데이터간의 거리를 계산하고, 모든 데이터의 상대적인 거리 비율의 합을 계산하며, 거리 비율의 합의 역수 값에 대하여 룰렛 휠 선택 방식을 적용한 후 각 데이터의 선택확률을 계산하고, 각 데이터 별로 랜덤 확률 값을 할당하여 선택확률 구간에 포함되는지 확인함으로써, K개의 중심데이터를 선택하며, 중심데이터를 기준으로 클러스터를 재구성하여 해를 생성하고, 생성된 해 각각에 대하여 평가값을 계산한 후 계산된 평가값 중 가장 좋은 평가값의 해를 초기해로 선택할 수 있다.
데이터 클러스터링 문제 즉, n개의 데이터를 K개의 그룹으로 클러스터링 하는 문제를 수리적으로 정립화할 수 있다. 데이터 집합 X={x1, x2,..., xn}는 데이터 i(xi)로 구성될 수 있으며, 여기서, i는 1, 2, ..., n일 수 있다. 또한, k(k=1, 2, ..., K) 개의 클러스터 서브 집합 C={C1, C,..., CK}로 서로 겹치지 않는 클러스터로 구성된다. 각 클러스터 집합은 적어도 한 개의 데이터가 존재한다. 데이터 클러스터링 해를 평가할 때 각 클러스터 내에서 평균과 소속된 데이터 사이의 유클리드 거리(Intra-cluster distance)의 총합을 나타내는 아래 <수학식 1>을 적용하고 최소화하는 것이고, 제한식은 아래 <수학식 2> 내지 <수학식 6>으로 나타낼 수 있다.
[수학식 1]
Figure 112020049139428-pat00001
[수학식 2]
Figure 112020049139428-pat00002
[수학식 3]
Figure 112020049139428-pat00003
[수학식 4]
Figure 112020049139428-pat00004
[수학식 5]
Figure 112020049139428-pat00005
[수학식 6]
Figure 112020049139428-pat00006
만약 데이터 i(xi)가 클러스터 k에 포함되었을 경우, 의사결정변수 wik를 1로 표시하고 그렇지 않을 경우 0으로 표시하여 상기 수학식 2와 같이 정의할 수 있다. 데이터 클러스터링 해 표현 매트릭스를 W={wik}로 나타낼 수 있고 xi가 하나의 클러스터 k에 포함되는 여부에 따라 상기 수학식 3과 같이 표현할 수 있다. 상기 수학식 4는 클러스터 k에 적어도 하나 이상의 데이터 i(xi)가 포함되어 있는 것을 표현한 것이며, 상기 수학식 5의 Ckj는 Ck=(Ck1, Ck2, ..., Ckd)의 클러스터 k에서 특징(feature) 데이터 j의 평균값을 나타낸다. 상기 수학식 6은 클러스터 k의 유클리드 거리의 합을 나타낸 것이다.
K-means는 초기해를 임의적으로 선택하여 각 클러스터에 소속된 데이터들의 평균과 소속 데이터 간의 거리(intra-cluster distance)의 합을 평가기준으로 해를 평가하여 최소화 할 수 있는 해를 탐색한다. 모든 데이터들을 각 클러스터의 평균을 기준으로 재할당하여 새로운 클러스터링 해를 탐색하여 다시 평가한다. 이러한 과정들을 더 좋은 해 결과가 나오지 않을 때까지 반복하여 해를 탐색한다.
이와 같이, K-means 방법은 초기해를 선택할 때 임의적으로 선택하기 때문에 초기해를 잘못 선택 할 경우 지역 해에 머무를 확률이 높다. 예를 들어, 도 1은 K-means 해 탐색을 위한 초기해를 선택하는 과정을 설명하기 위한 일 예시도를 나타낸 것으로, X축이 특성(attribute)을 나타내는 독립변수이고 Y축은 K-means에서 사용되는 각 클러스터에 소속된 데이터들의 평균과 소속 데이터 간의 거리(intra-cluster distance)의 합을 나타내는 종속변수로, 이 값을 최소화하는 것이 목적이다. K-means가 초기해를 임의적으로 4개를 선택할 경우 ①~④가 선택될 수 있다. ①~③의 경우 지역해를 탐색하게 되고 4개의 초기해 중 3개이므로 확률이 75%, 초기해 ④는 전역해를 탐색하게 되어 4개의 초기해 중 1개이므로 확률이 25%이 된다. 따라서, 이러한 문제 즉, 지역해 탐색 확률 75%가 너무 크고 임의로 선택한 초기해에 따라 최종해가 예민하고 탐색 해의 편차가 너무 큰 것을 해결하여 지역해 탐색 확률을 최대한 감소시킬 수 있는 초기해 생성 방법을 적용한 K-means 방법의 개발이 필요하며, 본 발명은 강건한 K-means 방법을 제공함으로써, 상술한 문제점을 해결할 수 있다.
본 발명의 방법에 대해 초기해를 선택하는 과정과 선택된 초기해를 이용하여 안정적인 해 탐색을 할 수 있는 강건한 K-means 방법에 대해 설명한다.
확률적 거리 비율을 적용한 초기해 선택
K-means를 수행하기 전에 모든 데이터 i에서 데이터 j까지 거리의 상대적인 비율의 합을 계산하고 확률적인 중심 데이터 선택으로 해를 생성하여 초기해를 선택한다.
각각의 데이터 i(xi)는 p차원(특징, attribute)으로 구성되는데, xip는 데이터 i의 특징데이터 p의 값을 표현한다. 데이터 i에서 데이터 j까지의 거리(dij)는 아래 <수학식 7>로 계산할 수 있고, 데이터 j를 기준으로 하는 모든 데이터의 상대적인 거리 비율의 합 Vj는 아래 <수학식 8>을 이용하여 계산될 수 있다. Vj가 작을수록 해당 데이터 j가 클러스터링을 할 때 중심 데이터 역할을 할 경우 다른 데이터와의 거리가 상대적으로 짧기 때문에 유리할 수 있다.
[수학식 7]
Figure 112020049139428-pat00007
[수학식 8]
Figure 112020049139428-pat00008
본 발명의 방법은 모든 데이터에 대한 거리 비율의 합(Vj)을 기준으로 룰렛 휠 선택(Roulette wheel selection) 방법을 적용하여 클러스터 수만큼 클러스터 중심 데이터를 선택하여 해를 생성한다. 즉, 데이터 j의 Vj가 작을수록 또는 역수 값 1/Vj가 데이터 j가 중심데이터로 선택될 확률을 높게 하여 클러스터 수만큼 선택하고 해를 생성한다.
도 2는 본 발명에서 초기해를 선택하는 과정에 대한 동작 흐름도를 나타낸 것으로, 확률적 거리 비율의 합(Vj)을 사용하여 안정적이고 강건한 최종해를 탐색할 수 있는 초기해를 선택하는 과정을 나타낸 것이다.
도 2를 참조하면, 본 발명에서 초기해를 선택하는 과정은 확률적으로 몇 개(N)의 다양한 해를 생성할 것인지 결정하고, 상기 수학식 7을 이용하여 모든 데이터간의 거리 dij를 계산하고 저장한다(S210, S220).
단계 S220에 의해 모든 데이터간의 거리가 계산되면, 계산된 거리를 이용하여 데이터 j를 기준으로 하는 모든 데이터의 상대적인 거리 비율의 합(Vj)을 상기 수학식 8을 이용하여 계산한 후 모든 Vj 의 역수 값(1/ Vj)에 대하여 룰렛 휠 선택 방식을 적용하고, 각 데이터 j의 선택 확률
Figure 112020049139428-pat00009
Figure 112020049139428-pat00010
을 계산한다(S230 내지 S250).
상기 과정을 통해 각 데이터 j의 선택확률이 계산되면, 각 데이터 별로 랜덤 확률 값을 할당하여 선택확률 구간에 포함되는지 확인함으로써, K개의 중심데이터를 선택하고, 선택된 K개의 중심데이터를 기준으로 나머지 데이터 즉, (n-K)개의 데이터가 어느 중심점에 가까운지 계산하여 해당 클러스터 소속으로 재구성함으로써, 클러스터 각각의 해를 생성한다(S260, S270).
단계 S270에 의해 클러스터 각각의 해가 생성되면, 생성된 해 각각의 평가값(Valid index: intra-cluster distance)을 계산한다(S280). 그리고 상기 단계 S260 내지 S280 과정을 일정 회수 예를 들어, N회만큼 반복 수행한다(S290).
여기서, 해 각각의 평가값은 각 클러스터 내에서 평균과 소속된 데이터 사이의 유클리드 거리(Intra-cluster distance)의 총합을 의미할 수 있다.
단계 S290에 의해 N회만큼 반복 수행되면, 생성된 해들 각각의 평가값들 중 가장 좋은 평가값의 해를 초기해로 선택한다(S300).
상술한 과정을 통해 초기해를 선택하는 경우, 임의의 초기해를 선택하는 기존 K-means의 문제점을 상당히 감소시킬 수 있다. 예를 들어, 도 1에서 초기해를 선택할 경우, 초기해 ①~③의 선택 확률은 낮아져 지역해 탐색 확률은 낮아지고, 초기해 ④의 선택 확률은 높아져 전역해 탐색 확률은 높아진다.
전역해 탐색이 가능한 강건한 K-means
초기해에 민감하고 지역해를 탐색할 가능성이 높다는 K-means의 문제점을 해결하기 위해, 상술한 초기해 선택 방법을 적용하여 안정적인 해 탐색을 위한 초기해를 생성한다. 상기 과정을 통해 선택된 초기해를 K-means에 적용하면 임의로 초기해를 선택하는 일반적인 K-means 방법보다 지역해 탐색 확률을 감소시켜 안정적인 해 탐색이 가능하여 강건해진 K-means를 만들어 낼 수 있다.
도 3은 초기해 선택 방법을 적용한 강건한 K-means 방법에 대한 일 예시도를 나타낸 것이다.
도 3을 참조하면, 본 발명의 강건한 K-means 방법은 각 데이터 간의 상대적리 거리 비율의 합을 계산하고, 안정적인 해 탐색을 위한 데이터 간의 거리 비율의 합의 룰렛 휠 중심데이터 선택을 적용함으로써, 초기해를 선택한다(S310, S320).
여기서, 단계 S310은 도 2의 단계 S110 내지 S130을 의미할 수 있고, 단계 S320은 도 2의 단계 S140 내지 S200을 의미할 수 있다. 즉, 단계 S310 내지 S320은 도 2에서 설명한 과정을 통해 초기해를 선택하는 과정을 의미한다.
단계 S310과 S320을 통해 데이터 간의 상대적인 거리 비율 합을 기반으로 초기해가 선택되면, 선택된 초기해를 기반으로 K개의 클러스터 각각의 평균을 구하고 각 클러스터의 모든 데이터에서 평균(중심)까지의 거리의 합을 평가하고, 모든 데이터를 K개의 평균 중에서 가장 가까운 평균이 소속된 클러스터로 재할당하여 새로운 클러스터를 구성하며, 이러한 과정을 클러스터의 평균점의 변화가 없을 때까지 반복 수행한다(S330 내지 S350).
도 4a 내지 도 4j는 기존의 K-menas와 본 발명의 방법(RK-means)의 수렴 그래프를 비교한 것으로, 아래 표 1의 10개의 실험 데이터에 대하여 수렴 그래프를 비교한 것이며, 수렴 그래프의 한 점은 20회 실행한 값의 평균을 의미한다.
여기서, 본 발명은 기존 연구에서 널리 사용한 Soybean, Ruspini, Iris, Wine, Glass, Thyroid, Breast Cancer, Vowel, Cloud, CMC 데이터(UCI machine learning repository)를 사용하여 각 20회 실험 분석하였으며, 아래 표 1은 실험 분석 데이터의 클러스터 수, 각 데이터의 특징 수, 데이터 수를 나타낸 것이다.
Figure 112020049139428-pat00011
아래 표 2는 본 발명의 방법으로 초기해 선택을 위해 해를 확률적으로 10개 생성하여 가장 좋은 해 1개를 선택하고, 이 과정을 20회 실행한 해의 Intra-cluster distance 평균, 표준편차, 최선해 Best를 계산한 것이다. 여기서, K는 클러스터 수를 의미한다.
Figure 112020049139428-pat00012
아래 표 3은 K-means와 본 발명의 RK-means를 10개의 실험 데이터 결과를 비교한 것으로, 각 방법에 대하여 20회의 실험을 통하여 탐색한 최종해의 평균, 편차, 가장 좋은 값 Best를 비교한 것이다.
Figure 112020049139428-pat00013
도 4, 표 1 내지 표 3에 도시된 바와 같이, Soybean의 평균 초기해 평가값 99.33746, Ruspini의 평균 초기해 평가값 886.5543, Iris의 평균 초기해 평가값 97.6242, Wine의 평균 초기해 평가값 16642.7715, Glass의 평균 초기해 평가값 230.6866, Thyroid의 평균 초기해 평가값 1985.4919, Breast cancer의 평균 초기해 평가값 2987.2265, CMC의 평균 초기해 평가값 5576.2292, Vowel의 평균 초기해 평가값 156482.5, Cloud의 평균 초기해 평가값 71922.15 등에서 시작한다.
RK-means 적용 시 표 3에 도시된 바와 같이, Soybean 99.150, Ruspini 884.2239, Iris 97.2783, Wine 16551.3435, Glass 218.64, Thyroid 1980.9093, Breast cancer 2986.4248, CMC 5535.5516, Vowel 152,348.3, Cloud 64,325.55 등으로 서서히 수렴하는 것을 알 수 있다.
또한, 본 발명의 RK-means 방법이 K-means 방법보다 평균 평가 값과 표준편차가 6개의 실험 데이터에서 개선되어 더 우월한 해(평가 값 개선률 Soybean 2.03%, Ruspini 37.29%, Iris 7.17%, Glass 2.04%, Vowel 5.65%, Cloud 6.99%)를 더 안정적(표준편차 개선률 Soybean 66.08%, Ruspini 100%, Iris 99.62%, Glass 71.07%, Vowel 65.99%, Cloud 68.38%)으로 탐색 가능하여 성능 우수성이 뚜렷하게 나타나고, 두 방법의 평균 계산시간의 차이는 크지 않은 것을 알 수 있다.
특히, Ruspini는 데이터 수가 75개, 특성 수 2개이고 4개의 클러스터가 뚜렷이 구분되어 K-means와 RK-means를 비교할 수 있는 극단적인 예이다. 초기해를 임의로 선택하는 K-means는 최종해의 평균 평가 값(1378.347)과 표준편차(467.4609)가 상대적으로 매우 크다. 반면, RK-means는 최종해의 안정적인 평균 평가 값(864.2239) 탐색이 가능하여 표준편차가 0으로 상대적으로 매우 작아 RK-means 방법의 성능이 우수한 것을 알 수 있다. Ruspini 실험 데이터의 경우 20회 모두 평가 값 864.2239의 해를 탐색 가능하다.
Iris 실험 데이터의 경우 초기해를 임의로 선택하는 K-means는 최종해의 평균 평가 값(104.7975)과 표준편차(13.4763)가 상대적으로 매우 크다. 반면, RK-means는 최종해의 평균 평가 값(97.27837)과 표준편차(0.04903)으로 상대적으로 매우 작아 RK-means 방법의 성능이 우수한 것을 알 수 있다.
Soybean 실험 데이터의 경우 초기해를 임의로 선택하는 K-means는 최종해의 평균 평가 값(101.2121)과 표준편차(5.7853)가 상대적으로 매우 크다. 반면, RK-means는 최종해의 평균 평가 값(99.1506)과 표준편차(1.9617)으로 상대적으로 매우 작아 RK-means 방법의 성능이 우수한 것을 알 수 있다.
Glass 실험 데이터의 경우 초기해를 임의로 선택하는 K-means는 최종해의 평균 평가 값(223.2162)과 표준편차(8.3712)가 상대적으로 매우 크다. 반면, RK-means는 최종해의 평균 평가 값(218.6409)과 표준편차(2.175948)으로 상대적으로 매우 작아 RK-means 방법의 성능이 우수한 것을 알 수 있다.
Vowel 실험 데이터의 경우 초기해를 임의로 선택하는 K-means는 최종해의 평균 평가 값(161485.2)과 표준편차(10250.050)가 상대적으로 매우 크다. 반면, RK-means는 최종해의 평균 평가값(152348.3)과 표준편차(3485.646)으로 상대적으로 매우 작아 RK-means 방법의 성능이 우수한 것을 알 수 있다.
Cloud 실험 데이터의 경우 초기해를 임의로 선택하는 K-means는 최종해의 평균 평가 값(69165.49)과 표준편차(3080.9870)가 상대적으로 매우 크다. 반면, RK-means는 최종해의 평균 평가 값(64325.55)과 표준편차(974.1821)으로 상대적으로 매우 작아 RK-means 방법의 성능이 우수한 것을 알 수 있다.
이와 같이, 본 발명의 실시예에 따른 방법은 초기해를 임의적으로 선택하지 않고 데이터간의 거리 비율을 확률적으로 고려한 좋은 해들을 생성하고 그 해들 중 가장 좋은 해를 초기해로 선택함으로써, 최종 해들의 표준편차를 줄이고 안정적인 해 탐색이 가능하여 지역 해에 빠질 확률을 줄일 수 있다.
즉, 본 발명의 방법은 기존 일반적인 K-means보다 탐색한 최종 해들의 표준편차가 작아 안정적인 해 탐색이 가능하고 지역 해에 빠질 확률이 낮아져 전역 해 탐색이 가능해 진다.
도 5는 본 발명의 일 실시예에 따른 강건한 K-means 장치에 대한 구성을 나타낸 것으로, 상술한 본 발명의 방법을 수행하는 장치에 대한 개념적인 구성을 나타낸 것이다.
도 5를 참조하면, 본 발명의 실시예에 따른 장치(500)는 계산부(510), 선택부(520) 및 수행부(530)를 포함한다.
계산부(510)는 모든 데이터 간의 상대적인 거리 비율의 합을 계산한다.
이 때, 계산부(510)는 모든 데이터 간의 거리를 계산하고, 계산된 거리를 이용하여 데이터 각각을 기준으로 하는 모든 데이터 간의 상대적인 거리 비율의 합을 계산할 수 있다.
선택부(520)는 계산된 상대적인 거리 비율의 합에 기초하여 초기해를 선택한다.
이 때, 선택부(520)는 계산된 상대적인 거리 비율의 합에 대하여 룰렛 휠 선택(Roulette wheel selection) 방법을 적용함으로써, 초기해를 선택할 수 있다.
구체적으로, 선택부(520)는 계산된 상대적인 거리 비율의 합을 이용하여 데이터 각각의 선택 확률을 계산하고, 데이터 각각에 대하여 랜덤 확률 값을 할당하여 계산된 선택 확률의 구간에 포함되는지 확인함으로써, 미리 설정된 개수의 중심데이터를 선택하며, 선택된 중심데이터를 기준으로 클러스터를 재구성하여 재구성된 클러스터 각각의 해를 생성하고, 생성된 해 각각의 평가값을 계산한 후 가장 좋은 평가값의 해를 초기해로 선택할 수 있다.
여기서, 선택부(520)는 재구성된 각 클러스터 내에서 평균과 소속된 데이터 사이의 유클리드 거리(Intra-cluster distance)의 총합을 평가값으로 계산할 수 있다.
수행부(530)는 선택된 초기해를 이용하여 K-means를 수행한다.
비록, 도 5의 장치에서 그 설명이 생략되었더라도, 도 5를 구성하는 각 구성 수단은 도 1 내지 도 4에서 설명한 모든 내용을 포함할 수 있으며, 이는 이 기술 분야에 종사하는 당업자에게 있어서 자명하다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시 예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 컨트롤러, 산술논리연산장치(ALU, arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, 설계가능논리소자(FPGA, field programmable gate array), 프로그래밍가능논리장치(PLU, programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시 예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시 예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 실시 예들이 비록 한정된 실시 예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시 예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (11)

  1. 모든 데이터 간의 상대적인 거리 비율의 합을 계산하는 단계;
    상기 계산된 상대적인 거리 비율의 합을 이용하여 데이터 각각의 선택 확률을 계산하고, 상기 데이터 각각에 대하여 랜덤 확률 값을 할당하여 상기 계산된 선택 확률의 구간에 포함되는지 확인함으로써, 미리 설정된 개수의 중심데이터를 선택하며, 상기 선택된 중심데이터를 기준으로 클러스터를 재구성하여 상기 재구성된 클러스터 각각의 해를 생성하고, 상기 생성된 해 각각의 평가값을 계산한 후 가장 좋은 평가값의 해를 초기해로 선택하는 단계; 및
    상기 선택된 초기해를 이용하여 K-평균(K-means)을 수행하는 단계
    를 포함하고,
    상기 선택하는 단계는
    상기 재구성된 각 클러스터 내에서 평균과 소속된 데이터 사이의 유클리드 거리(Intra-cluster distance)의 총합을 평가값으로 계산하는 것을 특징으로 하는 K-평균 방법.
  2. 제1항에 있어서,
    상기 계산하는 단계는
    상기 모든 데이터 간의 거리를 계산하고, 상기 계산된 거리를 이용하여 데이터 각각을 기준으로 하는 상기 모든 데이터 간의 상대적인 거리 비율의 합을 계산하는 것을 특징으로 하는 K-평균 방법.
  3. 제1항에 있어서,
    상기 선택하는 단계는
    상기 계산된 상대적인 거리 비율의 합에 대하여 룰렛 휠 선택(Roulette wheel selection) 방법을 적용함으로써, 상기 초기해를 선택하는 것을 특징으로 하는 K-평균 방법.
  4. 삭제
  5. 삭제
  6. 삭제
  7. 모든 데이터 간의 상대적인 거리 비율의 합을 계산하는 계산부;
    상기 계산된 상대적인 거리 비율의 합을 이용하여 데이터 각각의 선택 확률을 계산하고, 상기 데이터 각각에 대하여 랜덤 확률 값을 할당하여 상기 계산된 선택 확률의 구간에 포함되는지 확인함으로써, 미리 설정된 개수의 중심데이터를 선택하며, 상기 선택된 중심데이터를 기준으로 클러스터를 재구성하여 상기 재구성된 클러스터 각각의 해를 생성하고, 상기 생성된 해 각각의 평가값을 계산한 후 가장 좋은 평가값의 해를 초기해로 선택하는 선택부; 및
    상기 선택된 초기해를 이용하여 K-평균(K-means)을 수행하는 수행부
    를 포함하고,
    상기 선택부는,
    상기 재구성된 각 클러스터 내에서 평균과 소속된 데이터 사이의 유클리드 거리(Intra-cluster distance)의 총합을 평가값으로 계산하는 것을 특징으로 하는 K-평균 장치.
  8. 제7항에 있어서,
    상기 계산부는
    상기 모든 데이터 간의 거리를 계산하고, 상기 계산된 거리를 이용하여 데이터 각각을 기준으로 하는 상기 모든 데이터 간의 상대적인 거리 비율의 합을 계산하는 것을 특징으로 하는 K-평균 장치.
  9. 제7항에 있어서,
    상기 선택부는
    상기 계산된 상대적인 거리 비율의 합에 대하여 룰렛 휠 선택(Roulette wheel selection) 방법을 적용함으로써, 상기 초기해를 선택하는 것을 특징으로 하는 K-평균 장치.
  10. 삭제
  11. 삭제
KR1020200058189A 2020-05-15 2020-05-15 전역 최적화를 위한 강건한 k-평균 방법 및 그 장치 KR102372251B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200058189A KR102372251B1 (ko) 2020-05-15 2020-05-15 전역 최적화를 위한 강건한 k-평균 방법 및 그 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200058189A KR102372251B1 (ko) 2020-05-15 2020-05-15 전역 최적화를 위한 강건한 k-평균 방법 및 그 장치

Publications (2)

Publication Number Publication Date
KR20210141065A KR20210141065A (ko) 2021-11-23
KR102372251B1 true KR102372251B1 (ko) 2022-03-08

Family

ID=78695106

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200058189A KR102372251B1 (ko) 2020-05-15 2020-05-15 전역 최적화를 위한 강건한 k-평균 방법 및 그 장치

Country Status (1)

Country Link
KR (1) KR102372251B1 (ko)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102039244B1 (ko) * 2018-02-19 2019-11-26 강원대학교산학협력단 반딧불 알고리즘을 이용한 데이터 클러스터링 방법 및 시스템

Also Published As

Publication number Publication date
KR20210141065A (ko) 2021-11-23

Similar Documents

Publication Publication Date Title
US11720822B2 (en) Gradient-based auto-tuning for machine learning and deep learning models
JP6605573B2 (ja) 並列ディシジョン・ツリー・プロセッサー・アーキテクチャ
US10706052B2 (en) Method for performing in-memory hash join processing in relational database systems
US11086909B2 (en) Partitioning knowledge graph
KR20170023022A (ko) 코드 추천 기법
US11288580B2 (en) Optimal solution search method, optimal solution search program, and optimal solution search apparatus
Jo et al. Panene: A progressive algorithm for indexing and querying approximate k-nearest neighbors
US10423616B2 (en) Using local memory nodes of a multicore machine to process a search query
CN105989015B (zh) 一种数据库扩容方法和装置以及访问数据库的方法和装置
WO2015180340A1 (zh) 一种数据挖掘方法及装置
US11288266B2 (en) Candidate projection enumeration based query response generation
KR102372251B1 (ko) 전역 최적화를 위한 강건한 k-평균 방법 및 그 장치
Agnesina et al. Improving FPGA-based logic emulation systems through machine learning
Hu et al. Massive parallelization of approximate nearest neighbor search on KD-tree for high-dimensional image descriptor matching
Sudhir et al. Replicated layout for in-memory database systems
CN104156268B (zh) 一种GPU上MapReduce的负载分配和线程结构优化方法
US9830355B2 (en) Computer-implemented method of performing a search using signatures
Antaris et al. In-memory stream indexing of massive and fast incoming multimedia content
US20130173647A1 (en) String matching device based on multi-core processor and string matching method thereof
KR102372252B1 (ko) 실루엣 평가 함수를 적용한 빠른 시뮬레이티드어닐링 데이터 클러스터링 방법 및 그 장치
JP6034240B2 (ja) 分析方法、分析装置および分析プログラム
Peng et al. An energy efficient approach for C4. 5 algorithm using OpenCL design flow
US20150254302A1 (en) Index-based optimization of convex hull and minimum bounding circle queries
García-Gil et al. Smart data driven decision trees ensemble methodology for imbalanced big data
Huang A two stages algorithm for feature selection based on feature score and genetic algorithms

Legal Events

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