PART02 빅데이터 탐색 - CHAPTER02 데이터 탐색 - (2)

전유진·2021년 11월 28일
0

빅데이터분석기사

목록 보기
4/6

02 고급 데이터 탐색

1. 시공간 데이터 탐색

1) 시공간 데이터의 개념

공간적 정보에 시간의 흐름이 결합된 다차원 데이터를 의미함.

(1) 시간 데이터

  • 유효 시간: 데이터가 발생하거나 소멸된 시간
  • 거래 시간: 관리시스템을 통해 처리된 시간
  • 사용자 정의 시간: 유효 시간이나 거래 시간이 없는 경우 사용자가 정의한 시간
  • 스냅샷 데이터: 시간개념이 필요하지 않아서 거래/유효시간 미지원
  • 거래시간 데이터 / 유효시간 데이터: 각각 거래시간, 유효시간만 지원
  • 이원 시간 데이터: 거래시간, 유효시간 모두를 지원

(2) 공간 데이터

  • 비공간 타입: 기본적인 데이터 유형을 가진 속성
  • 래스터 공간 타입: 실세계에 존재하는 객체의 이미지 (그리드에서 픽셀로 표현됨)
  • 벡터 공간 타입: 점, 선, 면 등의 요소로 구성
  • 기하학적 타입: 벡터 타입의 요소로부터 거리, 면적, 길이 등과 같은 유클리드 기하학 계산 값으로 표현
  • 위상적 타입: 공간 객체 간의 관계. 방위, 공간객체간의 중첩, 포함, 교차, 분리 등과 같은 위치적 관계로, 보통 처리 시 대량의 공간을 필요로 하기 때문에 따로 저장되지 않고 필요 시에 공간객체로부터 동적으로 계산한다.

(3) 공간 데이터 모델

  • 관계형 모델: 데이터의 표현이 유연하지 못하며 실세계 공간의 객체 특징을 적절히 표현하지 못하는 문제점이 있음.
  • 객체지향 모델
    • 비구조적이고 복잡한 데이터를 잘 표현한다
    • 데이터 계층 구조를 이용한 연산이 쉽다
    • 새로운 함수 확장이 쉽다
    • 데이터 무결성 검사가 쉽다
    • 설계 단계와 구현단계 모델 사이의 불일치 문제를 줄인다

(4) 시공간 데이터

시간 데이터와 공간 데이터의 결합 형태.

기본적으로 위치, 영역 등의 공간 정보는 시간의 흐름에 다라 변화하므로 실제 객체들은 공간적 정보와 시간적 정보 모두와 연관이 있다.


2) 시공간 데이터 분석

(1) 시공간 데이터에 대한 질의어

시공간자료는 정의언어와 조작언어로 구분한다.

  • 시공간자료 정의언어: 시공간 테이블 인덱스 및 뷰의 정의문, 변경문 등. 공간적 속성과 시간적 속성을 동시에 포함하며 점, 선, 면 등의 공간속성 타입이 추가되어 있다.
  • 시공간자료 조작언어: 객체의 삽입, 삭제, 변경 등의 검색문. 시간지원 연산자와 공간 연산자를 포함하여, 이를 통해 객체에 대한 공간관리와 이력정보를 제공함.

(2) 시공간 데이터의 연산

  • 시공간위상 관계연산

    두 객체 간 시공간영역상의 관계에 대해 참/거짓을 반환하는 연산.

    대표적으로 교차(intersection) 연산자는 공간관계의 경우 선과 선의 교차, 선과 면의 교차 여부를 반환하며, 시간관계의 경우 두 객체의 유효시간 정보를 기반으로 선후관계를 평가하여 참/거짓을 반환한다.

  • 시공간기하 연산

    공간기하 연산자 + 시간구성 연산자 결합으로 표현. 두 객체간의 거리(distance) 연산을 지칭한다.

(3) 적용 및 응용분야

시공간 데이터 기술은 지리정보시스템, 위치기반 서비스, 차량 위치추적 서비스 등에 활용된다.



2. 다변량 데이터 탐색

다변량 데이터 탐색은 기본적으로 변수들간 인과관계를 규명하고 분석하거나, 변수들 간의 상관관계를 이용하여 변수를 축약하거나, 개체들을 분류하고 관련된 분석방법들을 동원해 분석하는 것이다.


