빅데이터분석기사

[빅데이터분석기사 필기] Day8: 분석 변수 처리

Jia H 2025. 2. 27. 09:55

변수의 이해

관점 설명
통계학 관점의 변수 각 측정 단위에 대해서 특정하려고 하는 특성, 관찰된 항목이나 대상(관측치)의 특성을 수치화하기 위해 쓰이는 속성
수학 관점의 변수 계속 변하는 값이면서, 어떤 정해지지 않은 임의의 값을 표현하기 위해 사용된 '기호'
데이터베이스 관점의 변수 저장된 값의 특성을 대표하며, 그 값을 저장하는 공간(정수, 실수, 문자열 등)

 

 

인과관계 관점의 변수

구분 설명
독립변수(Independent Variable) 다른 변수에 영향받지 않고 종속변수에 영향을 주는 변수
원인변수, 설명변수, 예측변수, 입력변수, 조작변수 라고도 함
예) 원인: 키, 몸무게, 취미
종속변수(Dependent Variable) 독립변수로부터 영향을 받는 변수
반응변수, 결과변수, 출력변수, 목적변수 라고도 함

 

 

데이터 특성에 따른 변수의 유형

구분 설명  예시
질적변수
(Qualitative Variable)
수치화되지 않은 자료의 상태
몇 개의 특성에 의한 범주를 나누어 코드 숫자로 나타낸 자료
성별: 여성 = 1, 남성 = 2
양적변수
(Quantitative Variable)
질적자료를 객관적인 도구를 이용하여 측정하거나 평가하여 수치화한 자료 코라 몸무게: 54.5kg
벼룩 몸무게: 49.5kg

 

 

데이터 형태 관점의 변수의 유형

구분 변수 설명
범주형 변수
= 질적변수
명목변수 측정 대상을 분류하기 위해 이름 대신 임의적으로 숫자를 부여한 변수
예) 여성집단에는 '1', 남성집단에는 '2'라는 수치를 부여(같다/다르다)
서열변수 측정 대상들의 특성을 서열로 나타낸 변수
측정 대상이나 분류에 관한 정보를 주는 명목척도의 특성을 가지면서 동시에 측정 대상의 상대적 서열을 표시
예) 아동들의 성적 등위, 키 순서, 인기 순서, 맛집 별점 등(작다/크다)
수치형 변수
= 양적변수
이산형 변수 횟수와 같은 정수값만 취할 수 있는 변수(정수)
예) 불량품 개수(10개), 사고 건수(100건)
연속형 변수 일정 범위 안에서 무수히 많은 혹은 또 다른 값들이 존재하여 어떤 값이든 취할 수 있는 변수(실수)
예) 시간(1시간 31분 51초), 몸무게(36.145kg)

 

 

척도 및 분석 관점 변수의 유형

구분 변수 설명
범주형 변수
(Categorical Variable)
명목 변수 측정 대상을 분류하기 위해 이름 대신 임의적으로 숫자를 부여한 변수
서열변수 측정 대상들의 특성을 서열로 나타낸 변수
연속형 변수
(Continuous Variable)
등간변수
(간격변수)
측정 대상의 분류와 서열에 관한 정보를 주며 등간성(일정한 간격)을 갖는 변수
숫자 자체로를 절대적 의미를 갖지 못하지만 숫자 간의 차이는 절대적 의미를 갖음
예) 온도와 연도(가감), 만족도(1~5, 평균을 낼 경우)
비율변수 분류, 서열, 등간성의 속성을 지닌 등간척도의 특성을 지니면서 절대영점과 가상 단위를 갖는 변수
예) 무게와 길이, 나이. 키, 금액, 거리, 넓이(사칙연산)

 

 

척도의 활용

척도의 종류에 따라 자료(데이터)의 처리 방식이 달라진다. 명목, 서열척도를 가지는 범주형 자료의 평균은 의미가 없으며, 빈도수(Frequency)를 정량화해서 분석이 필요하다.

