본문 바로가기

[공지] DS

2025. 7. 22.

1. 분석컨설팅

1-1. 분석시나리오 정의

현 상황을 해결하기 위한 방법론 정의 - 서술형 전개 방식 !!!!!!!!!!!!!!!!

예시) 

1) y 분포 가정

2) link 함수 설명

3) 잔차 plot/AIC 모델 확인 

 

LM(선형회귀모델): 종속변수가 정규분포 only

 - 정규분포된 오차를 갖는 데이터에 피팅

GLM: 종속변수 평균 정해진 함수로 변환한 값 - 독립변수 선형결합 형태 

  ㄴ 정규분포 제약 없어져 실제 데이터 다룰 수 있게 됨 

   (확장)

     1) 연결 함수 추가를 통해 모수의 선형성에 대한 가정이 완화
     2) 정규분포와 다른 오차 분포를 모델링

종속변수 확률분포  최적 Link function  
정규(LM) 항등, 가우시안 = LM
이항(y 이진) logit, binomial = 로지스틱 회귀모형
감마(y > 0) negative inverse (skew) 감마
※ > 0 은 전처리 단계에서 충분히 큰 상수 더해서 해결
- y가 금액일 때 가정
포아송(독립시행O) log, poisson (이산형) (시간/공간) 단위 시간당 도착하는 이벤트의 수
음이항(독립시행X) log (이산형) <성공관련> 연별 교차로 차사고 수, 공정 실패 횟수

※ link function: 종속변수 기댓값을 설명변수 선형 결합으로 표현할 수 있게 변환 

※ 종속변수가 순위나 선호도 같이 '순서'만 있는 데이터: ordinal regression

 

 

  • ML 방법론
    • CRISP-DM: Business understanding > Data understanding(EDA/CDA) > Data Preparation > Modeling > Evaluation > Development 
      • CDA(Confirmatory Data Anlaysis): 탐색으로 파악하기 애매한 정보는 통계적 분석 도구(가설 검정) 사용

 

  • 이상탐지
    • 유형(3): Point(정상 범위) / Contextual(정해진 패턴) / Collective(데이터 간 관계가 기존과 다름)
    • 통계: IQR, 3시그마(=ESD)(양쪽 평균 3표준편차, 68-95-99.7)
    • 시계열: ARIMA(AO, LS, TC)
    • 군집화, One-class SVM, AutoEncoder(재현시 오차가 클수록) 
    • Isolation Forest(랜덤 분류 > 고립되기까지 노드 수 >> 빨리 고립되는(노드 수 적은) 경우)
      • (-): 설명력, 파생변수 생성 필요, 장기적 패턴 반영 어려움
    • S-H-ESD = MAD(중위수 절대 편차) + S-ESD(Seasonal) : 이상치 영향 적고 시계열성/트랜드 반영 
    •  
    • 다변량 통계 분석 이상탐지 기법: 데이터 차원 축소, 잔차 벡터 계산하여 이상치 탐지(크면 이상치 가능성 높음)
      1) T2 (Hotelling's T2 statistic): 차원 축소된 표현에서의 관측치의 잔차 벡터와 데이터의 중심(평균) 사이의 거리
      2) SPE (Squared Prediction Error): 차원 축소된 데이터 원래 차원으로 복원한 후, 복원된 데이터와 원본 데이터 사이의 잔차 벡터의 크기 제곱 측정
  • 모델 개발/방안 정의
  •  
  • 모델 운영방안 정의
  •  
  • 파생변수의 형태 정의
  •  
  • Encoder의 형태 정의
  •  
  • 데이터마트의 형태 정의
    • 원천 데이터(raw data)를 목적에 맞게 가공*요약한 분석용 데이터
      • row = 관측치(observation)    |    column = 변수(variable)
      • 동일 개체 시점 반복 측정 시, row =  측정 시점 

1-2. 분석 방법론 구체화(위치 이동)

2. 데이터탐색 및 기초통계분석

2-1. 기초통계분석

  • 요약 통계량의 이해
    • 용어
백분위수 (percentile) 전체 데이터의 P% 아래 두는 값(중간값median = 50번째 백분위수)
사분위범위 (IQR: Inter Quartile Range) = Q3 - Q1, outlier = Q1 - 1.5 * IQR & Q3 + 1.5 * IQR
절사평균 (trimmed mean) 정해진 개수의 극단값 제외한 나머지 값들의 평균(=절단평균)
강건성 (robust) 극단값에 민감하지 않다
편차 (deviation) 위치 추정값 - 관측값
분산 (variance) 평균 - 관측값(평균과의 편차)를 제곱한 값들의 합을 n-1 로 나눈 값 
※ 분산의 제약조건: 평균의 평균에 따른다(1개) 자유도 n-1
※ n으로 나누면 편향 추정(모집단 분산과 표준편차 참값 과소/대 평가), n-1로 나누면 비편향 추정 
표준 편차 (standard deviation) 분산의 제곱근
중간값의
중위절대편차
(MAD: median absolute diviation from the median) 중간값과의 편차의 절대값의 중간값(강건)
※ 분산, 표준편차, 평균절대편차 강건 X
※ (정규분포 가정) 분산, 표준편차 > 평균절대편차 > 중위절대편차 
기댓값 (expected value) 범주의 출현 확률에 따른 평균 
  •  
    • 가설검정 
      • 귀무가설: 현재까지 받아들여지는 주장(연구자 기각 목표!)
      • 대립가설: 연구자 주장 가설 
    • p-value(유의확률α): < 0.05 귀무가설 기각 = 대립가설 채택 = 유의수준 α하에서 통계적 유의미 
      •  : 귀무가설이 맞다고 가정할 때 얻은 결과보다 극단적인 결과(대립가설)가 실제로 관측될 확률
    • 신뢰구간: 모평균이 포함되어 있을 구간의 확률(구간이 클 수록 구간에 모수가 포함될 가능성 大)
      • 표본 사이즈 ↑ > 신뢰구간 좁아짐 & margin of error(오차한계) 작아짐 == 더 정확하게 모집단 평균 추정 가능
      • 확률적인 해석 불가능 
    • 신뢰수준: 같은 모집단으로부터 같은 방식으로 얻은, 관심 통계량을 포함할 것으로 예상되는, 신뢰구간의 백분율
      • 표본이 작을수록 구간이 넓어짐(불확실성이 더 커짐)
  •  
    • 불편추정량: 표본평균을 다시 평균(표본평균의 기댓값)하여 모평균 추정 
    • 표준정규분포: x축 단위가 평균의 표준편차로 표현되는 정규분포 
      • 정규화/표준화: 데이터 - 평균 / 표준편차 => z점수 (z score)
    • 중심극한정리: 모집단의 분포와 상관없이 표본크기가 커질수록(30) 표본평균의 분포(통계량)가 정규분포에 가까워짐(데이터 자체 아님!)
    • 표준오차: (표본 측정 지표의 변동성을 측정) 여러 표본들로부터 얻은 표본통계량의 변량(표준편차는 개별 데이터 값들의 변량을 의미하여 다름!)
      • n제곱근의 법칙: 표준오차 2배 줄이려면 표본 크기 4배 증가 
    • 카파통계(Kappa): 우연히 정확한 예측을 할 확률
  •  
  • 상관계수: ex) 상관 관계 많은 정보에 가중치 줄 수 있음
피어슨     선형적 관계(1이면 직선, 0이면 관계 X, 양수, 음수) , 특이값에 민감(강건X)
피어만 rank 로(rho) (비)선형적 관계, 이산형, 서형, 순위 계산하고 피어슨 계산(시간+메모리 ↑; 시간은 캐시로 절약)
켄달 순서쌍 타우(tau) (x,y)(x,y) xx 커질 때 yy도 커지면 부합, xx 커질때 yy 작아지면 비부합