1) 종속변수와 독립변수 사이의 인과 관계

(1) 다중회귀(Multiple Regression)

독립변수가 2개 이상인 회귀모형을 지칭하며, 각 독립변수는 종속변수와 선형관계에 있음을 가정한다.

  • 장점

    • 변수를 추가하여 분석내용의 질적 향상을 도모할 수 있다. (단순회귀분석의 단점 극복)
    • 독립변수가 여럿일 때 단순회귀모형을 선택하면 변수가 누락됨으로써 계수 추정량에 대한 bias가 야기되는데 이를 제거할 수 있다.
  • 일반 형식

    • k개의 독립변수가 종속변수 Y를 설명한다.

      Y=α1X1+α2X2++αkXk+β+ϵkY = \alpha_1 X_1 + \alpha_2 X_2 + \cdots + \alpha_k X_k + \beta + \epsilon_k

      추정해야 할 모수는 αi\alpha_i k개(기울기), β\beta(절편) 까지 총 k + 1개이다.


  • 기본 가정

    • 회귀모형은 모수에 대해 선형인 모형이다.
    • 오차항의 평균은 0이다.
    • 오차항의 분산은 모든 관찰치에 대해 σ2\sigma^2 의 일정한 분산을 갖는다.
    • 각 오차항은 서로 독립이며 즉 공분산은 0이다.
    • 각 독립변수 역시 서로 독립니다.
    • 오차항은 정규분포를 따르며 N(0,σ2)N(0, \sigma^2) 이다.

  • 분석 방법

    최소자승법을 이용해 결과를 도출할 수 있다.


(2) 로지스틱 회귀(Logistic Regression)

종속변수가 이항형일 때 사용된다.

  • 특징

    • 선형모델과의 차이점

      • 이항형인 데이터에 적용하였을 때 y의 결과가 범위 [0,1]로 제한된다.
      • 종속변수가 이진적이기 때문에 조건부 확률 P(yx)P(y|x)​​ 의 분포가 정규분포가 아닌 이항분포를 따른다.
      G(x)=ex1+ex  :로지스틱 모형 함수(시그모이드 함수)G(x) = \frac{e^x}{1 + e^x} ~~ : \text{로지스틱 모형 함수(시그모이드 함수)}
    • 종속변수의 형태는 연속변수 또는 이산변수로 구분된다.


(3) 분산분석(ANOVA: Analysis of Variance)

3개 이상의 표본 집단 간의 차이를 표본평균 간의 분산과 표본 내의 관측치 간 분산을 비교하여 가설을 검정하는 것이다.

[이미지 출처:https://www.tibco.com/ko/reference-center/what-is-analysis-of-variance-anova]

분산분석 시에는 다음 3가지 가정이 전제되어야 한다.

  1. 정규성 가정

    • 각 모집단에서 종속변수 Y는 정규분포를 따른다. 각 집단별 Y의 평균은 다를 수 있다.
  2. 분산의 동질성 가정

    • Y의 모집단 분산은 각 집단별로 동일하다.
  3. 관찰의 독립성 가정

    • 각 모집단에서 표본들은 독립적으로 추출된다.

  • 일원분산분석(One-Way ANOVA)

    하나의 변인에 의해 발생하는 여러 표본집단간 평균 차이를 검정

    • 독립변수 1개, 종속변수 1개
    • 종속변수와 정수값을 갖는 요인변수가 하나씩 정의되어야 한다.

    ex) 3개 학급(A, B, C) 간 담임선생님 담당과목(독립변수)에 따른 성적(종속변수)의 평균 차이


(4)다변량 분산분석(Multi Variate ANOVA)

여러 개의 변인에 의해 발생하는 여러 표본집단간 평균 차이를 검정

  • 이원분산분석(Two-Way ANOVA)

    • 독립변수 2개, 종속변수 1개

    ex) 3개 학급(A, B, C) 간 담임선생님 담당과목(독립변수1)과 학생들의 성비(독립변수2)에 따른 성적(종속변수)의 평균 차이

  • 다원변량분산분석

    • 독립변수 1개, 종속변수 2개

      ex) 3개 학급(A, B, C) 간 담임선생님 담당과목(독립변수)에 따른 성적(종속변수1)과 학생만족도(종속변수2)의 평균 차이

    • 독립변수 2개, 종속변수 2개

      ex) 3개 학급(A, B, C) 간 담임선생님 담당과목(독립변수1)과 학생들의 성비(독립변수2)에 따른 성적(종속변수1)과 학생만족도(종속변수2)의 평균 차이


