평균 이동(Mean Shift)

K-평균과 비슷하게 중심을 군집의 중심으로 지속적으로 움직이면서 군집화를 수행

K-평균이 중심에 소속된 데이터의 평균 거리 중심으로 이동하는 반면, 평균 이동 중심은 데이터가 모여 있는 밀도가 가장 높은 곳으로 이동

 

평균 이동 군집화를 데이터 분포도를 이용해 군집 중심점을 찾는다. 이를 위해 확률 밀도 함수(probability density function)를 이용한다. 주어진 모델의 확률 밀도 함수를 찾기 위해 KDE(Kernel Density Estimation)를 이용한다.

 

(표현은 확률 밀도 함수를 찾는다고 했지만 확률 밀도 함수를 정하여 밀도가 

 

특정 데이터를 반경 내의 데이터 분포 확률 밀도가 가장 높은 곳으로 이동하기 위해 주변 데이터와의 거리 값을 KDE 함수 값으로 입력한 뒤 그 반환 값을 현재 위치에서 업데이트하면서 이동한다.

 

KDE는 커널 함수를 통해 어떤 변수의 확률 밀도 함수를 추정하는 대표적인 방법이다.

관측된 데이터 각각에 커널 함수를 적용한 값을 모두 더하여 데이터 건수로 나눠 확률 밀도 함수를 추정한다.

 

모든 커널 함수를 더하게 되면 KDE 함수가 생성되고, 각 커널 함수에서 겹치는 부분, 데이터의 밀도가 높은(밀집되어 있는)구간은 KDE 함수의 크기가 커진다.

 

 

 

확률 밀도 함수 PDF(Probability Density Function)는 확률 변수의 분포를 나타내는 함수로 널리 알려진 정규 분포 함수를 포함해 감마 분포, t-분포 등이 있다.

이렇게 구한 확률 밀도 함수로 특정 변수가 어떤 값을 갖게 될지에 대한 확률을 알게되므로 이를 통해 변수의 특성(정규분포의 경우 평균, 분산), 확률 분포 등 변수의 많은 요소를 알 수 있다.

 

대표적인 커널 함수로는 가우시안 분포 함수가 있다.

$$ KDE = \frac{1}{n}\sum_{i=1}^{n}K_{h}(x-x_{i}) = \frac{1}{nh}\sum_{i=1}^{n}K(\frac{x-x_{i}}{h}) $$

K = 커널 함수, xi = 관측값, h = 대역폭

 

h(대역폭)는 KDE 형태를 부드러운(또는 뾰족한) 형태로 평활화(Smoothing)하는데 적용된다.

이 h를 어떻게 설정하느냐에 따라 확률 밀도 추정 성능을 크게 좌우 할 수 있다.

 

h가 작다면 좁고 뾰족한 KDE를 가지고(군집 중심점이 많다) 이는 변동성이 큰 방식으로 확률 밀도 함수를 추정하여 과적합이 발생하기 쉽다. 반대로 h가 크다면 KDE가 과도하게 평활화되어(군집 중심점이 적다) 과소적합이 발생하기 쉽다. 따라서 적절한 h값은 평균 이동 군집화에서 매우 중요하다.

 

평균 이동의 장점은 데이터 세트의 형태를 특정 형태로 가정한다든가, 특정 분포도 기반의 모델로 가정하지 않기 때문에 좀 더 유연한 군집화가 가능하다는 것이다. 이상치의 영향력 또한 크지 않으며, 미리 군집의 개수를 정할 필요도 없다.

하지만 알고리즘 수행 시간이 오래걸리고 bandwidth의 크기에 따른 군집화 영향도가 매우 크다.

 

그렇기에 평균 이동 군집화는 분석 업무 기반의 데이터 세트보단 컴퓨터 비전 영역에서 많이 사용된다.

이미지나 영상 데이터에서 특정 개체를 구분하거나 움직임을 추적하는데 뛰어난 역할을 수행하는 알고리즘이다.

군집화는 분류(Clasification)와 비슷해 보일 수 있으나 성격이 많이 다르다. 데이터 내에 숨어 있는 별도의 그룹을 찾아서 의미를 부여하거나 동일한 분류 값에 속하더라도 그 안에서 더 세분화된 군집화를 추구하거나 서로 다른 분류 값의 데이터도 더 넓은 군집화 레벨화 등의 영역을 가지고 있다.

 

비지도학습의 특성상 어떠한 지표라도 정확하게 성능을 평가하긴 어렵다 그럼에도 군집화의 성능을 평가하는 대표적인 방법으로 실루엣 분석을 이용한다.

 

실루엣 분석(silhouette analysis)

각 군집 간의 거리가 얼마나 효율적으로 분리돼 있는지를 나타낸다.

효율적으로 잘 분리됐다는 것은 다른 군집과의 거리는 떨어져 있고 동일 군집끼리의 데이터는 서로 가깝게 잘 뭉쳐 있다는 의미이다.

 

실루엣 분석은 실루엣 계수(silhouette coefficient)를 기반으로 한다. 실루엣 계수는 개별 데이터가 가지는 군집화 지표이다. 즉, 개별 데이터가 가지는 실루엣 계수는 해당 데이터가 같은 군집 내의 데이터와 얼마나 가깝게 군집화 돼 있고, 다른 군집에 있는 데이터와는 얼마나 멀리 분리돼 있는지를 나타내는 지표이다.

 

a(i) : 해당 데이터 포인트와 같은 군집 내에 있는 다른 데이터 포인트와의 거리를 평균한 값

b(i) : 해당 데이터 포인트가 속하지 않은 군집 중 가장 가까운 군집과의 평균 거리

 

두 군집 간의 거리가 얼마나 떨어져 있는가 b(i) - a(i), 정규화 -> MAX( a(i), b(i) )

i번째 데이터 포인트의 실루엣 계수 s(i) = (b(i) - a(i)) / MAX( a(i), b(i) )

이는 -1 ~ 1 값을 가지며 1에 가까울 수록 근처의 군집과 멀리 떠떨어져 있고, 0에 가까울 수록 근처의 군집과 가깝다는 말이다. - 값은 아예 다른 군집 데이이터 포인트가 할당 됐음을 의미

 

좋은 군집화의 기준

1. 전체 실루엣 계수의 평균값이 0 ~ 1사이, 1에 가까울수록 좋다.

2. 개별 군집의 평균 값의 편차가 크지 않아야 한다. -> 개별 군집의 실루엣 계수가 전체 실루엣 계수의 평균값에서 크게 벗어나지 않아야 한다.

 

 

 

 

K-평균은 군집 중심점(centroid)라는 특정한 임의의 지점을 선택해 해당 중심에 가장 가까운 포인트들을 선택하는 군집화 기법.

 

군집 중심점

선택된 포인트의 평균 지점으로 이동하고 이동된 중심점에서 다시 가까운 포인트를 선택, 다시 중심점을 평균 지점으로 이동하는 프로세스를 반복적으로 수행. 모든 데이터 포인트에서 더 이상 중심점의 이동이 없을 경우에 반복을 멈추고 해당 중심점에 속하는 데이터 포인트들을 군집화하는 기법.

 

1. k개의 군집 중심점 설정

2. 각 데이터는 k개의 중심점들 중 가장 가까운 중심점에 소속

3. 중심점에 할당된 데이터들의 평균 중심으로 중심점 이동

4. 중심점을 이동하였지만 데이터들의 중심점 소속 변경이 없으면 군집화 완료

 

K-평균의 장점

- 일반적인 군집화에서 가장 많이 활용되는 알고리즘

- 알고리즘이 쉽고 간결

 

k-평균의 단점

- 거리 기반 알고리즘으로 속성의 개수가 매우 많을 경우 군집화 정확도가 떨어진다.

(이를 PCA로 차원 감소를 적용해야할 수도 있다.)

- 반복을 수행하는데 반복 횟수가 많을 경우 수행시간이 매우 느려진다.

- 몇 개의 군집(cluster)을 선택해야 할지 가이드가 어렵다.

'데이터를 기반으로 알고리즘이 스스로 학습한다'는 머신러닝의 개념을 가능하게 만들어준 핵심 기법 중 하나.

 

회귀에서 비용 함수가 최소가 되는 W 파라미터 값을 구하기 위해 비용 함수의 반환 값, 즉 예측값과 실제 값의 차이가 작아지는 방향으로 W 값을 계속 업데이트 해 나간다.

이때 작아지는 방향을 미분을 통해 구한다.

 

비용 함수 = R(w), 미분된 비용함수 = R'(w), 기존 변수 = w1, 갱신된 변수 = w2, 학습율 = n 라고 가정한다.

w2 = w1 -n*R'(w1)

위 식을 통해 w2가 점점 비용 함수의 최소값을 구할 수 있는 변수로 줄어들 것이다.

 

학습률(Learning Rate)

n(에타)는 변수가 갱신되는 정도를 나타내며 학습률에 따라 최소값을 찾지 못하는 경우가 있다.

R(w) = w^11, w1=1, n=0.1로 가정한다면 손실 함수 값이 위로 튀어버리는 오버슈팅(Overshooting)현상이 발생한다.

이는 학습률이 너무 크기 떄문에 발생하는 현상이고, 반대로 학습률이 너무 작다면 최소값을 찾지 못하고 지역 최소값(Local minimum)에 도달한다.

 

비용 함수가 다변수 함수라면 편미분을 통해 변수들을 갱신해 나간다.

 

업데이트 되는 변수의 모양(shape)에 고려하며 행렬 연산을 해야한다.

 

일반적으로 경사 하강법은 모든 학습 데이터에 대해 반복적으로 비용 함수 최소화를 위한 값을 업데이트 하기 때문에 시간이 매우 오래 걸린다는 단점이 있다.

 

그렇기 때문에 확률적 경사 하강법(SGD, Stochastic Gradient Descent)를 이용한다.

SGD는 전체 데이터가 아닌 일부 데이터만 이용해 w를 업데이트한다. 그렇기에 속도가 일반 경사 하강법 보다 빠르다.

대용량 데이터에 대해선 미니 배치 확률적 경사 하강법을 이용하여 최적 비용함수를 도출한다.

 

 

 

실무에서 어떻게 사용할지에 대한 내용을 위주로 수업 진행

 

데이터 분석 절차

데이터 수집 -> 데이터 전처리 -> 탐색적 데이터 분석- > 모델 선택 -> 평가 및 적용

Data Collection -> Data Preprocessing -> EDA : Exploratory Data Analysis -> Model Selection -> Evaluation & Depolyment

 

데이터 전처리 + 탐새적 데이터 분석

- 데이터 정제

- 결측치 / 이상치 처리

- 극단치 분석

- 데이터 스케일 맞추기(Feature Scaling)

- 더미 변수화(Dummification)

- 차원 축소(Dimensionality Reduction)

 

모델 선택 + 평가 및 적용

- 학습/검증셋 분리

- Normalization ,Standardization, Regularization

- Cross Validation, GridSearchCV, 차원 축소

- 모델학습 model.fit

- 모델 예측 model.predict

- 모델 평및 검증

 

데이터 전처리를 어떻게 하느냐에 따라 성능이 갈리는 경우가 많다.

 

데이터 전처리, Feature Engineering

Feature Converting (변수 변환)

Feature Scaling (변수 스케일링)                    ->           Data Preprocessing

Feature Extraction (변수 추출)                                     Feature Engineering

Feature Selection (변수 선택)

 

데이터 분석 결과를 크게 좌우

 

데이터 기본 개요

 

 

 

1일차

데이터에 따른 구분 분석

데이터와 분석 간의 관계 독립 변수(Features)
범주형 수치형
종석 변수(Y) 범주형 교차 분석 분류(Classificatinos)
로지스틱 회귀 분석
수치형 t-test
ANOVA(분산분석)
상관분석
회귀(Regression)

 

정형, 비정형 데이터

  정형 데이터 반정형 데이터 비정형 데이터
특징 데이터 스키마 지원 스키마에 해당하는 메타 데이터가 데이터 내부에 존재 - 데이터 세트가 아니라 하나의 데이터가 객체화 되어 있음
- 구조화 되어 있지 않아 해석이 어려움
탐색 방법 - 스키마 구조를 통해 탐색  가능
- 스키마 정보를 관리하는 DBMS를 통해 탐색
데이터 내부에 있는 규칙성을 파악해 파싱 규칙 적용 이진 파일 형태의 데이터일 때 데이터 탐색 방법은 종류별로 응용 소프트웨어를 이용하여 탐색
예시 - RDBMS의 테이블들
- 스프레드 시트
- HTML - URL 형태로 존재
- XML, JSON - 오픈 API 형태
- 로그 형태 - 웹 로그, IOT에서 제공하는 센서 데이터
- 이진 파일 형태 : 동영상, 이미지
- 스크립트 파일 형태 : 소설 데이터의 텍스트
데이터 차원 행, 열 구성 2차원 파싱 적용 후 행, 열 2차원 3차원 이상

 

1. 데이터 기본 구조 이해 : 차원과 벡터

Vector : 연속 또는 이산 숫자 배열

Vector Space : 벡터로 구성된 공간

x와 y방향으로 평면에서 움직이는 각 각 속도 Vx, Vy

 

Sclar : 1차원 벡터로 크기만 있고 방향성이 없는 양

 

선형대수학(Linear Algebra)은 벡터 공간, 벡터, 선형 변환, 행렬, 연릭 선형 방정식 등을 연구하는 대수학의 한 분야.

벡터 공간이 주 연구대상.

 

 

DataFrame 상호변환

darray, 리스트 딕셔너리 dataframe 생성 : 2차원 (행,열)이하, 컬럼명 지정

df.values() -> ndarry 반환

df.values.tolist() -> 리스트 반환

df.to_dict() -> 딕셔너리 반환

 

OpenCV는 RGB 대신에 BGR 컬러 포맷 사용

 

 

3차원 데이터는 텐서?

이미지는 텐서로 이해하면 되나?

 

 

딥러닝은 연산이 많기 때문에 경량화를 해야한다.

예) dtype : unit8

 

 