스피어만, 켄들 같은 순위 기초 상관계수는 피어슨보다 더 강건하며 비선형 관계도 다룰 수 있지만, 데이터 크기가 작고, 특별한 가설 검정이 필요할 때 주로 사용됨

  •  
  • 거리 기반 유사도 
유사도 유클리드(L2) 맨하탄(L1) 마할라노비스 자카드 코사인
특징 정형
아이템 수만큼 다차원 공간 좌표 구성 사용자 간 거리 기반 
격자
변수간 상관성X
변수간 공분산 존재> 거리
- 산포(분산)와 양상(공분산) 고려한 상대적 거리
집합 데이터
집합 간 교집합 크기
벡터(각 차원 상대적 크기 중요)
사용자 간 원점으로부터 사이각 값
차원     무관(단, 방향)
결과값 0~무한대
> 정규화 필요
      0~1
활용 피어슨 계산 안되는 사용자 간 유사도 계산        문서간 유사도
클러스터 내부 응집도
    • 집합 기반 유사도: 타니모토( 2 X 교집합 개수 / 합집합 개수 - 1) 노이즈 적을 때 

 

2-2. 데이터의 탐색

  • 분포의 이해
    • OOD(Out Of Distribution): 분포 외 데이터: 학습 데이터와 다른 분포 갖는 데이터 ↔ ID(in-distribution)
    • 검정통계량: 주어진 표본 데이터를 통해 귀무가설을 검정하는데 사용되는 통계적 측도
      • 귀무가설이 참일 때 예상되는 분포를 따르게 됨
    • 분포: 확률변수가 가질 수 있는 값들과 그 값들이 나타날 확률을 나타내는 함수
    • 검정통계량의 분포를 알아야 귀무가설을 검정하는데 사용할 수 있음
      • 검정통계량의 값이 해당 분포의 어느 부분에 위치하는지를 통해 귀무가설을 검정할 수 있음

https://sysiphe0.tistory.com/5

선형회귀의 가정 - 정규성, 등분산성, 독립성

 

정규성(대칭 분포, 평균 = 중앙값) 통계 검정: 

 - 귀무가설은 "데이터가 정규분포를 따른다"

  ㄴ p-value가 유의수준보다 작으면 귀무가설을 기각하며, 데이터가 정규성을 만족하지 않는다는 결론

방법 설명 결과 해석
샤피로-윌크
(W Shapiro-Wilk)
작은 샘플 크기에도 강력 - 검정 통계량(W 값)
- 해당 분포에 대한 유의수준(p-value)
콜모고로프-스미르노프
(Kolmogorov-Smirnov)
큰 샘플 크기에서 효과적 - 검정 통계량(D 값)
- 해당 분포에 대한 유의수준(p-value)
안더슨-달링
(Anderson-Darling)
  - 검정 통계량(AD 값)
- 해당 분포에 대한 유의수준(p-value)
  •   - 정규성 시각화: Q-Q plot 

확률오차의 등분산성 확인 - residual plot(y^ 과 e 잔차 간 패턴 X), Breush-Pagan
독립성 확인
   - 예측값과 잔차간의 독립성 : residual plot
   - 독립변수와 잔차간의 독립성 : 상관계수, 산점도
   - 잔차의 자기상관성 : Durbin watson[0, 4](0에 가까울 수록 양의 상관관계, 2 독립, 4 음의 상관관계)

모수적 방법 비모수적 방법
- 데이터가 특정 확률 분포(예: 정규 분포, 이항 분포 등)를 따른다고 가정
- 이를 기반으로 모델을 설정하고 추론을 수행
- 해당 분포의 모수(parameter)를 추정하는 방법
- 적은 데이터로도 효과적인 추론이 가능
- 모델의 해석이 상대적으로 용이
- 데이터의 분포에 대한 가정을 하지 않고, 추론을 수행
- 데이터에 대한 자유도가 높으며, 분포의 형태나 모수에 대한 가정이 없기 때문에 더 유연한 분석이 가능

- 데이터의 순위 또는 순서에 의존하여 추론을 수행
- 주로 중앙값, 백분위수, 순위 테스트 등의 방법을 사용
t-검정, 선형 회귀 분석, 로지스틱 회귀 부트스트랩, 윌콕슨 순위 합계 검정, 커널 밀도 추정

 

y 변수 형태 x 변수 형태 사용 가능한 모델/통계분석방법
범주형 범주형 x^2 카이제곱 검정 - 범주형 변수들의 각 카테고리를 독립변수 취급하여 관측 빈도와 기대 빈도 차이 비교(카이제곱 분포는 연속형) <피어슨 잔차들의 제곱합>
카이제곱 통계량: 검정 결과가 독립성에 대한 귀무 기댓값에서 벗어난 정도 측정, 표준화하여 참조 분포와 비교 가능, 적합도검정(관측 데이터가 특정 분포에 적합한 정도)
- 낮으면 기대 분포를 거의 따름(높으면 현저하게 다름) 
  연속형 t검정, 분산분석 
연속형 명목형 분산분석모형(ANOVA: 3개 이상 그룹 간 차이 비교, F-통계량 사용)
로지스틱 회귀분석
  연속형 회귀분석, 구조방정식 
  연속형+명목형 선형회귀모형
범주형 연속형+명목형 로지스틱회귀, 포아송회귀, SVM
연속형+명목형 연속형+명목형 DT, RF, NN, DL

 ※ 범주형 ⊃ 명목형(순서나 계층구조 X) | 순서형

 

    확률변수 고정  
이산 베르누이     결과 2개, 각 시행은 독립(조건)
  이항 성공실패 횟수 확률p 베르누이 n번 중 k번 성공, n이 크고 p가 0 or 1에 너무 가깝지 않은 경우, 이항분포는 정규분포로 근사 할 수 있음 
  기하 성공확률p   베르누이 번째 성공까지 x번 실패(첫 성공 확률 p(x)의 분포)
  음이항 성공확률p
(기하 확장)
  베르누이 k번째 성공까지 x번 실패
매개변수: 성공확률 p, 성공하는 횟수 r(목표로 하는 성공 횟수)
  포아송 사건발생 횟수   시간과 공간 내에서 발생하는 사건 발생 횟수(시간 주기별 이벤트 모델링)
이항분포 시행횟수 무수히 많아지고, 발생확률은 아주 작은 경우(이항분포 특수한 경우)

단일매개변수: λ = 단위 시간/공간에서 발생하는 사건의 평균 수 
평균 = 분산 = λ (λ 커지면 평균 커져 그래프가 우측 이동 + 분산 커져 점점 퍼짐) 
 ㄴ 평균 분산 차이날 때, 회귀계수 추정량의 표준오차가 편향되는 현상 발생 
         
연속 정규      
  지수 사건발생
대기시간
  특정 사건 일어나고 다음에 같은 사건 발생까지 걸리는시간(x≥0)
(사건의 발생 횟수가 포아송 분포를 따르면 사건 사이 대기 시간은 지수 분포)
α = 1, β = 1/λ 인 감마분포 E(X)=β, Var(X)=β2
  감마 사건발생
대기시간
(지수확장)
  평균 소요시간이 β인 사건이 α번째 일어날 때 걸리는 시간(x0)(지수분포 여러사건으로 확장)
두 매개변수, 양의 실수(복소수), 베이즈 확률론의 사전 확률 분포
정규분포로 해결할 수 없는 부분 보완
  베타 확률p 성공 횟수(α-1)