ANOVA 더 알아보기

실험 예) 다양한 당뇨병 약물의 효과를 연구할 목적으로 약물 유형과 그에 따른 혈당 수치 사이의 관계를 설정하고 실험하여 조사합니다. 표본 집단은 사람들의 집합입니다. 샘플 모집단을 여러 그룹으로 나누고 각 그룹은 시험 기간 동안 특정 의약품을 투여받습니다. 시험 기간이 끝나면 각 대상자의 혈당 수치를 측정합니다. 그런 다음 각 그룹에 대해 평균 혈당 수치를 계산합니다. ANOVA는 F-검정을 통해 이러한 그룹간 평균이 통계적으로 다른지 또는 유사한 지 검정합니다.

ANOVA의 결과는 'F 통계량'입니다. F 통계량은 두 분산의 비율을 의미하며, 일원분산분석의 경우 다음과 같이 계산됩니다.

F=표본 평균 간 변동표본 내 변동F = \frac{\text{표본 평균 간 변동}}{\text{표본 내 변동}}

즉 F통계량은 그룹 내 분산과 그룹 간 분산 간의 차이를 보여주며, 궁극적으로 귀무 가설(그룹 평균 사이에 차이가 없다)이 지지되거나 기각된다는 결론을 내릴 수 있는 그림을 생성합니다. 그룹간에 유의한 차이가 있는 경우 귀무 가설이 기각되며 F 통계량 값은 커집니다.

각 그룹의 평균값이 달라도 이는 독립 변수(약물종류)가 종속 변수(혈당수치)에 미치는 영향이 아니라 표본샘플링 오류 때문일 수 있습니다. 샘플링 오류로 인한 경우 그룹 평균 간의 차이는 의미가 없습니다. ANOVA를 사용하여 평균값의 차이가 통계적으로 유의한지 확인할 수 있습니다. 즉, ANOVA는 독립 변수가 종속 변수에 영향을 미치는지를 간접적으로 보여줍니다. 위의 혈당 수준 실험에 대한 ANOVA 검정결과 그룹 평균이 통계적으로 유의하지 않고 그룹 평균 간의 차이가 샘플링 오류 때문이라는 것을 발견했다면, 약물의 유형(독립 변수)이 혈당 수치에 영향을 미치는 중요한 요소가 아니라는 것을 추론하게 됩니다.

ANOVA는 최소 두 그룹의 평균간에 유의한 차이가 있는지 여부만 알 수 있지만 어떤 쌍에서 평균이 다른지는 설명할 수 없습니다. 평균값이 다른 그룹을 찾아내기 위해서는 다른 통계 방법을 함께 사용해야 합니다.

ANOVA를 통해 독립 변수가 목표 변수에 영향을 미치는지 확인할 수 있으며, 그에 따라 입력 변수의 수를 최소화하여 모델의 복잡성을 줄일 수 있습니다.

출처: https://www.tibco.com/ko/reference-center/what-is-analysis-of-variance-anova,
https://blog.minitab.com/ko/adventures-in-statistics-2/understanding-analysis-of-variance-anova-and-the-f-test


2) 변수 축약

변수들간의 상관관계를 이용하여 변수를 줄이는 방법으로 변수유도기법이라고도 함.


(1) 주성분분석(PCA: Principal Component Analysis)

다변량자료에서 존재하는 비정규성(abnormality)이나 이상치(outlier)를 발견하기 위해 변수들의 상관관계(또는 공분산)가 존재하지 않는 새로운 변수(주성분)를 구하는 것


(2) 요인분석(Factor Analysis)