반면에 등간, 비율척도를 가지는 연속형 자료는 가감과 사칙연산이 가능하기 때문에 평균과 편차 등을 산출할 수 있다. 예를 들어 만족도 1~5에 대해 1의 빈도수, 5의 빈도수 등 순서에 의미를 부여하면 서열척도로 볼 수 있고, 1~5점까지 점수를 합산하여 평균을 구하면 일정한 간격을 가진 등간척도로 볼 수 있다.

 

절대영점과 등간/비율척도

- 절대영점(Absolute Zero Point): 값이 존재하지 않는 것을 의미

- 등간척도(절대영점이 없음, 0의 값이 가지는 상대적 의미가 존재)

- 비율척도(절대영점 존재, '없다'와 '값이 존재하지 않는다'로 해석 가능

즉, 등간척도가 가지는 0의 의미를 '~이 없다'로 해석되는 것이 아닌, 값 자체가 가지는 상대적 의미로 해석

 

필터기법

- 래퍼기법 사용 전 전처리에 사용 가능

- 종속변수와의 상관관계로 관련성 측정

- 래퍼기법, 임베디드기법 대비 계산 속도 빠름

- 모델링 기법에 의존하지 않고 데이터의 통계적 특성을 이용해 변수를 선택하는 방법

 

필터기법 수행 절차

1. 특징 변수의 전체 집함(Set of all features)

2. 적합 변수 선택(Selecting the best subset)

3. 알고리즘으로 학습(Learning Algorithm)

4. 모델 성능 평가(Performance)

 

필터기법 알고리즘

구분 설명  특징
카이제곱검정 카이제곱분포에 기초한 통계학적 방법으로, 관찰된 빈도가 기대 빈도와 통계적으로 다른지를 판단하는 검증 방법
범주형 변수 간의 검증 방법
범주형 변수 사용
예) 여성/남성, 찬성/반대
정보 이득
(Information Gain)
정보 이득이 가장 높은 속성을 선택하여 데이터를 더 잘 구분하게 하는 기법
크로스엔트로피 이용
수학점수가 체육점수보다 변별력이 더 높음
수학점수 속성이 체육점수 속성보다 정보 이득이 높음
피셔 스코어
(Fisher Score)
어떤 확률변수의 관측값으로부터, 확률변수의 분포의 매개변수에 대해 유추할 수 있는 정보의 양을 이용하는 방법
상관계수
(Correlation Coefficient)
두 변수 간의 선형관계가 존재하는지 또는 존재하지 않는지를 분석하기 위해 수치화한 값
상관계수가 높은 변수가 반드시 모델에 적합한 변수라고 할 수는 없음
상관계수
1, -1: 높은 상관관계
0: 없음
-1: 음의 관계
0에 가까운 분산 0에 가까운 분산을 갖는 변수를 제거하여 변수를 선택하는 가장 단순한 방법 1,000개의 값이 있는 A변수에 990개가 값이 0인 경우고 10개 값이 1인 경우, 큰 의미가 없음

 

 

래퍼기법

- 변수의 일부만을 사용해 모델링을 수행하고 그 결과를 확인하는 작업을 반복하여 변수 집합 선택

- 여러 번 모델링을 수행하기 때문에 시간과 비용이 높게 발생(계산 속도 느림)

- 분석 모델이 정확도 측면에서 최적 성능을 보이는 변수 집합을 선택

- 반복해서 선택하는 과정에서 부분 집합의 수가 기하급수적으로 늘어, 과적합(Overfitting) 위험 발생 가능

 

래퍼기법 절차

1. 특징 변수의 전체 집합(Set of all features)

2. 적합 변수 집합 선택: a, b 반복

a. 하위 집합 선택(Selecting the best subset)

b. 알고리즘으로 학습(Learning Algorithm)

3. 모델 성능 평가(Performance)

 

래퍼기법의 변수 선택을 위한 방법

