본문 바로가기
카테고리 없음

[빅데이터분석기사 필기] 4-1 분석모형 평가 및 개선

by 아마도개발자 2024. 8. 17.

 

1. 성능 평가지표

  • 분석 모델의 성능은 데이터가 범주형 또는 연속형, 지도학습 또는 비지도학습에 따라서 평가하는 방식이 따라짐

가. 범주형 모델의 성능 평가

  • 범주형 데이터 모델은 주로 분류 목적으로 성능 평가에는 혼동 행렬을 이용한 평가지표들과 ROC 곡선이익도표 등이 이용될 수 있다
  • 혼동 행렬을 이용한 평가지표
    • 혼동 행렬 또는 오차 행렬은 모델의 분류 분석 결과를 교차표 형태로 정리한 일종의 정오 분류표. 오분류표라고도 함
    • 혼동 행렬은 참과 거짓으로 분류하는 규칙을 가진 모델에 대해 만들 수 있으며 2가지 이상되는 분류 문제에도 적용 가능
    • FP(false Positive)는 거짓긍정으로 실제로는 거짓인데 모형은 사실로 분류한 것을 말하며, 통계상 1종오류에 해당
    • FN(false Negative)는 거짓부정으로 실제로는 참인데 모형은 거짓으로 분류한 것을 말하며, 통계상 2종오류에 해당
    • 혼동 행렬로부터 분류 모델의 성능을 평가할 수 있는 민감도, 정밀도, 특이도, 정분류율, 오류율, F1 score 같은 지표들이 도출됨
  • ROC 곡선
    • 가로축에 거짓긍정 값을 두고 세로축에참긍정률 값을 두어 그 관계를 시각화한 그래프. 2진 분류 모델의 성능 평가에 많이 사용
    • 그래프에서 ROC곡선이 왼쪽 상단에 가깝게 그려질수록 분류 모델의 성능이 우수함을 의미. 반대로 45도 각도의 직선에 다가갈수록 참긍정과 거짓긍정을 제대로 구별 해내지 못함을 의미. 즉 모델의 성능이 나쁨
    • ROC곡선을 이용한 평가는 직관적이기는 하지만 여러 모델을 비교하기 위해서 이를 단일 지표로 계량화한 성능분석 척도 AUC를 이용할 수 있음
  • 향상도 곡선
    • 랜덤 모델과 비교하여 해당 분류 모델의 성과가 얼마나 향상되었는지를 각 등급별로 파악하는 그래프로 '이익도표'라고도 함
    • 이익도표에는 임의로 나눈 각 등급별로 분류된 관측치에 대해 얼마나 예측이 잘 이루어졌는지를 나타내는 반응검출율, 반응률, 향상도 등의 정보가 제시
  • 카파 상관계수
    • 최초에 두 평가자가 일치하는지에 대한 척도로 개발되었으나, 모델의 예측값과 실제값의 일치여부를 판정하는 통계량으로 사용하며, 카파 통계량이라고도 함
    • 모형의 평가 유효성을 확보하는 지표로도 사용

나. 연속형 모델의 성능 평가

  • 연속형 데이터는 주로 예측을 목적으로 회귀분석 모델을 이용
평가지표 지표의 의미
SSE - 오차제곱합
- 예측값과 실제값의 차이의 제곱합
- 회귀모형 평가에서 많이 사용
AE - 평균오차
- 예측한 결과값들의 평균 오류
- 예측값들이 평균적으로 미달하는지 초과하는지 확인
MSE - 평균제곱오차
- 예측오차 제곱합들의 평균
- 큰 오차는 더욱 크게, 작은 오차는 상대적으로 작게 반영
MAE - 평균절대오차
- 예측오차 절대값들의 평균
- 절대값 사용으로 오차간 상쇄효과 예방
- 계산이 쉽고 이해가 용이
RMSE - 평균제곱근오차
- 평균제곱오차의 제곱근 값
MAPE - 평균절대백분율오차
- 실제값에 대한 오차의 백분율
- 오차 평균의 크기가 다른 모델 비교용이 

 