변수들 간의 상관관계를 분석하여 공통차원을 소수의 요인(factor)들로 축약. 즉, 데이터 내의 잠재적인 요인을 발견하기 위한 분석방법.

  • 목적
    • 변수축소: 여러 개의 변수(변인)들을 하나의 요인으로 묶음
    • 데이터 요약: 여러 개의 변수(변인)들을 몇 개의 공통된 집단(요인)으로 묶음으로써 자료의 복잡성을 줄이고 정보를 요약할 수 있음
    • 불필요한 변수제거: 요인(변인군)으로 묶이지 않은 (=중요하지 않은) 변수들을 제거
    • 변수 특성파악 : 변인들 내에 존재하는 상호독립적인 특성을 발견
    • 측정도구의 타당성 검증: 동일한 개념을 측정한 변인들이 동일한 요인으로 묶이는지 여부를 확인함으로써 측정 도구가 타당한지 검증
    • 요인점수를 통한 변수 생성

특징

  • 독립변수/종속변수의 개념이 없다
  • 추론통계가 아닌, 상관분석 등의 기술통계기법을 이용해 수행한다

(3) 정준상관분석(Canonical Analysis)

두 변수 사이의 연관성을 알고자 할 때 구하는 통계량은 상관계수이다.

여러 개의 변수로 이루어진 변수집단 사이의 연관성을 구하기 위해 사용하는 분석방법이 정준상관분석이다.

정준상관분석에서는 두 변수집단 간의 연관성(Association)을 구하기 위해 각 변수집단에 속한 변수들의 선형결합(Linear Combination)의 상관계수를 이용한다.

두 변수집단 (X1,X2,X3X_1, X_2, X_3​), (Y_1, Y_2, Y_3, Y_4) 사이의 선형결합을 통해 다음과 같이 각 변수집단에서 선형결합변수 W, V를 유도하여, W와 V 사이의 상관계수를 구한다.

W=a1X1+a2X2+a3X3V=b1Y1+b2Y2+b3Y3+b4Y4W = a_1X_1 + a_2X_2 + a_3X_3\\ V = b_1Y_1 + b_2Y_2 + b_3Y_3 + b_4Y_4

(참조: https://m.blog.naver.com/chcher/70138773767)


ex) 신체적조건(키, 몸무게, 가슴둘레)과 운동력(달리기, 윗몸일으키기, 턱걸이) 사이의 선형상관관계를 분석할 때 정준상관분석방법을 이용할 수 있다.

  • 정준변수(Canonical Variable): 변수집단에 속한 변수들로 만들어진 선형결합

    두 변수집단 중 변수 개수가 적은 집단의 변수 개수만큼 정준변수가 만들어질 수 있다.

  • 정준상관계수(Canonical Correlation Coefficeint): 정준변수들 사이의 상관계수


3) 개체 유도

개체들의 특성을 측정한 변수들의 상관관계를 이용해 유사한 개체를 분류하는 방법.

(1) 군집분석(Cluster Analysis)

변수 또는 개체(item)들이 속한 모집단 또는 범주에 대한 사전정보가 없는 경우에 관측값들 사이의 거리(유사성)을 이용해 변수 또는 개체들을 몇 개의 그룹 또는 군집(cluster)로 나누는 분석기법.

이 때 군집 간의 거리를 어떻게 정의하냐에 따라 유사성에 대한 척도가 형성된다.

  • 계층적(hierarchical) 방법

    가까운 개체끼리 차례로 묶거나 멀리 떨어진 개체를 차례로 분리해가는 방법으로, 한 번 병합된 개체는 다시 분리되지 않는다.

  • 비계층적(non-hierarchical) 방법 또는 최적분화(partitioning) 방법

    다변량 자료의 산포를 나타내는 여러가지 측도를 이용해, 이러한 측도의 기준을 최적화시키는 방법으로 군집을 나누는 방법이다. 한 번 분리된 개체도 반복시행 과정에서 재분류될 수 있는 것이 특징이다.

  • 조밀도에 의한 방법

    데이터가 분포한 특성에 따라 군집을 나누는 방법

  • 그래프를 이용하는 방법

    다차원 자료들을 2차원 또는 3차원으로 축소하여 시각적 차원에서 자연스럽게 군집을 나누는 방법


(2) 다차원 척도법(MDS: Multi-Dimensional Scaling)

다차원 척도법은 다차원 관측값 또는 개체들 간의 거리(distance) 또는 비유사성(dissimilarity)를 이용해 개체들을 원래의 차원보다 낮은 차원(보통 2차원)의 공간상에 위치시켜(spatial configuration) 개체들 사이의 구조 또는 관계를 쉽게 파악하고자 하는 데에 목적이 있다.


