TIL 07-26 ADsP 3과목 학습 1

김덕협·2026년 7월 26일

TIL

목록 보기
39/43

[TIL] ADsP 대비 — 통계 · 머신러닝 핵심 개념 총정리

  • Tags: #TIL #ADsP #Statistics #MachineLearning #DataAnalysis

(IQR → 거리 척도 → 검정/분포 → 트리·앙상블 → 변수/시각화 → 확률함수 → 평가지표 → 결측치 → 오차/가설검정 → 연관규칙)


목차

  1. IQR(사분위수 범위) 구하는 법
  2. 사분위수를 활용한 이상값(Outlier) 탐지
  3. 유클리드 거리 vs 맨해튼 거리
  4. F검정 / t검정 / F분포 / t분포 / 일원분산분석
  5. 지니 지수 vs 엔트로피 지수 (불순도)
  6. 랜덤 포레스트 / 배깅 / 부트스트랩 / 부스팅
  7. 범주형 변수
  8. 다차원 척도법 (MDS)
  9. 확률질량함수(PMF) vs 확률밀도함수(PDF)
  10. F1-score와 조화평균
  11. 결측치 처리 기법 5가지
  12. 표본오차 vs 비표본오차
  13. 가설 검정: 귀무가설 · 대립가설 · 유의수준 · p-value
  14. 연관 규칙 분석: 지지도 · 신뢰도 · 향상도

1. IQR(사분위수 범위) 구하는 법

IQR(Interquartile Range) 은 데이터의 중앙 50%가 얼마나 퍼져 있는지를 나타내는 수치. 극단값(이상치)의 영향을 받지 않는다는 장점이 있다.

IQR=Q3Q1IQR = Q_3 - Q_1

구하는 4단계

  1. 오름차순 정렬 — 작은 값부터 큰 값 순으로 배열
  2. 중앙값(Q2Q_2) 찾기 — 홀수 개면 정가운데 값, 짝수 개면 가운데 두 값의 평균
  3. Q1Q_1, Q3Q_3 구하기 — 중앙값 기준으로 하위/상위 그룹을 나눈 뒤 각 그룹의 중앙값
    • Q1Q_1: 하위 50%의 중앙값 (하위 25% 지점)
    • Q3Q_3: 상위 50%의 중앙값 (하위 75% 지점)
  4. 뺄셈IQR=Q3Q1IQR = Q_3 - Q_1

예시

데이터: [7, 1, 3, 10, 2, 8, 5]

  • 정렬: 1, 2, 3, 5, 7, 8, 10
  • Q2=5Q_2 = 5
  • 하위 그룹 (1, 2, 3)Q1=2Q_1 = 2 / 상위 그룹 (7, 8, 10)Q3=8Q_3 = 8
  • IQR=82=6IQR = 8 - 2 = 6

2. 사분위수를 활용한 이상값(Outlier) 탐지

