DBSCAN 클러스터링 알고리즘에 대해

DBSCAN (밀도 기반 잡음 출원 공간 클러스터링) 알고리즘은 일반적인 밀도 기반 클러스터링 방식이다. 클러스터의 밀도가 연결된 것처럼 클러스터에 충분한 밀도 영역 분할을 할 수 있고, 클러스터는 임의의 형상이 잡음 데이터 스페이스에서 농축 될 수 발견 극대점이 정의 된 설정한다.

1. 기본 개념

EPS 및 MmPtS : DBSCAN 알고리즘은 두 가지 중요한 매개 변수가 있습니다. EPS 이웃 반경 중심 지점에서 임계 값을 정의하기 위해 밀도 MmPts 정의된다.

DBSCAN 알고리즘 데이터 포인트의 다음과 같은 세 가지 범주로 나누어.

1) 코어 포인트

객체가 반경 MmPts 분기 EPS 내에서 점의 수보다 더 많은 포함되어있는 경우, 객체는 핵심 포인트입니다.

2) 경계 지점

고용 허가제 MinPts 내용보다 다소 적은 반경의 개체 수 있지만, 객체가 핵심 포인트 근처로 떨어질 경우, 객체는 경계 지점입니다.

3) 소음 포인트

객체가 점이나 핵심 경계 지점도 인 경우, 객체는 노이즈 지점입니다.

더 간단하게, 인테리어 조밀 한 지역 포인트에 해당하는 핵심 포인트는, 경계 지점은 조밀 한 에지 지역, 노이즈 점에 스파 스 지역의 해당 지점에 대응.

도에 도시 된 바와 같이,도 1에서,이 MinPts = 5를 가정한다. 논리적 인코더 선 화살표 A 점 핵심 포인트이며, 경계 지점으로 점 B, 점 C는 포인트 잡음이다. 점은 그것의 EPS = 5를 통해 자사의 이웃 주당 순이익에 7 점을 포함하고 있기 때문에, 그것은 핵심 포인트입니다.

이 핵심 포인트되지 않도록하기 때문에 5 개 미만을 포함하는 그 근방 소수점 숫자 EPS에 지점 E 및 C는이고; A 점에서, 점 B가 경계점 때문에 점 B EPS의 근처로 떨어질; 때문에 점 C 그래서 노이즈 지점입니다, 이웃의 핵심 포인트 중 하나에 속하지 않습니다.

DBSCAN 개략적 데이터 포인트 형
도 1 DBSCAN 데이터 포인트 형 알고리즘을 개략적

또한 말하기, DBSCAN 알고리즘은 또한 다음과 같은 몇 가지 개념을 포함한다.

이름 설명
주당 순이익 이웃 간단히 말해, 즉, 이상 또는 주당 순이익의 모든 지점의 동일한 세트 작은 점의 거리.
최대의 직접 밀도 동네 주당 순이익 코어 점 Q에서 점 p가, p는 데이터 객체의 Q 데이터 오브젝트를 호출하면 바로 밀도에 도달 할 수 있습니다.
최대의 밀도 가닥의 데이터가있는 경우  에서  직접 밀도 도달, 데이터 객체 EPS 및 MinPts에 대한  데이터 개체에서  EpsMinPts 밀도-도달합니다.
링크 된 밀도 오브젝트 O 코어 샘플이 존재하는 경우 데이터 객체되도록 오브젝트 P 및 Q 객체는, p 및 q는 밀도라는 연결되어 밀도 O, P 및 Q에서 도달 가능한 객체이다. 분명히, 대칭성의 밀도가 연결된 데.
밀도 클러스터링 클러스터 모든 개체의 핵심 포인트와 클러스터를 구성하는 최대의 밀도 클러스터 밀도로 구성되어 있습니다.

개략적으로 안내 밀도와 밀도의 최대까지
도 2는 개략적으로 직접 도달 밀도 및 최대 농도 인