실패 횟수(β-1)
두 모수, 표본 공간은 0~1사이 실수, 확률(0x≤1)에 대한 확률분포 
α, β값이 서로 비슷할수록 정규분포에 근사, 분산 커짐 
  t     집단의 평균이 동일한가(n=30 이상; 표준정규분포)
정규분포와 비슷하지만 꼬리 부분이 약간 더 두껍고 김
  x^2
카이제곱
    집단의 동질성(모집단의 모분산에 대한 가설검정)
  F분포     집단의 분산의 동일성 
분산의 비율
  • 사용될 수 있는 ML 모델의 종류 나열
    •  
  • 시각화 방법 및 그래프 해석
  •  

2-3. 데이터 전처리 및 분석마트 구성

  • 데이터 전처리
normalization  [0,1], [-1, 1] 정규화 이미지 처리(/255.0) 이상치 영향 O
standardization 평균=0 / 분산=1 표준 정규 분포 변환  가우시안 분포 가정 이상치 영향 덜 민감
(왜곡 가능성 존재)
  •  
  • 파생변수 생성
  • 분석마트 구성
    • (불균일) 리샘플링: [성능] undersampling < oversampling(단순 복사, 과적합 가능성, 이상치 교란 위험성), accuracy 高
      • SMOTE(과적합 피하기 위한 기술, 소수 클래스 샘플 추출 > 유사 합성 인스턴스 생성, 고차원 효과 X수有) 
      • 불균일할 경우, Decision Tree, Logistic Regression: 소수 특징 잡은 간주 무시(오분류 가능성)
    • 분할: holdout, CV, Bootstrap(63.2%) - 모델 frame 비교 평가 방법, 실제 사용 모델 개발 용도 X
      • CV 과정 중 생성된 여러 모형 중 검증결과가 좋은 모형은 모형 성능이 아닌 "데이터 성질"에 의한 결과일 가능성 높음 
      • 분할 전 정규화를 하면 test 정보가 학습 단계에 유입될 수 있어 분할 > 정규화 순서로 진행 
확률적 단순임의 중복 허락 X
  계통추출 최초 표본단위 무작위 추출 > 나머지 표본들은 일정한 간격(K) 두고 표본 크기 만큼
  층화추출 상호 이질적인 부 그룹들로 구성, 각 부 그룹에서 독립적으로 임의표본 추출(부 그룹 층화 시 모집단 지식 필요)
  집락표본 모집단 여러 군집 > 단순임의> 선정된 군집 전수 조사(과대/과소 위험성)
비확률적   주관, 오차 포함, 오차에 대한 분석 불가능 
  • NLP, NLU
  •  
  • Text전처리(토큰화, 표제어 등)

서브(-) 샘플링: 자주 등장하는 단어 학습에서 제외하는 기법 

 

워드 임베딩: 단어를 실수 벡터로 표현하는 방법

  TF-IDF Word2Vec(분류) FastText Glove(회귀)
그룹 백오브워즈 PMI(점별 상호 정보량)    
특징 빈도 분포 단어 내 서브워드 전역통계정보, 출현 빈도 예측
설명 해당 문서에만 나타나는 단어인지 판단
빈도 X log
(전체 문서 수/해당단어)
- 단어 간 의미적 유사성 
단어 쌍이 얼마나 자주 같이 등장
CBOW > < Skip-gram
네거티브 학습 
서브샘플링
OOV 취약
- 단어의 구조적 특성
Word2Vec 유사
n-gram(서브워드)
오타/미등록 단어 강건
softmax(다중클래스분류)
문맥에서의 빈도/연관성
1) 전체말뭉치 > 동시등장행렬(관계)
2) 임베딩 벡터 학습(손실함수 최소화 - 벡터 간 내적)

 PMI: 두 단어가 함께 등장하는 빈도를 활용하여 두 단어 간의 연관성을 측정하는 방법

 CBOW: 주변 단어로 중간 단어 예측 > < Skip-gram: 중심단어로 주변 단어 예측

문장 임베딩: BERT, GPT

 - 문맥 고려 가능

 

3. 데이터 분석 모델 개발

3-1. 모델의 이론적 이해

  • 지도 학습 알고리즘 작동원리
    • 분포 기반 통계 언급 후 ML 모델 정의 필요
나이브
베이즈
- 조건부 확률 계산, 분류 대상별 확률 측정, 큰 쪽으로 분류 
- 결과 확률 추정 위해 많은 속성 고려 시 적합
* Gaussian(연속) Multinomial(카운터블) Complement(불균형 강력, 연속, 텍스트)
* 수치형 속성 범주형으로 이산화
* 절단점 없으면 사분위수 등 사용 
Logistic
Regression

(선형
분류기) 
- 회귀계수 추정 방법: 최대우도추정법(MLE)
 MLE: 관측된 확률분포와 모델의 확률분포를 비교 가장 일치하는 모수를 찾는 것
1. 각각의 속성에 가중치 곱한 다음 서로 더함
2. 시그모이드 함수에 넣고 0~1 사이 수 구함
3. 0.5 이상이면 1 이하면 0 분류 
- 독립변수 선형결합, 사건 발생 가능성 예측하는 통계 기법 
- f(x)[-∞,∞] > odds[0< <∞] > Logit[-∞,∞]
- log odds와 독립변수 사이의 선형성을 가정함
* Odds: 확률 표현법(x/1-x) [0< <∞]
 = 사건 일어날 가능성 / 일어나지 X 가능성
 ㄴ x=0.5 odds=1
 ㄴ x < 0.5 완만히 줄어듬
 ㄴ x > 0.5 급격히 커짐
* Logit(Log-odds): odds 증가폭 맞추기 위해
 ㄴ 입력 [0, 1] 출력 [-∞,∞]
p → [logit] → logit → [sigmoid] → p(역함수)
Proportional Odds 비례오즈  - log odds와 독립변수 사이의 선형성을 가정함
가정: 로그 오즈의 비율이 독립 변수들의 값에 관계없이 일정
         (모든 설명 변수에 대해 로그 오즈의 비율이 상수로 유지)
- 종속 변수가 순서형(예: 4점 스케일)
- logistic 회귀 모형에 비해 예측에 필요한 회귀계수 숫자가 작음 
Decision
Tree
성장 > 가지치기 > 타당성 평가 > 해석 및 예측
- 타당성 평가: 이익도표/위험도표 or 검증 데이터로 평가
- 그룹별 종속변수 평균 차이가 커지도록 분리
- 상호 연관성 있는 경우 활용도 大(AND 조건 연결)
* (회귀) linear reg 이용 + mean/median/범주형으로 변경 + threshold를 갖는 논리형 변경
Random
Forest
1. bagging으로 bootstrap만듦
2. bootstrap으로 DT 학습 > 예측
3. 1, 2 반복해 예측 모음
4. (회귀) 예측 평균, (분류) 투표 => 앙상블 모델 
9. 별도 test data 없어도 모델이 OOB과정에서 제외된 자료로 오류율 계산 
* Tree = 작은 편향 + 큰 분산 
* bootstrap과정은 Tree들의 편향 유지(원본 샘플/특성 유지) + 분산 감소(부분집합 통계치들이 원본 분산 나타내 추정 신뢰성 ↑)
* Tree들이 서로 상관화 되어 있지 않으면 노이즈에 강인해짐(비상관화: 다른 데이터로 학습)
adaboost 1. 첫번째 분류기(DT) 훈련 > 예측
2. 잘못 분류된 샘플 가중치 높여 두번째 분류기 훈련 예측
3. 매 스텝 모형 선형결합 > 최종 모형 생성 
* 유연성: 손실함수 여러개, 기본학습기 제한 없음
* [이진분류]
   y label = -1/1로 설정
   초기가중치 = 1/instance 수(클래수 수 아님)