2. Feature Enginerring : 데이터 전처리

 

3. Machine Learning 개요

Machine learning allows computers to learn and infer from data.

 

머신러닝과 딥러닝의 차이 정확히 찾아보기

 

Types of Machine Learning

Supervised : Datapoints have known outcome

unSupervised : Data points have unknown outcome

 

지도학습과 비지도학습의 차이 정확히 찾아보기

 

 

Machine Learning 핵심 Factor

1. Loss function( Cost function)

2. Paramteter, Hyperparameter

3. Regression Performace measure

- MSE, MAE, RMSE, R-square

4. Classification Performace

- Confusion matrix, f1-score, AUC/ROCN

5. Bias - Variance trade-off

- Overfitting, underfitting

6. Bootstrap aggregating(Bagging)

 

parameter : 데이터를 통해, 데이터에 의존하여 나온 파라미터

Hyperparameter : 사람이 직접 값들을 부여하는 파라미터

 

1. Hyperparameter Search

2. Feature Enginerring

3. Model Evaluation

 

 

 

비지도학습? semi supervised?, anomaly detection 보안감지??

 

 

4. Regression : 회귀

 

Regression시 스캐터를 사용하는 것이 좋다.

 

사이킷런 Regression에서 하급시 독립변수를 하나 넣으면 안된다.

