본문 바로가기

Data Analysis

군집 분석을 위한 기초개념과 네트워크 분석

군집 분석을 위한 기초개념

군집 분석: 클러스터링은 정답을 알고 있을 경우 군집 분석은 정답을 알지 모르는 경우
뭔지 모르겠으나 공통적인 특징이 있는 것끼리 묶은 것
서로 유사한 정도에 따라 다수의 객체를 군집으로 나누는 작업 또는 이에 기반한 분석
군집내에 속하는 객체들의 특성은 유사하고 서로 다른 군집에 속하는 객체들의 특성은 서로 이질적이라는 가정으로 분류
계층 / 비계층 / 최적분화는 넘버링을 정하지 않고 어떤게 가장 좋은지

  1. 모듈성 : 노드가 특정 군집과는 가깝고 그 밖의 다른 군집과는 거리가 있는 정도를 나타냄
    ~요즘 가장 많이 쓰이는 네트워크 분석 방법 중 하나임~
  2. 공출현 : 공통으로 같이 출연하는 것. 자주 출현할 수록 관계가 높다 범위를 정하는게 핵심
    특정 범위 내에 있는 모든 노드들 간에 의미론적으로 상호 연관되는 관계가 있다고 가정

친한거끼리 묶고 다른거끼리 떨어뜨리는게 핵심!

군집화는 주관성이 있음 : 기준과 갯수에 따라 분석 결과가 상당히 달라짐. 결국 빅데이터 분석은 사람이 하는 것이다.
목적에 맞게 나누는게 중요하니까 목적이 중요
각 군집은 한 개 이상의 샘플을 포함하며 군집은 총 K개 = K개의 군집에 속한 샘플을 전부 합치면 내가 가진 전체 샘플 집합과 같음 (두개의 군집에 동시에 속할 수 없음, 무소속 X)
따로 떨어져 나온 데이터가 있어선 안됨. 모든걸 다워야된다. 서로 다른 군집은 동일한 샘플을 포함하지 않음
군집화의 최종목표

  1. 특징벡터 : 컴퓨터 알고리즘이 처리할 수 있는 수치적인 형태
  2. 데이터 간 유사도 : 2차원에서 두 지점 사이의 거리에 따라 분석
  3. 정규화: 특징 간의 값의 범위가 다르기 때문에 이것을 동일한 범위를 갖는 것처럼 맟추어 줌

 

계층적 군집화

군집 개수를 찾아가는 알고리즘. 군집 개수를 어떤 기준으로 정하는 것이 적절한가?
덴드로그램 : 특정 군집들을 그려 나가는 것. 아래로 갈 수록 유사도 높음

 

비계층적 군집화

가장 일반적으로 많이 쓰이는 자동화된 군집화 방법
군집의 개수를 미리 정해줘야 함
군집 중심 초기화(랜덤선택) -> 샘플들을 가장 가까운 군집에 할당 -> 군집 중심 재계산 -> 샘플들일 가장 가까운 군집에 할당 -> 군집 중심 재계산
점찍고 그룹화 시키고 반복
이런건 언제 쓸 수 있을까? 군집화할 때 제일 먼저 해야되는게 갯수 정하는거 (몇 개의 군집이 생길지)

 

네트워크 분석 정의 및 기초 개념

네트워크 이론: 독립적인 개념들(사람, 장소, 시간, 단어)간의 대칭 혹은 비대칭적인 관계를 그래프로 표현한 연구
사람간의 관계는 소셜네트워크 분석 단순히 sns가 아님

네트워크의 분석
-점: 노드 (객체)
-선: 에지 - 점을 이어 관계를 나타냄
-밀도: 네트워크가 얼마나 밀집되어 있는지를 계산하는 척도 / 0과1 사이 값

중심성
노드의 중요도를 계싼하는 척도. 중요도를 구성하는 요소에 따라 다양한 중심성이 존재

  1. 연결 중심성: 네트워크 상에서 한 노드가 얼마나 많은 연결 관계를 가지고 있는지 (핵인싸를 찾아내자)
  2. 근접 중심성
  3. 중계 중심성: 네트워크 상에서 특정 노드가 가른 노드들의 중간에서 얼마나 중개자 및 매개자 역할을 하고 있는지 측정하는 지표. 노드의 매개 중심성이 높을수록 네트워크 내에서 정보 및 자원의 흐름에 높은 통제력 확보
  4. 고유 벡터 중심성: 네트워크 상에서 소수 몇몇 영향력 높은 노드들에 연결되어 있는 것이 다수의 일반 노드들에 연결되어 있는 것보다 더 큰 영향력을 가짐
    ex) 핵인싸 친구 5명 가지고 있는게 더 낫다..

페이지랭크
방향성 네트워크에만 해당. ex) 구글 검색시스템 상단 페이지 노출
중요도가 놓은 페이지(노드)로부터 받는 링크(에지)가 많이 존재할 수록 페이지(노드)의 중요도를 높게 산출하는 방식

~네트워크 분석 배운걸로 어떤 비지니스에 적용할지 생각해보자~

 

네트워크 분석 소프트웨어

Gephi : 시각화 하는데 좋음. 무료. 수업 떄 사용할 예정
NodeXL : 엑셀에서 만든 무료 소프트웨어. 기능이 많이 없음. 의외로 사용하기 불편
Pajek : 대규모 네트워크 분석 및 시각화 전문 무료 소프트웨어
R : 통계 계산과 시각화에 쓰임
UCINET : 사회연결망 분석에 특화된 소프트웨어
NetMiner : 700만원짜리 프로그램

~중심성은 복습하자, 모듈러리티 등등.....~