gradient
boosting
- 이전 예측기가 만든 잔여 오차에 새로운 예측기 학습 
- 경사하강법으로 가중치 업데이트 
* 순차 학습 => 속도 느림
xgboost - GB 기반(속도 느림 보완)
- 병렬처리, 결측값 처리
* 규제항 추가(과적합 위험 줄임)
XGBoost = GBM + Regulation
light
GBM
1) 리프 중심 트리 분할
 - 각 트리의 리프 노드> 특징들 선택> 분할
2) 히스토그램 기반 학습
 - bin 나누고> 누적 히스토그램을 생성
3) 범주형 특징을 자동으로 처리, 결측치 대체
4) 조기 중지: 트리 성장 제한
5-1) 데이터 병렬 처리: 데이터 나누어 스레드/프로세스 병렬 학습
5-2) 트리 병렬 처리: 독립적인 트리들을 병렬로 학습
그래디언트 크기가 큰 샘플에 더 집중하여 나무를 성장
SVM 1) 최적화: 초평면을 찾기 위해 제약 조건이 있는 최적화 문제를 푸는 알고리즘(모델의 가중치와 편향을 조정하는 최적화 과정)
2) 커널 트릭: 데이터 고차원 공간으로 매핑> 선형 분류기로 분류

- 마진, 서포트 벡터(포인트들)
- 소프트 마진: 마진 안에도 존재 가능(인스턴스에 패널티 부과)
ㄴ 슬랙변수(ξ): 속한 마진 평면에서 떨어진 거리만큼 부여(관측치마다 존재)
ㄴ 손실함수: min C * Σξ (C 커지면 ξ 더 많은 벌칙) 
- Kernel(고차원 특징 공간으로 사상)
 가우시안 rbf: 성능, gamma(결정경계 곡률, 클수록 모임)
* 슬랙변수=0       분류 올바른 경우
* 0<슬랙변수<1   분류 위해 마진 허용
* 슬랙변수<1       분류 제대로 안 된 경우

* C 커지면    ξ 더 많은 벌칙   좁은마진경계
* C 작아지면 넘어가는벡터수多(에러 多)
K-NN K: 몇 번째로 가까운 데이터까지 살펴볼 것인가(√데이터개수)
- 그룹이 갈리면 다수결 원칙에 따름
- 거리 척도(표준화)
* larger k: 모든 데이터 다수결 참여(가장 가까운 이웃 X 다수 범주 항상 예측)
* smaller k: 노이즈/이상치 영향 
reg 회귀 계수 최적화: 기울기 상승(기울기 방향으로 이동)  계수 최적화 - 편미분 
PCA reg - 독립 변수만으로 차원 축소한 후 회귀모형 적합  
PLS reg - 종속변수와의 상관관계 고려하여 차원 축소함
- matrix decomposition 방법, 분할된 projection term들이 서로 공분산 최대화 하도록 분할 결정 
Partial Least Square
트리 불순도 혼잡도 낮도록 선택     
이산 지니 0평등(한가지만) ~ 1불평등(반반)  
  엔트로피 0평등(한가지만) ~ 1불평등(반반) 정보이득 = 분할 전 후 엔트로피 차이(gain ratio 사용) 
  λ^2 p-value 커지는 방향으로 분할 자식 노드간 이질성 큼 
연속 F-statistics    
  분산감소량    

 불순도 증가 = 불확실성 증가 = 순도 감소 = 정보 손실 => 분할하지 않는 것이 낮다

※ 선택기준: 1-불순도 = 불순도를 적게하는 방향으로 발전(=집단을 순수하게 만드는 방향으로), np완전문제 

 

  트리 구성      
ML ID3 다중   명목형 only, 완벽하게 나눌 수 없는것에 강건X(=오버피팅)
  C4.5
C5.0 
다진 엔트로피 (+) ID3발전, continuous, missing(다른값처리), 완벽하게 나눌 수 없는것에 강건, 가지치기, 중요 속성만 사용
(-) 다수 레벨 속성으로 구분 경향, 과소/과대 적합, 약간 변경 큰 변화 
C5.0 - 가지치기 최적화
통계 CART 이진 범주: 지니
연속: 분산 
탐욕적 알고리즘, GINI
  CHAID   카이제곱 입력 반드시 범주형, 가지치지 하지 않고 적당한 크기 성장 중지 

 

  최소제곱법(LS) 배치경사하강법 확률적경사하강법 미니배치경사하강법
샘플 수 多 빠름   빠름 빠름
특성 수 多 느림 빠름 빠름 빠름
외부메모리학습지원 X X O O
스케일조정필요 X O O O
하이퍼파라미터수 0 2 >=2 >=2
    모든 데이터셋 매번 그래디언트 계산 매 스텝 무작위 1개 샘플 선택 계산 작은 샘플 세트 

※ LS는 행렬기반, 경사하강법은 비용함수 기반; 랜덤 선택하더라도 epoch 만큼 반복해서 데이터 셋 최대한 살핌

 

  • 비지도 학습 알고리즘 작동원리
    • 군집분석
계층    병합 계층 순차 군집, 군집 수 정할 필요 X
1. 개별 데이터 단일 클러스터로 지정
2. 각 클러스터 간 유사성 계산
3. 유사성 높은 두 클러스터 합
덴드로그램
분할 중심점   군집간 상호 배타적 군집, 군집 수 정해야함 중심 기준 분포
    K-means 1. 그룹 평균에서 각 관측치 거리 산출
2. 거리 가까운 관측치끼리 묶음
* 데이터 분할(함수 추정X)
* 새로운 데이터 군집 배정 X
    K-Medoids    
  밀도 DBSCAN 밀도 높은 부분 클러스터링 
1. 점 p(중심점) epsilon 반경 내 minPts 이상 점 있으면 군집
어디에도 안 속하면 noise point 
서로 근접하게 분포 

    • 차원축소
PCA - 정보량 유지하며(분산을 최대한 보존) 컬럼 수 줄여주는 방법, 군집화 활용 가능, 정규화 중요 
(+) 축약 후 다중공산성, 자유도 등 문제로 불가능한 회귀분석 시행 할 수 있음
(-) 이상치 심하게 영향 받음, 새로운 축 의미 설명 어려움 
MDS 다차원 스케일링(lsomap, t-sne)
ㄴ lsomap 가장 가까운 이웃과 연결, 지오데식 거리 유지하며 차원 축소 
ㄴ t-sne 비슷한 샘플 가까이, 아니면 멀리, (고차원 공간) 주로 시각화
   
SOM 저차원의 격자 형태로 매핑(데이터 간의 관계와 분포를 시각화)
AE 딥러닝
  •  
    • 연관분석(Association analysis)
지지도 신뢰도 향상도
P(A∩B) P(B|A) P(B|A) / P(B)
특정사건 동시 발생 A발생 했을 때 B 발생 확률 평균 불량 대비 특정 설비에서 불량이 얼마나 더 많이 발생하는가
  • Loss/Likelihood function 이해
    • MLE(Maximum Likelihood Estimation; 최대 우도 추정): 확률 p 추정 방법, 현재 가지고 있는 데이터셋이 나올 확률을 최대화하는 우도(세타)를 구하는 것 
      • (로그 우도(데이터셋에 대한 로그 확률의 합) 최대화하는 파라미터 값 찾는 방법(파라미터 추정 방법론)
        • 최적화 기법: 경사하강법, 뉴턴 랩슨 알고리즘
      • MLE 사용: 선형회귀(최소제곱법), 포아송 회귀, 베르누이 분포, 은닉 마르코프 모델(HMMs), 뉴럴 네트워크 
    •  

loss function 하나의 데이터에 대한 실제값(y)과 예측값(y-hat)의 차이
cost function 전체 데이터의 오차, Loss function의 평균
  • 모델별 장단점/특징
  • ML 모델별 장단점 서술(위치 이동)
  • 최종 선택된 모델의 "운영 risk를 정의하고 hedge 방안 서술(위치 이동)
모델 특징 장점 단점 운영 risk hedge방안
선형회귀 (가정)
1) y, x간 선형성
2) x간 상관관계 없이 독립성 
3) 잔차 등분산성
4) 잔차 정규성

