이상치

-데이터 집합에서 동떨어진 값

-발생 요인은 잘못된 측정, 데이터 수집 오류, 자연적 이벤트 등

-분석과 예측에 부정적 영향을 미치며 잘못된 결과나 왜곡된 모델 유발

-교차검증을 통해 검수하여 찾아내는 것이 좋다

 

이상치 탐지의 중요성과 활용성

-데이터 품질 향상

- 모델 정황성 향상

-이상 패턴 탐지 : 특이한 패턴, 동향, 문제점 식별(금융 분야에서 이상 거래 탐지, 생산라인의 이상 동작 감지하여 장비 고장 예방, 데이터 이상치의 원인을 분석함으로서 비지니스 프로세스 최적화하고 데이터 품질 향상 가능)

 

1.이동 평균과 이동 표준 편차를 사용한 이상치 탐지

-이동 평균 계산 : 추세 파악

-이동 평균편차 계산 : 변동성 파악

-임계값 설정: 이동평균에 일정한 배수를 곱한 값과 이동 표준편차에 일정한 배수를 더한 값으로 설정, 이상치를 정의

-이상치 탐지: 설정한 임계값 사용하여 데이터 포인트가 이상치인지 여부 판별

 

# 임계값 설정에 주의해야한다(너무 넓게 잡으면 이상치가 아닌데 이상치로 판별)

 

 

원본 데이터 그래프

 

이동 평균, 이동 표준편차, 임계값, 이상치 그래프

임계값 설정 : 이동평균 + 일정배수 x 이동표준편차

 

2. 지수 평활법을 활용한 이상치 탐지

-시계열 데이터의 추세와 계절성을 고려할여 데이터를 부드럽게 탐지하는 방법

-추세(Trend)를 추정하고 전차(Residual)를 계산

-전차가 특정 임계값을 초과하는 경우 이를 이상치로 판단

 

trend = add는 지수 평활법 모델에서 추세를 가지는 모델을 설정하는 파라메터

original= 원본 시계열 데이터, trend = 지수 평활법에 의해 추정된 추세, outlier= 이상치로 편차가 미리 설정한 임계값보다 클 때

 

3. z-점수 기반 이상치 탐지

-통계적 방법 중 하나로 데이터 평균과 표준편차를 활용하여 이상치 탐지

-주어진 데이터 포인트가 평균에서 얼마나 떨어져있는지를 표준편차로 나타내는 z-점수로 계산하고 이 기준으로 이상치 판단

-임계값은 2 이상으로 설정되며 이를 초과하면 이상치

- 이 방법은 데이터가 정규분포를 따르는 가정을 전제로 함

-절차 수행 조건 : (1) 시계열 데이터 생성 (2) 평균과 표준편차 계산 (3) z-점수 계산 (4) 이상치 탐지 (5) 이상치 처리

이상치를 산점도로 표현

 

4. 스무딩

-시계열 데이터에서 잡음이나 불규칙한 변동을 완화시키는 기법

-주목적은 추세 신호를 강조하고 잡음을 제거하여 추세 분석에 도움을 주고 데이터의 부드러운 버전을 생성하여 예측 모델의 성능 향상, 이상치나 잡음을 완화하는 것

-대표적인 방법으로는 이동평균과 지수평활법이 있다. 

이동평균을 이용한 스무딩
지수평활법을 이용한 스무딩

-데이터가 긴 시간 동안 변하지 않은 경우에는 이동평균을 사용하는 것이 적절할 수 있다

-데이터가 짧은 시간 동안 빠르게 변화하거나 최신 정보에 더 관심이 있는 경우에는 지수평활법을 사용하는 것이 적절할 수 있다.

 


트랜드

시계열 데이터에서 장기적으로 증가하거나 감소하는 패턴으로 데이터의 추세를 보여주며 데이터 측성 파악에 도움

1. 상향 트랜드 : 데이터가 시간에 지남에 따라 증가하는 경향

2. 하향 트랜드 : 데이터가 시간에 지남에 따라 감소하는 경향

3. 수평 트랜드 : 데이터가 시간에 지남에도 변함없는 경향

 

파란색은 오리지널 데이터, 주황선은 트랜드를 나타낸다.보면 일주일 간격으로 동일한 패턴이 나타나는 걸 알 수 있다.


이상치 처리의 한계와 제약 사항

-이상치 정의의 주관성 : 이상치는 상황에 따라 다르게 정의될 수 있으며 이는 주관적인 판단을 따를 수 있다

-이상치 감지의 어려움 : 드물거나 예상치 못한 패턴을 가지는 이상치는 감지가 어렵다

-이상치 처리의 영향 : 이상치를 제거하거나 보정하는 과정은 데이터의 특성 변경 가능하여 결과 왜곡 가능

 


정규화와 변환

 

정규화 변환의 필요성