데이터가 하나인 경우 새로운 값을 추가 해야 한다. 

그렇지 않다면 해당 데이터를 Series 에서 Dataframe을 바꿔준다.

예 ['feature'] -> [['feature']], 대괄호 추가

 

 

RFE(Recursive Feature Elimination)

통계에서 T value를 보고 필요없는 피처들은 지워버리고 학습하는 방식

R-Square와 T value의 관계?

 

 

 

 

2일차

Classification

KNNs

Naive Bayes

Logistic Regression

Optimization 최적화 방법

 

 

 

 

회귀 : 한 바퀴 돌아 제자리로 돌아오거나 돌아감(네이버 어학사전)

하나의 종속 변수와 두 개 이상의 독립 변수 사이에 나타나는 관계를 치소 제곱법을 추정하는 방법(네이버 어학사전)

 

 

회귀 분석 : 관찰된 연속형 변수들에 대해 두 변수 사이의 모형을 구한 뒤 적합도를 측정해내는 분석(위키백과)

 

사전적 정의에 맞게 이해하기가 힘들다.

 

 

데이터 값이 평균으로 회귀하려는 경향을 가진다.

 

데이터가 추세선으로 회귀한다는 것은 어색하다.

추세선이 데이터를 따라 간다는 것이 더 맞는 것 같다.

 

