Computer >> 컴퓨터 >  >> 프로그램 작성 >> 프로그램 작성

분할 알고리즘의 유형은 무엇입니까?

<시간/>

다음과 같은 두 가지 유형의 분할 알고리즘이 있습니다 -

K-평균 클러스터링 − K-means 클러스터링은 가장 일반적인 분할 알고리즘입니다. K-평균은 데이터 세트의 각 데이터를 새로 형성된 클러스터 중 하나만 재할당합니다. 레코드 또는 데이터 포인트는 거리 또는 유사성 측정을 사용하여 가장 가까운 클러스터에 할당됩니다. K-평균 클러스터링에는 다음 단계가 사용됩니다.

  • K 초기 클러스터 중심 c1를 선택할 수 있습니다. , c2 , c3 ... . ck .

  • 중심이 x에 가장 가까운 S 클러스터의 각 인스턴스 x를 할당할 수 있습니다.

  • 각 클러스터에 대해 해당 클러스터에 포함된 요소를 기반으로 중심을 다시 계산합니다.

  • 수렴이 완료될 때까지 (b)로 이동합니다.

  • 개체(데이터 포인트)를 K 클러스터로 분리할 수 있습니다.

  • 중심(중심) =클러스터에 있는 모든 데이터 포인트의 평균을 클러스터링하는 데 사용됩니다.

  • 중심이 가장 가까운 클러스터에 각 점을 할당할 수 있습니다(거리 함수 사용).

평균의 초기 값은 임의로 할당됩니다. 이것들은 무작위로 할당되거나 아마도 처음 k 입력 항목 자체의 값을 사용할 수 있습니다. 수렴 요소는 제곱 오차를 기반으로 할 수 있지만 그렇지 않아야 합니다. 예를 들어, 알고리즘은 다른 클러스터에 할당됩니다. 다른 종료 기술은 고정된 반복 횟수로 고정되어 있습니다. 수렴 없이도 쇼핑을 보장하기 위해 최대 반복 횟수를 포함할 수 있습니다.

알고리즘

입력

D = {t1t2 ... tn} // Set of elements
k // Number of desired clusters

출력

K // Set of clusters

K-평균 알고리즘 -

평균 m1에 대한 초기값 할당 m2 ... mk

반복

각 항목 ti를 평균이 가장 가까운 클러스터에 할당

각 클러스터에 대한 새 평균 계산

수렴 기준이 충족될 때까지

최근접 이웃 알고리즘 − 단일 링크 기법과 유사한 알고리즘을 최근접 이웃 알고리즘이라고 합니다. 이 직렬 알고리즘을 사용하면 항목이 가장 가까운 현재 클러스터로 반복적으로 결합됩니다. 이 알고리즘에서 임계값 t는 항목이 기존 클러스터에 삽입되는지 또는 새 클러스터가 생성되는지 결정할 수 있습니다.

알고리즘

입력

D = {t1t2 ... tn} // Set of elements
A // Adjacency matrix showing distance between elements

출력

K // Set of clusters
Nearest neighbour algorithm
   K1 = {t1};
   K = {K1};
   k = 1;
   for i = 2 to n do
      find the tm in some cluster Km in K such that dis {ti, tm} is the smallest;
      If dis {ti, tm} $\leqslant$ t then
      Km = Km $\cup$ ti
else
k = k + 1;
Kk = {ti}