.도 2에서, A 점은 경계 지점으로 코어 점 b 점이며, 직접 연결할 밀도 B입니다. 그러나 B는 직접 (b는 아니기 때문에 핵심 포인트)까지의 밀도를하지 않습니다. 농도 (C)가 직접 도달하기 때문에 최대 밀도와 b되도록 에어콘, 최대의 직접 밀도는, (B)에. 밀도가 B에 직접 연결할 수 없기 때문에 그러나, 나 때문에 C까지의 밀도가 없습니다. 그러나 밀도 B와 C가 접속되어있다.

2 알고리즘 정보

DBSCAN 알고리즘은 클러스터의 최종 클러스터 컬렉션 최대 파생 관계의 최대 밀도 샘플 밀도이다 연결된 클러스터를 정의하는 것은 매우 간단하다.

DBSCAN의 클러스터 내부에 하나 이상의 핵심 포인트를 가질 수 있습니다. 하나의 핵심 포인트 경우, 다른 비 핵심 샘플 클러스터가이 시점 핵심 포인트 주당 순이익 인근 지역에 있습니다. 더 하나의 핵심 포인트가 아닌, 주당 순이익 인근의 어떤 지점의 핵심 클러스터가 다른 중앙 지점을해야하는 경우, 또는 다른이 두 가지 핵심 포인트 밀도에 도달 할 수 없습니다. DBSCAN 클러스터 클러스터의 모든 샘플의 핵심 컬렉션에서 이러한 점의 주당 순이익 이웃.

DBSCAN 알고리즘은 후술.

  • 입력 : 데이터 세트 된 EPS 반경 이웃, 근방 데이터 MinPts를 임계 수 개체;
  • 출력 : 차이나 유니콤 밀도 클러스터.

다음과 같이 프로세스입니다.

1) 임의의 점 (P)에 데이터 객체를 선택하는 데이터 세트로부터;

2) 만약 EPS 및 MinPts,이어서, p 형 농도 데이터 포인트에서 모든 도달 가능한 객체를 찾아 클러스터를 형성하는 코어 대상 점 (P)로 상기 선택된 데이터 포인트에 대한 매개 변수;

3)如果选取的数据对象点 p 是边缘点,选取另一个数据对象点;

4)重复(2)、(3)步,直到所有点被处理。

DBSCAN 算法的计算复杂的度为 O(n²),n 为数据对象的数目。这种算法对于输入参数 Eps 和 MinPts 是敏感的。

3. 算法实例

下面给出一个样本数据集,如表 1 所示,并对其实施 DBSCAN 算法进行聚类,取 Eps=3,MinPts=3。

表 1 DSCAN算法样本数据集
p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13
1 2 2 4 5 6 6 7 9 1 3 5 3
2 1 4 3 8 7 9 9 5 12 12 12 3

数据集中的样本数据在二维空间内的表示如图 3 所示。

개략적으로 안내 밀도와 밀도의 최대까지
图 3  直接密度可达和密度可达示意

第一步,顺序扫描数据集的样本点,首先取到 p1(1,2)。

1)计算 p1 的邻域,计算出每一点到 p1 的距离,如 d(p1,p2)=sqrt(1+1)=1.414。

2)根据每个样本点到 p1 的距离,计算出 p1 的 Eps 邻域为 {p1,p2,p3,p13}。

3)因为 p1 的 Eps 邻域含有 4 个点,大于 MinPts(3),所以,p1 为核心点。

4)以 p1 为核心点建立簇 C1,即找出所有从 p1 密度可达的点。

5)p1 邻域内的点都是 p1 直接密度可达的点,所以都属于C1。

6)寻找 p1 密度可达的点,p2 的邻域为 {p1,p2,p3,p4,p13},因为 p1 密度可达 p2,p2 密度可达 p4,所以 p1 密度可达 p4,因此 p4 也属于 C1。

7)p3 的邻域为 {p1,p2,p3,p4,p13},p13的邻域为 {p1,p2,p3,p4,p13},p3 和 p13 都是核心点,但是它们邻域的点都已经在 Cl 中。

8)P4 的邻域为 {p3,p4,p13},为核心点,其邻域内的所有点都已经被处理。