1. 데이터 스케일 조정 : 시계열 데이터는 다양한 크기와 범위를 가지고 있는데 이런 스케일 차이는 모델링이나 분석에 어려움을 주니 정규화 필요

2. 정규 분포 가정 : 많은 시계열 분석 및 예측 모델은 데이터가 정규분포를 따른다고 가정, 정규화화 변환을 통해 데이터를 정규 분포에 가깝게 변환하연 모델의 가정을 만족시킨다

3. 이상치 처리 : 이상치는 시계열 데이터 분석에서 중요한 문제, 정규화와 변환을 사용하여 이상치를 탐지하고 처리

4. 시계열 패턴 강조: 정규화와 변환은 시계열 데이터의 패턴을 강조하는데 사용

5. 모델 안정성 향상: 데이터가 안정된 상태여야만 정확한 예측하는 일부 시계열 데이터 모델이 있기 때문

 

주요 정규화와 변환 방법

1. 최소-최대 정규화( 데이터 값을 최소값과 최대값 사이의 범위로 변환, 일반적으로 0-1사이로)

2. z-점수 정규화(데이터 평균은 0, 표준편차는 1로 조정)

3. 로그 변환: 데이터에 로그함수 적용하여 비선형적 패턴을 선형으로 변형

4. 차분 : 현재 관측값과 이전 관측값 간의 차이를 계산하여 추세나 계절성을 제거, 데이터의 패턴에 집중

5. 박스-콕스 변환: 양수인 데이터의 정규화를 위해 사용되는 변환 방법

 

 


최소-최대 정규화의 과정

1. 데이터의 최소값과 최대값 계산

2. 각 데이터 포인트에 대해 위의 수식을 적용하여 정규화된 값 계산

3. 계산된 정규화된 값은 원본 데이터의 범위인 0-1사이에 위치(=표준화)

 

표준화 수식과 계산 방법

1. 데이터의 평균(mean) 계산

2. 데이터의 표준편차 계산(std)

3. 각데이터의 포인트에서 평균을 빼고 그 결과를 표준편차로 나누어 표준화된 값 계산

 

로그변환 

데이터의 스케일을 조정하고 분포를 변환하기 위해 로그 함수를 적용하는 변환 방법 , 주로 금융 데이터, 경제 데이터, 자연 현상 등에서 사용.데이터의 분포를 정규 분포에 가깝게 만들어주어 선형 모델의 가정을 충족시키는 데 도움을 준다. 또 로그 변환은 양수인 값에만 적용이 가능하며 0이나 음수는 불가능하다

 

차분 

차분은 시계열 데이터에서 현재 값과 이전 값 간의 차이를 계산하는 것

수식은 아래와 같다.

차분(시점t) = 데이터(시점t) -  데이터(시점 t-1)

시계열 데이터의 불규칙성을 제거하고 정상성을 가지는 시계열 데리터로 변환.

 

박스-콕스 변환 

데이터의 정규성을 개선하기 위해 사용되는 변환방법으로 양수인 데이터에서만 적용 가능하다.

적용 방법

1. 데이터가 양수인지 확인

2. lambda(변환된 데이터)값의 범위 지정, 여러 lambda 값에 대해 박스-콕스 변환 수행

3. 각각 변환된 데이터에 대해 정규성 검정 등을 통해 최적의 lambda 값 선택

4. 선택된 lambda 값을 사용하여 박스콕스 변환

 

정규화와 변환 방법 선택시 고려사항

1. 변수 간 상관 관계 

2. 목적과 분석 방법

 

데이터의 특성과 분석 목적에 따른 선택 가이드 제시

1. 데이터 분포의 형태

-정규분포 경우: 정규화나 표준화 적용

-비정규분포 경우: 로그 변환, 박스-콕스 변환 등 비선형 변환 고려

2. 스케일의 조정

3. 이상치 처리

4. 변수 간 상관 관계

-변수 간 상관관계가 높을 때 : 차분, 로그 변환

-트랜드나 계절성 있을 때 : 차분이나 로그 변환

5. 분석 목적

-선형 회귀 분석: 정규화나 표준화를 사용하여 변수 간 관계 분석

-시계열 분석: 차분, 로그변환을 활용한 시계열 패턴 분석

6. 결과 해석:

-정규화나 표준화를 적용한 경우: 해석이 용이하고 변수 간 상대적 영향력 비교 

-비선형 변환 적용한 경우: 원래 데이터와의 관계를 해석할 때 주의

 

 

 

 

'machine_learning' 카테고리의 다른 글

통계 - 주성분 분석(PCA)  (0) 2023.06.01
통계 - 공분산과 상관행렬  (0) 2023.06.01
[통계] 시계열 데이터  (0) 2023.05.30
통계기반의 데이터분석(1)  (1) 2023.05.22
MLOps (2) Azure의 ML service  (0) 2023.05.08

+ Recent posts