다. 지도학습 모델의 성능 평가

  • 지도학습 모델의 경우 일반적으로 다음과 같은 평가 기준을 둔다
기준 설명
일반화 기능성 - 같은 모집단 내에서 다른 데이터를 적용하는 경우에도 결과가 안정적으로 제공하는 것을 의미
- 데이터를 확장해서 적용할 수있는지에 대한 평가 기준 
효율성 - 얼마나 적은 입력변수로 모형을 구축했는가를 의미
- 적은 입력변수를 필요로 할수록 효율성이 높음
정확성 - 예측과 분류의 정확성 측면을 평가
- 안정적이고 효율적 모형이라 하더라도 정확성에서 문제가 있으면 모형은 의미가 없다고 볼 수 있음
- 모형 평가에 있어 매우 중요
해석력 입력변수와 출력변수와의 관계를 잘 설명하는가를 의미

 

  • 편향과 분산
    • 편향은 예측갑소가 실제 값의 차이를 의미하는 것으로, 학습 알고리즘에서 잘못된 가정을 했을 때 발생하는 오차를 의미.
    • 편향과 분산은 모두 일종의 오차이기 때문에 둘 다 최소화하는 것이 좋지만 동시에 최소화하는것은 사실상 불가능(트레이드오프 관계)

라. 군집 모델의 성능 평가

  • 대표적 비지도 학습 모델인 군집화에 대한 평가는 예측문제와 달리 특정한 독립변수와 종속변수의 구분도 없고, 학습을 위한 목표값도 필요로 하지 않기 때문에 분류문제와 달리 성능기준을 만들기 어려움. 원래 데이터가 어떻게 군집화되어 있었는지를 보여주는 정답이 있는경우도 동일
  • 군집의 완성도를 측정하는 다양한 성능기준이 있으며 목표값으로 평가하는 방법목표값 없이 평가하는 방법으로 구분
  • 목표값으로 군집 모델 평가
    • 군집 모델의 결과를 실제 정답 군집과 비교하여 평가할 수 있는 대표적인 지표로 조정 랜드지수정규화된 상호정보량이 있음
    • 평가지표: RI(랜드지수), ARI(조정 랜드지수), AMI(상호정보량)
  • 목표값이 없는 군집 모델 평가
    • 일반적으로 군집 알고리즘 적용시에는 그 결과와 비교할 목표값이 없음. 목표값이 필요 없는 군집모델의 성능 평가지표로 던 지수실루엣 계수가 있음
    • 평가지표: DI(던 지수), SI(실루엣계수)

 

2. 분석모형 진단

  • 주로 데이터가 모형에 맞지 않는 경우 모형진단을 실시, 분석 결과와 실제 데이터에 대한 이해와 괴리가 심한 경우에는 자료진단을 실시
  • 모형진단
    • 대표적 예측 모델인 선형회귀 모형의 경우는 기본적으로 데이터가 선형의 가정을 만족시켜야 하지만, 그렇지 않더라도 가설검정에서 모형이 통계적으로 타당하다는 결과를 얻는 경우가 있음. 이 경우 그 분석이 틀린 것이 되기 때문에 실제 데이터가 선형 모형에 맞는지 아닌지를 판단하는 과정, 즉 잔차분석이 필요하다.
    • 신뢰성의 향상을 위해 추정 회귀모형에 대해서 정규성 검정을 실시하며, 통계적 방법으로 샤피로-윌크 검정과 콜모고로프-스미르노프 적합성 검정, 시각화 방법으로 Q-Q Plot과 히스토그램을 이용
    • 샤피로-윌크 검정
      • 샤피로-윌크 검정은 데이터의 정규성을 검정하기 위해 사용하는 방법으로, 보통은 정규성이 있음을 보이기 위해서 사용
      • 일반적으로 정규성 검정은 데이터가 적을경우(n<2000)는 샤피로-윌크 검정을 실시하고, 데이터가 많은 경우(n>=2000)에는 K-S(콜모고로프-스미르노프)검정을 사용
    • K-S검정
      • 콜모고로프-스미르노프 적합성 검정은 주어진 데이터가 어떤 특정한 분포를 따르는가를 정규분포와 비교하는 검정 기법
    • Q-Q Plot
      • 회귀분석에 사용된 데이터가 회귀모형의 가정을 제대로 만족하고 있는지를 시각적으로 확인하는 과정
      • 데이터가 선형회귀 모형의 선형성 가정을 만족하면 분석 결과로 나온 잔차는 정규분포를 따라야함
  • 자료진단
    • 데이터의 변화가 모형의 추정에 어떠한 영향을 미치는지 알아보는것. 주로 이상치의 존재와 관측값의 영향력을 분석
    • 관측값의 영향력 분석은 모형이 옳다는 전제하에 이루어지며 적합된 회귀모형의 안전성을 평가하는 통계적인 방법
    • 관측값의 영향력 진단 방법에는 Cook's distance, DFBETAS, DFFITS, Leverage H가 있음