IQR로 정상 데이터의 울타리(Fence) 를 설정하고, 이를 벗어나면 이상값으로 판정한다. (Tukey's Fences)

하한선=Q11.5×IQR상한선=Q3+1.5×IQR\text{하한선} = Q_1 - 1.5 \times IQR \qquad \text{상한선} = Q_3 + 1.5 \times IQR

  • 정상 범위: [하한선, 상한선] 안의 값
  • 이상값: 하한선보다 작거나 상한선보다 큰 값
  • 1.5의 의미: 정규분포 기준 약 ±2.7σ에 해당해, 약 0.7% 미만의 드문 극단값만 걸러내는 표준 비율. (더 강한 극단치만 잡으려면 3.0 사용)

계산 예시

데이터: [1, 12, 14, 15, 16, 17, 18, 20, 45]

  • Q1=13Q_1 = 13, Q3=19Q_3 = 19IQR=6IQR = 6
  • 하한선: 139=413 - 9 = 4 / 상한선: 19+9=2819 + 9 = 28
  • 판정: 1 (4보다 작음) → 이상값, 45 (28보다 큼) → 이상값

Python 코드

import pandas as pd

df = pd.DataFrame({'val': [1, 12, 14, 15, 16, 17, 18, 20, 45]})

Q1 = df['val'].quantile(0.25)
Q3 = df['val'].quantile(0.75)
IQR = Q3 - Q1

lower_bound = Q1 - 1.5 * IQR
upper_bound = Q3 + 1.5 * IQR

# 이상값 탐지
outliers = df[(df['val'] < lower_bound) | (df['val'] > upper_bound)]

# 이상값 제거
clean_df = df[(df['val'] >= lower_bound) & (df['val'] <= upper_bound)]

3. 유클리드 거리 vs 맨해튼 거리

두 거리의 차이는 "대각선으로 질러갈 수 있는가?" 로 갈린다.

📏 유클리드 거리 (Euclidean Distance)

  • 두 점 사이의 최단 직선거리 (피타고라스 정리 기반)
  • 비유: 새가 하늘을 곧장 날아가는 거리

d=(x2x1)2+(y2y1)2d = \sqrt{(x_2-x_1)^2 + (y_2-y_1)^2}

'유클리디안'이란? 수학자 유클리드(Euclid)의 방식을 따른다는 형용사. 분석 분야에서 "유클리디안"이라고만 하면 대부분 유클리디안 거리(= 두 점 사이 최단 직선거리)를 의미한다.

🏢 맨해튼 거리 (Manhattan Distance)

  • 대각선 없이 각 축 방향(수평/수직)으로만 이동한 거리
  • 비유: 격자형 도로의 맨해튼에서 택시가 건물을 돌아 이동하는 거리 (Taxi Distance)

d=x1x2+y1y2d = |x_1-x_2| + |y_1-y_2|

비교

구분유클리드 거리맨해튼 거리
이동 방식직선 (대각선 가능)축 따라 이동 (수평/수직)
공식제곱 + 제곱근절대값의 합
이상치 영향제곱하므로 매우 민감상대적으로 적게 받음
주요 활용KNN, K-Means, 이미지 유사도격자 경로 탐색(A*), 고차원 데이터, 추천 시스템

예시: A(1,1) → B(4,5)

  • Δx=3\Delta x = 3, Δy=4\Delta y = 4
  • 유클리드: 32+42=25=5\sqrt{3^2+4^2} = \sqrt{25} = 5
  • 맨해튼: 3+4=73 + 4 = 7

선택 팁: 고차원이거나 이상치 영향이 우려되면 맨해튼, 실제 물리적/직선 거리가 중요하면 유클리드.


4. F검정 / t검정 / F분포 / t분포 / 일원분산분석

🧪 F-검정 (F-test)

집단 간 분산(변동성) 비율을 이용해 차이를 검정하는 방법.

F=집단 간 분산 (그룹 간 차이)집단 내 분산 (그룹 내부 오차)F = \frac{\text{집단 간 분산 (그룹 간 차이)}}{\text{집단 내 분산 (그룹 내부 오차)}}

  • F값이 크다 → 오차 대비 그룹 간 차이가 명확 → "유의미한 차이가 있다"
  • F값이 1에 가깝다 → 차이가 오차 수준 → "차이가 없다"
  • 주 용도: ① 3개 이상 집단의 평균 비교(ANOVA) ② 회귀모델 전체의 유효성 검정 ③ 두 집단의 등분산성 검정

🧪 t-검정 (t-test)

두 집단의 평균 차이가 진짜 의미 있는 차이인지, 우연인지 검정하는 기법.

t=두 집단의 평균 차이표준오차 (집단 내부 변동성)t = \frac{\text{두 집단의 평균 차이}}{\text{표준오차 (집단 내부 변동성)}}

종류설명예시
단일표본 t-검정한 집단 평균 vs 특정 기준값과자 평균 무게가 100g과 같은가?
독립표본 t-검정서로 다른 두 집단의 평균 비교남학생 vs 여학생 평균 키
대응표본 t-검정동일 집단의 처리 전/후 비교다이어트 약 복용 전후 체중
  • 판정: p-value < 0.05 → 통계적으로 유의미한 차이 있음

📈 t-분포 vs F-분포

구분t-분포F-분포
주요 용도두 집단 평균 비교 (t-test)3개 이상 집단 비교(ANOVA), 회귀모델 검정
기반 개념두 집단 간 '평균 차이'집단 간 분산 / 집단 내 분산 '분산의 비율'
그래프 모양0 중심 대칭 종 모양 (정규분포보다 꼬리 두꺼움)0부터 시작, 오른쪽 꼬리 긴 비대칭 (음수 불가)
표본 수 증가 시표준정규분포에 수렴

🔑 핵심 관계: 집단(수준)이 2개일 때

F=t2F = t^2

비교 집단이 딱 2개면 t-검정과 F-검정(ANOVA)의 결과는 완전히 동일하며, 자유도 dfdf인 t-분포 값을 제곱하면 자유도 (1,df)(1, df)인 F-분포 값과 일치한다.

관련 기출 지문 (둘 다 옳음, 정답 ④)

  • (가) F검정으로 도출된 p-value로 주효과 및 교호작용의 유의성을 판단한다 → ⭕
  • (나) 일원분산분석에서 수준이 2개인 요인의 주효과 검정 시, F분포는 t분포의 제곱과 항상 같다 → ⭕

📊 일원분산분석 (One-way ANOVA)

독립변수 1개에 따라 3개 이상 집단의 평균 차이가 유의미한지 F-검정으로 판단하는 방법.

  • 일원(One-way): 독립변수가 1개 (예: 학원 종류)
  • 분산분석(ANOVA): 평균 비교를 '분산'을 이용해 분석

왜 t-검정을 3번 반복하지 않는가?

  • t-검정 반복 시 1종 오류(없는 차이를 있다고 판단) 가 누적됨 → 3번 반복하면 오류율 약 14.3%까지 급증
  • ANOVA는 전체 오차율을 유의수준 5%로 유지하면서 한 번에 비교 가능
구분t-검정일원분산분석
비교 대상2개 집단 평균3개 이상 집단 평균
사용 분포t-분포F-분포

5. 지니 지수 vs 엔트로피 지수 (불순도)

의사결정나무(Decision Tree)에서 "데이터가 얼마나 섞여 있는가(불순도)" 를 측정하는 지표. 트리는 불순도를 가장 많이 낮추는 방향으로 분기한다.

  • 순수(Pure): 한 영역에 같은 클래스만 존재 → 지표값 0
  • 불순(Impure): 여러 클래스가 섞임 → 지표값 최대

지니 지수 (Gini Index)

임의로 뽑은 데이터가 잘못 분류될 확률.

Gini=1i=1cpi2Gini = 1 - \sum_{i=1}^{c} p_i^2

  • 범위(이진 분류): 0Gini0.50 \le Gini \le 0.5 (0 = 순수, 0.5 = 반반 섞임)
  • 로그 계산이 없어 계산 속도가 빠름 → CART 알고리즘 기본 지표

엔트로피 지수 (Entropy)

데이터의 무질서도/불확실성.

Entropy=i=1cpilog2(pi)Entropy = -\sum_{i=1}^{c} p_i \log_2(p_i)

  • 범위(이진 분류): 0Entropy10 \le Entropy \le 1 (0 = 순수, 1 = 반반 섞임)
  • 로그 함수로 확률 변화에 더 민감 → ID3, C4.5 알고리즘 기본 지표

비교

구분지니 지수엔트로피
핵심 개념불순도(Impurity)무질서도(Uncertainty)
최대값(이진)0.51.0
계산 복잡도제곱 연산 → 빠름로그 연산 → 느림
대표 알고리즘CART, Random ForestID3, C4.5

실전에서는 두 지표의 결과 차이가 크지 않아, 계산이 빠른 지니 지수가 Scikit-learn 기본값으로 쓰인다.


6. 랜덤 포레스트 / 배깅 / 부트스트랩 / 부스팅

🌲 랜덤 포레스트 (Random Forest)

"여러 개의 의사결정나무를 만든 뒤, 투표 결과를 모아 최종 결론을 내는 앙상블 알고리즘"

  • 나무 1개: 한 명의 의견 → 과적합(Overfitting) 위험
  • 숲: 집단지성 → 정확하고 안정적

핵심 무작위성 2가지
1. 배깅 (데이터 섞기): 복원 추출(부트스트랩)로 뽑은 서로 다른 샘플로 각 나무를 학습
2. 특성 무작위 선택 (변수 섞기): 분기 시 전체 변수가 아닌 무작위 일부 특성 중에서 최적 분할 기준 탐색 → 특정 강력한 변수의 지배 방지

최종 예측

  • 분류: 다수결 투표 (Majority Voting)
  • 회귀: 평균값 (Average)
               [전체 데이터셋]
             ┌────────┼────────┐
             ▼        ▼        ▼  (데이터 & 특성 무작위 샘플링)
          [나무 1]  [나무 2]  [나무 3] ... [나무 100]
             │        │        │               │
  예측 ──►  [이탈]   [유지]   [이탈]          [이탈]
             └────────┴───┬────┴───────────────┘
                          ▼
                   【 다수결 투표 】 → [최종 결과: 이탈!]
장점 ⭕단점 ❌
과적합에 강함, 높은 정확도나무가 많아 학습/예측 느림
이상치·결측치에 강함내부 구조 복잡 → 해석 어려움 (블랙박스)
변수 중요도 파악 가능메모리 사용량 큼

🎒 배깅 (Bagging = Bootstrap Aggregating)

"데이터를 조금씩 다르게 섞어 여러 모델을 학습시킨 뒤, 집단지성으로 결론 내는 방식"

  1. Bootstrap: 복원 추출로 크기가 같은 무작위 샘플 여러 개 생성
  2. Aggregating: 각 샘플로 독립 모델 학습 후 결과 통합 (분류=다수결, 회귀=평균)
  • 효과: 분산(Variance) 감소 → 과적합 방지

🥾 부트스트랩 (Bootstrap)

"복원 추출(뽑은 걸 다시 넣고 뽑기)로 여러 개의 가상 데이터셋을 만드는 재표본 기법"

원본: [A, B, C, D, E]
 ├─► 샘플 1: [A, A, C, D, E]  (A 중복, B 미포함)
 ├─► 샘플 2: [B, C, C, D, E]  (C 중복, A 미포함)
 └─► 샘플 3: [A, B, D, D, E]  (D 중복, C 미포함)
  • 왜 복원 추출? 한정된 데이터로 "새 데이터를 여러 번 수집한 효과"를 낼 수 있음
  • OOB (Out-Of-Bag): 복원 추출 시 약 36.8% 는 한 번도 안 뽑힘 → 학습에 안 쓰였으므로 검증/평가용으로 활용 (별도 교차검증 없이 성능 평가 가능)
  • 어원: "Pull oneself up by one's own bootstraps" — 외부 도움(추가 데이터) 없이 기존 데이터만으로 스스로 가치를 창출

🚀 부스팅 (Boosting)

"약한 모델들을 순차적으로 학습시키되, 이전 모델이 틀린 오답에 가중치를 부여하며 점점 강하게 만드는 앙상블 기법"

[데이터] → [모델 1] → 오답 발생! (오답에 가중치↑)
                → [모델 2] → 여전히 오답 (가중치 재조정)
                       → [모델 3] → ... → [최종: 모델들의 가중합]
  • 최종 결합 시 잘 맞춘 모델에 더 큰 가중치 부여
  • 주의: 노이즈까지 맞추려다 과적합 위험 → 하이퍼파라미터 튜닝 중요

⚖️ 배깅 vs 부스팅

구분배깅 (Bagging)부스팅 (Boosting)
학습 방식병렬 (동시 독립 학습)순차 (앞 모델 결과를 이어받음)
핵심 기법부트스트랩 (복원 추출)오답 데이터에 가중치 부여
목적분산 감소 (과적합 방지)편향 감소 (정확도 극대화)
속도비교적 빠름상대적으로 느림
대표 알고리즘Random ForestXGBoost, LightGBM, CatBoost, AdaBoost

7. 범주형 변수

범주형 변수(Categorical Variable): 숫자로 연산할 수 없는 종류/범주/그룹을 나타내는 변수.

종류 2가지

종류특징예시
명목형 (Nominal)순서/등급 없음 (단순 구분)성별, 혈액형, 거주 지역
순서형 (Ordinal)명확한 순서/서열 존재학점(A~F), 만족도, 직급

수치형 변수와 비교

구분범주형수치형
의미종류/그룹연산 가능한 수치
평균 계산무의미가능
예시전화번호, 성별, 학점키, 체중, 매출액

⚠️ 전화번호·우편번호는 숫자로 적혀 있어도 연산이 무의미하므로 범주형이다.

머신러닝 처리 (인코딩)

  • 원-핫 인코딩 (One-Hot): 명목형에 사용. 범주마다 0/1 열 생성
  • 레이블 인코딩 (Label): 순서형에 사용. 순서를 반영해 숫자 할당 (예: 사원=1, 대리=2, 과장=3)

8. 다차원 척도법 (MDS)

MDS(Multidimensional Scaling): 고차원 데이터 간의 유사성/거리를 2~3차원 공간의 점으로 시각화하는 기법.

"데이터끼리 얼마나 비슷한지를 지도 형태로 그려주는 도구"

  • 직관 예시: 도시 간 이동 시간 표만 가지고 대한민국 지도 모양을 2차원 평면에 복원
  • 마케팅 활용 (포지셔닝 맵): 브랜드 유사도 설문 → 비슷한 브랜드는 가깝게, 다른 브랜드는 멀게 배치 → 시장 내 포지션 파악

핵심 개념

  • 거리 기반: 유클리드/맨해튼 거리 등으로 데이터 간 거리를 계산해 평면에 표현
  • 스트레스 값 (Stress Value): 원래 거리와 축소된 평면 거리 간의 왜곡(오차) 지표. 보통 0.05 미만이면 잘 표현된 것으로 평가

종류

종류대상 데이터
계량적 MDS (Metric)실제 거리, 시간, 비율 등 수치형(연속형)
비계량적 MDS (Non-metric)순위, 선호도 등 순서형(상대적 순서)

9. 확률질량함수(PMF) vs 확률밀도함수(PDF)

🎲 확률질량함수 (PMF)

이산확률변수(셀 수 있는 값)에서 "특정 값이 나올 확률"을 직접 알려주는 함수.

예시: 동전 2개 던지기 (X = 앞면의 개수)

  • P(X=0)=1/4P(X=0) = 1/4, P(X=1)=2/4P(X=1) = 2/4, P(X=2)=1/4P(X=2) = 1/4

성질
1. 0P(X=x)10 \le P(X=x) \le 1
2. P(X=x)=1\sum P(X=x) = 1
3. 여러 값의 확률 = 해당 확률들의 합

📈 확률밀도함수 (PDF)

연속확률변수(키, 몸무게, 시간 등)에서 확률의 밀도(경향성) 를 나타내는 함수.

  • 연속형은 값이 무한히 많아 특정 한 점의 확률은 0P(X=a)=0P(X=a)=0
  • 따라서 확률은 점의 높이가 아니라 구간의 면적(적분) 으로 구한다

P(aXb)=abf(x)dxP(a \le X \le b) = \int_a^b f(x)\,dx

성질
1. f(x)0f(x) \ge 0 (밀도는 1보다 클 수도 있음!)
2. f(x)dx=1\int_{-\infty}^{\infty} f(x)\,dx = 1 (전체 면적 = 1)
3. P(X=a)=0P(X=a) = 0P(aXb)=P(a<X<b)P(a \le X \le b) = P(a < X < b)

시각화 (정규분포, 평균 키 175cm 예시)

 (밀도)
   ▲
   │                  ┌───┐              ← 평균 175cm 근처에 밀집
   │                 ┌┘   └┐
   │               ┌┘ ░░░░░ └┐           ← [170~180cm] 빗금 친 '면적'이
   │             ┌─┘  ░░░░░  └─┐            곧 "이 구간에 속할 확률" (약 68.3%)
  ─┴─────────────┼────┼───┼───┼────────► (키, cm)
                160  170 175 180  190

❓ 밀도가 1보다 클 수 있다는 게 무슨 말?

확률 ≠ 밀도. 확률은 절대 1을 못 넘지만, 밀도는 얼마든지 넘을 수 있다.

  • 인구밀도 비유: 좁은 0.01km²에 10명이 살면 인구밀도는 1000 — 밀도 수치는 커도 실제 사람 수(확률)는 10명일 뿐
  • 균일분포 예시: 확률 = 가로 × 높이, 전체 넓이는 무조건 1
[상황 A: 범위 넓음]              [상황 B: 범위 아주 좁음]
 밀도                             밀도
  ▲                             10 ┼───┐
 1┼──────────┐                     │   │
  │ 넓이 = 1 │                     │넓이=1│  ← 0.1 × 10 = 1
 0└──────────┴──►                0 └───┴──►
  0          1                    0   0.1
  • 데이터가 가로 0.1의 좁은 구간에 몰려 있으면, 전체 넓이 1을 유지하려고 높이(밀도)가 10이 되어야 함
  • 한 줄 요약: Y축의 '밀도'는 확률이 아니라 "데이터가 얼마나 빽빽한가"를 나타내는 높이일 뿐 → 1보다 클 수 있다

비교

구분PMFPDF
대상이산형 (주사위, 동전, 자녀 수)연속형 (키, 무게, 시간)
대표 분포이항분포, 포아송분포정규분포, t-분포, F-분포
확률 구하기Y축 높이를 그대로 읽음구간의 넓이(적분)
P(X=a)P(X=a)f(a)f(a)00

10. F1-score와 조화평균

🎯 정확도의 함정

환자 100명 중 실제 환자 1명인 데이터에서 "모두 정상"이라고만 답해도 정확도 99% → 불균형 데이터에서 정확도(Accuracy)는 거짓말을 한다. 이때 F1-score가 필요.

혼동행렬과 정밀도/재현율

               ┌────────────────┬────────────────┐
               │  실제 Positive │  실제 Negative │
┌──────────────┼────────────────┼────────────────┤
│ 예측 Positive│  TP            │  FP            │ ──► [정밀도] TP/(TP+FP)
├──────────────┼────────────────┼────────────────┤
│ 예측 Negative│  FN            │  TN            │
└──────────────┴────────────────┴────────────────┘
                      ▲
                  [재현율] TP/(TP+FN)
  • 정밀도 (Precision): 양성이라 예측한 것 중 실제 양성 비율 (예: 스팸함 메일 중 진짜 스팸 비율)
  • 재현율 (Recall): 실제 양성 중 모델이 놓치지 않고 찾아낸 비율 (예: 실제 암 환자 중 암 판정 비율)

F1-score = 정밀도와 재현율의 조화평균

F1=2×Precision×RecallPrecision+RecallF1 = 2 \times \frac{Precision \times Recall}{Precision + Recall}

왜 산술평균이 아닌 조화평균?

  • 정밀도와 재현율은 트레이드오프 관계
  • 산술평균: 정밀도 1.0 + 재현율 0.0 → 평균 0.5 (괜찮아 보이는 착시)
  • 조화평균: 한쪽이 0에 가까우면 결과도 0에 가깝게 깎아버림 → 둘 다 균형 있게 높아야 높은 점수
  • 용도: 암 진단, 스팸 필터, 사기 탐지 등 데이터 불균형이 심할 때

➗ 조화평균 (Harmonic Mean)

"각 값의 역수를 산술평균한 뒤, 다시 역수로 뒤집은 값"

H=ni=1n1xi,두 수의 경우 H=2aba+bH = \frac{n}{\sum_{i=1}^{n}\frac{1}{x_i}}, \qquad \text{두 수의 경우 } H = \frac{2ab}{a+b}

왕복 속도 예시: 100km를 갈 때 100km/h, 올 때 50km/h

  • 산술평균 75km/h ❌
  • 실제: 총 200km ÷ 총 3시간 ≈ 66.67km/h
  • 조화평균으로 한 번에: 2×100×50100+50=1000015066.67\frac{2 \times 100 \times 50}{100+50} = \frac{10000}{150} \approx 66.67

핵심 특징: 작은 값에 훨씬 큰 가중치 → 어느 한쪽이 0에 가까우면 전체가 폭락 → F1-score가 '균형'을 검증하는 원리


11. 결측치 처리 기법 5가지

기법채우는 방식특징 / 한계
완전분석법결측 행 통째로 삭제간단하지만 데이터 손실 큼, 편향 위험
평균 대치법전체 평균값으로 일괄 대치쉬움, 데이터 크기 유지 / 분산 축소·변수 간 관계 무시
조건부 평균 대치법조건(그룹)별 평균 또는 회귀 예측값으로 대치더 정교 / 분산 축소 우려
단순확률 대치법확률 분포 기반 무작위성(노이즈) 을 더해 1번 대치변동성 유지 / 대치 불확실성 평가 불가
다중 대치법여러 번(M번) 대치 후 결과 통합가장 정교 (불확실성 반영) / 계산량 많음

평균 대치법 예시

[200, 300, 400, 500, NA] → 평균 350으로 대치 → [200, 300, 400, 500, 350]
(범주형은 평균 대신 최빈값(Mode) 대치 사용)

다중 대치법 3단계 + 예시

상황: 직원 C, E의 연봉이 결측 (나이/경력/만족도는 존재)

  1. 대치 (Imputation): 회귀 모델 + 확률적 오차로 서로 다른 M개(예: 3개)의 완성 데이터셋 생성
    • 데이터셋1: C=4,100 / E=6,200 · 데이터셋2: C=3,900 / E=6,400 · 데이터셋3: C=4,300 / E=6,000
  2. 분석 (Analysis): 각 데이터셋에서 독립적으로 분석 수행
    • 경력 1년당 연봉 증가: +450 / +480 / +420만 원
  3. 결합 (Pooling): Rubin's Rule에 따라 결과 통합 → 최종 +450만 원

왜 이렇게까지? 한 번만 대치하면 그 값을 지나치게 확신해 표준오차를 과소평가함. 다중대치는 "결측치를 채워 넣으며 생긴 불확실성"까지 최종 결과에 반영한다.

대치법 4종 한 줄 비교 (소득 결측 예시)

  • 평균 대치: "전체 평균 350만 원으로 채우자"
  • 조건부 평균 대치: "30대 대리급 평균 420만 원으로 맞춤 채우자"
  • 단순확률 대치: "평균에 랜덤 오차를 더해 340만 원으로 채우자"
  • 다중 대치: "여러 번 다르게 채워 M개 데이터셋을 만들고 종합하자"

12. 표본오차 vs 비표본오차

구분표본오차 (Sampling Error)비표본오차 (Non-sampling Error)
발생 원인전체(모집단)가 아닌 일부만 추출했기 때문조사/수집/분석 과정의 실수·왜곡
표본 크기와의 관계표본이 커질수록 감소표본이 커지면 관리 부담으로 오히려 증가 가능
통계적 계산수식으로 계산 가능 (예: ±3.1%p)정확히 계산하기 어려움
해결 방법표본 수 확대, 추출법 개선설문 정교화, 조사원 교육, 검수
  • 표본오차 예시: 뉴스의 "95% 신뢰수준에 표본오차 ±3.1%p"
  • 비표본오차 예시: 무응답 오차, 유도신문/애매한 질문(측정 오차), 입력 오타(처리 오차)

표본오차 = "전수를 다 안 뽑아서 어쩔 수 없이 생기는 한계"
비표본오차 = "조사 과정의 실수나 응답 왜곡으로 생기는 오차"


13. 가설 검정: 귀무가설 · 대립가설 · 유의수준 · p-value

귀무가설 vs 대립가설

구분귀무가설 (H0H_0)대립가설 (H1H_1)
의미차이/효과가 없다차이/효과가 있다
관점보수적, 기존 통념 유지입증하고자 하는 새 주장
목적기각(버리는 것)이 목표채택(증명)이 목표

예시 1 — 신약 개발: H0H_0: "신약과 기존 약의 효과 차이가 없다" / H1H_1: "신약이 더 효과 있다"
예시 2 — 법정 재판: H0H_0: "피고인은 무죄다" (무죄 추정) / H1H_1: "피고인은 유죄다" (검사의 주장)
→ 명백한 증거(데이터)가 없으면 유죄를 입증하지 못해 무죄(H0H_0) 상태 유지

유의수준 (α)

  • 검정을 얼마나 까다롭게 할지 분석 전에 미리 정하는 기준점 (보통 0.05, 엄격하면 0.01)
  • 의미: "우연히 이런 결과가 나올 확률이 5% 미만으로 드문 일이면, 우연이 아니라 진짜 효과로 인정하겠다"는 선

p-value (유의확률)

  • 귀무가설이 맞다는 전제하에, 지금 관찰된 것 이상으로 극단적인 데이터가 우연히 나올 확률
  • 데이터로부터 실제 계산되어 나오는 값

판정 규칙

p-value<α    귀무가설 기각 (대립가설 채택)p\text{-value} < \alpha \;\Rightarrow\; \text{귀무가설 기각 (대립가설 채택)}

  • p < 0.05: 우연일 확률이 기준보다 작다 → "통계적으로 유의미" → H0H_0 기각
  • p ≥ 0.05: 우연히도 충분히 나올 수 있다 → H0H_0 기각 불가 (유지)
비유유의수준 (α)p-value
성격분석 전에 정하는 '기준점'분석 결과로 나오는 '계산값'
비유커트라인 점수내 시험 점수

❓ "우연히 나타날 확률"이 정확히 무슨 뜻?

"아무 일도 일어나지 않았는데(귀무가설이 참인데), 오직 순수한 운 때문에 지금처럼 유별난 결과가 나올 확률"

  • '우연히' = 귀무가설이 사실인 세상 (아무 효과도 없고 확률적 요동만 있는 상태)
  • '이런 데이터' = 실제 관찰된 결과 또는 그보다 더 극단적인 결과

🪙 동전 던지기 예시

  • H0H_0: "이 동전은 정상(50:50)이다"
  • 실험: 10번 던져 10번 모두 앞면
  • p-value: (1/2)10=1/10240.098%(1/2)^{10} = 1/1024 \approx 0.098\%
  • 판정: 0.098% < 5% → "순전히 운으로 보기엔 너무 희귀하다" → H0H_0 기각, "동전은 사기다!"

✅ 내 이해 확인 (맞다고 검증받음)

5% 미만으로 나오는 사건이면 우연이 아니다 → 귀무가설 기각.
5% 이상이면 우연히 발생할 수도 있는 것이다 → 귀무가설 유지.


14. 연관 규칙 분석: 지지도 · 신뢰도 · 향상도

장바구니 분석(Market Basket Analysis): "A를 살 때 B도 같이 살까?" — 아이템 간 연관성(ABA \rightarrow B) 측정.

📐 3대 지표

지표질문핵심 의미공식
지지도 (Support)이 조합이 전체에서 얼마나 자주 등장하나?규칙의 대중성P(AB)=A, B 동시 거래 수전체 거래 수P(A \cap B) = \dfrac{\text{A, B 동시 거래 수}}{\text{전체 거래 수}}
신뢰도 (Confidence)A를 산 사람 중 B도 산 비율은?규칙의 강도 (조건부 확률)P(BA)=A, B 동시 거래 수A 포함 거래 수P(B \mid A) = \dfrac{\text{A, B 동시 거래 수}}{\text{A 포함 거래 수}}
향상도 (Lift)A 추천이 우연보다 얼마나 효과적인가?우연성 검증Confidence(AB)P(B)=P(AB)P(A)×P(B)\dfrac{\text{Confidence}(A \rightarrow B)}{P(B)} = \dfrac{P(A \cap B)}{P(A) \times P(B)}

향상도 수식 해석: 분모 P(A)×P(B)P(A) \times P(B)는 "A와 B가 완전히 독립일 때의 동시 발생 확률". 실제 동시 발생 확률(분자)이 우연 대비 몇 배인지를 보는 비율.

향상도(Lift) 해석 기준

Lift의미조치
> 1양의 연관성 (A를 사면 B를 더 삼)함께 배치, 세트 할인 (의미 있는 규칙!)
= 1독립 (연관 없음)동시 구매는 우연 → 추천 가치 없음
< 1음의 연관성 (A를 사면 B를 안 삼)함께 배치/추천 금지

🛒 계산 예시 (전체 100명)

  • 기저귀(A) 구매 20명, 맥주(B) 구매 10명, 둘 다 구매 8명
지표계산해석
지지도8/100=0.088/100 = 0.08전체의 8%가 동시 구매
신뢰도8/20=0.408/20 = 0.40기저귀 구매자의 40%가 맥주도 구매
향상도0.40/0.10=4.00.40 / 0.10 = 4.0기본 확률 10% → 40%로 4배 향상!

⚠️ 신뢰도의 비대칭성

Confidence(AB)Confidence(BA)\text{Confidence}(A \rightarrow B) \neq \text{Confidence}(B \rightarrow A)

기준(분모)이 반대이므로 값이 완전히 다르다.

구분기저귀 → 맥주맥주 → 기저귀
기준(분모)기저귀 구매자 20명맥주 구매자 10명
계산8/20=40%8/20 = 40\%8/10=80%8/10 = 80\%

지지도·향상도는 대칭(A, B 순서 바꿔도 동일), 신뢰도만 비대칭.

📝 기출 문제 풀이 (총 거래 수 100)

거래 내역: {맥주} 10 / {기저귀} 20 / {맥주, 기저귀} 30 / {맥주, 땅콩} 10 / {맥주, 기저귀, 땅콩} 10 / (기타 20)

집계 (⚠️ 해당 품목이 포함된 모든 행을 합산!)

  • 맥주 포함: 10+30+10+10=6010+30+10+10 = 60P(맥주)=0.6P(맥주)=0.6
  • 기저귀 포함: 20+30+10=6020+30+10 = 60P(기저귀)=0.6P(기저귀)=0.6
  • 맥주∩기저귀: 30+10=4030+10 = 40P(맥주기저귀)=0.4P(맥주 \cap 기저귀)=0.4

보기 검증

  • ① 맥주·기저귀 지지도 = 40/100=0.440/100 = 0.4 → ⭕
  • ② 맥주·기저귀·땅콩 지지도 = 10/100=0.110/100 = 0.1 → ⭕
  • ③ 맥주에 대한 기저귀의 신뢰도 = 40/600.6740/60 \approx 0.67 (0.5 아님!) → ❌ 정답
  • ④ 향상도 = 0.67/0.61.11>10.67/0.6 \approx 1.11 > 1 → 양의 상관관계 → ⭕

문제 풀이 팁: 표의 거래 수는 '해당 조합만 단독으로 포함한 수'이므로, 특정 품목의 전체 건수는 그 품목이 들어간 모든 행을 더해서 구해야 한다.


오늘의 회고

  • 통계 검정(t/F검정, p-value)의 논리 구조가 "우연 대비 진짜 차이"라는 하나의 관점으로 관통된다는 것을 이해했다.
  • p-value는 "귀무가설이 참인 세상에서 이 데이터가 순전히 운으로 나올 확률"이며, 5% 미만이면 우연으로 보기 어려워 귀무가설을 기각한다는 흐름을 스스로 정리하고 검증받았다.
  • 신뢰도의 비대칭성(ABBAA \rightarrow B \neq B \rightarrow A)과, 연관 규칙 문제에서 거래 수를 합산 집계해야 한다는 점이 실전 문제 풀이의 핵심 포인트였다.
profile
뭘봐

0개의 댓글