강명호 교수님
사각형 : 실제 Positive, Negative
막대기 : 예측
정밀도(Precision)
Positive 예측값 중 진짜 Positive인 비율
가짜 Positive가 있어서는 안되는 경우 사용
재현율(Recall)
진짜 Positive 중 예측이 맞춘 비율
진짜 Positive를 못맞추면 안되는 경우 사용
정밀도 (Precision)와 재현을 (Recall)은 보완 관계
반비례 관계
정확도 (Accuracy) = (TP + TN) / (TP + FP + TN + TN)
정밀도 (Precision) = TP / (TP + FP)
재현율 (Recall) = TP / (TP + FN)
ROC Curve
True positive rate 와 False Positive Rate 은
한 지표가 증가할 때, 다른 지표도 증가 (양의 상관관계)
재현율 (Recall) = True Positive Rate
False Positive Rate = FP / (TN + FP)
보통 AUC 0.7 이상이면 우수, 0.75 이상이면 대회 우승하기도 합니다.
선형 회귀
다중 선형 회귀
독립 변수를 많이 가질 때 다중 선형 회귀를 사용
회귀 (Regression)
예측한 선으로 오차가 회귀(regression)하도록 만들어진 모델
1800년대 골턴, 통계, 우생학자
키가 큰 아버지의 아들이 작은 경우가 많았음
회귀라는 개념을 만듬
예측값, 실측값
오차(잔차) : 데이터의 실제값 - 모델의 예상값
오차가 가장 작은 선을 그리고 싶음
f(x) 아래 조건을 만족할 경우, 선형 함수, 선형식
f(x+y) = f(x) + f(y)
f(ax) = af(x)
linear regression
y = ax + b
y = wx + b
w = weight, 가중치로 보통 표현
polynomial regression
2차 함수는 복잡해서 보통 사용하지 않음
적절히 변형해서 선형식으로 표현
x, x제곱, x세제곱을
x1, x2, x3로 치환
한 변수의 변화로 다른 변수에 영향을 미치는 것
변수가 여러 개인 경우, 다중 선형 모델
로그 함수
y=a x제곱
loga y = x
y= B0 x B제곱
log Y = LogB0 + B1* Log
이런 식으로 선형 회귀식으로 변경 가능
통계에서 자주 사용
sigmoid
y = 1 / (1 + e -x제곱)
y = e의 a제곱 / 1+e의 a제곱
복잡한 식을 단순하게 변경할 수 있다
단순 선형회귀
y = wx + b
w : 가중치 weight
b : 절편 intercept, 편향 bias
오차는 점과 점 사이의 거리
오차는 거리이다
오차의 양을 측정
오차는 손실 Loss
특정 선으로 인해 손실이 얼마인지 확인 가능
MSE = Mean Squared Error
MAE = Mean Absolute Error
머신 러닝에서 거리 (distance)
Manhattan distance : L1 distance
맨해튼 거리에서 실제 찾아간다고 생각하면 직각으로 움직임
MAE
절대 평균 오차, 평균 절대 오차라고 보통 부름
y- bar 는 보통 평균
y^ hat 예측값
y1, y2 는 실제 값 (보통 x축 기준으로 순서 부여)
Euclidean distance : L2 distance
MSE
큰 오차는 크게, 작은 오차는 작은 왜곡 발생
아웃라이어의 영향을 많이 받음
모든 함수값에서
MAE 는 평가 지표로 사용
MSE 는 비용 함수로 사용
특이값 OUTLIER 의 영향을 많이 받음
모든 함수값에서 미분 가능
기울기를 구하라, 미분을 구하라는 동일한 의미
평면과 점 사이의 거리
데이터셋의 설계와 특징을 꼼꼼하게 확인하는 것이 중요
특성값들의 범위를 0부터 1까지로 변환
range를 맞춰주는 것
특성값들이 평균 0, 표준편차 1인 정규분포를 이루도록
분포를 맞추는 것
z-score 정규화
평균을 빼고 시그마로 나눠줌
input : x
Model : F(x)
Output : y hat
오차가 있을 때 Update w
학습을 반복
1 Epoch : 데이터 세트를 한 번 학습, 과정을 한 번 돈
오차가 가장 작은 부분
y와 y hat 의 차이가 가장 작은 부분
손실함수의 기울기가 0이 되는 부분
비용 함수 : MSE Mean Squared Error
경사 하강법 Gradient Descent
η (Eta) 그리스 문자 : 학습률
Gradient
기울기가 양수이면 왼쪽으로 이동
기울기가 음수이면 오른쪽으로 이동
w+ 이후 가중치
w 현재
-n 학습률 (얼마나 이동)
αE/αW 기울기
수렴 covergence
대부분의 문제가 일어남
L1 규제 : 라쏘 (LASSO)
L1 norm = |a| + |b|
패널티
영향력 없는 변수 제거
L2 규제 : 릿지 (Ridge)
가중치름
w의 크기만큼
Root Mean Squared Error
MSE 의 제곱근 : 오차의 제곱을 평균한 값의 제곱근
이상치에 민감함
MAE : 300
MSE : 4037
RMSE : 407
Relative Absolute Error
실제값과 평균값의 절대차의 평균으로 나눈 값
자주 사용하지 않고 모델 비교할 때 사용
실제값과 평균값의 차이의 제곱평균으로 나눈 값
자주 사용하지 않고 모델 비교할 때 사용
결정계수 : 모델의 독립변수들이 종속변수를 얼마나 잘 설명하는지 나타내는 지표
y bar : y의 평균
SST 전체 변동
SSR 모형에 의해 설명되는 변동
SSE 모형에 의해 설명이 되지 않는 변동
설명력
R 제곱 = SSR / SST = (SST - SSE) / SST = 1 - SSE /SST
R 제곱 = 1 - (실측 - 예측) 제곱의 합 / (실측 - 평균) 제곱의 합
SSE 에러
주성분을 생성하는 새로운 변수
변수의 개수 축약
variance
스크리 플롯 : 산비탈
이장택 교수님, "한국 프로야구"
차원 축소
변수 선택 : 선택된 feature를 해석하기 쉬움
변수 추출 : 새롭게 생성된 feature의 해석 어려움
학습의 효과는 변수 추출이 더 좋음
차원 축소 방법
벡터 : 방향성과 크기를 가짐
eigenvector 기준이 되는 방향
새로운 축을 축을 들어서 더 큰 분산을 표현
더 큰 분산을 더 적은 변수로 표현
비지도학습
유사도 = 거리
유사도 최대화, 응집도 최대화
집단간 이질성, 유사도 최소화, 분리도 최대화
데이터가 많아지면 수정시 비효율적
군집을 잘 못하는 경우도 있음
스마일 모양 등
밀도의 개념으로 군집
동일한 거리로 구분
noise 제거 가능
core point : 군집을 이룸
border point : 군집을 이룸, 가장 자리
noise point : 이상치
epsilon : 이웃 반경
minPts : 최소 샘플 수
코어 포인트에서 가까운 다른 코어 포인트에서 코어가 될 수 있는지 확인
border는 확인하지 않음
밀도가 높은 곳에서만 진행
초기화
K-means++
보통 2~3개로 시도
대부분 정답
SSE
i와 j가 같으면 1
i와 j가 다르면 0
다른 경우는 무시
같은 것만 보겠다는 의미
군집 내 유사도
군집 내 중심점과 나머지 점들의 거리 합
엘보우 기법 : SSE, 오차제곱합
응집도만 확인
군집끼리 거리는 고려하지 않음
a (i)제곱 응집도
b (i)제곱 분리도
실루엣 계수를 크기 순으로 나열하여 시각화
가파르게 감소하는 군집이 없는 것이 바람직
실루엣 계수 평균 0.7 이상이면 바람직
개념 잡고
지표 판단할 수 있으면
모델이 제대로 동작하는지 확인 가능
분쟁 사례
사람인 vs 잡코리아
전처리도 어렵지만
데이터 수집 자체가 어려움