3. 교차 검증

가. 교차검증 개요

  • 교차검증의 필요성
    • 데이터 모델의 타당성을 평가하는 가장 보편적인 방법은 전체 데이터를 훈련 데이터셋과 평가 데이터셋으로 나눠 평가하는 것
    • 훈련 데이터와 평가 데이터의 비율이 모형의 추정 성능이 크게 좌우
    • 평가 데이터셋에 어떠한 데이터가 들어가느냐에 따라 평가 결과가 달라지기 때문에 이를 해결하기 위한 교차검증이 필요
  • 교차검증의 개념
    • 전체 데이터셋을 3개로 나누어 훈련, 평가, 검증 데이터셋으로 구성. 즉, 훈련 데이터셋으로 학습시키고, 검증 데이터셋으로 파라미터를 튜닝하고, 평가 데이터셋으로 최종 테스트
    • 고정적인 데이터셋으로 모델을 만드는 경우 과적합이 나타날 수 있음
  • 교차검증의 장단점
    • 장점: 모든 데이터셋을 평가에 활용 가능, 모든 데이터셋을 훈련에 활용할 수 있음
    • 단점: 반복 횟수가 많기 때문에 모델의 훈련 및 평가시간이 오래 걸림

나. 대표적 교차 검증 기법

  • K-폴드 교차검증이 일반적으로 가장 많이 사용되는 기법. 그 외에 홀드아웃 교차검증, 리브-P-아웃 교차 검증, 리브-원-아웃 교차 검증, Bootstrap 등이 있다.
  • K-폴드 교차 검증
    • K-폴드 교차검증기법은 데이터셋을 K개의 집단으로 나눈 뒤 K-1개의 집단으로 모델을 학습시키고 나머지 1개의 집단으로 모델의 성능을 평가
  • 홀드아웃 교차 검증
    • 홀드아웃 방법은 앞서 제기된 동일평가 데이터셋으로 모델의 성능을 증가시키는 선택을 반복하면서 발생하는 모델의 과적합 문제를 해결하기 위해 데이터를 세 부분으로 나눔(훈련, 검증, 평가 데이터)
  • 리브-p-아웃 교차 검증
    • 전체 데이터 N개에서 p개의 샘플을 선택하여 그것을 평가 데이터셋으로 모델 검증에 사용하고 나머지 (N-p)개는 모델을 학습시키는 훈련 데이터로 사용하는방법
  • 리브-원-아웃 교차 검증  
    • 전체 데이터 N개에서 1개 샘플만을 평가 데이터에 사용하고 나머지 (N-1)는 훈련 데이터로 사용하는 과정을 n번 반복하는 K-폴드 검증과 동일한 기법
  • Bootstrap
    • 모집단에서 추출한 표본에 대해서 다시 복원하여 표본을 여러 번 추출하여 모델을 평가하거나 데이터의 분포를 파악하는 재표본추출 방법

4. 모수 유의성 검정

  • 모수가 갖는 성질이 표본에 그대로 나타나서 표본 통계량이 모수 추정량으로서 의미가 있을 때 유의성이 있다고 함
  • 유의성검정은 통계적 이론에 근거하여 추론하는 통계적 가설 검정을 활용

