본문 바로가기
자격증/ADsP

ADsP #17

by 카너먼 2023. 2. 21.

오늘 공부한 내용

03 _ 군집분석

__1. 군집분석

__2. 계층적 군집분석

__3. 혼합 분포 군집

__4. 자기조직화지도(SOM)

__핵심문제


공부한 내용 정리

03 군집분석

1. 군집분석

(1) 군집분석 개요

(2) 거리 측도

① 변수가 연속형인 경우

  • 유클라디안 거리
    • 두 점 사이의 거리를 계산할 때 널리 쓰임.
    • 두 점 사이의 가장 짧은 거리 계산.
    • 변수들의 산포정도를 감안하지 않음
  • 맨하튼 거리
    • '시가거리', 두 점 사이를 가로지르지 않고 길을 따라 갔을 때의 거리.
    • 변수의 차이의 단순합으로 계산한 거리
  • 체리셰프 거리
    • 변수 간 거리 차이 중 최댓값을 데이터 간의 거리
  • 표준화 거리
    • 유클라디안 거리에서 변수 간 차이로 어떤 변수가 거리 측정에 크게 기여하지 못하는 문제를
    • 표준 편자로 나눔으로써 해결
  • 마할라노비스 거리
    • 표준화 거리가 고려하지 못한 변수 간 상관성까지 고려 (공분산)
  • 민코프스키 거리
    • 유클라디안 거리와 맨하튼 거리를 한 번에 표현한 거리.
    • m=1일 때는 맨하튼 거리, m=2일 때는 유클라디안 거리.

표준화와 정규화

표준화: 관측치들이 평균으로부터 얼마나 떨어져 있는지를 나타낼 때 사용.

정규화: 모든 데이터의 범위를 0과 1 사이로 변환하여 분포를 조정

 

② 변수가 범주형인 경우

  • 단순일치 계수
    • 두 객체 간 상이성을 불일치 비율로 계산.
  • 자카드 지수
    • 두 집합 간의 유사도 측정.
    • 두 집합이 같으면 1, 다르면 0
  • 자카드 거리
    • 자카드 지수를 거리화하기 위해 완전히 다르면 먼 거리를 갖는 1로, 완전 동일하면 거리를 0으로 변환하기 위해 1에서 자카드 지수를 뺀 값.
  • 코사인 유사도
    • 문서(텍스트)의 유사도 측정. 크기가 아닌 방향성을 측정.
    • 완전히 일치하면 1의 값. 완전히 다르면 -1.
  • 코사인 거리
    • 코사인 유사도를 거리화하기 위해 1에서 코사인 유사도를 뺀 값이다.
  • 순위 상관 계수
    • 순서척도인 두 데이터 사이의 거리를 측정하기 위한 지표 스피어만 상관계수를 사용.

2. 계층적 군집분석

(1) 계층적 군집분석 개요

개별 관측치 간의 거리를 계산해서 가장 가까운 관측치부터 결합해나가면서 계층적 트리 구조를 형성, 이를 통해 군집화를 수행하는 방법

(2) 군집 간의 거리

단일 연결법 최단 연결법. 생성된 군집과 기존의 데이터들의 거리를 가장 가까운 데이터로 계산하는 방법. 대부분 관측치가 멀리 떨어져 있어도 하나의 관측치만 다른 군집과 가까이 있으면 병합이 가능하다.
완전 연결법 최장연결법. 생성된 군집과 기존의 데이터들의 거리를 가장 먼 데이터로 계산하는 방법. 내부 응집성에 중점을 둔 방법으로 둥근 형태의 군집이 형성
평균 연결법 생성된 군집과 기존의 데이터들의 거리를 군집 내 평균 데이터로 계산하는 방법. 계산량이 불필요하게 많아질 수 있으며 단일연결법과 완전연결법보다 이상치에 덜 민감하다.
중심 연결법 각 군집의 중심점 사이의 거리를 거리로 정의한 방법. 평균연결법보다 계산량이 적고, 모든 관측치 사이의 거리를 측정할 필요 없이 중심 사이의 거리를 한 번만 계산한다.
와드 연결법 생성된 군집과 기존의 데이터들의 거리를 군집 내 오차가 최소가 되는 데이터로 계산하는 방법. 비슷한 크기의 군집끼리 병합하는 경향이 있으며 군집 내 분산을 최소로 하기 때문에 좀 더 조밀한 군집이 생성될 수 있다.

 

