정답이 있는 데이터(Labelled Data
)로 학습
: Training Dataset
/ Test Dataset
Decision Tree
, Random Forest
, ANN
, SVM
등Decision Tree
, Linear Regression
, Multiple Regression
Clustering
, Neural Network
, Auto Encoder
Labelled
, Unlabelled
동시 학습Labelled Data
로 학습된 부분 학습 모델을 통해 나머지 데이터에 라벨 생성 후 지도 학습 수행Self-Training
, GAN
Q-Learning
, 정책 경사(PG)
회귀선(회귀계수)
: 독립변수에 대한 종속변수의 기대값, 최소제곱법
사용최소제곱법
: 잔차 제곱의 합이 최소가 되게 하는 직선을 의미
- 잔차 : 실제 값과 예측 값의 차이
적합도 검정
: 추정된 회귀식이 표본의 실제값을 설명하는 정도
: R^2 (결정계수)
를 알고있다는 가정 하에,
SSR(회귀제곱합) / SST(총제곱합)
, 1
에 가까울 수록 설명력↑
변수영향력 분석
: p < 0.05
= 통계적 유의미
Y
와 1개 이상의 독립변수 X
와의 선형 상관성X
, Y
모두 연속형 변수0
, 정규분포를 이뤄야 함X
1개, Y
1개y = ax + b
(a
: 회귀 계수, b
: 절편)X
多, Y
1개y = ax1 + bx2 + ... + c
GLM
)종속변수 Y
가 정규 분포를 따르지 않아도 적용 가능
선형 예측 변수 + 링크 함수를 통해 Y
와의 관계 설명
선형 회귀, 로지스틱 회귀, 포아송 회귀 등
선형 예측 변수
: 독립변수 + 모수(Parameter)
링크 함수
: 선형 예측 변수와 종속변수 간 관계를 표현하는 함수
GLM
은 종속변수가 특정확률분포(이항분포, 포아송분포
등)를 따른다고 가정
: 종속변수 = 이항형(2개 범주)
: 종속변수의 범주가 2개 이상
로지스틱 회귀함수식
: 각 모수(Parameter)에 대해 비선형
: 승산(odds
)로 로짓 변환 ▶0~1
로 조정해 선형함수로 치환
- 승산
: 사건A
가 발생하지 않을 확률 대비 일어날 확률의 비
:P(A) / 1-P(A)
N
개의 소집단 → Classification
or Prediction
수행Root Node
: 대상이 되는 모든 자료 집합Internal Node
: 중간 마디Terminal Node
: 끝 마디Depth
: 가장 긴 마디의 개수분리 기준
: 불순도(서로 다른 데이터의 섞임 정도)가 자식 노드로 갈수록 감소하도록
- 정보 획득
: 부모 자식 간의 불순도 차이(순도↑, 불확실성↓)1. 카이제곱 통계량의
p-value
:((실제도수-기대도수)^2 / 기대도수)
의 합2. 지니 지수
: 한 항목의 무작위 라벨 추정 시, 틀릴 확률3. 엔트로피 지수
: 무질서 정도에 대한 측도
분리 기준
1. F-통계량의
p-value
: 등분산성 검정,p-value
∝ 등분산성(순수도)2. 분산 감소량
: 분산 감소량 ∝ 순수도
변수 선택
: 목표 변수와 관련된 독립 변수 선정
Decision Tree
형성
: 분리 기준, 정지 규칙, 평가 기준 수립
정지 규칙
: 더이상 분리되지 않을 노드에 대한 선정 규칙
- Depth가 지정한 최대값 도달
- Terminal Node의 샘플수가 최솟값에 도달
- 불순도 감소가 더이상 진행되지 않음
가지치기
: 과적합 방지, 일반화 향상
: 부적절 추론 규칙, 분류 오류 위험 마디 제거
Root → Leaf
경로의 정확도 낮은 순으로 제거모형 평가 및 예측
정보 획득
: 순도 증가, 불확실성 감소
: 현재 노드의 불순도 - 자식 노드의 불순도
: 어떤 기준으로 분할하는 것이 순수성 증가에 도움을 주는지 판단
재귀적 분기 학습
: 분기 이후 순도 증가, 불확실성 감소 = 각 영역의 정보 획득량 증가
: 모든 Terminal Node의 엔트로피 = 0
타당성 평가
해석 및 예측
CART
C 4.5 / C 5.0
CHAID
4. Random Forest
Bootstrapping
기반 Sampling Decision Tree
: Bagging
기반 앙상블 학습
Bagging
: 여러 부트스트랩 자료 생성 및 학습을 통한 분류기(Classifier
)를 생성해
결과를 앙상블
: 모델 과적합 방지 & 예측에 대한 분산 감소
: 각 샘플별 모델링 → 학습 → 결과 집계
Boosting
: 별개의 앙상블 기법 중 하나
:Weak Classifier
에 가중치를 부여해 순차적으로 연결
: 모델의bias
를 줄이고, 새로운 분류 규칙 생성이 목표
AdaBoost
,GBM
,XGBoost
,Light GBM
등
Artifical Neural Network
입력 데이터 → 가중치 처리 → 활성화 함수 → 출력 계산 → 가중치 조정
의 과정을 거침
ANN
모형 구축 시 고려 사항
다층 퍼셉트론의 문제
: vanishing gradient
(신경망 층수 증가에 따른 기울기 소실 문제 발생)
: 과적합
Deep Learning
의 등장
: pre-training
을 통한 기울기 소실 문제 해결
: 초기화 알고리즘, DropOut
을 통한 과적합 방지
: DNN
= 2개 이상의 은닉층
CNN
, RNN
, LSTM
, GAN
, GRU
, AutoEncoder
입력값X
에 대해 다음 뉴런으로의 적절한 출력값 생성해 목표값Y
도달
X * weights + bias
→ 학습 & 최적화 → 활성화 함수weights
) : 노드와의 연결계수뉴런 간 연결
A
뉴런의 출력이 A
에게 입력으로 돌아옴경사 하강법
과 같은 최적화 알고리즘을 통해 손실 함수의 기울기 계산Classificaition
모델에 사용C
: 클래스 총 개수, yi
: One-Hot Encoding Vector (정답 1, 아니면 0)미니 배치
: 훈련 데이터 중 일부를 무작위로 선택
기울기 산출
: 미니 배치에 대한 손실 함수 값 최소화
: 경사 하강법, 경사 상승법 등
매개변수 갱신
: 가중치 매개변수를 기울기 방향으로 업데이트
출력층 → 입력층
으로 전달덧셈 노드
, ReLu
, Sigmoid
, Affine
등퍼셉트론 : 1개 이상 입력층, 1개 출력층의 신경망 구조
다층 퍼셉트론 : 퍼셉트론 + 은닉층 1개 이상, 계단 함수를 통해 0, 1
반환
딥러닝 인공신경망 : 가중치 매개변수의 적절한 값 자동 학습
Sigmoid
: 이진분류
: True (0.5 ~ 1), False (0 ~ 0.5)
ReLu
:Sigmoid
의 기울기 소실 문제 해결
:> 0
→ 그대로 출력,≤ 0
→ 0
해결법
Weight Decay
: 가중치 감소L1 규제
(Lasso)
L1-norm
(벡터 요소의 모든 절대값 합)으로 비용 함수 조정L2 규제
(Ridge)
L2-norm
(벡터 간 유클리드 거리값)으로 비용 함수 조정L1
보다 활용도 높음Dropout
: 은닉층 뉴런을 임의로 삭제
: 적은 뉴런으로 훈련, 전체 뉴런으로 테스트
: 가중치가 높은 특정 뉴런에 대한 의존도 감소
Hyper Parameter
최적화
: 교차검증과 함께 사용
: Grid Search
(가능한 모든 조합 시도)
→ Random Search
(랜덤하게 하이퍼 파라미터 선택)
→ Bayesian Optimization
(기존 결과 기반 다음 시도할 하이퍼 파라미터 추정)
해결법
ReLu
: 양수값 기울기 일정 (1
)
LSTM
: 장기 기억 가능
GRU
배치 정규화
: 각 층에서의 데이터 분포 정규화
최적화
: Adam
, AdaGrad
등
CNN
Affine
계층 사용ReLu
or Sigmoid
사용)Convolution Layer
- Affine ReLu
- Pooling Layer(생략 가능)
CNN 과정
Filter
(kernel)
: 벡터의 특징을 찾는 정사각형 행렬 파라미터stride
:filter
는 입력 데이터를 일정 간격(stride
)로 순회하며 특징 추출해feature map
구성
:stride 크기 ∝ 1/출력데이터 크기
Padding
:Feature Map
크기 < 입력 데이터 → 출력 데이터 크기를 위해 주변을0 or 1
로 채움
Convolution Layer
: 합성곱filter window
적용해 총합을 구하고, 합성곱 연산 출력filter
의 채널 수filter
크기는 동일, bias
는 항상 1개)Pooling Layer
4*4
행렬 → 2*2
행렬Max Pooling
(대상 영역의 최댓값으로 변환)Average Pooling
(대상 영역의 평균값으로 변환)RNN
: Ordinary 시변적 특징 데이터 (필기, 음성인식 등)에 사용
: 메모리를 통한 입력 시퀀스 처리
: 순환 구조 은닉층을 가지며, 동일 가중치를 공유함
: GSD
(확률적 경사 하강법) 사용
△ 단점
: 관련 정보와 정보 사용 지점이 먼 경우, 역전파 시 기울기 소실 문제 발생
LSTM
: RNN
의 기울기 소실로 인한 데이터 소멸 문제 해결
: 보통 신경망 대비 파라미터 수 x4
: Long Term Memory
: 입력/출력/망각 게이트 → 가중치 곱연산 → 활성화 함수 없이 컨트롤 게이트를 통해 조절
AutoEncoder
: 입력으로 들어온 다차원 데이터 → 저차원 → 고차원 의 과정을 통해 특징 도출
: 데이터 압축, 노이즈 제거 시 사용
encoder
: 다차원 → 저차원decoder
: 저차원 → 고차원GAN
: 지도학습(판별자
) + 비지도학습(생성자
), 두 네트워크 간 MinMax Game
discriminator
: 패턴 진위여부 판별
generator
: 학습 데이터 패턴과 유사하게 생성
DCGAN
: 두 모델 중 하나로 역량이 치우쳐 성능 제약 문제가 발생하는 것을 해결
초평면
을 찾아 Classification
, Regression
수행vector
: 점들 간 클래스Decision Boundary
: 클래스를 분류하는 선hyperplane
(초평면) : 서로 다른 분류에 속한 데이터 간 거리를 가장 크게 하는 선Support vector
: 두 클래스를 구분하는 경계Margin
: 서포트 벡터를 지나는 초평면 사이의 거리Margin
최대화에 중점
: 다른 분류기는 오류율 최소화에 중점
초평면의 마진 = 각 Support vector
를 지나는 초평면 사이의 거리
가중치 벡터 : 초평면에 직교, offset
제공
선형 / 비선형 분류에 모두 사용
비선형 분류에서의
SVM
:커널트릭
(데이터 차원 증가)를 통해 하나의 초평면으로 분류
SVM
별도 구축 필요Support
(지지도) : 데이터 전체에서 해당 사건이 나타나는 확률Confidence
(신뢰도) : 어떤 사건이 다른 사건에 대해 나타나는 확률Lift
(향상도) : 두 규칙(A
, B
)의 상관 관계1
이면 독립, > 1
이면 양의 상관 관계frequent
) 높은 것만 고려Apriori
알고리즘 기반유사성 계산 방법
거리
: 값이 작을수록A
,B
가 유사함
: 유클리드 거리, 맨해튼 거리유사성
: 값이 클수록A
,B
가 유사함
: 코사인 값, 상관 계수
유클리드 거리
: 2차원에서 두 점을 잇는 가장 짧은 거리(피타고라스 정리)
: 민코프스키 적용(m=2
) 시, L2 거리
맨해튼 거리
: 가로지르지 않고 도착하는 최단거리
: 민코프스키 적용(m=1
) 시, L1 거리
민코프스키 거리
: m
차원 민코프스키 공간에서의 거리
: m = 1
(맨해튼), m = 2
(유클리드)
마할라노비스 거리
: 평균으로부터 특정 값의 거리
: 변수 간 상관관계 고려
자카드 거리
: 두 집합 간 비유사성 측정
군집분석은 병합과 분할로 구분
병합
:N
개의 군집에서 시작해1
개까지 유사 군집 병합
분할
:1
개의 군집 →N
개 될 때까지
사전 군집 수로 표본 구분
각 레코드를 정해진 군집에 할당
계산량이 적어 대용량 DB에서 유리
K-means
: 군집 내부 분산 최소화
: 주어진 데이터를k
개의 클러스터 중 하나에 할당
: 개별 유형 특징 파악에 용이
: 대용량 데이터 처리, 분산 처리에 용이
DBSCAN
: 개체 간 밀도를 계산해 밀접 개체끼리 그룹핑
: 이상치 제외 가능, 유형 간 밀도차이 뚜렷하지 않을 때 용이
Gaussian Mixture Model
: 확률 분포 기반 클러스터링
: 데이터 확률 분포가 정규 분포라는 가정 아래,
각 데이터가 정규 분포 상에서 어떤 분포에 속할 지 판단
: 대용량 처리 시엔 적합하지 않음