회귀

'잔차(residual: 데이터의 실측치와 모델의 예측치 사이의 차이, 즉 회귀시겡서 오차항에 대한 관측치)가 평균으로 회귀한다'는 것을 의미

잔차가 평균으로 회귀하도록 만든 모델

회귀 모델링은 오차의 합이 최소가 되도록 만드는 작업.

(출처 : https://brunch.co.kr/@gimmesilver/17)

 

통계학에서 휘귀는 여러 개의 독립변수와 한 개의 종속변수 간의 상관관계를 모델링하는 기법을 통칭

 

 

Y = W1*X1 + W2*X2 + W3*X3...Wn*Xn

위의 식에서 Y = 종속변수, X = 독립변수, W = 회귀 계수라고 가정한다면 머신러닝에서 피처(X)와, 결정값(Y) 데이터 기반에서 학습을 통해 최적의 회귀 계수를 찾아내는 것이다. 

회귀 계수의 선형/비선형 여부, 독립변수의 개수, 종속변수의 개수에 따라 여러 유형으로 나뉜다.

가장 중요한 것은 회귀 계수이다.

 

독립변수 개수   회귀계수의 결합

1개: 단위회귀

여러 개 : 다중 회귀

독립 변수 개수 회귀 계수의 결합
1개 : 단일 회귀 선형 : 선형 회귀
여러 개 : 다중 회귀 비선형 : 비선형 회귀

 

지도 학습은 분류와 회귀로 나뉘는데 분류는 예측값이 카테고리와 같은 이산형 클래스 값이고 회귀는 연속형 숫자 값이라는 차이가 있다.

 

선형 회귀 : (실제 값 - 예측 값)^2 값을 최소화 하는 직선형 회귀

규제 : 일반적인 선형 회귀의 과적합을 막기 위해 회귀 계수에 패널티 값을 적용하는 것

 

일반 선형 회귀 : 예측 값과 실제 값의 RSS(Residual Sum of Squares)를 최소화 할 수 있도록 회귀 계수를 최적화하며, 규제(Regularization)를 적용하지 않는 모델

릿지(Ridge) : 선형 회귀에 L2 규제를 추가한 회귀 모델

L2 규제는 상대적으로 큰 회귀 계수 값의 예측 영향도를 감소시키기 위해 회귀 계수값을 더 작게 만드는 규제 모델

 

라쏘(Lasso) : 선형 회귀에 L1 규제를 적용한 방식, L2 규제는 회귀 계수 값의 크기를 줄이지만 L1규제는 예측 영향력이 작은 피처의 회귀 계수를 0으로 만들어 회귀 예측 시 피처가 선택되지 않도록 하는 것

L1 규제는 피처 선택 기능으로도 불린다.

 

엘라스틱넷(ElasticNet) : L2, L1 규제를 결합한 모델, 피처가 많거나, L1규제로 피처를 줄이고, L2 규제로 계수 값이 크기를 조정

 

로지스틱 회귀(Logistic Regression) : 분류에 사용되는 선형 모델, 텍스트 분류와 같은 영역에서 뛰어난 예측 성능을 보인다.

 

단순 선형 회귀에서 최적의 회귀 모델을 만든다는 것은 전체 데이터의 잔차(오류값)이 최소가 되는 모델을 만들겠다는 의미. 동시에 오류값 합이 최소가 될 수 있는 최적의 회귀 계수를 찾는 것.

 

오류의 합은 절댓값을 취해서 더하거나(MAE ,Mean Absolute Error) 제곱을 구해서 더한다(RSS, Residual Sum of Square).

일반적으로 미분 등의 계산을 편리하게 하기 위해 RSS 방식으로 오류합을 구한다.

회귀에서 RSS는 비용(Cost)이며 w변수(회귀 계수)로 구성되는 RSS를 비용함수라고 한다.

 

 

레이블이 불균형한 분포를 가진 데이터 세트는 학습 시 예측 성능에 문제가 발생할 수 있다.

이는 이상 레이블을 가지는 데이터 건수가 정상 레이블을 가진 데이터 건수에 비해 너무 적기 때문이다.

이를 해결하기 위해 오버 샘플링과 언더 샘플링을 주로 사용한다.

 

언더 샘플링

많은 데이터셋을 적은 데이터셋으로 감소시키는 방법

많은 레이블을 가진 데이터 세트를 적은 레이블을 가진 데이터 세트 수준으로 감소

너무 많은 정상 레이블 데이터를 감소 시킬 경우 제대로 된 학습이 안 될 수 있다.

 

오버  샘플링

이상 데이터와 같이 적은 데이터를 충분한 학습이 되도록 증식하는 방법

적은 레이블을 가진 데이터 세트를 많은 레이블을 가진 데이터 세트 수준으로 증식

단순히 데이터를 증식하는 것은 과적합을 유발하므려 원본 데이터의 피처 값들을 아주 약간만 변경하여 증식

 

대표적으로 SMOTE(Synthetic Mirnority Over-Sampling Technique) 방법이 있다.

SMOTE는 적은 데이터 세트에 있는 개별 데이터들의 K 최근접 이웃(K Nearest Neighbor)을 찾아 이 데이터와 K개 이웃들의 차이를 일정 값으로 만들어서 기존 데이터와 약간 차이가 나는 새로운 데이터들을 생성하는 방식

과정 : 원본 데이터 -> K 최근접 이웃으로 데이터 신규 증식 대상 설정 -> 신규 증식하여 오버 샘플링 완료

 

오버 샘플링이 예측 성능상 더 유리한 경우기 많다.
SMOTE 수행 절차

데이터 일차 가공 및 모델 학습예측/평가
Stratified 방식 테스트로 데이터 세트 추출하여 학습 데이터와 테스트 데이터 세트의 레이블 값 분포도를 서로 동일하게 만든다.

 

Stratifeid Sample(계층적 샘플링)
샘플링시 데이터의 비율을 모집단과 같이 하는 것

모집단의 데이터 분포 비율을 유지하면서 데이터를 샘플링(취득)하는 것

예) 전체 데이터에서 정상 레이블과 이상 레이블의 비율이 65%, 35%라면 시험 데이터 역시 정상 레이블과 이상 레이블의 비율이 65%, 35%가 되도록 샘플링하는 것.

 

