본문 바로가기
데이터분석과 AI/빅데이터 분석기사

[빅데이터분석기사 필기] Part03. 빅데이터 모델링-Ch02. 분석기법 적용

by 우공80 2023. 4. 7.
728x90

빅데이터분석기사

 

 

※ 모든 내용을 정리한 것은 아니며, 중요도가 낮거나, 공부하지 않아도 맞출 수 있는 부분은 정리하지 않았습니다.

01. 분석기법 - 중요도 상()

1. 분석기법 개요

- 학습 유형에 따른 데이터 분석 모델: 지도학습, 비지도학습, 준지도학습, 강화학습

 (1) 지도학습: 정답이 있는 데이터를 활용해 학습, 대표적으로 분류(Classification)와 회귀(Regression)로 구분

 (2) 비지도학습: 정답 없는 데이터를 컴퓨터 스스로 학습하여 숨겨진 의미, 패턴을 찾아내고 구조화, 빅데이터 분석 프로젝트에서 초기 데이터가 동질적인 소수집단으로 이루어져 있는지, 이질적인 많은 집단으로 구성되어 있는지 탐색하는 데에도 활용될 수 있다. 

  . 비지도학습의 종류로 군집분석, 연관성분석, 인공신경망, 오토인코더 등이 있다. 

 (3) 준지도학습: 정답이 있는 데이터와 정답이 없는 데이터를 동시에 학습에 사용하는 기법, 목표값이 없는 데이터에 적은 양의 목표값을 포함한 데이터를 사용할 경우 비용뿐만 아니라 학습 정확도가 상대적으로 좋아지게 되어 준지도학습을 이용하여 결과를 향상시킬 수 있다. 

  . 셀프트레이닝: 정답이 있는 데이터로 모델을 학습한 뒤 정답이 없는 데이터를 예측하여 이 중에서 가장 확률값이 높은 데이터들만 정답 데이터로 다시 가져가는 방식을 반복하는 것으로 높은 확률값이 나오는 데에 가중치를 주는 간단한 기법이다. 

  . GAN: 생성모델과 판별모델이 존재하여 생성모델에서 데이터 분포 법칙에 따라 데이터를 생성하면 판별 모델에서는 이를 판별하는 방식으로 학습을 진행한다. 

  . 강화학습: 주어진 환경에서 보상을 최대화하도록 에이전트를 학습하는 기법이다. 에이전트와 환경의 상태 등이 인공신경망으로 들어가게 되고 에이전트가 행동을 결정하고 환경을 통해 보상이 있으면 이전의 입력값과 행동들을 긍정적으로 (또는 부정적으로) 학습하게 된다. (ex. Q-Learning, 정책경사(PG:Policy Gradient)

 

- 데이터분석 알고리즘과 분야

 (1) 업리프트 모델링은 마케팅 캠페인에서 많이 사용하는 기법으로 실제로는 추정모델을 단계적으로 적용하는 기법. A/B테스트와 같이 환경이나 조건을 달리한 후에 적당한 그룹을 선택하여 마케팅이나 신용 관리, 채널, 가격 선택, 고객 이탈 관리 등 다양한 분야에 사용한다. 

2. 회귀분석

특정 변수가 다른 변수에 어떤 영향을 미치는 지를 수학적 모형으로 설명, 예측하는 기법으로 독립변수로 종속변수를 예측하는 기법으로도 알려져있다. y=bx+c

- 회귀선(회귀계수): 독립변수가 주어질 때의 종속변수의 기댓값으로 일반적으로 최소제곱법을 이용한다.

- 최소제곱법: 잔차(관측값과 예측값간 차이) 제곱의 합이 최소가 되게 하는 직선을 찾는 방법

- 회귀분석 모형 진단

 (1) 적합도 검정: 추정된 회귀식이 표본의 실제값을 얼마나 잘 설명하는지에 대해 확인하는 방법으로  R^2(결정계수, 회귀선의 설명력)가 알려져 있다. SSR(회귀제곱합)/SST(총 제곱합)으로 계산되며 1에 가까울수록 높은 설명력을 가진다. 

 (2) 변수 영향력 분석: 종속변수에 독립변수들이 얼만큼 영향력을 미치는지 회귀변수의 통계적 유의성 검정, 회귀 계수 추정치에 대한 표준오차와 신뢰구간 검증 등으로 확인하며 p값이 0.05보다 작을 경우 통계적으로 유의미하다고 판단한다. 

 (3) 그 외 잔차분석 등으로 회귀분석 예측 모형 결과를 진단할 수 있다. 

- 선형 회귀분석

 (1) 단순 선형회귀분석: 한 개의 종속변수 y와 한 개의 독립변수 x로 두 개의 변수사이의 관계를 분석한다. y=ax+b(a는 회귀계수, b는 절편)

 (2) 다중 선형회귀분석: 독립변수가 두 개 이상이고 종속변수가 y 하나인 선형회귀분석이다. y=ax1+bx2+...+c(a, b... 는 회귀계수, c는 절편)

 (3) 선형회귀분석의 기본 가정: 선형성, 잔차 정규성(기댓값은 0이며 정규분포), 잔차 독립성, 잔차 등분산성, 다중공선성 없음

 

- 로지스틱 회귀분석

 (1) 단순 로지스틱 회귀분석: 종속변수가 이항형 문제(범주의 개수가 두 개)인 회귀분석이다.

 (2) 다중 로지스틱 회귀분석: 종속변수가 두 개 이상의 범주를 가지게 될 경우의 회귀분석이다. 

  . 로지스틱 회귀함수식은 각 모수에 대해 비선형식이며 승산으로 로짓변환(0과 1로 조정하는 과정)을 통해 선형함수로 치환이 가능하다.

  . 두 개 이상의 범주를 가지는 문제가 대상인 경우에는 다항 로지스틱회귀(Multinomial Logistic Regression)또는 분화 로지스틱 회귀(Polytomous Logistic Regression), 복수의 범주이면서 순서가 존재하면 서수 로지스틱 회귀(Ordinal Logistic Regression)로 다양한 분야에서 분류/예측을 위한 모델들로 활용된다. 

- 회귀분석의 장단점: 크기와 관계없이 계수들에 대한 명료한 해석과 손쉬운 통계적 유의성 검증이 가능한 것이 장점이지만, 선형적인 관계로 데이터가 구성되어 있어야 적용할 수 있다는 단점이 있다.

3. 의사결정 나무

의사결정 규칙을 나무모양으로 나타내어 전체 자료를 몇 개의 소집단으로 분류하거나 예측을 수행하는 기법

 

- 의사결정 나무의 구성

 (1) 뿌리마디(뿌리노드) : 나무가 시작되는 마디, 부모가 없는 마디

 (2) 중간마디: 나무줄기 중간에 있는 마디

 (3) 끝마디: 각 나무줄기 끝에 있는 마디, 자식이 없는 마디

 (4) 자식마디: 하나의 마디로부터 분리된 2개 이상의 마디

 (5) 부모 마디: 자식 마디의 상위 마디

 (6) 가지: 하나의 마디로부터 끝 마디까지 연결된 마디들

 (7) 깊이: 가장 긴 가지의 크기(마디의 개수)

 

- 의사결정나무의 종류

 (1) 분류나무: 이산형 목표변수: 목표변수 범주에 속하는 빈도 기반 입력데이터가 분류되는 클래스. 상위 노드에서 가지분할을 진행할 때 카이제곱 통계량의 p값, 지니지수, 엔트로피 지수 등이 분리 기준으로 활용된다. 분리 기준을 선택할 때는 불순도(서로 다른 데이터가 섞여있는 정도)가 감소되도록 설정해야 한다. 이때 불순도의 차이를 정보 획득이라고 한다. 

 (2) 회귀나무: 연속형 목표변수: 목표변수 평균/표준편차 기반 예측된 결과로 특정 의미 지니는 실수값 출력, F-통계량의 p-값, 분산의 감소량(분산이 작아지는 방향) 등이 분리 기준으로 활용된다. 

 

- 의사결정나무의 분석 과정

 (1) 변수 선택

 (2) 의사결정나무 형성: 분석목적에 맞는 적절한 분리기준과 정지규칙(더 이상 분리가 일어나지 않고 현재의 마디가 끝마디가 되도록 하는 규칙), 평가기준 등으로 의사결정나무를 만든다.

 (3) 가지치기

 (4) 모형 평가 및 예측

  . 정보 획득: 정보이론에서 순도가 증가하고 불확실성이 감소하는 것을 정보 획득이라 하며 현재 노드의 불순도와 자식노드의 불순도 차이를 의미한다. 

  . 재귀적 분기 학습: 분기 전보다 분기 후 정보획득량이 높아지도록 영역을 구분하면서 분기를 반복

 (5) 가지치기: 부적절한 추론규칙을 가지고 있거나 불필요한 또는 분류오류를 크게 할 위험 있는 마디를 제거(에러감소 가지치기, 룰포스트 가지치기가 있다) 분기가 너무 많을 경우 과적합될 수 있는데, 이를 위해 사전/사후 가지치기가 있다. 

 (6) 타당성 평가

 (7) 해석 및 예측

 

- 의사결정나무의 대표적 알고리즘

 (1) CART(Classification and Regression Trees): 일반적 의사결정나무 알고리즘, 불순도 측도로 범주형 또는 이산형일 경우 지니지수를, 연속형인 경우 분산의 감소량을 이용한 이진분리를 활용한다.

 (2) C4.5/C5.0 : 범주형/이산형 목표변수에만 활용, 엔트로피 지수 활용, 각 마디에서 다지 분리가 가능

 (3) CHAID(Chi-squered Automatic Ineraction Detection): 범주형/이산형 목표변수와 연속형 목표변수에 활용, 카이제곱 통계량 활용, 다지분리 가능

 (4) 랜덤포레스트: 의사결정나무 생성 이후 배깅기반 나무들을 모아 앙상블 학습 진행

  . 부트스트래핑: 단순 복원 임의추출법(랜덤 샘플링)으로 크기가 동일한 여러 개의 표본자료를 생성

  . 배깅: 여러 부트스트랩 자료를 생성하여 학습하는 모델, 분류기를 생성한 후 그 결과를 앙상블 하는 방법. 범주형이면 다수결 투표방식, 연속형이면 평균으로 결과 집계

  . 부스팅: 가중치를 활용하여 약분류기를 강분류기로 만드는 방법으로 순차적으로 분류 모델들이 틀린 곳에 집중하여 새로운 분류 규칙을 생성하는 기법

  . 앙상블 학습: 여러 모델을 학습시켜 결합하는 방식의 학습 방법으로 일반화 성능을 향상시켜 과적합을 해결할 수 있다. 

 (5) 의사결정나무의 장단점

  . 장점: 연속형, 범주형 모두 변수비교 가능하여 규칙에 대해 이해가 쉬움. 데이터로부터 규칙을 도출하는데 유용하여 다양한 분야에서 활용

  . 단점: 트리구조가 복잡할 시 예측/해석력이 떨어진다. 데이터 변형에 민감하다. 

4. 인공신경망(ANN:Artificail Neural Network)

- 인공신경망의 특징: 인공신경망은 인간의 두뇌 신경세포인 뉴런을 기본으로 한 기계학습 기법으로 하나의 뉴런이 다른 뉴런들과 연결되어 신호를 전달, 처리하는 구조를 본떴다. 입력데이터가 들어가면서 신호의 강도에 따라 가중치 처리되고 활성화 함수를 통해 출력이 계산되는데 학습을 거쳐 원하는 결과가 나오게끔 가중치가 조정된다는 점이 주요 특징이다. 신경망모형은 높은 복잡성으로 입력 자료의 선택에 민감하다. 

  . 범주형 변수: 일정 빈도 이상의 값으로 비슷하고 범주가 일정한 구간

  . 연속형 변수: 입력변수 값들의 범위가 큰 차이가 없어 표준화가 가능한 경우에 적합

- 인공신경망의 발전

 (1) 기존 신경망 다층 퍼셉트론이 가진 문제

  . 사라지는 경사도(Vanishing Gradient): 신경망 층수를 늘릴 때 데이터가 사라져 학습이 잘 되지 않는 현상

  . 과대적합

 (2) 딥러닝의 등장

  . 사전학습으로 사라지는 경사도 문제를 해결하고 과대적합을 방지하는 초기화 알고리즘의 발전 및 드롭아웃을 사용하여 해결되는 것이 증명되면서 기존 인공신경망을 뛰어넘은 모델을 딥러닝으로 부르게 된다. 

  . 얼굴/행동 인식, 이미지 패턴인식, 음성인식, 감정분석, 시계열 데이터 예측, 이상 탐지 등 

  . 딥러닝의 기본구조인 DNN은 은닉층을 2개 이상 가진 학습구조로 컴퓨터가 스스로 분류 답안을 만들어냄

  . CNN, RNN, LSTM, GRU, Auto-Encoder, GAN 등이 있다. 

 

- 인공신경망의 원리 

 (1) 인공신경망의 주요 요소

  . 노드: 가중치와 입력값으로 확성함수를 통해 다음 노드로 전달

  . 가중치: 신경계 시냅스, 노드와의 연결계수

  . 활성함수: 임계값을 이용, 노드의 활성화 여부를 결정, 입력함수의 총합을 출력신호로 변환하는 함수, (딥러닝은 활성함수를 Sigmoid를 포함한 다른 함수를 사용한다. )

  . 입력층: 학습을 위한 데이터 입력

  . 은닉층: 입력층과 출력층 사이, 데이터를 전파학습

  . 출력층: 결과값 출력

 (2) 뉴런 간의 연결방법

  . 층간 연결: 서로 다른 층 연결

  . 층 내 연결: 동일 층 내의 뉴런과의 연결

  . 순환 연결: 뉴런의 출력이 자기 자신에게 입력되는 연결

 

 - 학습: 신경망에는 적응 가능한 가중치와 편향이 있으며 이를 훈련 데이터에 적응하도록 조정하는 과정을 학습이라고 정의한다. 

 (1) 손실함수: 신경망이 출력한 값과 실제 값과의 오차에 대한 함수, 평균제곱 오차 또는 교차엔트로피 오차를 활용한다.(오차함수 X)

 (2) 평균제곱오차(Mean Squared Error): 인공신경망의 출력값과 사용자가 원하는 출력 값 사이의 거리 차이의 제곱을 합한 후 평균을 구한다. 

 (3) 교차 엔트로피 오차(Cross Entropy Error): 분류 부문으로 t값이 원-핫 인코딩 벡터이며, 모델의 출력 값에 자연로그를 적용, 곱한다. 

 (4) 학습 알고리즘

  . 1단계: 미니배치: 훈련 데이터 중 일부를 무작위로 선택한 데이터를 미니배치라고 하며 이에 대한 손실함수를 줄이는 것으로 목표를 설정

  . 2단계: 기울기 산출: 미니배치의 손실함수 값을 최소화하기 위해 경사법으로 가중치 매개변수의 기울기를 미분을 통해 구한다. 기울기의 최소값을 찾는 경사 하강법(Gradient Descent), 경사 상승법(Gradient Ascent), 확률적 경사 하강법이 있다.(SGD)

  . 3단계: 매개변수 갱신: 가중치 매개변수를 기울기 방향으로 조금씩 업데이터 하면서 1~3단계를 반복한다. 

 (5) 오차역전파(Back Propagation): 가중치 매개변수 기울기를 미분을 통해 진행하는 것은 시간 소모가 크므로 오차를 출력층에서 입력층으로 전달, 연쇄법칙을 활용한 역전파를 통해 가중치와 편향을 계산, 업데이트한다. 

  . 덧셈노드, 곱셈노드의 연산 역전파 처리, 활성화 함수인 렐루(ReLU) 계층, 시그모이드 계층, 아핀 계층, Softmax-with-loss 등의 역전파 처리 등이 있다. 

 (6) 활성(화) 함수: 입력 신호의 총합을 그대로 사용하지 않고 출력 신호로 변환하는 함수를 뜻하며 활성화를 일으킬지를 결정하게 된다. 대표적으로 시그모이드(Sigmoid)와 렐루(ReLU)가 있다. 

 (7) 과대적합: 가중치 매개변수 절대값을 가능한 작게 만드는 가중치 감소, 과대적합을 최소화하는 방법은 일정 비율 뉴런만 학습하는 드롭아웃(Dropout), 하이퍼파라미터 최적화 방법 등이 있다. 

  . 가중치 감소: 가중치가 클수록 일종의 페널티 부과

  . Lasso(라쏘) L1 규제: Cost Function (비용함수)를 조정한다. 비용 함수에 가중치 절대값 합에 규제강도를 곱한 값을 더해줌으로써 편미분 할 때 가중치 값이 상수가 되며, +,- 로 결정된다. 가중치가 너무 작은 경우 상수값에 의해 W가 0이 되므로 중요한 W들만 남게 된다. 

  . Ridge(릿지) L2 규제: Cost Function (비용함수)를 조정한다. 벡터의 유클리드 거리값으로 한 지점에서 다른 지점으로 이동하는 최단거리로 n차원 좌표평면에서의 벡터의 크기를 계산한다. 

  . L1규제보다 L2규제가 많이 활용

  . 드롭아웃: 신경망모델에서 은닉층의 뉴런을 임의로 삭제하면서 학습하는 방법, 적은 뉴런만으로 훈련한 뒤 테스트 시에 전체 뉴런을 사용하면 정답을 보다 잘 찾을 수 있게 된다. 

  . 하이퍼파라미터 최적화

 

- 딥러닝 모델 종류

 (1) CNN(Convolutional Neural Network, 합성곱 신경망 모델): 사람의 시신경 구조를 모방한 구조로 인접하는 계층의 모든 뉴런과 결합된 완전 연결을 구현한 아핀 계층을 사용하여 모든 입력 데이터들을 동등한 뉴런으로 처리한다. 

  . CNN에서 특징을 추출하는 과정은 합성곱 계층과 풀링 계층으로 나뉜다. 

  . 입력된 데이터를 필터가 순회하며 합성곱을 게산한 뒤 특징지도(피처맵)를 생성한다. 

  . 특징지도는 서브샘플링(sub-sampling)을 통해 차원을 줄여주는 효과를 지니며 필터 크기, 스트라이드, 패딩 적용여부, 최대 풀링 크기에 따라 출력 데이터의 구조가 결정된다.

  . 필터: 이미지 특징을 찾기 위한 정사각형 행렬(커널)

  . 스트라이드: 필터는 입력 데이터를 일정한 간격인 스트라이드로 순회하면서 특징을 추출하여 특징지도가 만들어진다.(피처맵)

  . 패딩:  합성공 계층에서 필터와 스트라이드 적용으로 생성된 특징지도는 입력데이터 크기보다 작은데 해당 출력 데이터 크기가 줄어드는 것을 사전 방지하고자 입력데이터 주변을 특정값(예시로 0,1)으로 채우는 것을 의미한다. 

   ※ 입력 데이터에 대한 필터의 크기와 스트라이드 크기에 따라서 특징 지도 크기가 결정된다.

  . 합성곱 계층: 2차원 입력데이터가 들어오면 필터의 윈도우를 일정 간격으로 이동하면서 입력데이터에 적용, 입력과 필터에서 대응하는 원소끼리 곱한 뒤 총합을 구하면 결과가 출력되고 이를 모든 영역에서 수행하면 합성곱의 연산 출력이 완성된다. 

  . 3차원의 합성곱 연산에서 입력 데이터 채널 수와 필터의 수가 같아야 하며, 필터크기는 임의로 설정가능하나 모든 채널의 필터크기가 동일해야 한다. 

  . 풀링계층: 선택적인 요소이미 독립적인 채널별 연산이다. 입력데이터의 채널수가 변화되지 않도록 2차원 데이터의 세로 및 가로 방향의 공간을 줄이는 연산으로 최대 풀링(Max Pooling), 평균 풀링(Average Pooling) 등이 있다. 풀링 계층을 이용하는 경우 이미지를 구성하는 요소 변경 시 출력값이 받는 영향을 받는 문제를 최소화하며, 이미지 축소를 통해 인공신경망의 매개변수 또한 크게 줄어들어 과적합 및 학습시간 소요를 해결할 수 있다. 

 . 평탄화 계층(Flatten Layer)을 통해 이미지 형태의 데이터를 배열 형태로 처리한 뒤 완전 연결계측을 통해 최종 클래스가 분류된다. 

 . CNN 은 보편적으로는 이미지 프로세싱에 활용되는데, 여러 유형의 데이터 들에서 많은 특징들을 자동으로 학습

 . 대표적인 CNN모델로 LeNet과 Alexnet이 있으며 VGG, GoogleLeNet, RedNet은 더 깊은 층을 쌓은 합성곱 신경망 기반 심층 신경망 모델이다. 

 (2) RNN(Recurrent Neural Network): 순서를 가진 데이터를 입력하여 단위 간 연결이 시퀀스를 따라 방향성 그래프를 형성하는 신경네트워크 모델로 내부 상태(메모리)를 이용하여 입력 시퀀스를 처리한다. 

  . 은닉층이 순환구조로 동일한 가중치를 공유

  . 확률적 경사하강법(SGD)을 이용한다.

  . 가중치 업데이트를 위해 과거시점까지 역전파하는 BPTT(Back Propagation Through Tiem)을 활용한다. 

  . 계산 기울기는 현재 상태와 이전 상태에 대해 의존적이므로, 순차적 데이터 처리에 유용하다.

 (3) LSTM(Long Short-Term Memory Network): RNN은 점차 데이터가 소멸해 가는 문제가 있는데, 이런 단점을 보완하기 위해 변형된 알고리즘으로 보통 신경망 대비 4배 이상 파라미터를 보유하여 많은 단계를 거치더라도 오랜 시간 동안 데이터를 잘 기억한다. (다음 층으로 기억된 값을 전달할지를 관리)

  . 입력게이트, 출력게이트, 망각게이트로 보완된 구조를 통해 가중치를 곱한 후 활성화 함수를 거치지 않고 컨트롤 게이트를 통해 상황에 맞게 값을 조절함으로써 문제를 해결한다. 

  . 은닉층 이외 셀(C, Cell)이라는 층을 구성, 셀은 장기 메모리를 기억하는 셀

 (4) 오토인코더(auto-encoder): 대표적 비지도학습 모델로 다차원 데이터를 저차원으로 바꾸고 바꾼 저차원 데이터를 다시 고차원 데이터로 바꾸면서 특징점을 찾아낸다. 력으로 들어온 다차원 데이터를 인코드(encoder)를 통해 차원을 줄이는 은닉층으로 보내고, 은닉층의 데이터를 디코더(decoder)를 통해 차원을 늘리는 출력층으로 내보낸 뒤, 출력값을 입력값과 비슷해지도록 만드는 가중치를 찾아낸다. 하나의 신경망을 두 개 붙여놓은 형태이며, 출력 계층과 입력계층의 차원은 같다.

  . 데이터 압축, 저차원화를 통한 데이터 관찰, 배경잡음 억제 등에 주로 사용된다.

 (5) GAN(Generative Adversarial Network): 학습 데이터 패턴과 유사하게 마드는 생성자 네트워크와 패턴의 진위 여부를 판별하는 판별자 네트워크로 구성

  . 판별자 네트워크: 랜덤 노이즈 m개를 생성하여, 생성자 네트워크에 전달하고 변환된 데이터 m개와 진짜 데이터 m개를 획득한다. 2m 개의 데이터를 이용해 판별자 네트워크의 정확도를 최대화하는 방향으로 학습한다.

  . 생성자 네트워크 : 랜덤 노이즈 m개를 재생성하여 생성자가 판별자의 정확도를 최소화하도록 학습한다. 

  . 생성자 네트워크에 랜덤 노이즈가 주어지며 출력은 학습데이터와 유사한 패턴으로 변환하는 함수를 학습한다. 판별자 네트워크는 생성된 데이터가 학습데이터에 포함된 진짜인지에 대한 확률을 출력한다. 생성자 네트워크와 판별자 네트워크 모두 데이터 형태에 적합한 네트워크를 선택하며, MLP, CNN, Autoencoder 등 제약 없이 사용할 수 있다. 

  .  DCGAN: 두 모델 간의 균형 있는 경쟁이 되지 않고 한쪽으로 역량이 치우치면 성능이 제약되는데, 이를 개선한 모델, CNN 기법으로 leaky_RELU 활성화 함수를 적용

  . GAN은 기초연구, 응용산업에 폭넓게 활용되고 있으며, DCGAN, SRGAN, 스택 GAN, Cycle GAN 등의 종류가 있다. 

 (6) 인공신경망의 장단점

  . 장점: 비선형적 예측이 가능, 다양한 데이터 유형, 새로운 학습환경, 불완전한 데이터 입력 등에도 적용가능

  . 단점: 데이터가 커질수록 학습시키는 데에 시간 비용이 기하급수적으로 커질 수 있다. 설명력이 떨어진다(XAI로 보완)

5. 서포트벡터머신(SVM)

- 고차원 또는 무한 차원의 공간에서 초평면(의 집합)을 찾아 이를 이용하여 분류와 회귀를 수행한다. 

- SVM의 주요 요소

 (1) 벡터: 클래스

 (2) 결정영역: 클래스들을 잘 분류하는 선

 (3) 초평면: 서로 다른 분류에 속한 데이터들 간 거리를 가장 크게 하는 선(2차원에서는 직선)

 (4) 서포트벡터: 두 클래스 사이에 위치한 데이터 포인트들

 (5) 마진: 서포트 벡터를 지나는 초평면 사이의 거리

- SVM의 핵심적 특징: 오류율 최소화 대신 여백(마진) 최대화로 일반화 능력의 극대화를 추구한다. 

- 초평면의 마진은 각 서포트 벡터를 지나는 초평면 사이의 거리를 의미한다. 

- 주어진 데이터를 고차원 특징 공간으로 사상하는 작업을 하면 비선형 분류도 가능(커널 트릭 사용)

- SVM의 장단점

 (1) 장점: 사용 쉬움, 분류, 회귀에 동시 활용할 수 있다. 신경망 기법에 비해 작은 데이터로 학습이 가능하며 과대, 과소적합 정도가 덜하다.

 (2) 단점: 이진분류만 가능하며 데이터가 많을 시 모델 학습시간이 오래 소요된다. 각가 분류에 대한 SVM 모델 구축이 필요

6. 연관성 분석

- 둘 이상의 거래, 사건에 포함된 항목들의 관련성을 파악하는 탐색적 데이터 분석 기법

- 콘텐츠 기반 추천의 기본 방법론

- 군집분석과 병행 가능, 장바구니 분석으로도 불림

- 비지도 학습

- 연관규칙 순서

 (1) 데이터 간 규칙 생성

 (2) 어떤 규칙이 데이터 특성에 부합되는지 기준 설정

  . 지지도(support): 데이터 전체에서 해당 물건을 고객이 구입할 확률

  . 신뢰도(confidence): 어떤 데이터를 구매했을 때 다른 제품이 구매될 조건부 확률

  . 향상도(lift) : 1보다 크면 양의 상관관계, 1보다 작으면 음의 상관관계, 1이면 상호독립

 (3) 규칙의 효용성 평가

  . 실제 규칙 생성: 지지도, 신뢰도, 향상도가 높은 규칙들을 발견하기 위해 모든 경우를 탐색한다면 계산비용이 급증하기 때문에 빈발(frequent item sets)만 고려하고 연관규칙을 생성하는 아프리오리 알고리즘을 활용하는 추세

  . 지지도와 신뢰도가 높으면 연관규칙의 개수는 줄어든다. 

- 아프리오리 알고리즘: 모든 항목집합에 대한 지지도를 계산하는 대신, 최소 지지도 이상의 빈발항목집합만을 찾아내서 연관규칙을 계산

- 연관성분석의 장단점

 (1) 장점: 분석 결과가 이해하기 쉽고 실제 적용하기에 용이하다

 (2) 단점: 품목이 많아질수록 연관성 규칙이 더 많이 발견되나, 의미성에 대해 사전 판단이 필요, 상당 수의 계산과정 필요

7. 군집분석

- 비지도학습의 일종으로 주어진 각 개체들의 유사성을 분석해서 높은 대상끼리 일반화된 그룹으로 분류하는 기법

- 군집 분류 시 기본적인 가정

  . 하나의 군집 내에 속한 개체들의 특성은 동일

  . 군집의 개수 또는 구조와 관계없이 개체 간의 거리를 기준으로 분류

  . 개별 군집의 특성은 군집에 속한 개체들의 평균값으로 나타낸다.

- 군집분석의 척도

 (1) 유클리드 거리: 두 점을 잇는 가장 짧은 거리 (피타고라스 정리를 통해 측정) L2 거리

 (2) 맨하탄 거리: 사각형 격자, 블록으로 이루어진 거리에서 출발점에서 도착점까지 가로지르지 않고 도착하는 최단거리 L1거리, 맨하탄에서 이동할 때 길을 따라가는 것과 유사, 각 변수 값 차이의 절댓값의 합

 (3) 민코우스키 거리: m차원 민코프스키 공간에서의 거리 m=1일 때 맨하탄 거리와 같고, m=2일 때 유클리드 거리와 같다. 아인슈타인의 특수 상대성 이론과 관련

 (4) 마할라노비스 거리: 두 특징 간 나타나는 데이터의 방향성과 상관도를 나타낸 공분산 행렬 개념을 적용하여 정규 분포에서 특정 값이 얼마나 평균에서 멀리 있는지를 나타낸 거리이다. 

 (5) 자카드 거리: 비교 대상인 두 개의 객체를 특징들의 집합으로 간주하여 범주형 데이터에서 비유사성을 측정하는 지표

- 군집분석의 종류

 (1) 계층적 군집분석: 계층화된 구조로 군집을 형성한다. 

  . 계층적 병합 군집화: N개의 군집으로 시작하고, 가장 근접하고 유사한 두 개의 군집들이 1개 군집으로 병합한다. 가장 거리가 짧은 두 개의 군집들이 순차적으로 병합한다. 

 (2) 비계층적 군집분석(분할적 군집): 사전 군집 수로 표본을 나누며 레코드들을 정해진 군집에 할당한다. 적은 계산량으로 대규모 DB에서 처리가 유용하다

  . k-평균(means) 군집분석: 주어진 데이터를 k개의 클러스터로 분할 군집하는 알고리즘

  . 밀도 기반 클러스터링(DBSCAN)

  . 확률 분포 기반 클러스터링(Gaussian Mixture Model)

- 군집분석의 장단점

 (1) 장점: 다양한 데이터 형태에 적용이 가능하다. 특정 변수에 대한 정의가 필요하지 않는, 적용이 용이한 탐색적 기법이다.

 (2) 단점: 초기 군집 수, 관측치 간의 거리 등의 결정에 따라 결과가 바뀔 수 있다. 사전에 주어진 목표가 없으므로 결과 해석이 어렵다. 

 

02. 고급 분석기법 - 중요도 중()

1. 범주형 자료분석

- 범주형 자료 분석의 통계적 정의: 변수들이 이산형 변수일 때 주로 사용

- 자료의 분석

 (1) 자료의 형태에 따른 범주형 자료 분석 방법

 독립변수 종속변수 분석방법 예제
범주형 범주형 빈도분석, 카이제곱 검정, 로그 선형모형 지역별 선호정당
연속형 범주형 로지스틱 회귀분석 소득에 따른 결혼의 선호도
범주형 연속형 T검정(2그룹), 분산분석(2그룹 이상) 지역별 가계수입의 차이
연속형 연속형 상관분석, 회귀분석  

 (2) 분할표: 범주형데이터가 각 변수에 따라서 통계표 형태로 정리되어 쓴 것

  . 차원: 변수의 수

  . 수준: 변수의 범주의 수

 (3) 빈도분석: 질적자료를 대상으로 빈도와 비율을 계산할 때 사용

 (4) 교차분석 또는 카이제곱검정: 두 범주형 변수가 서로 상관이 있는지 독립인지를 판단하는 통계적 검정방법

 (5) 로지스틱 회귀분석

 (6) T검정: 독립변수가 범주형이고, 종속변수가 연속형인 경우 사용되는 검정방법으로 두 집단 간의 평균 비교 등에 사용한다. 

 (7) 분산분석: 독립변수가 범주형이고, 종속변수가 연속형인 경우 사용되는 검정 방법

2. 다변량분석

- 다수의 측정치를 동시에 분석하는 모든 통계적 방법

- 용어

 (1) 종속 기법: 종속변수와 독립변수로 구분하여 분석

 (2) 상호의존적 기법: 종속변수와 독립변수로 구분하지 않고 전체를 대상으로 분석

 (3) 명목척도: 단지 분류만을 위해 사용된 숫자로서 숫자 그 자체는 전혀 의미가 없는 측정단위

 (4) 순위척도: 선호되는 순위를 나타낸 숫자로서 숫자 자체는 의미를 가지나 간격이나 비율이 의미를 가지지 않음

 (5) 등간척도: 측정된 숫자 자체와 숫자의 차이는 의미를 가지나 숫자의 비율은 의미를 가지지 못하는 측정단위

 (6) 비율척도: 측정된 숫자와 그 간격, 비율이 의미를 가지는 측정단위

 (7) 정량적지표: 등간척도나 비율척도로 측정된 자료로서 양적자료 또는 모수화된 자료라고 한다. 

 (8) 비정량적지표: 명목척도나 순위척도로 측정된 자료로서 질적자료 또는 비모수화된 자료라고 한다.

 (9) 변량: 변수들이 연구자의 실험대상인 표본으로부터 수집한 자료 그래도를 나타내는 반면에 변량은 이러한 변수들을 일종의 통계적인 방법으로 가중치를 주어 변수들의 합의 형태로 나타낸 새로운 변수를 말한다.

 

- 다변량분석기법의 종류

 (1) 다중회귀분석: 다수의 독립변수의 변화에 따른 종속변수의 변화를 예측

 (2) 다변량분산분석(ANOVA): 두 개 이상의 범주형 독립변수와 다수의 계량적 종속변수 간 관련성을 동시에 알아볼 때 이용되는 통계적 방법

     다변량공분산분석(ANCOVA): 실험에서 통제되지 않은 독립변수들의 종속변수들에 대한 효과를 제거하기 위해 이용

 (3) 정준상관분석: 하나의 계량적 종속변수와 다수의 계량적 독립변수 간의 관련성을 조사하는 다중회귀분석을 논리적으로 확대시킨 것이라 볼 수 있다. 

 (4) 요인분석: 많은 수의 원래 변수들을 이보다 적은 수의 요인으로 요약하기 위한 분석 기법, 주로 검사나 측정도구의 개발과정에서 측정도구의 타당성을 파악하기 위한 방법으로 많이 사용하고 있다. 

 (5) 군집분석: 집단에 관한 사전정보가 전혀 없는 각 표본에 대하여 그 분류체계를 찾을 때, 표본들 간의 유사성에 기초해 한 집단에 분류시키고자 할 때 사용되는 기법. 판별분석과 달리 군집분석에서는 집단이 사전에 정의되어있지 않다. 

 (6) 다중판별분석: 종속변수가 두개의 범주 또는 두 개 이상의 범주로 나누어져 있을 경우, 즉 종속변수가 비계량적 변수일 경우 다중판별분석이 이용된다. 독립변수는 계량적 변수로 이루어진다. 주로 집단 간의 차이를 판별하여 어떤 사례가 여러 개의 계량적 독립변수에 기초하여 특정 집단에 속할 가능성을 예측하는 데 있다. 

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

3. 시계열 분석

- 시계열 자료

 (1) 이산 시계열: 관측값이 이산적

 (2) 연속 시계열: 관측값이 연속적

 (3) 시차: 관측시점 사이의 간격

- 시계열 자료의 성분

 (1) 불규칙 성분(Irregular Component): 시간에 따른 규칙적인 움직임이 없이 랜덤하게 변화하는 변동성분

 (2) 체계적 성분(Systemic Component): 시간에 다른 규칙이 존재하는 변동성분

  . 추세성분(Trend Component): 관측값이 지속적 증가 또는 감소하는 추세

  . 계절성분(Seasonal Component): 주기적 성분에 의한 변동(계절, 주, 월, 년)

  . 순환성분(Cyclical Component): 주기적 변화를 가지나 계절적인 것이 아닌 주기가 긴 변동을 가지는 형태(경기 대순환)

  . 자기상관성(Autocorrelation): 시계열 데이터에서 시차값들 사이에 선형관계를 보이는 것

  . 백색잡음(White Noise): 자기 상관성이 없는 시계열 데이터(패턴이 없는 무작위한 움직임)

- 정상성(Stationarity): 시계열 데이터가 평균과 분산이 일정한 경우 (분석이 용이). 정상성이 없으면 분석이 어려우므로 전처리를 통해 정상성을 가지는 데이터로 만드는 과정이 필요

 (1) 평균이 일정: 평균이 일정하지 않으면 차분(difference)을 통해 정상성을 가지도록 한다.

 (2) 분산이 일정: 분산이 일정하지 않으면 변환(transformation) 을 통해 정상성을 가지도록 한다.

 (3) 공분산의 경우도 단지 시차에만 의존하며 특정시점에는 의존하지 않음

 (4) 정상성을 가지는 시계열 자료의 특징

  . 어떤 시점에서 평균 분산 그리고 특정 시차가 일정한 경우의 공분산이 동일

  . 항상 평균회귀 경향이 있으며 평균 주변의 변동은 대체로 일정한 폭을 가진다.

  . 특정기간에서 얻은 정보를 다른 시기에서도 사용이 가능한 정보로 일반화가 가능

- 시계열자료의 분석 방법

 (1) 단순방법

  . 이동평균법(Moving Average Method): 과거로부터 현재까지 시계열 자료를 대상으로 일정기간을 시계열을 이동하면서 평균을 계산하는 방법이다.

  . 지수평활법(Exponential Smoothing Method): 이동평균법과 달리 관찰기간의 제한이 없이 모든 시계열 데이터를 사용하며 최근 시계열에 더 많은 가중치를 주며 추세를 찾는 방법

  . 분해법(Decomposition Method): 분해법은 시계열자료의 성분 분류대로 시계열 데이터를 분해하는 방법이다. 

 (2) 모형에 의한 방법

  . 자기회귀모형(AR: AutoRegression Model):P시점 전의 자료가 현재자료에 영향을 준다는 가정하에 만들어진 시계열 예측 모형이다. cf. 이동평균모형(Moving Average Model): 오차항에 의해서만 시계열이 결정

  . 자기회귀이동평균모형(ARMA: AutoRegressive Moving Average Model): AR(p) 모형과 MA(q) 모형의 결합형태

  . 자기회귀누적이동평균모형(ARIMA: AutoRegressive Integrated Moving Average Model): ARIMA(p, d, q) 형태로 정의하며 비정상성을 가지는 시계열 데이터 분석에 많이 사용

d=0:  ARMA(p,q) 이므로 정상성을 가진 데이터

p=0: IMA(d,q)이므로 d번 차분하면 MA(q)

q=0: ARI(p,d)이므로 d번 차분하면 AR(p)

4. 베이즈 기법

- 베이즈 추론: 추론 대상의 사전 확률과 추가적인 정보를 통해 해당 대상의 사후 확률을 추론하는 방법

 (1) 확률론적 의미해석(조건부 확률): P(A|B) 

 (2) 베이즈 기법의 개념: 객관적, 주관적 관점이 있다. 어떤 가설의 확률을 평가하기 위해서 사전 확률을 먼저 밝히고 새로운 관련 데이터에 의한 새로운 확률값을 변경한다.

- 베이즈 기법 적용

 (1) 회귀분석모델에서 베이즈 기법의 적용

  . 선형회귀분석모델: 추정치와 실제의 차이를 최소화하는 것이 목표

  . 기존 머신러닝 방법: 사전 확률을 알고 있는 상태에서 새로운 데이터가 관측이 되면 사후 확률을 얻고, 이를 다음번 학습의 사전확률로 사용하면서 점진적으로 매개변수들의 분포를 찾아가는 과정

 (2) 분류에서 베이즈 기법의 적용

  . 나이브 베이즈 분류: 베이즈 이론을 바탕으로 나이브한 전제를 한다 모든 특성값은 서로 독립임을 가정

  . 나이브 베이즈의 장점: 일부 확률모델에서 나이브 베이즈 분류는 지도학습 환경에서 매우 효율적으로 훈련될 수 있다. 
    트레이닝 데이터의 양이 매우 적다. 간단한 디자인과 단순한 과정에도 불구하고, 복잡한 실제 상황에서 잘 작동한다.

  . 나이브 베이즈 분류기의 생성(확률모델): 나이브 베이즈는 조건부 확률모델

  . 이벤트 모델: 클래스의 사전확률은 클래스 간의 동일 확률을 가정하여 계산할 수 있고 또한 트레이닝 셋으로부터 클래스의 확률의 추정치를 계산할 수 있다. 

  . 분류기반 머신러닝에 광범위하게 사용되며 예시로 문서분류(스팸분류) 등이 있다. 

  . 가우시안 나이브 베이즈: 연속적인 값을 지닌 데이터 처리시 각 클래스의 연속적인 값 벡터 들이 가우시안 분포를 따른다고 가정

  . 다항분포 나이브 베이즈: 특성 벡터들이 다항분포에 의해 생성

  . 베르누이 나이브 베이즈: 특성 벡터들이 독립적인 이진 변수로 표현될 경우

5. 딥러닝 분석

-  딥러닝 분석의 개념

 (1) 인공신경망

  . 인공신경망의 문제점: 계산속도의 저하, 초기치의 의존성, 과적합

 (2) 딥러닝: 여러 비선형 변환기법의 조합을 통해 높은 수준의 추상화를 시도

  . 큰 틀에서 사람의 사고방식을 컴퓨터에게 가르치는 기계학습의 한 분야

  . 인공신경망의 단점이 극복되면서 재조명

 (3)  딥러닝의 원리: 기존에는 신경망의 학습수준을 높이기 위해 하나의 은닉층에 은닉노드를 동일 레이어 내 수직으로 쭉 늘려놓기만 했는데, 은닉층 자체를 여러 개로 만들어 여러 단계를 거치도록 신경망을 구성하여 정확도가 훨씬 향상되었다. 

  . 노드: 신경계 뉴런

  . 가중치: 신경계 스냅스, 노드와의 연결계수, 활성함수

- 딥러닝 분석 알고리즘( 앞서 한번 나왔기 때문에, 중요한 문구만 정리)

 (1) 심층 신경망(DNN): 입력층과 출력층 사이에 여러 개의 은닉층들로 이뤄진 인공 신경망이다. 

 (2) 합성곱 신경망(CNN): 가중치와 통합계층(pooling layer)들을 추가로 활용, 오차 역전파를 통해 훈련

 (3) 순환 신경망(RNN): 임의의 임력을 처리하기 위해 신경망 내부의 메모리를 활용, 시퀀스 데이터 모델링 목적, 기억을 갖고 있음. 

 (4) 심층 신뢰 신경망(DBN: Deep Belief Network): 그래프 생성 모형, 계층 내의 유닛간에는 연결이 없다.

6. 비정형 데이터 분석

- 비정형 데이터

 (1) 데이터의 잠재적 가치는 비정형 > 반정형 > 정형 순으로 높다. 

- 비정형 데이터 분석

 (1) 데이터 마이닝: 가치있는 정보를 추출하는 과정

 (2) 텍스트 마이닝: 인간 언어로 이루어진 비정형 텍스트 데이터들을 자연어 처리방식을 이용하여 대규모 분서에서 정보 추출, 연계성 파악, 분류 및 군집화, 요약 등을 통해 데이터의 숨겨진 의미를 발견하는 기법

 (3) 웹 마이닝: 인터넷을 통해 웹자원으로부터 의미 있는 패턴, 프로파일, 추세 등을 발견하는 것

 (4) 오피니언 마이닝: 원천 데이터에서 의견이나 평가, 태도, 감정 등과 같은 주관적인 정보를 식별하고 추출하는 것. 주관적인 의견을 객관적인 정보로 바꾸는 기술, 감정분석이라고도 불린다. 

 (5) 리얼리티 마이닝: 스마트폰의 기계나 모션 센서 등의 행동에서 비정형 데이터 추출

7. 앙상블 분석

- 앙상블 분석의 정의: 주어진 자료로부터 여러 개의 학습 모형을 만든 후 학습 모형들을 조합하여 하나의 최종 모형을 만드는 개념

 (1) 약학습기(약분류기, Weak Learner): 무작위 선정이 아닌 성공확률이 높은, 즉 오차율이 일정이하(50%)인 학습 규칙을 말한다. 

 (2) 강학습기(강분류기, Strong Learner)

- 앙상블 분석의 이해: 동일한 학습 알고리즘을 이용할 때, 앙상블 분석이 한 개의 단일 학습기에 의한 분석보다는 더 나은 분석성능을 이끌어 낼 수 있다. 앙상블 기법은 다양한 약학습기를 통해 강학습기를 만들어가는 과정이다. 

 

- 앙상블 분석의 종류

 (1) 보팅: 투표를 통해 결정,. 배깅과 투표방식이라는 점에서 비슷하지만, 보팅은 서로 다른 여러 학습 모델을 조합하여 사용하는데 반해 배깅은 같은 알고리즘 내에서 표본 데이터 조합을 사용한다는 차이가 있다. 

  . 하드 보팅: 결과물에 대한 최종값을 투표해서 결정

  . 소프트 보팅: 최종 결과물이 나올 확률 값을 다 더해서 최종 결과물에 대한 각각의 확률을 구한 뒤 최종값을 도출

 (2) 부스팅: 가중치르 ㄹ활용하여 연속적인 약학습기를 생성하고 이를 통해 강학습기를 만드는 방법

 (3) 배깅: 샘플을 여러 번 뽑아 각 모델을 학습시켜 결과물을 집계하는 방법, 부트스트랩(복원 랜덤 샘플) > 학습 > 결과 집계, 범주형 자료는 투표방식으로 결과를 집계하고, 연속형 자료는 평균으로 집계

8. 비모수 통계

- 모수(매개변수, 파라미터, Parameter)의 정의: 수학과 통계학에서 어떠한 시스템이나 함수의 특정한 성질을 나타내는 변수를 말한다. 일반적으로 θ로 표현된다.

- 비모수 통계의 개념: 통계학에서 모수에 대한 가정을 전제로 하지 않고 모집단의 형태에 관계없이 주어진 데이터에서 직접 확률을 계산하여 통계학적 검정을 하는 분석이다. 상대적으로 모수 통계는 데이터의 분포를 알고나 모수(평균이나 분산)등을 안다고 가정하고 통계적 검정 및 추론을 하는 것이다.

- 비모수 통계법의 사용조건

 (1) 모집단이 정규분포가 아닐 때

 (2) 현상이 정규분포로 변환되지 못할 때

 (3) 자료의 표본이 적을 때

 (4) 자료들이 서로 독립적일 때

 (5) 변인의 척도가 명명척도(분류)나 서열척도(서열)일 때 

 

- 비모수 통계의 특징: 가정을 만족시키지 못한 상태에서 그대로 모수 통계분석을 함으로써 발생할 수 있는 오류를 줄일 수 있다. 

- 비모수적 통계 검정법

 (1) 부호검정: 관측치들 간에 같다 혹은 크거나 작다라는 주장을 검정

 (2) 윌콕슨 부호순위 검정: 크고 작음과 크기 순위까지 고려하여 검정

 (3) 만 위트니 검정: 두 집단 간의 중심위치 비교

 (4) 크루스칼-왈리스 검정: 3개 이상 집단의 중앙값 차이를 검정

 

 

 

 

※ 참고서적

서명 이기적 빅데이터분석기사 필기2022
저자 나홍석, 배원성, 이건길, 이혜영 공저, 고려사이버대학교AI, 빅데이터 연구소
출판사 영진닷컴

 

728x90

댓글