R의 클러스터 분석: 당신이 필요로 하는 완전한 가이드 [2022]
게시 됨: 2021-01-04데이터 과학이나 Python의 세계에서 한 발짝이라도 내딛은 적이 있다면 R에 대해 들어봤을 것입니다.
GNU 프로젝트로 개발된 R은 그래픽 및 통계 컴퓨팅을 위해 설계된 언어이자 환경입니다. S 언어와 유사하므로 구현이라고 볼 수 있습니다.
언어로서 R은 확장성이 뛰어납니다. 시계열 분석, 선형 모델링, 비선형 모델링, 클러스터링, 분류, 고전적인 통계 테스트와 같은 다양한 통계 및 그래픽 기술을 제공합니다.
우리가 더 깊이 탐구할 이러한 기술 중 하나는 클러스터링 또는 클러스터 분석입니다!
목차
클러스터 분석이란 무엇입니까?
가장 간단한 용어로 클러스터링은 데이터를 유사도에 따라 여러 그룹으로 분할하는 데이터 분할 방법입니다.
유사성은 어떻게 평가됩니까? 관측 간 거리 측정을 기반으로 합니다. 이는 유클리드 또는 상관 기반 거리 측정일 수 있습니다.
클러스터 분석은 가장 인기 있고 어떤 면에서는 직관적인 데이터 분석 및 데이터 마이닝 방법 중 하나입니다. 방대한 데이터가 있고 이 데이터에서 통찰력을 추출해야 하는 경우에 이상적입니다. 이 경우 대량 데이터를 더 작은 하위 집합 또는 그룹으로 나눌 수 있습니다.
전체 데이터 세트에서 형성되고 파생되는 작은 그룹을 클러스터라고 합니다. 이는 하나 이상의 통계 작업을 수행하여 얻습니다. 각 클러스터는 서로 다른 요소를 포함하지만 다음 속성을 공유합니다.
- 그들의 숫자는 미리 알려져 있지 않습니다.
- 통계 작업을 수행하여 얻습니다.
- 각 클러스터에는 유사하고 공통된 특성을 가진 개체가 포함되어 있습니다.
클러스터 분석이라는 '멋진' 이름이 없어도 일상 생활에서 많이 사용됩니다.
개인 차원에서 우리는 휴가를 떠날 때 포장해야 하는 것들을 묶음으로 만듭니다. 첫 번째 옷, 그 다음 세면도구, 책 등입니다. 우리는 카테고리를 만든 다음 개별적으로 처리합니다.
기업은 이메일 목록에서 세분화를 수행하고 연령, 경제적 배경, 이전 구매 행동 등을 기반으로 고객을 분류할 때도 클러스터 분석을 사용합니다.
클러스터 분석은 '비지도 머신 러닝' 또는 패턴 인식이라고도 합니다. 특정 샘플만을 특정 샘플로 분류하려고 하지 않기 때문에 감독되지 않습니다. 알고리즘이 클러스터링하는 방법도 배우기 때문에 학습합니다.
3 클러스터링 방법
클러스터링에 가장 자주 사용되는 세 가지 방법이 있습니다. 이것들은:
- 응집적 계층적 클러스터링
- 관계형 클러스터링 / Condorcet 방법
- k-평균 클러스터링
1. 응집적 계층적 클러스터링
이것은 계층적 클러스터링의 가장 일반적인 유형입니다. AHC 알고리즘은 상향식으로 작동합니다. 각 데이터 포인트를 자체 클러스터(리프라고 함)로 간주하는 것으로 시작합니다.
그런 다음 가장 유사한 두 클러스터를 결합합니다. 이러한 새롭고 더 큰 클러스터를 노드라고 합니다. 그룹화는 전체 데이터 세트가 루트라는 하나의 큰 클러스터로 모일 때까지 반복됩니다.
AHC 프로세스의 각 단계를 시각화하고 그리면 덴드로그램이라는 트리가 생성됩니다.
AHC 프로세스를 반대로 하면 분열 클러스터링과 클러스터 생성이 발생합니다.
덴드로그램은 다음과 같이 시각화할 수도 있습니다.
원천
결론적으로 작은 클러스터를 잘 식별하는 알고리즘을 원한다면 AHC로 가십시오. 큰 클러스터를 식별하는 데 좋은 클러스터를 원하면 분할 클러스터링 방법을 선택해야 합니다.
2. 관계형 클러스터링/ Condorcet 방법
'유사성 집계에 의한 클러스터링'은 이 방법의 또 다른 이름입니다. 다음과 같이 작동합니다.
전역 클러스터링을 구성하는 쌍의 개별 개체가 비교됩니다. 벡터 m(A, B) 및 d(A, B)에는 개별 값 쌍(A, B)이 할당됩니다. 벡터 b(A, B)에서 A와 B는 모두 동일한 값을 갖는 반면, 벡터 d(A, B)에서는 둘 다 다른 값을 갖습니다.
A와 B의 두 개별 값은 다음과 같이 Condorcet 기준을 따른다고 합니다.
c(A, B) = m(A, B)- d(A, B)
A와 같은 개별 값과 S라는 클러스터의 경우 Condorcet 기준은 다음과 같습니다.
c(A,S) = Σ i c(A,B i )