Light GBM
XGBoost와 함께 부스팅 계열 알고리즘에서 가장 각광 받고 있다.
LightGBM의 가장 큰 장점은 XGBoost보다 학습에 걸리는 시간이 훨씬 적다.
또한 메모리 사용량도 상대적으로 적다.
LightGBM과 XGBoost의 예측 성능은 별 차이가 없다.
한 가지 단점으로 알려진 것은 적은 데이터세트에서(약 10,000건이하)는 과적합이 발생하기 쉽다.(공식문서에 기술)

GBM계열의 트리 분할 방법과 다르게 리프 중심 트리 분할(Leaf Wise)을 사용.
기존의 대부분 트리 기반 알고리즘은 트리의 깊이를 효과적으로 줄이기 위한 균형 트리 분할(Level Wise)방식을 사용
Level Wise : 균형 잡힌 트리 생성 -> 오버피팅에 강함, 균형 맞추는 시간이 필요
Leaf Wise : 최대 손실값을 가지는 리프노드 분할 -> 트리가 깊어짐 -> 예측 오류 손실 최소화

LightGBM의 XGBoost 대비 장점
더 빠른 학습과 예측 수행 시간
더 작은 메모리 사용량
카테고리 형 피처의 자동 변환과 최적 분할(원-핫 인코딩 등을 사용하기 안혹도 카테고리형 피처를 최적으로 변환하고 이에 따른 노드 분할 수행)
GPU 지원