9)此时,以 p1 为核心点出发的那些密度可达的对象都全部处理完毕,得到簇C1,包含点 {p1,p2,p3,p13,p4}。

第二步,继续顺序扫描数据集的样本点,取到p5(5,8)。

1)计算 p5 的邻域,计算出每一点到 p5 的距离,如 d(p1,p8)-sqrt(4+1)=2.236。

2)根据每个样本点到 p5 的距离,计算出p5的Eps邻域为{p5,p6,p7,p8}。

3)因为 p5 的 Eps 邻域含有 4 个点,大于 MinPts(3),所以,p5 为核心点。

4)以 p5 为核心点建立簇 C2,即找出所有从 p5 密度可达的点,可以获得簇 C2,包含点 {p5,p6,p7,p8}。

第三步,继续顺序扫描数据集的样本点,取到 p9(9,5)。

1)计算出 p9 的 Eps 邻域为 {p9},个数小于 MinPts(3),所以 p9 不是核心点。

2)对 p9 处理结束。

第四步,继续顺序扫描数据集的样本点,取到 p10(1,12)。

1)计算出 p10 的 Eps 邻域为 {p10,pll},个数小于 MinPts(3),所以 p10 不是核心点。

2)对 p10 处理结束。

第五步,继续顺序扫描数据集的样本点,取到 p11(3,12)。

1)计算出 p11 的 Eps 邻域为 {p11,p10,p12},个数等于 MinPts(3),所以 p11 是核心点。

2)从 p12 的邻域为 {p12,p11},不是核心点。

3)以 p11 为核心点建立簇 C3,包含点 {p11,p10,p12}。

第六步,继续扫描数据的样本点,p12、p13 都已经被处理过,算法结束。

4. 算法优缺点

和传统的 k-means 算法相比,DBSCAN 算法不需要输入簇数 k 而且可以发现任意形状的聚类簇,同时,在聚类时可以找出异常点。

DBSCAN 算法的主要优点如下。

1)可以对任意形状的稠密数据集进行聚类,而 k-means 之类的聚类算法一般只适用于凸数据集。

2)可以在聚类的同时发现异常点,对数据集中的异常点不敏感。

3)聚类结果没有偏倚,而 k-means 之类的聚类算法的初始值对聚类结果有很大影响。

DBSCAN 算法的主要缺点如下。

1)样本集的密度不均匀、聚类间距差相差很大时,聚类质量较差,这时用 DBSCAN 算法一般不适合。

2)样本集较大时,聚类收敛时间较长,此时可以对搜索最近邻时建立的 KD 树或者球树进行规模限制来进行改进。

3) 복잡한 파라미터 거리 임계치 EPS는 주로 필요성을 디버깅 할 때, 이웃 샘플 MinPts 임계 파라미터 조정 관절의 수, 파라미터의 상이한 조합은 최종 클러스터링 결과에 큰 영향을 미친다.

4) 파라미터의 세트를 사용하여 세트의 전체 데이터. 데이터는 다른 밀도 또는 클러스터 중첩 농축 클러스터에있는 경우,이 알고리즘은 DBSCAN를 처리 할 수있다. 이 문제를 해결하기 위해서는 광학 알고리즘을 제안했다.

. 5) DBSCAN 노이즈 필터링 알고리즘은 또한 그러한 네트워크 보안 악성 공격 분야의 결정과 같은 특정 분야에 불편 함을 유발하는 단점 인 가리킬 수있다.

57 협회 데이터 마이닝 분석 규칙
58 선험적 알고리즘 FP 트리 알고리즘
(59) 의 큰 데이터 정밀 마케팅 기준
60 기반 개인화 추천 시스템 큰 데이터
61 빅 데이터 예측
62. 다른 큰 데이터 응용 프로그램
(63). 빅 데이터가있는 산업 사용할 수 있습니다
(64)을 금융 산업에 큰 응용 프로그램 데이터
65 인터넷 업계에서 빅 데이터 애플리케이션
66 물류 산업에서 빅 데이터의 응용 프로그램

추천

출처blog.csdn.net/yuyuy0145/article/details/92430089