전체 합은 Bi ∈ S입니다.
위의 조건이 충족되면 c(A, S) 형식의 클러스터가 구성됩니다. A는 0의 가장 작은 값을 가질 수 있으며 클러스터의 모든 데이터 요소 중 가장 큰 값입니다.
마지막으로 전역 Condorcet 기준이 계산됩니다. 이것은 A에 있는 개별 데이터 포인트와 이를 포함하는 클러스터 S A 의 합계를 수행하여 수행 됩니다.
위의 단계는 전역 Condorcet 기준이 개선되지 않거나 최대 반복 횟수에 도달할 때까지 반복됩니다.
3. k-평균 클러스터링
이것은 가장 널리 사용되는 분할 알고리즘 중 하나입니다. 사용 가능한 모든 데이터(때때로 데이터 포인트/관측이라고도 함)는 이러한 클러스터로만 그룹화됩니다. 알고리즘이 어떻게 진행되는지에 대한 분석은 다음과 같습니다.
- k 클러스터를 무작위로 선택 합니다. 이 k 개의 행은 또한 각 클러스터에 대해 k개의 중심을 찾는 것을 의미 합니다.
- 그런 다음 각 데이터 포인트는 가장 가까운 중심에 할당됩니다.
- 더 많은 데이터 포인트가 할당됨에 따라 중심은 추가되는 모든 데이터 포인트의 평균으로 다시 계산됩니다.
- 계속해서 데이터 포인트를 할당하고 필요에 따라 중심을 이동합니다.
- 클러스터를 변경하는 데이터 포인트가 없을 때까지 3단계와 4단계를 반복합니다.
데이터 점과 중심 사이의 거리는 다음 방법 중 하나를 사용하여 계산됩니다.
- 유클리드 거리
- 맨해튼 거리
- 민로스키 거리
이들 중 가장 인기 있는 것인 유클리드 거리(Euclidean distance)는 다음과 같이 계산됩니다.
알고리즘이 실행될 때마다 결과적으로 다른 그룹이 반환됩니다. 변수 k 에 대한 첫 번째 할당 은 완전히 무작위입니다. 이것은 k-평균을 첫 번째 선택에 매우 민감하게 만듭니다. 결과적으로 그룹의 수와 전체 관측치가 적지 않으면 동일한 클러스터링을 얻는 것이 거의 불가능합니다.
k 에 값을 할당하는 방법은 무엇입니까?
처음에는 결과가 향하는 방향을 지시하는 값을 k 에 무작위로 할당할 것입니다. 최상의 선택이 이루어지도록 하려면 다음 공식을 염두에 두는 것이 좋습니다.
여기서 n 은 데이터 세트의 데이터 포인트 수입니다.
공식의 존재 여부에 관계없이 클러스터의 수는 데이터 세트의 특성, 데이터 세트가 속한 산업 및 비즈니스 등에 크게 의존합니다. 따라서 자신의 경험과 직관에도주의를 기울이는 것이 좋습니다.
잘못된 클러스터 크기를 사용하면 그룹화가 효과적이지 않을 수 있으며 과적합이 발생할 수 있습니다. 과적합으로 인해 알고리즘이 작은 세부 사항을 추출하고 모든 일반화가 손실되기 때문에 새 데이터 포인트가 클러스터에서 위치를 찾지 못할 수 있습니다.
클러스터 분석의 응용
그렇다면 강력한 클러스터링 방법은 정확히 어디에 사용됩니까? 위에서 몇 가지 예를 간략하게 언급했습니다. 다음은 몇 가지 추가 사례입니다.
의학 및 건강
환자의 연령과 유전적 구성을 기반으로 의사는 더 나은 진단을 제공할 수 있습니다. 이것은 궁극적으로 더 유익하고 정렬된 치료로 이어집니다. 신약도 이런 식으로 발견할 수 있습니다. 의학에서 클러스터링을 nosology라고 합니다.
사회학
사회 영역에서 인구 통계, 연령, 직업, 거주 위치 등을 기준으로 사람들을 클러스터링하는 것은 정부가 법률을 시행하고 다양한 그룹에 적합한 정책을 형성하는 데 도움이 됩니다.
마케팅
마케팅에서 클러스터링이라는 용어는 세분화/유형 분석으로 대체됩니다. 특정 제품의 잠재 구매자를 탐색하고 선택하는 데 사용됩니다. 그런 다음 회사는 각 클러스터의 요소를 테스트하여 어떤 고객이 유지를 선호하는지 파악합니다.
사이버 프로파일링
여기서 구현될 클러스터링 알고리즘에 대한 입력으로 사용자가 접속한 과거 웹페이지가 입력된다. 그런 다음 이러한 웹 페이지가 클러스터링됩니다. 결국, 브라우징 활동을 기반으로 사용자의 프로필이 생성됩니다. 개인화에서 사이버 안전에 이르기까지 이 결과는 어디에서나 활용할 수 있습니다.
소매
아울렛은 또한 연령, 색상 선호도, 스타일 선호도, 과거 구매 등을 기준으로 고객을 클러스터링하는 이점을 누릴 수 있습니다. 이를 통해 소매업체는 맞춤형 경험을 만들고 고객의 요구에 맞는 미래 제품을 계획할 수 있습니다.
결론
분명히 알 수 있듯이 클러스터 분석은 구현되는 언어나 환경에 관계없이 매우 가치 있는 방법입니다. 통찰력을 도출하거나, 패턴을 추출하거나, 프로필을 작성하려는 경우 클러스터 분석은 다음을 수행할 수 있는 결과를 제공하는 매우 유용한 도구입니다. 실질적으로 시행한다. 다양한 클러스터링 알고리즘 작업에 능숙하면 정확하고 진정으로 가치 있는 데이터 분석을 수행할 수 있습니다.
세계 최고의 대학에서 데이터 과학 과정 을 배우십시오 . 이그 제 큐 티브 PG 프로그램, 고급 인증 프로그램 또는 석사 프로그램을 획득하여 경력을 빠르게 추적하십시오.