(3) 판별 분석(Discriminant Analysis)

2개 이상의 모집단에서 추출된 표본들이 있을 때, 이 표본들이 어떤 집단에서 추출된 것인지를 결정할 수 있는 특성(변수)를 측정하고 이를 이용해 개체를 분류하는 방법이다.

이 변수를 판별변수라고 하며, 판별변수는 데이터에 포함된 독립변수 중 판별력이 높은, 즉 집단 간의 차이를 의미있게 설명해줄 수 있는 변수를 뜻한다.

판별변수를 선택할 때는 일반적으로 상관관계가 높은 두 변수를 택하는것보다는, 서로 상관관계를 갖는 두 변수 중 하나와, 해당 변수가 상관관계가 적은 변수 하나를 택하는 것이 효과적이다.

예를 들어, 어떤 환자의 보험가입 승인여부를 판별할 때 두 판별변수를 선택한다고 하면, 나이와 연령대보다는 나이와 가족력 여부를 사용하는 것이 좋다.

(참조: https://skyil.tistory.com/139)


군집분석과의 차이

두 분석법은 목적이나 방향에서 차이가 있는데, 군집분석은 흩어져있는 표본을 산포 정도에 따라 직접 그룹화하는 반면, 판별분석은 이미 분류된 그룹 및 집단의 특성을 파악해서 이 집단이 의미있게 분류된 집단인지를 확인하거나, 새로운 데이터가 들어왔을 때 어느 집단에 포함시킬 것인지는 결정할 때 사용된다.

(참조: https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=moses3650&logNo=221262879342)


  • 로지스틱 판별분석(Logistic Discriminant Analysis)

    분류도구(판별식)로써 로지스틱 회귀분석을 사용하여 개체를 분류하는 방법이다.

    위에서 설명한 것과 같이 판별 변수를 선택한 후 해당 변수들을 이용해 판별 점수를 도출하고, 그 점수를 가지고 데이터가 어떤 집단에 속하는지 판별한다.

    LDA에서 판별점수를 구하는 판별함수로는 다음과 같이 판별변수 x1xpx_1 \cdots x_p​​ 에 대한 선형식이 사용된다.

    Discriminant Score=β0+β1x1+β2x2++βpxp\text{Discriminant Score} = \beta_0 + \beta_1x_1 + \beta_2x_2 + \cdots + \beta_px_p



3. 비정형 데이터 탐색

1) 비정형 데이터

비정형 데이터(Unstructured Data)는 미리 정의된 데이터 모델이 없거나 미리 정의된 방식으로 정리되지 않은 정보를 말한다.

(1) 비정형 데이터의 특징

일반적으로 텍스트 중심으로 되어있으며, 날짜, 숫자, 사실과 같은 데이터도 포함될 수 있다. 변칙과 모호하마이 발생하여 전통적인 방식으로 저장하거나 이해하기 어렵다.

  • 데이터의 형태와 데이터 수집/처리 시 특성
데이터 형태특징
정형 데이터 (Structured Data)- 수집이 쉽다
- 파일 형태의 시트라도 내부에 형식을 가지고있어 처리가 쉬운 편
반정형 데이터 (Semi-structured Data)- 보통 API형태로 제공되기 때문에 데이터 처리기술이 요구됨
비정형 데이터 (Unstructured Data)- 텍스트마이닝 혹은 데이터 파싱이 필요하므로 수집데이터 처리가 어렵다

(2) 비정형 데이터 관리 및 분석 의미 도출

  • 비정형 데이터는 규격화의 어려움이 있어 저장/관리가 어렵다
  • 정형데이터에 비해 차지하는 저장공간이 크다
  • 처리 및 분석이 용이하지 않다

2) 비정형 데이터의 분석

(1) 데이터 마이닝(Data Mining)

데이터 마이닝이란 대규모데이터 안에서 체계적이고 자동적으로 통계적 규칙이나 패턴을 분석하여 가치있는 정보를 추출하는 과정이다.