구분 설명 특징
전진선택법
(Forward Selection)
변수가 없는 상태로 시작하며, 반복할 때마다 가장 중요한 변수를 추가하여 더 이상 성능의 향상이 없을 떄까지 변수를 추가하는 기법 장점: 이해하기 쉽고 변수의 개수가 많은 경우에도 사용 가능
단점: 변수값의 작은 변동에도 그 결과가 크게 달라져 안정성이 부족
후진제거법
(Backward Elimination)
모든 변수를 가지고 시작하며, 가장 덜 중요한 변수를 하나씩 제거하면서 모델의 성능을 향상시키는 기법
더 이상 성능의 향상이 없을 때까지 반복
장점: 전체 변수들의 정보 이용
단점: 변수의 개수가 많은 경우 사용하기 어려움
단계별선택법
(Stepwise Selection)
전진선택법과 후진제거법을 결합하여 사용하는 기법
모든 변수를 가지고 시작하여 가장 도움이 되지 않는 변수를 삭제하거나, 모델에서 빠져 있는 변수 중에서 가장 중요한 변수를 추가하는 방법
반대로 아무것도 없는 모델에서 출발해 변수를 추가, 삭제를 반복할 수 있음

 

 

임베디드기법

- 필터기법과 래퍼기법을 결합하여 어떤 변수가 가장 크게 기여하는지 찾아내는 방법

- 과적합(Overfitting)을 줄이기 위해 내부적으로 규제(Regularization)를 가하는 방법

- 모델 자체의 파라미터값에 따라 변수 선택이 가능한 기법

- 각 변수를 직접 학습하여 모델의 정확도에 기여하는 변수 선택

- 각 변수가 가지는 파라미터를 규제하여(제약) 파라미터가 0이 아닌 변수가 선택됨

- 더 낮은 복잡성으로 모델 훈련, 학습 절차 최적화

 

임베디드기법 절차

1. 특징 변수의 전체 집합(Set of all features)

2. 적합 변수 집합 선택: a,b과정에서 영향도 작은 가중치 삭제

a. 하위 집합 선택(Selecting the best subset)

b. 알고리즘으로 학습 + 모델 성능 평가(Learning Algorithm + Performance)

 

 

인베디드기법의 변수 선택을 위한 알고리즘

구분 설명
라쏘회귀
(LASSO Regression)
라쏘(LASSO: Least Absolute Shrinkage and Selection Method) 회귀
가중치의 정대값 합을 최소화하는 제약사항을 추가하는 방법
L1규제(L1-norm Regularization)를 이용해 파라미터값(w)을 0으로 만들게 제약을 주는 방법
(파라미터값들의 절대값을 규제항으로 적용)
릿지회귀
(Ridge Regression)
= 능형회귀 = 티호노프규제
릿지회귀는 가중치의 제곱합을 최소화하는 제약사항을 추가하는 방법
L2규제를 이용해 파라미터값(w)을 0에 가까워지게 제약을 주는 방법
(파라미터값들의 제곱합을 규제항으로 적용)
엘라스틱넷
(Elastic Net)
라쏘회귀와 릿지회귀를 선형 결합한 방법
상관관계가 큰 변수를 동시에 선택하거나 배제함
SelectFromModel 의사결정나무트리를 이용하여 알고리즘에서 변수를 선택하는 방법
랜덤포레스트나 Light GBM 알고리즘 사용

 

 

차원축소의 이해

차원의 저주와 다중공선성

- 데이터 분석에서 데이터셋의 '차원'은 '변수의 수'와 같은 의미이다(n차원 = 변수의 수 n개)

차원의 저주 확보하고 있는 데이터의 차원이 증가할수록, 필요 데이터의 부족으로 인해 과적합 등의 문제로 모델의 성능이 저하되는 현산(필요 데이터의 품귀 현상)
다중공선성 다중회귀분석에서 독립변수들 간의 상관관계가 나타나는 문제
같은 의미를 가지고 있는 변수가 두 개일 경우 중복된 변수 중 하나는 제거가 필요할 수도 ex.성별&주민등록번호

 

 

머신러닝에서의 차원축소 유형