*오차: y-모집단회귀식예측값
*잔차: y-표본회귀식예측값
  교호작용(단일 변수만으로는 알 수 없는 변수들간의 작용) 반영 어려움 다중공선성

이상치민감
변수 선택/제거, L12
이상치제거
나이브
베이즈
- 결함가정에도 불구하고 추측 정확도 민감성에 따라 좋은 성능
- 연속형인 경우 정규분포 가정함 
- 스무딩 기법으로 보정 

- 일부 변수 결측인 경우에도 활용 가능

- 쉽고 빠름
- 변수 서로 독립일 때 성능 좋음(현실 보장 힘든 조건)
- 노이즈, 결측 강함
- 적은 학습 데이터로 많은 예측 잘 수행
- 예측에 대한 추정된 확률 얻기 쉬움
- (결함 가정 의존) 모든 속성 동등하게 중요
- 수치 속성 많을 땐 이상적X
- 추정 확률은 예측 범주보다 덜 신뢰적 
- 새로운 데이터 들어오면 조건부 확률 0이라 분류X
   
로지스틱
회귀
- 훈련에 대부분 시간, 분류는 빠름 - 계산비용 적음
- 구현 쉬움
- 결과 해석 위한 지식표현 쉬움
- 언더피팅 경향 다중공선성

이상치민감
변수 선택/제거, L12
클래스 가중치 조정
이상치제거
트리모델   - 전처리(스케일링/정규화) 불필요 - 과적합, 작은 변화 민감
- (회귀) 결정경계 계단식 
과적합
특정 클래스 편향
가지치기
앙상블
트리모델
(회귀)
분기 기준 SDR(표준 편차 축소)   - 대량 훈련 데이터 필요 
- 회귀모델보다 이해 어렵
   
결정트리
(DT)
- 나누어 정복(순환분할(휴리스틱))
- 데이터 추가로 나무 구조 바뀔 수 有
- 하나의 데이터 & 한번의 학습
- 플로우 차트(설명력) - 설명변수(X) 낮은 예측     
랜덤포레스트(RF) - 랜덤 독립변수(표준화X)
- 임의 노드 최적화(랜덤 표본)
- 병렬 처리 가능
- 가장 중요 속성만 선택
- 극단적 큰 속성/예제 데이터 다룰 수 有
- 과적합 少
- 임의 데이터 생성으로 처리 데이터 대용량 > 시간 증가 
- 해석 어렵(변수중요도는 불순도 감소량)
   
adaboost   - 오차 빠르게 적응
- 과적합 영향 덜받음(상대적 늦게)
- 이상치/노이즈 민감
- 해석 어려움 
   
xgboost - level-wise(수평으로 키움)
 ㄴ 균형 만들기 위한 추가연산 > 느림
- 불균형한 데이터에 적합 
- GB 보다 과적합 강함
- 병렬로 속도 빠름
- 다양한 loss function 사용
- 높은 예측 정확도
- 내부적 교차 검증 가능
- 변수 중요도 시각화
- GB 대비 빠르지 다른 알고리즘 대비하면 느림
- 하이퍼파라미터 튜닝 시간 투자
- 해석 어려움 
커널선택
하이퍼파라미터에 의한 과적합
커널선택
파라미터 튜닝
클래스가중치 조정
Light
GBM
- XGBoost 장점 유지시키며 알고리즘 생성 시간 감축(하이퍼파라미터 시간 취약점)
- leaf-wise 트리 분할(수직)
- xgboost 대비 빠름
- 큰 데이터, 적은 메모리
- 카테고리형 피처 자동 변환과 최적 분할
- 고차원/대규모 데이터셋
- (데이터 수가 적을 때 10,000) 과적합
- 해석 어려움 
   
SVM - 분류/수치예측 
- 스케일링 필요 
- 과대 적합 경향 적음
- 텍스트 분류 문제 성능 좋음
- 노이즈 강함
- 연산 시간
- 해석 어렵(LDA/QDA 대비)
   
K-NN
(지도)
- 게으른 학습(인스턴스 기반, 암기)
- 비모수 학습
- 샘플수가 많을 때 좋은 분류법(성능비례)
- 분산에 대한 추정 만들 필요 X(비모수(분포 무관))
- 빠른 훈련, 쉽고 직관적
- x 개수 많아도 가능 
- 모델 생성 X
- 느린 분류, 많은 메모리
- 명목형 속성과 결측 데이터 추가 처리 필요 
- 최적 K 선택 어려움 
- 훈련데이터 모델 함께 저장
- 해석 어려움 
   
K-means
(비지도)
- 군집 개수 알아야 분할(elbow) - 속도 빠름  - 무작위 초기화로 최적 군집 못 찾을 수 있음    
DBSCAN - 구형 모양 아닌 군집 사용 가능 - 노이즈 식별 강함
- 군집 수 미리 정할 필요 X 
- 밀도반경과 최소이웃수에 민감
- 클러스터별 밀도 다른 경우 어려움
   

 

  • 모델별 하이퍼파라미터 이해
    • 트리모델 과적합 방지 (= underfit - 트리 깊이 얕게 - 학습 속도 빠르게)
      • 줄이기: max_depth(깊이 제한), 가지치기(pruning), max_feature(feature 제곱근)
      • 높이기: min_samples_split(분할되는데 필요한 샘플 수), min_samples_leaf(말단노드가 되는데 필요한 샘플 수 - 깊이 확장 제한)
      • 트리 수 줄이기: num_iter 줄이기, 조기종료
    • 하이퍼파라미터 튜닝
Grid Search 모든 경우의 수 
Random Search  Grid Search 보다 빠르나 최적해 아닐 수 있음 
Bayesian Opt - Grid/Random Search 서로 종속 X(서로 간 정보 사용 X) - 최적해 보장 X
(통계) Aqusition Func 가장 큰 값 나올 확률 높은 지점 
- Prior Dist 기반, 하나의 탐색 함수 가정
 ㄴ Exploaration(활용): 매번 새로운 샘플로 목적함수 테스트 > 목적함수의 Prior Dist update
 ㄴ Exploitation(탐색): Posterior Dist 얻은 Global min 가능성 높은 위치에서 알고리즘 테스트
※ 최적해 가능성 높은 지점에서만 샘플링 할 수 있음(local minima) 
=> Exploaration, Exploitation의 balance point 찾음 

※ (exploitation)은 주어진 정보를 가지고 최선의 결정을 내리는 것

※ (exploration)은 정보를 더 수집하는 것