가. 모평균에 대한 유의성 검정

  • 단일표본 t-검정
    • 단일 모집단에서 관심이 있는 연속형 변수의 평균값을 특정 기준갑소가 비교하여 그 차이가 통계쩍으로 유의한 가를 판단하는 방법
    • t-검정은 표본이 정규분포를 따른다는 가정이 필요하므로 표본에 대한 정규성을 검정해야 할 경우 앞서 다룬 샤피로-윌크 검정이나 K-S 검정 등의 정규성 검정을 실시
  • 대응표본 t-검정
    • 단일모집단에 대해 두 번의 처리를 가했을 때, 두 번의 처리에 따른 평균이 통계적으로 동일한지를 판단
    • 데이터가 정규성 가정을 만족해야 함
  • 독립표본 t-검정
    • 두 개의 독립적인 정규분포에서 나온 n1, n2개의 데이터셋을 사용하여 두 데이터셋의 평균이 통계쩍으로 동일한지를 판단하는 방법

나. 모분산에 대한 유의성 검정

  • x^2-검정
    • 단일표본의 모집단이 정규분포를 따르며 분산을 알고 있는 경우, 모분산에 대한 검정통계량은 표본분산이며 자유도 n-1인 x^2-분포를 따른다.
  • F-검정
    • 두 개의 독립적인 정규분포에서 나온 n1, n2개의 데이터셋을 사용하여 두 데이터셋의 분산이 통계적으로 동일한지를 판단하는 방법으로 등분산 검정이라고도 한다
  • 분산분석
    • 종속변수가 연속형이고 독립변수가 범주형 변수인 경우, 분산분석은 범주에 따라 두 개 이상의 집단에서 그룹 평균 간 차이를 그룹 내 변동에 비교하여 살펴보는 통계 분석 방법. 즉, 두 개 이상 집단들의 평균 간 차이에 대한 통계적 유의성을 검정하는 방법

다. 회귀모형의 유의성 검정

  • 모회귀계수의 유의성 검정
    • 회귀분석에서는 모회귀모형에서 모수가 갖는 성질이 표본회귀선에서 그대로 나타날 때 유의성이 있다고 말함
    • 표본으로부터 최소자승법으로 구한 표본회귀계수는 모회귀계수에 대해 유의성이 있는 추정량인가에 대한 유의성을 검정
  • 회귀모형의 통계적 유의성
    • 회귀분석에서는 F-통게량을 통해 추정된 회귀모형의 통계적 유의성을 판단 할 수 있다
    • 분석 결과에서 F-통계량의 p-value가 유읫준 0.05보다 작으면 추정된 회귀모형은 통계적으로 유의하다 할 수 있다

5. 적합도 검정

  • 적합도 검정은 데이터의 관측값들이 예상한 이론과 일치하는지 여부를 검정하는 방법
  • 모집단 분포에 대한 가정이 옳게 됐는지를 관측 데이터와 비교하여 검정

 

6. 과대적합 방지

가. 과대적합의 개념

  • 훈련 데이터가 존재할 때, 예측모델이 단순히 직선으로 추정하는 경우 훈련 데이터 뿐 아니라 실제 데이터에서도 오차가 클 수 있음. 이 현상을 과소적합이라 하며, 모델이 너무 단순해서 데이터의 내재된 구조를 학습하지 못할 때 발생
  • 모델이 학습 데이터에는 너무 잘 맞지만 일반화가 떨어지는 현상을 과대적합 또는 과적합이라 한다.
  • 데이터 분석 모델의 과대적합은 일반화 오류, 과소적합은 학습 오류에서 발생