(3) 비계층적 군집분석

① k-means 군집

  • 군집의 수(k개)를 사전에 정한 뒤 집단 내 동질성과 집단 간 이질성이 모두 높게 전체 데이터를 k개의 군집으로 분할하는 방법
  • 군집의 수 k의 초깃값을 설정하고 각각의 k를 설명할 변수의 값을 임의로 설정하거나 데이터 중에서 k개를 선택한다. 이때 임의로 설정된 k개의 데이터를 seed라 한다.

② k-means 군집의 방법

  1. 군집의 수 K의 초깃값을 설정하고 각각의 K를 설명할 변수의 값을 임의로 설정하거나 데이터 중에서 K를 선택한다. 이때 임의로 설정된 K개의 데이터를 seed라 한다.
  2. 각 데이터를 가장 가까운 seed로 이동한다.
  3. 각 군집의 데이터들 사이의 평균값 혹은 중앙값을 계산하여 새로운 seed를 설정한다.
  4. 새로운 seed를 중심으로 군집을 재할당한다.
  5. 각 군집의 중심이 변하지 않을때(모든 데이터가 이상적으로 군집화될 때)까지 3,4번 과정을 반복한다.

③ k-means 군집의 특징

장점 단점
분석 기법의 적용이 비교적 빠르고 단순하다.
다양한 데이터에서 사용이 가능하다.
초깃값 K개의 설정이 어렵다.
결과의 해석에 어려움이 있다.
데이터의 변수들이 연속형 변수여야 한다.
안정된 군집은 보장하나 최적의 보장은 없다.
이상값에 민감하게 반응한다.
(평균 대신 중앙값을 사용하기도 한다.)

 

집단 내 제곱합 그래프:

K-평균 군집의 초깃값 설정의 편의를 위해

집단 내 제곱합 그래프는 K의 값을 1부터 늘려가면서 K-평균 군집 기법을 적용하였을 때

모든 데이터들이 각 군집의 중심으로부터 떨어진 거리를 제곱하여 합한 값을 나타낸 그래프.

군집의 수가 많을수록 집단 내 제곱합 값은 감소하지만 특정 K값 이후 감소량이 급격히 적어진다.

 

④ DBSCAN(Density Based Spatial Clustering of Applications with Noise)

  • 밀도 기반 군집분석의 한 방법
  • 개체 간의 거리에 기반을 둔 다른 군집 방법 알고리즘과는 다르게 개체들이 밀집한 정도에 기초해 군집을 형성
  • k-means 알고리즘과는 다르게 군집의 형태에 구애받지 않아 데이터의 분포가 기하학적이고 노이즈가 포함된 데이터 셋에서도 효과적, 초기 군집의 수를 수정할 필요가 없다.

 

3. 혼합 분포 군집

(1) 혼합 분포 군집 개요

데이터들이 몇 개의 확률분포로 구성되어 있는지, 각각의 확률분포와 모수(평균, 분산)와 그 확률 분포가 전체 데이터에서 차지하는 비중(가중치)을 찾는 것이 혼합 분포 군집의 핵심이다. 이때 모수와 가중치를 추정하는 방법으로는 EM(기댓값 최대화)가 있다.

(2) EM 알고리즘

  • 기대값 최대화(EM, Expectation Maximnization) 알고리즘은 확률모델의 최대가능도를 갖는 모수와 함께 그 확률 모델의 가중치를 추정하고자 한다.
  • 각 데이터가 어느 분포에 추출된 데이터 인지 각 집단(잠재변수, Z)로부터 기댓값을 구할 수 있다. 이때 추정된 기댓값을 활용하여 로그-가능도 함수가 최대로 하는 모수를 찾을 수 있다.
  • 알고리즘으로 두 가지 단계(E-Step, M-Step)로 구성되어 있다.

가능도

우도, 관측된 데이터가 특정 분포를 따를 가능성을 의미

 