학습율 (learning rate) 모델 업데이트 속도
- 크면 손실 함수 줄어들지 않음
- 작으면 학습이 느려짐 
- (warmup) 초기 낮은 학습율 사용 > 빠르게 학습률 증가 > 서서히 학습률 감소 방식 
스케쥴러 하이퍼파라미터 어떤 식으로 감소/증가 시킬지 결정
- 계단형, 지수형, 코사인형 등
가중치 감쇠 (Weight Decay) 모델 파라미터 크기에 제약 , 민감하지 않음, L2 regularization(가중치 제곱을 더해 loss에 추가)
- 모델 파라미터 값이 클 경우 모델 사소한 차이에 과하게 반응하며 과적합 가능성 높아짐 
모멘텀 (momentum) 모델 업데이트를 일정한 방향으로 유지시키는 경향성의 정도 
    • (sigmoid/tanh) activation function에서 가중치가 커지면, activation output이 -1 or 1에 수렴하고(값 변화가 적은 지점에 수렴), 따라서 사라지는 경사 문제가 발생할 확률이 높아짐
    • 배치 사이즈: 모델 1회 업데이트 하는 과정에서 살펴보는 데이터 수
배치사이즈 커질 때  작아질 때 (오버피팅 ↓)
  정밀하게 업데이트  