구분 설명
특성 선택
(Feature Selection)
여러 변수들 중 주요 특성을 가지는 변수만 선택하는 기법
변수 선택의 필터기법, 래퍼기법, 임베디드기법 등 활용
특성 추출
(Feature Extraction)
여러 변수들 간의 관계를 파악하여 이를 대표하는 선형 혹은 비선형 결합을 활용해 새로운 특성(새로운 변수)을 추출하는 기법
여러 변수들의 의미를 포함하는 특성을 추출하여 줄이는 기법

 

 

머신러닝의 차원축소 기법

차원축소 기법 설명
주성분분석(PCA)
(Principal Component Analysis)
 고차원 공간의 표본들을 선형 연관성이 없는 저차원 공간으로 변환하는 기법
여러 변수들의 선형 결합으로 이루어진 새로운 변수인 주성분을 만들어 기존 변수들이 가지고 있는 의미를 포함하여 차원을 축소
계산 복잡성이 낮고 데이터가 부족하거나 비대칭 형태를 가진 데이터셋에도 적용 가능
변수들의 공분산행렬이나 상관행렬 이용
정방행렬(행의 수 = 열의 수)에서만 사용
요인분석(FA)
(Factor Analysis)
데이터에 관찰할 수 있는 잠재적 변수가 존재한다고 가정하고, 모형을 세운 뒤 관찰 가능한 데이터를 이용하여 해당 잠재 요인을 도출하고 데이터 구조를 해석하는 기법(주성분분석 포함)
닷 변수들 간의 상관관계를 분석하여 공통 차원들을 통해 축약하는 통계 기법
(상관계수 +-3을 벗어나는 자료는 부적합)
다수의 변수들의 정보 손실을 최소화하면서, 소수의 요인(Factor)으로 축약하기 위한 기법
(독립/종속변수의 개념 없음)
사회과학, 설문조사 등에 활용
특이값 분해(SVD)
(Singular Value Decomposition)
선형대수의 일반적 기법이며, 실수 공간에 정의된 M x N 차원의 행렬 데이터에서 특이값을 추출하고 이를 통해 주어진 데이터셋을 효과적으로 축약할 수 있는 기법
다차원척도법(MDS)
(Multi Dimensional Scaling)
개체들 사이의 유사성, 비유사성을 측정하여 2차원 또는 3차원 공간상에 점으로 표현하여 개체를 사이의 집단화를 시각적으로 표현하는 분석 방법
데이터 속에 잠재해 있는 패턴, 구조를 발견하고 소수 차원의 공간에 객체간 근접성을 시각화하는 기법
정준 상관분석(CCA)
(Canonical Correlation Analysis)
다변량 독립변수와 디변량 종속변수 간의 상관관계를 분석하는 통계기법으로 두 개 이상의 다변량 변수 집합 간의 상호 관련성을 파악하고, 이러한 관련성을 최대화하는 선형 조합을 찾는데 사용하는 기법
판별분석
(Discriminant Analysis)
판별분석: 집단을 구분할 수 있는 설명변수를 통하여 집단 구분하는 기법, 함수식(판별식)을 도출하고, 소속된 집단을 예측하는 목적으로 사용하는 통계 기법
선형판별분석(Linear Discriminant Analysis): 데이터 분포를 학습해 결정경계(Decision Boundary)를 만들어 데이터를 분류(Classification)하는 모델
주성분분석(PCA)은 데이터의 최적 표현의 견지에서 데이터를 축소하는 방법
선형판별분석(LDA)은 데이터의 최적 분류의 견지에서 데이터를 축소하는 방법
t-SNE
(t-distrubuted Stochasitc
Neighbor Embedding)
주성분분석(PCA)은 선형 변환을 이용하기 떄문에 비선형 특성을 가진 데이터에 대해서는 데이터의 특성을 잘 추출하지 못하는 한계가 있음
고차원 데이터를 2차원 또는 3차원의 저차원 데이터로 시각화하여 데이터 분석 과정에서 활용하기 위한 방법
데이터 간 거리를 통계적 확률(Stochastic Probability)로 변환하여 임베딩(문자를 수치화한 값)에 이용하기 떄문에 안정적인 임베딩 학습 결과를 나타냄
데이터의 지역 인접성을 보존하려고 시도하는 차원축소 알고리즘

 

 

