빅데이터 분석기사 대비(1) - 빅데이터 모델링 - 분석 모형 설계

Dae Hee Lee·2021년 4월 3일
0

빅데이터분석기사

목록 보기
1/5

1. 분석 절차 수립

(1) 분석 모형 선정

  • 현상에서 채턴을 발견하는 것은 탐색적 데이터 분석(EDA)이다.
  • 현상에서 인과적인 결론을 도출하는 것은 통계적 추론, 현상을 예측하는 것은 기계학습(머신러닝)이다.

1-1) 통계기반 분석 모형 선정

  • 불확실한 상황에서 객관적인 의사결정을 수행하기 위해 데이터 수집, 처리, 분류, 분석 및 해석의 일련의 체계를 통계분석이라고 한다.
  • 현상을 추정, 예측을 검정하는 확률 및 통계적 기법
의미
기술 통계 (Descriptive Statistics)- 데이터를 확률 및 통계적으로 정리/요약한 기초적인 통계
- 평균, 분산, 표준편차, 왜도와 첨도, 빈도 등
- 막대 그래프, 파이 그래프 등 그래프를 활용한 데이터 파악
- 분석 초기 단계에서 데이터 분포의 특징 파악
상관 분석(Correlation Analysis)- 둘 또는 셋 이상의 변수들 사이의 연관 정도를 분석
- 데이터의 속성에 따라서 수치적, 명목적, 순서적 데이터 등을 가진다.
회귀 분석(Regression Analysis- 하나 이상의 독립변수들이 종속변수에 미치는 영향을 추정할 수 있는 통계 기법
- 독립변수와 종속변수의 개수 및 특성에 따라 다음과 같이 분류
# 단순 회귀 : 독립변수 1개, 종속변수와의 관계가 직선
# 다중 회귀 : 독립변수 k개, 종속변수와의 관계가 선형(1차 함수)
❖ 선형 1차 함수가 직선과 다르게 구분한 것은 독립변수의 증가로 인한 Dimension의 증가 때문이다. 엄밀히 말하자면 직선의 정의가 점과 점 사이를 곧게 잇는 선인데 이는 3차원이하의 평면에서 가능하다.
# 다항 회귀 : 독립변수와 종속변수의 관계가 1차 함수 이상인 관계(독립변수가 1개인 경우는 2차 함수 이상)
# 로지스틱 회귀 : 종속변수가 범주형(2진 변수)인 경우
# 곡선 회귀 : 관계가 곡선
# 비선형 회귀 : 관계가 비선형
분산 분석(Analysis of Variance, ANOVA)- 두 개 이상의 집단 간 비교를 수행
- 집단 간의 통계적인 차이 판정
- 일원분산/이원분산/다변량분산 분석으로 구분
주성분 분석(Principal Component Analysis, PCA)- 원래 변수의 선형 결합으로 많은 변수의 분산 방식의 패턴을 간결하게 표현하는 주성분 변수를 추출하는 통계 기법

1-2) 데이터 마이닝 기반 분석 모형 선정

  • 데이터 마이닝(Data Mining)
    - 대용량 데이터로부터 데이터 내에 존재하는 패턴,관계 혹은 규칙 등을 탐색하고 통계적인 기법들을 활용하여 모델화하며 이를 통해 데이터 분석 및 더 나아가 유용한 정보, 지식 등을 추출하는 과정이다.

데이터 마이닝 기반 분석 모델

- 분류 모델

  • 범주형 변수, 이산형 변수들의 범주 예측하는 것이다.
  • 통계적 기법
    • 로지스틱 회귀 분석, 판별 분석 등과 같은 다변량 통계 이론에 근거
  • 트리 기반 기법
    • 의사결정 규칙에 따라 관심 대상 집단을 여러개의 소집단으로 분류하면서 분석하는 기법
    • CART 알고리즘 활용(각 독립 변수를 이분화하는 과정을 반복, 이진트리 형태를 형성하여 분류와 예측 수행)
  • 최적화 기법
    • SVM(Support Vector Machine)
    • SVM은 데이터를 분리하는 초평면(hyperplane) 중에서 데이터들과 가장 거리가 먼 초평면을 선택하여 분리하는 확정적 모델 기반의 이진 선형 분류 방법
  • 기계 학습
    • 기대 출력값과 실제 출력값 간의 비교를 통해 계산된 오차를 시냅스 역할을 하는 노드에 가중치를 조정하여 모델에 반영
    • 인공신경망에서, 오차를 출력 계층에서 입력 계층으로 역방향으로 반영하는 역전파(Backpropagation) 알고리즘을 통해 모델을 안정화