GD(기울기 계산 데이터) 큰 데이터 최적화 적은 데이터로 상대적 부정확한 기울기
적은 계산비용 + 여러번 업데이트
계산 효율 높음(100개 한번에) 낮음(1번씩 100개
수렴속도   (한번수행) 빨라짐 
파라미터 개선 횟수多 > 시간 ↑
일반화 성능 떨어짐(sharp minima에 converge)  
자원(GPU/메모리) 커질수록 큰 GPU 필요 최소 요구 메모리 감소 / 계산비용 ↑
안정성 높음 (강건)  
잡음(noise) 작아짐 커짐
영향력   작아짐

         - 배치 사이즈가 작아지면 무작위 선택 샘플들이 데이터셋 다양성 잘 반영(더 다양한 패턴 학습 가능)

         * 가능하면 전체 데이터로 나눠지도록 하며 아닐 경우 마지막 배치는 버림 

             - iter(반복): 배치 크기 데이터 한번 살펴보는 것 

 

 

  •  
    • Bayesian Optimization: 랜덤 서치와 통계적 기법 기반 
HPO - surrogate model(대리자 모델)을 만들고 대리자를 평가해서 값을 찾음
ㄴ 대리자 모델은 acquisition function(대리자+목적함수+실제데이터기반)이 추천해주는걸로 결정
방법 Exploitation 착취: 뒤진데 계속 뒤짐, 현재까지 확보된 경험의 활용
Exploration 탐험: 안 뒤진 불확실성 높은곳 뒤짐, 손해를 감수하고 탐색을 통한 경험 축적 
EI Expected Improvement 착취 탐험 일정 수준 포함하게 설계한 Acquisition 함수(대리자 모델이 목적함수 대해 실제 데이터 기반 다음번 조사 X값을 확률적으로 추천해주는 함수)
- Exploitation와 Exploration 일정 수준 포함 설계 
Entropy search 엔트로피가 낮은 구간(제일 모르는 구간 찾는 것) > 편차 높은 x return 
Upper confidence bound x 지점에 대한 가우시안 분포가 제일 최고 지점인 부분 return
  •  
  • Explainable AI 알고리즘
    • SHAP: 단순화 된 input을 넣어 대리 모델 찾는 것(Local 설명 기반으로 전체(f: black box 모델) 해석)
      • 개별 row 마다 종속변수에 대한 기여도 산출
      • (+) 개별 관측치에 대한 X인자가 Y값을 도출하는데 기여한 기여도를 산출하여 다양한 차원 해석 가능
      • (-) 연산 속도 많이 느림(학습보다 느린 경우 많음) 
      • 단순화 된 input을 정의하기 위해 f의 값이 아닌 f의 조건부 평균 계산 
      • SHAP value: 어떤 특성의 조건부 조건에서 해당 특성이 모델 예측치의 변화를 가져오는 정도 
      • Base value: 아무 특성 모를 때 예측된 것; background dataset 예측값 평균, 조정해서 local 특성 파악 
      • 모델 예측값: SHAP value + base value
      • 변수 중요도: E(|SHAP Value|)
      • Kernal(Linear LIME + Shaply value), Tree, Deep
    • Feature Importance 한계(Model-specific)
      • 랜덤포레스트 Feature Importance - 다소 biased
        • high cardinality(연속형 or 카테고리 개수가 많은 변수) 변수 중요도 부풀릴 가능성 높음
        • 지니 불순도 기반 트리 모델 변수 중요도: 연속형 변수 우대 평가
          • 부모 노드 가중치 불순도에서 자식노드들의 가중치 불순도 합 제거한 값 
      • train 데이터 학습 과정에서 얻어진 결과로 test 데이터 안 중요 데이터가 중요하게 계산될 수 있음 
    • Permutation Feature Importance(Model-agnostic)
      • 학습시킨 후 적용(Post-hoc)
      • 특정 피처 안 썼을 때, 성능 손실에 얼마나 영향주는지
        • 피처를 무작위 (분포)로 섞어서(permutation) 그 피처를 노이즈로 만드는 것 
        • 피쳐들 간의 교호작용(의존관계)을 끊음
      • (+) 재학습 필요 없음 
    • Drop Column Importance
      • 모든 변수 사용했을 때 - 특정 변수 빼고 재학습 차이
        • (+) 직관적 (-) 변수 개수만큼 재학습 필요, Computation 관점으로 비효율적
    • MDI(Mean Decrease in Impurity) Importance
      • 각 변수 split 될 때 impurity 감소분의 평균
    • PCA
  • 텍스트 분석(문서분류)
  • 텍스트 분석(감성분석)
  • 텍스트 분석(토픽모델링)

3-2. 모델의 평가 및 활용

  • 모델의 진단
    • over/underfitting & Bias/Var
bias 모델의 예측값과 실제 정답의 차이의 평균
variance 입력 데이터에 대해 예측값이 얼마만큼 변화할 수 있는지에 대한 양(amount)의 개념 
overfit high variance 모델 복잡 트리 깊이(불순도) SVM C
bagging
노이즈까지 학습
underfit high bias 모델 단순  K-means K boosting  

 

[overfit] > 데이터 증강|차원축소|규제 > [underfit]

    ■ underfitting: 충분히 낮은 training error에 도달하지 못한 경우

    ■ overfitting: 태스크를 일반화하지 못하고 알려 준 데이터와 정답을 그냥 외웠을 뿐 

[good fit] = low bias + low variance

※ 분산 편향 - trade off 관계 (전체 에러 = 절대 줄일 수 없는 오차 + 분산 + 편향)

 편향 큰 모델(선택) > 분산 큰 모델 - 오컴의 면도날(간단한 것 선택) 

 학습 데이터 증가: bias 변화없음, variance 감소함 

 

random error 측정 시 발생하는 불확실성으로 인해 발생 > 측정값이 무작위로 변하는 오차
systematic error 측정 시 발생하는 시스템적인 문제로 인해 발생 > 측정값이 일정한 방향으로 편향되는 오차

※ 딥러닝은 training set이 random error에 대해 견고, systematic error에는 민감

 

  • 모델의 평가
    • Precision/Recall
    예측값 Prediction
 
  예측값 Positive Negative  
실제값
Real
Positive TP FN (type 2 error) Recall 재현률
Negative FP (type 1 error) TN  
    Precision 정밀도    

    ■ Recall(검출율): 불량 판매 시 타격 큼. 사람이 재검수해도 되니 낌새만 있으면 다 탐지

    ■ Precision(정밀도): 불량 예측 많다고 다 못봄. 아무거나 불량이라고 하면 곤란 

    ■ ROC    

 

Macro Micro
클래스별 성능을 독립적으로 계산하고 평균
 - 각 클래스의 성능을 동등하게 중요
클래스별 성능을 모두 더해서 전체적인 성능
 - 클래스별 샘플의 개수가 다르더라도 전체적인 성능을 고려
   

 

activation loss    
Sigmoid MSE binary, regression 0~1 범위, sigmoid -2~2 이외 미분값 거의 0 => 학습속도 저하 
Sigmoid Cross Entropy binary 0~1 범위, convex
Softmax Categorical Cross Entropy multi class 오차 크면 더 많이/적으면 더 적게 업데이트 => 모델 수렴 빠름 
  binary cross entropy multi label  

※ CE(binary classfication) CCE(multi class classfication)

    도함수 y
Sigmoid (문제) 몹시 크거나 작은 값을 입력으로 받는 경우, gradient가 거의 0에 가까워짐(기울기소실), 계산 다소 복잡 0~(약)0.3
tanh -1~1 (문제) sigmoid 동일(기울기 1 이하) 0~1
ReLU gradient가 0이 되는 경우 X, 계산 간단, sigmoid, tanh 대비 6배 빠르게 수렴 x > 0, 1

s-curve fitting
- 시간이 지남에 따라 진행 모델링(예: 프로젝트 완료, 인구 증가, 전염병 확산 등)

 

loss 함수: 원하는 값이면 작아야하고, 원하지 않는 값이면 커야함

Quadratic 정답 실수형인 경우에도 가능 sigmoid와 같이 사용 시 수렴 더디게 함
CE [이진] Quadratic 대비 수렴 빠름(-log함수) 최근 DL에서 Multiclass NLL loss와 거의 동일 사용
NLL
[Multi-class]
[Negative Log Likelihood]
Softmax 함수와 결합 사용 시 모델 수렴을 빠르게 함 
정답에 해당하는 클래스만 고려
이진분류의 경우 CE와 동일
    • 회귀 평가
      • MAPE(%): [0, 100]  = 1/n Σ |y^-y / y|
    • 군집 평가
      • SSE(작을수록): 중심 가깝, 군집 수 늘이면 줄지만 개수 유지하며 질 향상
      • elbow: 클러스터 내 오차제곱합 최소

 

  • 모델의 결과해석
    • OLS Regression 최소자승법(OLS: Ordinary Least Squares)
DF Residuals 잔차 자유도 표본 수 - 종속변수 개수 - 독립변수 개수 
(변화할 수 있는 총 원소 개수 - 제약식의 개수)
DF Model 독립변수 개수  
R^2 설명력 전체 데이터 중 모델이 설명할 수 있는 데이터 비율
R^2 = SSR(예측-평균) / SST(실제-평균) = 1-SSE(오차) / SST
       = (y 변동량 대비) 회귀선에 의해 설명되는 변동 / 전체 변동
          (음수) 평균보다 모델 성능 떨어짐 
* 상관관계 높을수록 1에 가까움 [0, 1]
* √R^2 = 두 변수 상관계수
Adj R^2 설명력 R^2 설명변수 늘어나면 (무조건) 값 커져, 자유도로 나눈 Adj R^2 많이 사용
ㄴ 독립변수 2개 이상  
     
F-통계량: 회귀식 적절성 회귀식으로 설명 가능한 데이터와 그렇지 않은 데이터 분산 비교, 0일수록 적절
Prob(F-통계량) 회귀식 유의미성 0.05 이하면 변수까리 매우 관련 있다고 판단 
AIC 모델 평가 Akaike Information Criterion = 2(모델파라이터#) - 2ln(모델최대우도)
표본 개수와 모델 복잡성 기반 모델 평가, 낮을수록 좋음 
종속변수의 실제 분포와 모델의 결과와의 불일치에 기반
하나의 데이터 셋, 다른 설명변수, 동일 모형(서로 다른 모형 비교 X)
BIC 패널티 Bayesian Information Criterion = (모델파라이터#)ln(샘플수) - 2ln(모델최대우도)
AIC+패널티, AIC보다 평가 성능 좋음, 낮을수록 좋음 
  • 변수선택(Feature Selection): 작을 수록 적절한 설명력(가능도=우도) + 적절한 복잡도(변수 개수), Stepwise
coef(coef) 회귀 계수  
std err 표준 오차 계수 추정치의 표준오차, 값이 작을 수록 좋음
t 상관관계 t-test, 독립변수와 종속변수 사이 상관관계, 값 클수록 상관관계 큼
p-value(P>|t|) 유의확률 독립변수들의 유의 확률, 0.05보다 작아야 유의미함
[0.025 0.975]  신뢰구간 회귀 계수의 신뢰구간

 

Omnibus 정규성 디아고스티노 검정(D'Angostino's Test), 비대칭도와 첨도를 결함한 정규성 테스트, 클수록 정규분포
Prob(Omnibus)   디아고스티노 검정이 유의미한지 판단(0.05 이하면 유의미 판단)
skew 왜도 평균 주위의 잔차들이 대칭하는지, 0에 가까울수록 대칭
ㄴ > 0 positive(오) 오른쪽 긴 꼬리 - 로그/루트/역수
ㄴ < 0 negative(왼) 왼쪽 긴 꼬리  - 제곱/지수
     
kurtosis 첨도 잔차들의 분포 모양, 3에 가까울수록 정규분포(음수-평평, 양수-뾰족)
Durbin-Waston 잔차 독립성 더빈왓슨 정규성 검정, 잔차의 독립성 여부 판단
1.5~2.5 잔차 독립적, 0 or 4 가까우면 잔차들이 자기상관 가지고 있다고 판단
Jarque-Bera 정규성 자크베라 정규성 검정, 값이 클 수록 정규분포 데이터 사용
Cond. No 다중공선성 검정 독립변수간 상관관계 있는지, 10 이상이면 다중공선성 있다고 판단

 


    • 선형회귀모형(Y= α + βX + ε) β=0에 대한 통계적 유의성 검정 실시, X가 Y에 유의미한 영향 미치는지 판단 
    • Q. 모델이 오차를 얼마나 해결?
      • 검정통계량: 모델이 설명하는 변동 / 설명하지 못하는 변동 = 효과(신호) / 오차

SST SSR SSE

                      * SST: 종속변수의 분산 = 평균과의 차이를 제곱한 것의 합 으로 추정 

MSE MSR MSE F통계량

SST SSR SSE

  • 모델별 보정 및 재학습 방안

 

앙상블 bagging boosting
특징 병렬 앙상블(각 모델 서로 독립)
categorical - voting | continuous - mean
연속sequential 앙상블(이전 모델 오류 반영)
단계별 classifier 합쳐 최종 classifier 구함 
목적 variance 감소 bias 감소
적합한 상황 low bias + high variance
- 오버피팅이 문제 
high bias + low variance
- 개별 결정 트리 낮은 성능이 문제(weak learner)
sampling random sampling adaboost, gradient boosting
장점   성능 좋음
단점   속도 느리고 오버피팅 가능성

※ weak learner: 데이터 작은 변화가 분류 모델 큰 차이 야기하는 분류 알고리즘 

 

  adaboost gradient boosting
weak learner stump: 한개 노드 2개 가지 갖는 매우 작은 DT restricted tree: max num of leaves로 성장 제한 둔 DT 
    leaf* + restricted tree (with 동일 lr)
* leaf: 첫번째 week learner는 모든 샘플의 output 평균을 값으로 갖는 하나의 leaf
Predicted value output
각자 실제 output 예측 => 가중평균
Pseudo-residual
각 restricted tree 예측값은 실제 output 과 이전 모델 예측치 사이 오차 > scaling > sum 
Model weight 다른 양을 가지는 stump가 모델별 다른 weights 동일 모델 weight(learning rate) 

 

optimizer      
momentum 관성 > 방향 과거 파라미터 업데이트 누적 + 방향성 반영 * SGD
adaptive 크기/사이즈 파라미터 업데이터 > learning rate 줄어들며 미세 조정 * AdaGrad
* RMSprop: 지수이동평균
momentum + adaptive     * Adam

- 선형회귀 규제

l1 라쏘 Lasso l2 릿지 Ridge (Weight decay*) 엘레스틱넷
절대값 제곱 r: 혼합비율
- 가중치를 0으로 푸시하여 희소 모델 유도
- 릿지보다 최소값 근처 기울기 큼(급속히 w=0)
- α 클수록 w=0으로 향하는 정도/속도 커짐 
- 중요도 낮으면 0으로 축소
- l2 보다 이상치 robust
- 희소성(0이 되는 weight 많음 - 제거가능)
   => weight 0 제거로 오버피팅 방지 기능 
- 가중치 매개변수를 희소하게 만들지 않고, 패널티 부여(작은 가중치에 대해서는 패널티 0)
α=0 선형회귀
α=1 학습 파라미터 증가폭 커져 그래프 모양 단순해짐
WD*: 불필요한 weight 0근처로 유도, capacity 줄이는것과 유사 효과
- 이상치 영향 많이 받음
r=0 릿지 r=1 라쏘

    ※ 가중치 감쇠: 이상치 적당히 무시: l1, 이상치 신경써야하면 l2

      ㄴ예시) l2(0.001): 네트워크의 전체 손실에 층에 있는 가중치 행렬의 모든 값이 0.001 * weight_coefficient_value**2만큼 더해짐; 훈련할 때만 추가 > 테스트 단계보다 훈련 단계에서 네트워크 손실이 훨씬 더 큼

 

- 나이브 베이즈 스무딩: 데이터 빈도 보정

라플라스 출현빈도 + 일정값(출현하지 않아도 확률 0 되는것 방지 -> 일반화 특성 학습 가능=오버피팅 방지)
Lidstone 단어마다 서로 다른 보정값(라플라스보다 유연)
Add-k + 0보다 큰 임의의 k (k값 크게 설정 -> 데이터셋 작은 경우에도 일정 확률값 보장)
Good-turing 기존 출현하지 X > 새로운 빈도수로 추정(데이터셋 나타난 빈도수 바탕) 

  - 규제(정규화)
    1) 모델에 범위 제한 constraints 부여
    2) 목적함수에 파라미터 범위 제한하도록 동작하는 term 추가
    3) 학습데이터 설명할 수 있는 여러가정 조합
    4) 학습데이터 분포에 대한 사전지식을 활용해 추가 학습 데이터 생성

    5) noise로 정규화 효과

  • 모델별 활용 방법
    • 나이브베이즈: 실시간 분류, 텍스트 분류(스팸필터링, 감성분석), 추천 시스템  
    •  