파생변수의 이해

- 파생변수(Derived Variable)

- 기존 변수에 특정 조건 혹은 함수 등을 활용하여 새로운 변수를 만들거나 기존 변수들을 조합하여 새롭게 만들어진 변수

- 비즈니스 도메인을 이해하고 있는 데이터 분석가에 의해 만들어지는 경우가 많기 때문에 주관적일 수 있으나 유의미한 특성이 객관적으로 반영되어야 한다.

 

+요약변수

- 요약변수(Summary Variable)

- 수집된 정보를 분석에 맞게 종합(aggregate)한 변수. 많은 모델에 공통으로 사용될 수 있어 재활용성이 높음

- 예: 상품별 구매금액, 월별 방문횟수 등

 

일반적인 파생변수 추가 방법

파생변수 추가 방법 예시
한 값으로부터 특징들을 추출 날짜로부터 요일을 계산
신용카드번호로부터 신용카드 발급자를 추출
주민번호에서 성별을 추출
한 레코드(행) 내의 값들을 결합 회원 가입일과 첫 구매일로부터 경과를 계산
다른 테이블의 부가적인 정보를 참조 우편번호에 따른 인구과 평균 가계수입
상품코드에 대한 계층 구조
다수 필드 내에 시간 종속적인 데이터 피봇(Pivoting) 월마다 한 행씩 저장되는 과금 데이터를 각각의 월에 대응하는 필드로 변환
거래 레코드들을 요약 월간/년간 총 구매액
Customer Signature 필드들을 요약 값의 표준화 및 서열화
단순한 표현 방식으로 변환 남성, 여성 성별의 수치화 (여0, 남1)
단위 변환 년간 구매금액 단위의 변환

 

 

변수 변환의 이해

- 변수의 유형에 따라 분석 방법이 달라짐

- 불필요한 변수 제거, 변환, 분석에 용이하게 가공하는 작업

 

변수 변환 기법

1. 정규 변환

- 통계적으로 평균은 데이터 이상값에 민감하게 반응 -> 좌우 치우침이나 비선형성 데이터를 평균 중심으로 균형있게

+ 정규분포와 정규성 검정

a. 정규분포(Normal Distribution)

- 평균을 중심으로 좌우대칭이고 종모양을 갖는 확률분포

- 통계학에서는 모집단의 분포르 정규분포라 대부분 가정하고 통계 분석을 시행

- 좌우대칭일 때, 평균/중앙값/최빈값은 동일한 값을 가지며 평균과 분산이라는 두 개의 매개변수로 정의할 수 있음

b. 정규성 검정(Normality Test)

- 데이터의 분포가 이론적 정규분포를 따르는지 검정하는 적합성 검정 방법

 

정규변환

정규 변환 방법 설명
로그변환
(Logarithm)
각 변수 x를 Log(x)로 바꾸는 데이터 방법으로, 분포의 대칭화를 목적으로 평균과 중위수를 거의 같게 하여 산포의 균일화를 수행하는 방법
큰 수를 작게 만들고, 복잡한 계산을 쉽게 만들고, 왜도와 첨도를 줄여서 데이터 분석 시 의미있는 결과를 도출
왜도(Skewness): 좌우 비대칭도
첨도(Kurtosis): 얼마나 뾰족하거나 완만한지
제곱근 변환/세제곱근 변환
(Square Root/Cube Root)
로그에 비해 많이 사용되진 않으나 오른쪽으로 긴 꼬리를 갖는(Right Swkewed) 좌로 치우친 분포에 대해 정규분포를 만들기 위해 사용하는 방법
제곱 변환/세제곱 변환
(Square/Cube)
왼쪽으로 긴 꼬리(Left Skewed)를 갖는 우로 치우친 분포에 대해 정규분포를 만들기 위해 사용하는 방법
박스-콕스 변환
(Box-Cox)
데이터를 정규분포에 가깝게 만들거나 데이터의 분산을 안정화시키기 위해, 정규성을 가정하는 분석법이나 정상성을 요구하는 분석법을 사용하기에 앞서 데이터의 전처리에 활용하는 변환 방법
로그변환과 거듭곱변환(Power Transformation)을 포함
- 양수 데이터에 대해 사용됨
- 음수 값을 변환하기 위해 먼저 상수를 더해 모든 값이 양수가 되도록 만들어줌
- 박스-콕스 변환 적용 후 변환된 값에 상수를 빼서 음수 값을 얻어냄

 