- 예측 모델

  • 회귀 분석(Regression)
    • 관찰된 연속형 변수들에 대해 두 변수 사이의 모형을 구한 뒤 적합도를 측정하는 분석 방법
  • 의사결정나무(Decision Tree)
    • 의사결정 규칙(Rule)을 트리구조로 도표화 ▶︎ 분류, 예측
    • 이상치(Outlier)를 검색할 수 있어 다른 분석 방법의 사전 작업으로도 사용
  • 시계열 분석(Time Series Analysis)
  • 인공 신경망(Artifical Neural Network)
    • 사람 두뇌의 신경세포인 뉴런이 전기신호를 전달하는 모습을 모방한 예측 모델

- 군집화(Clustering) 모델

  • 계층적 방법 (응집 분석법)
    • 각 객체를 하나의 소집단으로 간주, 단계적으로 유사한 소집단들을 합치면서 군집화
  • 계층적 방법 (분할 분석법)
    • 전체 집단에서 시작하여 유사성이 떨어지는 객체들을 분리하는 방법
  • 비 계층적 방법
    • 소집단의 개수를 미리 정해놓고 각 객체 중 하나의 소집단으로 배정하는 방법
    • K-means clustering
      ▶︎ k개의 소집단의 중심좌표를 이용하여 각 객체와 중심좌표 간의 거리를 산출하고 가장 근접한 소집단에 배정한 후 해당 소집단의 중심좌표를 업데이트하는 형식

- 연관규칙(Association Rule) 모델

  • 데이터에서 동시에 발생하는 사건 혹은 항목 간의 규칙을 수치화
  • 장바구니 분석으로도 불리며 주로 마케팅에서 활용(A상품이 B상품과 함께 판매될 확률이 높은가?)

1-3) 머신러닝 기반 분석 모형 선정

- 지도 학습(Supervised Learning)

  • 정답인 Label이 포함되어있는 학습데이터를 통해 컴퓨터를 학습시키는 방법
  • 설명변수와 목적변수의 관계성을 표현하거나 미래 관측을 예측하는 것에 초점
    ▶︎ 인식, 분류, 예측, 진단 등의 문제 해결에 적합
  • 지도 학습 기법의 유형
    • 로지스틱 회귀
    • 인공신경망 분석
    • 의사결정나무
    • 서포트 벡터 머신
    • 랜덤 포레스트
      • 의사결정나무의 특징인 분산이 크다는 점을 고려하여 배깅과 부스팅보다 더 많은 무작위성을 주어 약한 학습기들을 생성한 후 이를 선형 결합하여 최종 학습기를 만드는 방법
    • 감성 분석
      • 텍스트로부터 인상, 감정, 태도 등을 추출하는 분석

- 비지도 학습(UnSupervised Learning)

  • 정답인 Label이 없는 상태에서 데이터가 어떻게 구성되었는지를 알아내는 방법
  • 예측보다 현상의 설명이나 특징 도출, 패턴 도출의 문제에 활용
  • 지도 학습기법보다 데이터 마이닝의 성격이 더 강하다.
  • 비지도 학습 기법의 유형
    • 군집화
    • 차원축소 기법
    • 연관 관계분석
    • 자율학습 인공신경망(자기 조직화 지도, Self-Organizing Map, SOM)
      • 차원 축소 + 군집화

1-4) 변수에 따른 분석기법 선정

  • 변수 개수에 따른 분석 기법
    • 단일변수 분석
      • 히스토그램, 박스 플롯   ▶︎ 평균, 최빈값 등
    • 이변수 분석
      • 연속형X연속형
        ▶︎ 추세선이 있는 Scatter Plot / 상관성 분석(Correlation)
      • 범주형X범주형
        ▶︎ 누적 막대 그래프 / Chi-Square분석(독립성 검정)
      • 범주형X연속형
        ▶︎ 누적 막대 그래프, 범주별 히스토그램 / T-test, Anova
    • 다변수 분석
      • 범주형 변수가 하나 이상 포함된 경우, 범주에 따라 변수를 분리한 후, 단일변수/이변수 분석 진행
      • 세 개 이상의 연속형 변수가 포함된 경우 연속형 변수를 범주형 변수로 변환