4. 신기술

4-1. 데이터 분석 관련 신기술

  • AutoEncoder 기본개념 및 활용방안
    • 기존 PCA(선대, 최적화 등 이론 관련됨)과는 다르게 데이터로만 직관적 이해 가능
      • latent representation coding / reconstruction error
  • 전이학습 기본개념
  •  
  • Finetuning 기본개념 
    • lr 크면, pretrain이 새로운 데이터셋에 맞게 업데이트 됨. ↓
  • 언어모델 사용방법
  •  
  • Data Drift 기본개념의 이해
    • Model Drift: 입력 데이터 변화 or 입출력 관계 변화로 인한 모델 성능 저하 가능성 판단
      • Data Drift(feature drift/covariate shift), Concept Drift, Label(Target) Drift, Prediction Drift(Concept drift의 시그널 가능성 존재) 
Data - 입력 데이터 통계적 분포 변화 
ㄴ Periodic(계절 같은 시간 변화) / Instantaneous(코로나 같은 새로운 도메인) / Temporary(시간/공간 변화 X 기분 같은 임시) / Gradual(시간이 지남에 따른 사용자 선호도 변화)
 
Concept - 입력 데이터의 통계적 분포와 예측하려는 정답 라벨의 의미/개념/통계적 특성(관계성/해석방법)의 변화
- 시간이 지남에 따라 모델이 예측할 대상 변수의 통계적 특성이 변화 
 
Domain - 학습데이터 분포와 테스트 데이터 분포 차이  
  • MLOps 기본개념
    • 머신러닝을 위한 데이터 수집, 분석, model training, 평가 검증, 배포 등의 프로세스를 자동화하고,
    • 이를 유지관리하고 모니터링하는 머신 러닝 엔지니어링 협업 기능
  • MLOps 구성요소 이해
    • 구성원: 데싸, DevOps 엔지니어, IT
    • ML Pipeline: CI + CD + CT(Continuous Training)
      • CT: 모델이 Production 단계에서 새로운 데이터로 학습하여 만들어낸 새로운 모델을 배포하는 과정 반복
    • Cycle: EDA > Data Prep > 모델 훈련 및 튜닝 > 모델 검토 > 추론 > 서빙 > 배포 / 모니터링 > 자동 재훈련  
  • 강화학습 기본개념의 이해 
    • 환경(물리법칙/사회규칙)안에서 정의된 에이전트가 현재의 상태를 인식하여, 선택 가능한 행동등 중 보상을 최대화 하는 행동 혹은 행동 순서를 스스로 선택하도록 학습시키는 방법
      • 학습 초반에는 Explore, 학습 진행 될 수록 Exploit에 가깝게 설정 
    • 복잡한 상황) 현재 선택 행동이 미래 순차적 보상 영향 > agent는 당장의 보상 아닌 최종 미래 보상 극대화 전략
    • 희소 보상 문제: 중간 보상, 모사 학습(사람이 조정한걸 메모리 저장 학습 활용), 탐색 범위 넓히기(학습 초기 랜덤 행동 비율 늘이기)

 

통계

시계열

패턴(3): 추세, 계절성, 주기성

분해: 패턴(3)을 분리하고 독립적으로 분석하기 위한 기법, 분리 후 잔차를 계산하여 불규칙한 패턴 분석 

 

자기상관계수: 시간 간격 일정 두개의 관측치가 서로 상관 관계가지는 정도(일주일 간격 수집된 데이터 관계)

상호상관(비교상관, 교차상관)계수: 시간 간격이 일정하지 않은 경우 

 

정상성: 시간이 흘러도 통계적 특성 변하지 않는 성질(평균 분산 일정, 자기상관계수 일정 - 과거 미래 상관 X, 시간 따른 분산 일정)

비정상성: 시간에 따라 통계량 계속 변해 예측 어려움. 시계열 데이터 분석 위해 정상성 검정 선행 

ex) 연간 매출액 - 월간 매출액 공분산 다를 수 있음. 2021/01 매출액과 2021/02 매출액간 공분산은 달라지지 않음, 그래서 공분산 대신 자기상관계수 사용하여 시계열 상관관계 분석함

ㄴ 공분산: 두 변수 분포 함께 변화하는 경향 | 자기상관계수: 시점 간 관계 

 

지수 평활법: 과거 데이터에 대한 가중치를 지수적으로 감소시키며 평균을 계산하는 방법 

ㄴ Holt-Winters: 예측식 + 평활식(수준, 추세, 계절 성분)

AARIMA: ARIMA + exogenous변수(시계열 데이터에 종속적이지 않은 외부 변수) 

ARIMAX = AR + MA + 설명변수 > 다변량(독립변수가 종속변수 영향-인과관계)
VAR(Vector Auto Regression) > 다변량(상호작용/동적관계)