2. 범주형 데이터의 변환

 

범주형 데이터 변환 사례

계절 변수 범주화
1
여름 2
가을 3
겨울 4

 

 

3. 범주형 변수의 연속성 변수변환

더미변수

- 더미변수(Dummy Variable): 가변환, 값이 있으면 1 없으면 0을 가지는 값으로 존재 여부 표시

- 범주형 변수의 데이터 값의 범주가 n개를 가지고 있으면 기준이 되는 범주를 제외한  n-1개의 변수가 만들어짐

- 기준이 되는 범주값을 일반적이거나 빈도수가 많은 범주값을 선택

 

 

더미변수 예시

계절 변수 계절 변수 범주화 계절변수_ 여름 계절변수_가을 계절변수_겨울
1 0 0 0
여름 2 1 0 0
가을 3 0 1 0
겨울 4 0 0 1

 

 

4. 연속형 변수의 범주형 변수 변환

변수구간화

- 변수구간화(Binning): 연속형 변수를 다수의 구간으로 나누기

 

변수 구간화 예시

변수 변수값
나이 변수 2, 3, 7, 14, 16, 17, 23, 26, 27, 31, 36

 

구간 나이
1 10대
2 20대
3 30대

 

 

5.스케일링을 이용한 변환

스케일링 변환 기법

변환 기법 설명
표준화 변수 각각의 데이터를 평균이 0이고, 분산이 1인 가우시안 정규분포를 가진 값으로 변환해주는 스케일링 기법
데이터를 정규분포로 만듦
데이터가 평균으로 얼마나 떨어져 있는가를 나타내는 값
μ(뮤): 한 변수의 평균값
σ(시그마): 표준편차
정규화 서로 다른 변수의 크기를 통일하기 위해 특정 값 범위 사이로 변환해주는 스케일링 기법
상대적 크기에 대한 영향을 중리기 위한 방법
데이터 분포를 조정하는 방법
Min-Max Normalization 최소값은 0, 최대값은 1로, 모든 데이터가 [0, 1] 범위 안에 들어가도록 조절하는 방법
Max-Abs Normalization 절대값이 가장 큰 수의 절대값으로 전체를 나누어 모든 데이터의 범위를 [-1, 1]로 조절

 

+정규화의 다른 의미

Normalization, Standardiation, Regularization의 용어는 모두 한국어로 정규화라고 변역됨.

따라서 용어들을 가능한 한글이 아닌 영어로 작성해야 뜻을 명확하게 구분할 수 있다!!

 

불균형 데이터의 이해

- 불균형 데이터(Imbalanced Data): 각 집단(클래스)에 속하는 데이터의 수가 동일하지 않은 상태

- 큰 비율 집단의 정확도(Accuracy)는 높고, 작은 비율 집단의 재현율(Recall)은 작아지는 현상 발생

 

+정확도, 재현율, 정밀도

- 정확도(Accuracy): 전체 데이터 수 중 예측 결과와 실제값이 동일한 건수가 차지하는 비율

- 재현율(Recall): 실제 정답이 참인 것 중에서 모델이 참이라고 예측한 것의 비율

- 정밀도(Precision): 모델이 참이라고 분류한 것 중에서 실제 참인 것의 비율

 

오버샘플링 기법