1-5) 분석기법 선정 고려사항

  • 분석 모형을 구축하는 모적과 입력 데이터, 변수의 해석 가능 여부에 따른 기법 선택
  • 단일 모형을 선택하거나 다수의 모형을 조합한 앙상블 기법을 선택

1-6) 분석 모형 활용 사례

  • 연관규칙 학습
    ▶︎ 변인 간에 주목할 만한 상관관계가 있는지를 찾아내는 방법
    • 커피를 구매하는 사람이 탄산음료를 더 많이 사는가?
  • 분류 분석
    ▶︎ 특성에 따라 분류할 때
    • 이 사용자는 어떤 특성을 가진 집단에 속하는가?
  • 유전자 알고리즘
    ▶︎ 최적화가 필요한 문제의 해결책을 자연선택, 돌연변이 등과 같은 매커니즘을 통해 점진적으로 진화시키는 방법
  • 기계학습
    ▶︎ 훈련 데이터를 학습하고 예측하는 것
    • 기존의 시청 기록을 바탕으로 시청자가 현재 보유한 영화 중에서 어떤 것을 가장 보고 싶어 할까?
  • 회귀 분석
    • 구매자의 나이가 구매 차량의 유형에 어떤 영향을 미치는가?
  • 감성분석
  • 소셜 네트워크 분석
    • 관계를 파악하여 영향력 있는 사람을 찾아낼 때 사용

(2) 분석 모형 정의

2-1) 분석 모형 정의의 개념

  • 분석 모형을 선정하고 모형(Model)에 적합한 변수를 선택하여 모형의 사양(Specification)을 작성하는 기법
  • 적합한 변수를 찾기위해 파라미터와 하이터 파라미터 선택
    • 파라미터
      • 모델 내부에서 확인이 가능한 변수, 데이터를 통해서 산출이 가능한 값
      • 모델의 성능을 결정
      • 픅정되거나 학습됨
      • 사람에 의해 수작업으로 측정되지 않음
      • 학습된 모델의 일부로 저장되기도 함
    • 하이퍼 파라미터
      • 모델 외적인 요소로 데이터 분석을 통해 얻어지는 값이 아니라 사용자가 설정해주는 값
      • 알고리즘 구현 과정에서 사용
      • 경험에 의해 결정 가능한 값
      • 모델링 성능 문제 해결을 위해 조정
      • ex) 학습률(Learning Rate),의사결정나무 깊이, KNN에서 K개수

2-2) 분석 모형 정의 고려사항

  • 데이터에 비해 모델이 간단하면 과소 적합, 너무 복잡하면 과대 적합 발생
  • 부적합 모형 현상
    • 모형 선택 오류
      • 적합하지 않은 함수 모형 생성
    • 변수 누락
      • 종속변수와 독립변수 사이에 관계가 있지만 모델을 생성할 때 누락되는 경우
    • 부적합 변수 생성
      • 관련이 없는 변수가 모델에 포함되어 과대 적합 유발
    • 동시 편향
      • 종속변수가 연립 방정식의 일부인 경우

(3) 분석 모형 구축 절차

3-1) 요건 정의

  • 분석 요건 도출
    • 기획 단계보다 상세하게 분석요건을 추출, 분석, 명세화하고 종합적으로 적합성을 검토
    • 배경, 주요 이슈, 기대효과, 제약 사항 등을 사전에 정의 후 이해관계자와 협의하여 확정
    • 정보 보안 정책을 누락없이 식별
  • 수행방안 설계
    • 간단한 탐색적 분석을 수행하여 가설을 수립해 분석 가능성을 검토
    • 권한 및 계정을 확보하여 데이터베이스 접근 환경을 구축하고, 분석 대상 데이터의 존재 여부를 확신하는 등 간단한 기초분석을 수행
    • 수행방안 설계의 최종 산물은 분석계획서, WBS
    • 필수와 선택 분석 항목을 사전에 우선순위를 부여해 구분하고 우선순위가 높은 분석항목이 누락되지 않도록 확인
  • 요건 확정 단계
    • 수립된 기획안을 이해관계자와 공유하여 최종 요건을 확정
    • 확정된 요건을 종료 이후에 변경하는 일이 없도록 주의