데이터마이닝 기법에는 통계학 쪽에서 발전한 탐색적 자료분석, 가설검정, 다변량분석, 시계열 분석, 일반선형모형 등의 다양한 방법론이 사용되며, 데이터베이스 쪽에서 발전한 OLAP(On-Line Analytic Processing, 온라인 분석처리), 인공지능 진영에서 발전한 SOM, 신경망, 전문가 시스템 등의 방법론도 사용된다.


  • 적용 분야

    신용평점 시스템(Credit Scoring System)의 신용평가모형 개발, 사기탐지 시스템(Fraud Detection System), 장바구니 분석(Market Basket Anaylsis), 최적 포트폴리오 구축 등 다양한 산업분야에서 광범위하게 사용됨

    • 분류(Classification)
    • 군집화(Clustering)
    • 연관성(Association)
    • 연속성(Sequencing)
    • 예측(Forecasting)
  • 데이터 마이닝의 단점

    • 자료에 의존하여 현상을 해석하기 때문에 자료가 현실을 충분히 반영하지 못할 경우 잘못된 모형을 구축하는 오류를 범할 수 있다.

      데이터마이닝의 필수 요소는 신뢰도가 높은 충분한 자료이다.


(2) 텍스트 마이닝(Text Mining)

전통적인 데이터마이닝의 한계를 벗어난 방법으로, 인간 언어로 이루어진 비정형 텍스트데이터들을 자연어처리(Natural Language Processing) 방식을 이용해 데이터에 숨겨진 의미를 발견하는 기법이다.

  • 자연어 처리(NLP)
    • 인간의 언어 현상을 컴퓨터를 이용해 모사할 수 있도록 연구하는 인공지능의 주요 분야
    • 언어학과 언어인지과학과 같은 언어 관련 학문과 연관이 깊다
    • 구현을 위해 수학적, 통계적 도구를 많이 활용하며 특히 기계학습이 많이 이용되는 대표적 분야이다.
    • 사용예) 정보검색, QA 시스템, 문서 자동분류, 기사 클러스터링, 대화형 Agent 개발 등

(3) 오피니언 마이닝(Opinion Mining)

텍스트마이닝의 한 분류로, 특정 주제에 대한 사람들의 주관적 의견을 통계/수치화하여 객관적 정보로 바꾸는 빅데이터 분석기술이다.

텍스트 마이닝과 같이 문장을 분석하기 때문에 NLP가 사용되지만, 문장 내 주제를 파악하는 텍스트마이닝과는 달리 오피니언마이닝은 감정, 뉘앙스, 태도 등을 판별한다. 이 때문에 감성분석(Sentiment Analysis)라고도 불린다.

  • 적용
    • 문장구조, 문장간의 관계, 어휘 등을 분석하여 키워드와 관련된 감성(중립/긍정/부정)을 분류하고 강도를 평가한다
    • 특정 서비스 및 상품에 대한 시장규모 예측, 소비자 반응, 입소문 분석 등에 활용됨
      • 자사 상품 관련 댓글, sns 등을 실시간으로 분석하는 기업들이 많아지고 있다

(4) 웹 마이닝(Web Mining)

웹 마이닝, 또는 웹데이터 마이닝은 일반적으로 웹 자원으로부터 의미있는 패턴, 추세 등을 도출하는 것을 의미한다.

기기 내에 쌓이는 로그데이터, 사용자 행동 및 작성 컨텐츠 등 모든 것을 분석하여 유용한 정보를 추출하고 인사이트를 얻는 것이 목적이다.

  • 특징
    • 웹 환경에서 얻어지는 고객정보, 행위,패턴 등의 정보를 이용해 다양한 활동(마케팅 등)에 활용할 수 있다.
    • 데이터마이닝을 이용해 문서들과 서비스로부터 정보를 추출할 수 있다.
    • 대량의 로그기록을 기반으로 정보를 수집하고 자료를 정제한다.
    • 웹상의 고객 행동기록과 CRM 등을 연결하는 등 다양한 서비스에 접목이 가능하다.
  • 유형
    • 웹 구조 마이닝(Web Structure Mining): 웹사이트로부터 구조적 요약정보를 추출하는 것
    • 웹 내용 마이닝(Web Contents Mining): 웹사이트로부터 의미있는 내용을 추출하는 것
    • 웹 사용 마이닝(Web Usage Mining): 웹상의 사용자 행동, 패턴으로부터 통찰을 이끌어내는 것
profile
나는야 데이터쟁이

0개의 댓글