- 낮은 비율 클래스의 데이터 수를 늘려 불균형 해소

- 업샘플링(Up Sampling): 더 작으 수를 가진 집단의 데이터 수를 더 많이 추출하여 높은 집단으로 맞추는 과정

- 장점: 데이터 수를 늘리기 때문에 정보 손실이 없고, 언더샘플링에 비해 높은 분류 정확도를 가짐

- 단점: 데이터 증가로 인한 계산량이 늘어나고 노이즈 또한 이상값에 민감함

 

1. 랜덤 오버샘플링 = 리 샘플링(Re-sampling)

- 소수 클래스에 속하는 데이터의 관측치를 복사(Copy)하여 데이터 증식

- 기존의 데이터와 동일한 복제 데이터 생성 -> 과적합(Overfitting) 발생 가능

 

2. 스모트(SMOTE: Synthetic Minority Oversampling Technique)

- 원본 데이터와 동일하지 않은 가상의 데이터 생성

- K-최근접이웃 알고리즘(K-NN: K-Nearest Neighbor Algorithm) 사용

a. k값을 사전에 정의한 후, 임의의 데이터 하나를 선정해 차이를 계산

b. 0과 1 사이의 난수를 곱하여 가상의 데이터를 합성

+ 사전에 정의된 k값은 1이 아닌 2 이상의 정수값

 

3. 보더라인 스모트(Borderline-SMOTE)

- 두 클래스 간의 결정경계를 따라 합성 데이터를 만듦

a. 경계선을 찾기 위해 소수 클래스에 속하는 데이터를 선택해 N개의 주변 탐색

b. N개 데이터 중 다수 클래스에 속하는 데이터가 몇 개인지 확인

c. 다수 클래스에 속하는 개수 K에 따라 보더라인 여부를 결정

d. Safe(50% 이상이 작은 클래스), Danger(50% 이상이 큰 클래스), Noise(전부 큰 클래스)

e. Danger 관측치에 대해서만 스모트(SMOTE) 적용하여 오버샘플링

 

4. 아다신(ADASYN, Adaptive Synthetic Sampling Approach for Imbalanced Learning)

- 보더라인 스모트와 비슷하지만, 샘플링 개수를 데이터 위치에 따라 다르게 설정한다는 것이 차이점

- 소수 클래스 주변의 다수 클래스 수에 따라 유동적으로 오버샘플링할 때 데이터 개수를 생성함에 따라 보더라인 스모트의 보더라인에 집중한다는 점, 동시에 다수 클래스 데이터 주변에 존재하는 소수 클래스에 집중한다는 장점

 

언더샘플링

- 높은 비율 클래스의 데이터 수를 줄여 불균형 해소

 

1. 랜덤 언더샘플링(Random Under sampling)

- 무작위로 샘플링하니 당연히 매번 결과도 다르고 성능이 달라짐

 

2. 토멕링크(Tomek Links)

- 클래스 간 경계를 더 명확하게 만들기 위해 가까운 샘플 제거

- 소수의 클래스에 붙어 있는 데이터를 제거

- 서로 다른 클래스 거리가 멀어짐, 가까운 데이터가 존재하지 않게 됨

 

3. CNN(Condensed Nearest Neighbor)

- 소수 클래스 샘플을 중심으로 대표적인 데이터만 남기기

- 소수 클래스 샘플과 가까운 다수 클래스 샘플이 유지됨

- 소스 클래스 샘플이 분류를 더 잘할 수 있도록 함

 

4. OSS(One-side Selection)

- 토멕링크 + CNN, 두 방법의 장점을 동시에 활용

 

+무게균형(Weighted Balance) 방법

- 가중치 균형(Weighted Balance): 클래스별 가중치를 조정

- 다수 클래스에 낮은 가중치, 소수 클래스에 높은 가중치

- 모델이 학습할 때 소스 클래스도 중요한 데이터라고 인식하도록 유도

- 샘플 개수를 인위적으로 조절하지 않고 손실함수(Loss Function)에서 가중치 조정