나. 과대적합 억제

  • 과대적합은 분석 모델에 매개변수가 많고 표현력이 높은 모델이거나 훈련 데이터가 적을 때 발생
  • 과대적합을 방지하고 억제하기 위해서 데이터 증가, 모델 복잡도 감소, 가중치 감소, 드롭아웃 방법을 적용
  • 데이터 증가: 훈련데이터가 매우 많다면 과대적합을 줄일 수 있지만 현실적으로 그러지 못하는 경우가 많음
  • 가중치 감소: 과대적합 원인 중 가중치의 값이 커서 발생하는 경우가 많기 때문에, 가중치 감소는 학습 과정에서 큰 가중치에 대해서 그에 상응하는 큰 패널티를 부과하여 과대적합을 억제하는 방법. L1, L2규제와 같은 가중치 규제가 이용. 개별 가중치 값을 제한하면 모델 복잡도를 감소시킬 수 있음
  • 모델의 복잡도감소: 신경망의 복잡도는 은닉층의 수나 모델의 수용력 등으로 결정.
  • 드롭아웃: 신경망 모델이 복잡해지면 가중치 감소만으로 대응이 어려워진다. 드롭아웃 기법은 신경망 모델에서 일부 뉴런을 임의로 삭제하여 사용하지 않고 학습하는 방법이다.

7. 매개변수 최적화

  • 학습모델과 실제 레이블과의 차이를 손실함수로 표현하며, 학습의 목적은 오차, 손실함수의 값이 최대한 작도록 하는 매개변수를 찾는 것(가중치, 편향)

가. 매개변수와 초매개변수

  • 매개변수와 초매개변수의 가장 큰 기분 기준은 사용자의 직접 설정 여부
  • 모델 및 데이터에 의해 결정되는 것은 매개변수, 사용자가 직접 설정하면 초매개변수이다.
  • 매개변수
    • 매개변수는 머신러닝 모델 내부에서 결정되는 변수로서, 매개변수 값은 데이터로부터 학습되어 산출이 가능한 값
    • 특징
      • 머신러닝 학습에서 예측을 수행할 때, 모델에서 요구되는 값
      • 매개변수는 모델의 성능을 결정
      • 예측자에 의해 수작업으로 측정되지 않음
      • 훈련 데이터로부터 학습된 모델의 한 부분으로 저장
      • 모델의 매개변수들은 알고리즘 최적화 과정에서 결정
    • 예시
      • 선형회귀나 로지스틱회귀분석에서의 결정계수, 편향 또는 절편, SVM에서의 서포트벡터 ,인공신경망에서의 가중치
  • 초매개변수
    • 모델 외적인 요소로서, 데이터 분석을 통해 얻어지는 값이 아닌 학습을 시작하기 전에 미리 사용자가 직접 설정하는 파라미터. 좋은 모델을 만들기 위해서는 초매개변수의 튜닝이 필요
    • 특징
      • 모델의 매개변수를 측정하기 위해 알고리즘 구현 과정에서 초매개변수가 사용
      • 예측자에 의해 수작업으로 정해진다
      • 경험에 의해 직감적으로 파악하여 정하기도 한다
      • 절대적인 최적값이 존재하지 않음
      • 초매개변수의 변경에 따라 모델이 상이해짐
    • 예시
      • KNN에서의 K의 개수, SVM에서의 코스트 값 C, 신경망 학습에서 학습률, 로지스틱 회귀에서의 훈련 세트의 반복 횟수 또는 epoch
    • 종류
      • 학습률, 손실 함수, 정규화 파라미터, 미니 배치 크기, 훈련 반복 횟수, 은닉층의 뉴런 개수, 가중치 초기화
  • 매개변수와 초매개변수의 비교
  딥러닝 모델의 매개변수 초매개변수
사용 목적 최적화된 딥러닝 모델 구현 모델링 최적화 파라미터값의 도출
생성 주체 데이터 학습 모델이 생성함 사용자 판단 기반 생성
조정 여부 임의 조정 불가 조정 가능
활용 사례 - 인공 신경망의 가중치
- SVM의 Support Vector
- 선형회귀에서 결정계수
- 학습률
- 경사하강법 반복 횟수
- 활성화 함수

 