3-2) 모델링

  • 모델링 마트 설계 및 구축
    • 대상 데이터 탐색, 정제, 요약 등 전처리
    • 데이터 구조화
    • 데이터 적재해 모델 마트 구축
  • 탐색적 분석과 유의 변수 도출
    • 유의미한 변수 도출을 위해 목푯값별로 해당 변수의 분포 확인, 해당 변수 구간에서 차이가 크게 나타나는지 확인
    • 시뮬레이션을 통해 사전에 수립된 분석 모형의 타당성과 적합성 판단, 반복 수행 후 보정
    • 최소한의 시간에 탐색적 분석을 통해 단위 분석에 소요되는 예상 시간을 추정
    • 정보가 부족하다면 신속하게 새로운 변수 개발
  • 모델링
    • 업무 특성에 적합한 기법 선택/결합
    • 프로세스 및 자원에 대한 제약이 있고 입력값이 확률 분포이면 시뮬레이션 기법 사용
    • 프로세스 및 자원에 대한 제약이 있고 상수값을 가질 때는 최적화 기법을 사용
    • 데이터 마이닝 모델링은 통계적 모델링이 아니므로 지나치게 통계적 가설이나 유의성을 적용하지 않음
  • 모델링 성능 평가
    • 데이터 마이닝에서는 정확도, 정밀도, 재현율, 향상도 등의 값으로 판단
      • 정확도(Accuracy)
        ▶︎ 실제 분류 범주를 정확하게 예측한 비율
      • 정밀도(Precision)
        ▶︎ '참'으로 예측한 비율 중에서 실제로 '참'인 비율
      • 재현율(Recall)
        ▶︎ 실제 '참'을 '참'으로 분류한 비율
      • 향상도(Lift)
        ▶︎ 항목 집합 X가 주어지지 않았을 때 Y의 확률 대비 X가 주어졌을 때 Y의 확률 증가 비율
    • 시뮬레이션에서는 처리량, 평균대기시간 등의 지표 활용
    • 최적화에서는 최적화 이전의 객체 함숫값과 최적화과 최적화 이후의 값의 차이로 평가
    • 학습용 데이터 중 검증용 데이터를 분리하여 학습 데이터와 검증 데이터를 기반으로 했을 때의 결과를 비교 분석

3-3) 검증 및 테스트

  • 분석용 데이터를 학습용과 테스트용으로 분리한 다음 분석용 데이터로 자체 검증 후 실제 테스트에서는 신규 데이터 모델을 적용해 결과 도출
  • 일반적으로 테스트 데이터의 비율은 20%~40%
  • 운영 상황에서 실제 테스트
    • 분석 결과를 업무 프로세스에 가상으로 적용해 검증하는 실무 적용 직전의 활동
    • 과대 적합, 과소 적합이 발생하지 않도록 주의
  • 비즈니스 영향도 평가
    • ROI를 산출해 해당 분석에 투자한 비용 대비 재무 효과가 200~300%임을 증명
    • 투자 대비 효과 정량화 기법으로 비즈니스 영향도 평가
    • 시뮬레이션에서는 처리량, 대기시간, 대기행렬 감소 등의 정량적 효과 제시
    • 최적화에서는 목적함수가 증가한 만큼의 정량적 효과 제시

3-4) 적용

  • 운영 시스템에 적용/ 자동화
    • 실시간 또는 배치 스케줄러를 실행하여 주기별로 분석 모델의 성과를 DBMS에 기록, 조기경보 시스템 구성
      -자동으로 모니터링하고 이상 시에만 확인하는 프로세스 수립
  • 주기적 리모델링

2. 분석 환경 구축

  • R, Python 활용
  • 학습용, 검증용, 평가용으로 데이터 적절히 분할
profile
Today is the day

0개의 댓글