로그-가능도 함수

가능도 함수의 로그 형태

지수 형태를 갖는 함수식이나 미분과 같은 계산상의 편의를 위해 사용

(3) EM 알고리즘 과정

  1. [E-Step] 파라미터(모수) 설정
  2. [E-Step] Z의 기대값 계산
  3. [M-Step] 새로운 파라미터 추정
  4. [M-Step] 알고리즘 반복 및 종료

4. 자기 조직화 지도(SOM)

(1) 자기조직화지도 개요

=코호넨 맵

인공신경망 기반 차원 축소와 군집화를 동시에 수행할 수 있는 알고리즘

 

(2) 자기조직화지도 구성

은닉층을 보유한 다층 신경망과 달리 은닉층이 없이 j개의 데이터를 입력받은 입력층

이를 n개의 노드(뉴런)로 표현하고자 하는 경쟁층

입력층의 모든 데이터는 경쟁층의 모든 노드와 완전 연결되어 있다.

각 학습 단계 마다 임의의 프로토 타입 벡터(갱쟁층의 각각의 뉴런)와의 거리를 유클라디안 거리에 의해 계산하고 비교

이때 입력층의 표본 벡터에 가장 가까운 프로토타입 벡터를 BMU(Best-Matching Unit)라 부른다.

최종적으로 경쟁층에 있는 노드들 중 가장 가까운 하나의 노드에만 도달하게 되는데, 그 노드를 승자노드라 한다.

 

(3) 자기조직화지도 과정

  1. 초기 학습률과 임의의 값의 가중치 행렬, 경쟁층의 노드 개수를 지정한다.
  2. 입력 벡터(첫 번째 테이터)를 제시하고 가중치 행렬에 의하여 가장 가까운 노드에 나타낸다.
  3. 입력 벡터에 대한 승자노드가 입력 벡터를 더 잘 나타내도록 학습률을 사용하여 해당 가중치를 조정한다.
  4. 2단계로 돌아가서 반복하여 모든 입력 벡터를 승자노드에 나타낸다. 모든 입력 벡터가 승자노드에 표시되는 과정을 1외의 반복이라 한다.

(4) 자기조직화지도 특성

장점 단점
순전파 방식을 사용하여 속도가 매우 빠르다.
저차원의 지도로 형상화되어 시각적 이해가 쉽다.
패턴 발견 및 이미지 분석에서 성능이 우수하다.
입력 데이터에 대한 속성을 그대로 보존한다.
초기 학습률 및 초기 가중치에 많은 영향을 받는다.
경쟁층의 이상적인 노드의 개수를 결정하기 어렵다.

군집분석 모형의 평가

  • 군집분석을 수행할 때 수립한 군집분석 모형이 얼마나 타당성을 갖는지 알아보기 위해
  • 군집 간 분산이 최대가 되는 군집의 개수가 몇 개인지,
  • 또 군집 내 분산이 최소가 되는 군집의 개수가 몇 개인지 확인한다.
  • 이를 찾아내는 것이 바로 군집 모형의 타당성 평가이다. 

외부 평가

  • 자카드 계수 평가
  • 분류 모형 평가 방법을 응용

내부 평가

  • 단순 계산법
  • 군집 간의 거리를 계산하여 평가
  • 실루엣 계수
  • 엘보 메소드

협업 필터링

수많은 사람들로부터 유사한 사람들을 찾고 유사한 사람들이 선호했거나 경험한 것을 예측하는 추천 방법 중 하나.


 
2023 이지패스 ADsP 데이터분석 준전문가
2023년 ADsP 시험 합격을 위한 최신 기출문제 완벽 분석! 총 860문항 압도적 문제 수 + 수험서 앱(16회차 기출 및 모의고사 수록) 제공!
저자
전용문, 박현민
출판
위키북스
출판일
2023.01.16

※ 해당 책으로 공부한 내용입니다.

 

 

'자격증 > ADsP' 카테고리의 다른 글

ADsP #18  (0) 2023.02.23
ADsP #16  (0) 2023.02.20
ADsP #15  (0) 2023.02.17
ADsP #14  (0) 2023.02.16
ADsP #13  (0) 2023.02.15