나. 매개변수 최적화 기법

  • 매개변수 최적화에는 2차원 손실함수 그래프를 이용
  • 경사 하강법을 기반으로 한 방법들, 모멘텀 방식을 도입한 학습 방법, 그 외 AdaGrad, RMSProp, Adam 등이 있음
  • 경사하강법 기반 방식들: 경사하강법은 매개변수 최적화 방법으로 널리 알려진 방법으로 최적의 매개변수 값을 찾는 방법으로 미분
    • 배치 경사 하강법: 배치는 한 번에 처리하는 데이터 수를 말한다. 모든 데이터셋을 하나의 배치로 보고 전체의 미분값을 평균하여 1에폭 동안 한번만 갱신을 수행하는 방식
    • 확률적 경사 하강법: 손실함수의 기울기를 구하여 그 기울기를 따라 조금씩 아래로 내려가 최종적으로는 손실함수가 가장 작은 지점에 도달하도록 하는 알고리즘
  • 모멘텀
  • Per-매개변수 조정 학습률
    • AdaGrad: 조정된 경사 기반 방식으로 이전 갱신에서 갱신이 많이 된 매개변수들에 대해서는 학습량을 줄이는 방법 사용
    • Adma: 모멘텀 방식과 AdaGrad 방식을 합친 것

다. 초매개변수 최적화 기법

  • 그리드 서치, 랜덤 서치, 베이지안 최적화

 

8. 분석모형 융합

  • 강력한 단일의 모델보다는 복수의 여러 모델을 종합적으로 이용할 때 더 뛰어나다는 생각이 기반
  • 예측 모형의 경우 여러 개의 분류기를 생성하고 그 예측을 결합함으로써 보다 정확한 최종 예측을 도출
  • 대표적 모델 융합 방법에는 배깅, 부스팅, 랜덤포레스트 등이 있음

가. 배깅과 부스팅의 비교

  • 배깅
    • 학습 데이터에 대해 여러 개의 붓스트랩 데이터를 생성하고 각 붓스트랩 데이터에 여러 알고리즘으로 학습시킨 후 산출된 결과 중 다수결에 의해 최종 결과 선정
    • 직접 투표(다수결)와 간접투표(가중치 투표) 방식이 있음
    • 배깅 - 일반적인 모델을 만드는데 집중, 부스팅 -  맞히기 어려운 문제를 맞히는데 초점
    • 부스팅은 여러 개의 약한 학습기를 순차적으로 학습시켜 예측하면서 잘못 예측한 데이터에 가중치를 부여하여 오류를 개선해나가며 학습하는 방식

나. 랜덤포레스트

  • 의사결정나무의 특징인 분산이 크다는 점을 고려해 배깅과 부스팅보다 더 많은 무작위성을 주어 여러 개의 약한 학습기들을 생성하고 이를 결합해 최종적으로 종속변수를 분류하거나 예측
  • 분류에 대해 투표 방법을 적용하고, 예측에 대해서는 평균화 방법을 적용

 

9. 최종모형 선정

  • 분석 모델의 매개변수 최적화를 위해 반복적으로 수행했던 모델 학습이 완료되며 모델 개발은 절차에 따라 모델 성능 평가를 진행하고 그 결과들을 검토하여 최종 모형을 선정함
  • 최종 모형 선정 단계에서는 모델 학습에 이용되었던 분석 알고리즘의 성능을 비교 평가할 수 있는 기준을 선정하고, 분석 결과에 대한 검토도 이루어져야 함

가. 최종모형 평가 기준 선정

  • 모델 학습에 이용되었던 분석 알고리즘 수행 결과 기록을 검토하여 최종 모형 선정
  • 평가 기준은 기법별로 고려 요소가 다를 수 있음
구분 평가 기준
지도 학습 - 분류 정확도
- 평균 오차율
- 오류 재현율
비지도 학습 - 집도 소속률
- 데이터 밀도 및 군집도
기타 - 텍스트 매칭률
- 문서 분류율

 

나. 최종모형 분석 결과 검토

  • 다양한 이해관계자가 모여 분석 모델에 대한 결과를 리뷰하고 검토 회의를 통해 최적의 분석 모델을 선정하는 과정이 필요

다. 분석 알고리즘 결과 비교

  • 분석 목적에 부합하는 여러 알고리즘별로 동일한 데이터에 학습시켜 모델 성능을 최종 선정 기준에 의한 평가 실시