앙상블 계열 알고리즘에서 하이퍼 파라미터 튜닝으로 성능 수치 개선이 급격하게 되는 경우는 많지 않다. 앙상블 계열 알고리즘이 과적합이나 잡음에 기본적으로 뛰어난 알고리즘이기 때문.

오버 샘플링, 언더 샘플링
오버 샘플링이 예측 성능상 더 유리한 경우기 많다.

언더 샘플링
많은 레이블을 가진 데이터 세트를 적은 레이블을 가진 데이터 세트 수준으로 감소

오버 샘플링
적은 레이블을 가진 데이터 세트를 많은 레이블을 가진 데이터 세트 수준으로 증식
STOME(Synthetic Minority Over-samping Technique) 활용
SMOTE는 적은 데이터 세트에 있는 개별 데이터들의 K 최근접 이웃(K Nearest Neighbor)을 찾아 이 데이터와 K개 이웃들의 차이를 일정 값으로 만들어서 기존 데이터와 약간 차이가 나는 새로운 데이터들을 생성하는 방식

SMOTE 수행 절차
원본 데이터 -> K 최근접 이웃으로 데이터 신규 증식 대상 설정 -> 신규 증식하여 오버 샘플링 완료

데이터 일차 가공 및 모델 학습예측/평가
stratified 방식 테스트로 데이터 세트 추출하여 학습 데이터와 테스트 데이터 세트의 레이블 값 분포도를 서로 동일하게 만든다.

+ Recent posts