반응형
결측값(Missing Value)
- 데이터가 입력되지 않고 누락된 값
- NA, N/A, NULL, 공백, NaN 등 다양하게 표기됨
- 분석에 영향을 미치기 때문에 반드시 처리
단순 대치법(Single Imputation)
- 완전 분석법
- 불완료 자료 모두 무시
- 관측된 자료 중 일부를 무시하게되어 효율성 상실, 통계적 추론의 타당성 문제 발생
- 평균 대치법
- 데이터의 평균, 중앙값, 최빈값 등으로 결측값 대치
- 결측값 발생이 다른 변수와 관계 있는 경우 유용
- 단순 확률 대치
- 평균 대치법에 적절한 확률 값을 부여하여 대치하는 방법
- 평균 대치법에서 추정한 표준오차의 과소추정문제를 보완하고자 고안됨
- Hot-Deck : 진행 중인 연구에서 비슷한 성향을 가진 응답자의 자료로 대체
- Cold-Deck : 외부 출처 또는 이전의 비슷한 연구에서 대체할 자료를 가져옴
다중 대치법
- 단순 대치법을 m번 수행하여 m개의 가성적 완료 자료를 만듦
- 여러 개의 대치된 표본이 생성, 값은 값으로 결측 자료를 대치할 수 없음
- 추저양 표준오차의 과소추정 및 계산의 난해성 문제를 가지고 있음
이상값(Outlier)
- 일반적인 다른 값과 멀리 떨어져 있는 값(거리, 밀도)
- 노이즈, 이상값은 정형 데이터보다 반정형, 비정형 데이터에서 많이 발생
- 분포를 왜곡할 수 있으나 실제 오류인지 통계적으로 검증할 수 없으므로 제거 여부는 해당 분야의 전문가와 상의하여 판별하여야 함
- 반드시 제거해야 하는 것은 아니며, 분석의 목적이나 종류에 따라 적절한 판단이 필요함
이상값 발생 원인
- 의도하지 않은 잘못 입력/측정/실험된 데이터
- 입력/측정/실험의 잘못으로 발생하는 데이터
- 잘못된 측정도구 사용, 실험조건의 동일하지 않음
- 고의적인 이상값
- 응답자의 고의적인 거짓에 의해 발생하는 데이터
- 데이터 표본 설정 오류
- 표본이 해당 집단의 특정 세부 그룹을 충분히 대표하지 못할 경우
- 처리오류
- 데이터를 분석하거나 처리하는 과정에서 발생할 수 있는 오류
이상값 검출 방법
- ESD(Extreme Studentized Deviation)
- µ - 3σ < 정상데이터 < µ+3σ (µ : 평균, σ: 표준편차)
- 사분위수사용
- IQR = Q3- Q1 (IQR: 데이터의 가운데 50%, Interauartile Range)
- Q1 - 1.5 * IQR < 정상데이터 < Q3+1.5 * IQR ( Q1: 제1사분위수, Q3: 제3사분위수)
- 기하평균
- 데이터 시각화
- 히스토그램, 밀도차트, 상자그림, 산포도, 진차도 등
- 분석 기법 활용
- 비지도 학습의 군집 기법 사용 : 군집으로 정의되지 않는 영역을 outlier로 판단
- 마할라노비스 거리 : 데이터 밀도(분산)을 고려한 거리, 다변량 이상치 판단에 대표적 방법
- LOF(Local Outlier Factor) : 관측치 주변의 밀도와 근접한 관측치 주변 밀도의 상대적 비교를 통해 검출
- iForest(Isolation Forest) : 의사결정나무를 이용, 분할 횟수로 이상값 검출, 관측치 사이의 거리, 밀도에 의존하지 않음
이상값 처리 방법
- 삭제
- 이상값 제거하는 방법, 양극단 값을 모두 제거함
- 실제 데이터를 모두 반영한 결과가 아니기 때문에 적절하지 않을 수 있음
- 대체
- 하한값보다 작은 것을 하한값, 상한값보다 큰 것을 상한값으로 대체
- 평균, 중위수 등의 대푯값으로 대체
- 변환
- 오른쪽 꼬리가 긴 경우 : 로그(log) 변환, 제곱 루트 변환, 큰 값을 작게 만들기
- 왼쪽 꼬리가 긴 경우 : 지수 변환, 제곱 변환, 작은 값을 크게 만들기
이상값 & 대표값 , 산포, 분석기법
- 이상값 영향 많이 받음
- 평균분산, 표준편차 , Range 등
- 앙상블 - Boosting
- 비지도 - 군집 - 비계층적 - k-means
- 이상값 영향 적게 받음
- 중앙값
- 지도학습 - 분류/회귀 - kNN
- 비지도 - 군집 - 비계층적 - DBSCAN
이상값 검색 활용 응용 시스템
- 부정사용방지 시스템
- 의료, 사기탐지, 침입탐지
*편향(bias): 추정량의 기댓값 - 실제값 (=모수의 값)
*결측치(missing value) : 값이 관찰되지 않은 것
*편차(deviation) : 변량에서 평균을 뺀 값, 편차의 절대값이 작을수록 평균에 가까이 있음
*변수
- RDBMS에서 속성, 열 이라고 부르는것, 머신 러닝에서는 통계학의 영향으로 변수로 사용
*변수유형
- 입력(X)용 : 독립변수, 변수, 속성, 예측변수, 설명변수차원, 관측치
- 출력(Y)용 : 종속변수, 라벨, 클래스, 목푯값, 결과변수, 반응 변수
*샘플
- RDBMS에서 레코드, 행이라고 부르는 것
- 많은 Sample이 있을 때 보다 좋은 데이터 분석, 모델 생성이 가능함
- 과대적합을 방지하고 모델의 훈련 및 평가에도 도움이 됨
변수 선택
- 모델을 단순화하여 데이터 분석 결과를 해석하기 쉽게함
- 훈련 시간 축소, 과대적합 줄이는데 도움이 됨
- 모델의 정확도 및 성능 향상 기여
변수 선택 기법
- 필터 기법(filter)
- 통계적 측정 방법 사용
- 정보소득, 카이제곱 검정
- 피셔 스코어, 상관계수
- 주로 래퍼 기법 사용 전 전처리에 사용됨
- 래퍼 기법(Wrapper)
- 변수의 일부로 모델링 후, 그 결과를 확인하는 작업을 반복하여 가장 성능 좋은 변수 조합을 찾는 방법
- 전진 선택법, 후진 제거법, 단계적 선택법
- 필터 방법보다 예측 정확도가 높음
- 임베디드 기법(Embedded
- 모델 자체에 포함된 변수 선택 기법
- 모델의 학습, 생성 과정에서 최적의 변수 선택
- Ridgw, Lasso, ElasticNet, 의사결정나무
차원 축소
- 차원 = 변수의 수, 차원이 증가할 수록 모델의 정확도가 떨어질 수 있음 #차원의 저주
- 독립변수간 강한 상관관계가 있는 경우 모델의 정확도와 신뢰성이 떨어짐 #다중공선성
- 변수의 정보를 최대한 유지하면서 변수의 개수를 줄이는 통계 기법
- 목적 - 데이터 분석의 효율성 측면에서 복잡도를 축소하고, 과적합을 방지하며, 해석력을 확보하는 것
- 작은 차원만으로 로보스트(Robust)한 결과를 도출할 수 있다면 많은 차원을 다루는 것보다 효율적
#차원의저주
- 데이터의 차원이 증가할수록 데이터를 표현할 수 있는 공간은 기하급수적으로 증가하는 것에 반해 데이터의 수는 변하지 않기 때문에 발생
- 차원이 증가하면서 개별 차원 내의 학습 데이터 수가 차원의 수보다 적어지면서 성능이 저하되는 현상(sparse)
- 모델링 과정에서 저장공간과 처리시간이 불필요하게 증가되어 성능이 저하
- 표본의 수가 적을 때 더욱 심화되며 민감하게 반응
#다중공선성
- 모형의 일부 설명변수가 다른 설명변수와 높은 상관관계가 있을 때 발생
- 중대한 다중공선성은 회귀계수의 분산을 증가시켜 모델을 불안정하고 해석하기 어렵게 만듦
- VIF(variance inflation factor)를 측정하여 10이 넘으면 다중공선성이 존재한다고 봄
해결방법
- 높은 상관 관계가 있는 설명변수를 모형에서 제거
- 다양한 변수 선택, 차원 축소 방법을 사용 할 수 있음, PCA(주성분분석)
- 설명변수를 제거하면 대부분 R2 (결정계수)가 감소
- 변수축소: 주성분 분석, 요인분석, 다차원 척도법 등의 변수축소 기법 사용
- Ridge, Lasso, ElasticNet 회귀 분석 활용(+과대적합 해결)
- Mean Centering(평균대치법) 방법 : 모든 변수를 각 변수의 평균값으로 뺀 뒤에 회귀분석
차원축소 기법
- 다차원척도법(MDS, Multi Dimensional Scaling) - 각 개체간 거리(유사성)를 측정하는 기법
- 주성분분석(PCA, Principal Component Analysis)
- n개의 관측치와 p개의 변수로 구성된 데이터를 상관관계가 없는 k개의 변수로 구성된 데이터로 축소
- 요약된 변수는 기존 변수의 선형 조합으로 생성
- 데이터의 분산을 최대한 보존하는 새로운 축을 찾고 그 축에 데이터를 사영 시키는 분석기법
- 요인분석 - 변수들 간의 상관관계를 고려하여 서로 유사한 변수들끼리 묶어주는 방법
- 특이값 분해(SVD, Singular Value Decomposition) -
- PCA와 LDA가 정방행렬에 대한 작업이었다면, 정방행렬이 아닌 비정방행렬에 대해 적용이 가능하다
- 적용분야 : 데이터 축소, 영상처리 및 압축, 이상치 감지
- 선형 판별분석(LDA, Linear Discriminant Analysis)
- PCA는 입력된 데이터의 공분산행렬을 구해서 고유벡터와 고유값을 구해 차원을 축소시키지만, LDA는 클래스 내부 분산과 클래스 간 분산 행렬을 생성한 다음 이들의 고유벡터와 고유값을 구해 축소
- PCA 비지도 학습, LDA는 지도학습
요인분석과 주성분분석의 차이
- 생성되는 변수들의 관계
- 생성되는 변수의 의미
- 생성되는 변수의 수
파생변수
- 상황에만 유의미하지 않게 논리적 타당성과 대표성을 나타나게 할 필요가 있다.
- 기존 변수에 특정 조건 혹은 함수 등을 사용하여 새롭게 재정의한 변수
요약변수
- 단순 데이터를 종합한 변수
- 재사용이 높고 다른 많은 모델을 공통으로 사용 가능
변수변환
- 변환을 통해 자료 해석이 용이하게 하는 작업
- 변수변환의 목적
- 분포의 대칭화
- 산포를 균일하기 하기 위함
- 변수사이의 관계를 단순하게 표현하기 위함
정규변환
- 로그변환
- 데이터간 편차를 줄여 왜도(Skewness)와 첨도(Kurtosis)를 줄일 수 있기 때문에 정규성이 높아진다
- 큰 수를 작게 만들 경우와 복잡한 계산을 간편하게 만들 경우에 사용한다.
- 제곱근 변환
- 오른쪽 긴 꼬리를 갖는 분포를 대칭화에 유용
- 지수변환
- 작은 숫자의 크기를 크게 넓혀주는 역할
- 박스-칵스(Box-Cox)변환
- 데이터를 정규분포에 가깝게 만들거나 데이터의 분산을 안정화
- yλ = ( yλ -1) / λ, λ≠0), (log(y), λ=0)
- Yeo-Johnson 변환과 비교하여 0 혹은 음수인 경우에 적용에 한게가 있다.
범주형 변환
- 구간화(Bining)
- 변수 구간화는 변수변환의 방법 중 하나로 주어진 연속형 변수를 범주형 또는 순위형 변수로 변환
- 더미변수(Dummy Vriable)
- 범주형 변수를 연속형 변수로 변환한 것
- 데이터 인코딩
- 범주형 데이터를 숫자 형태로 바꾸는 작업
- 레이블 인코딩 : 범주형 데이터를 숫자로 일대일 매핑해주는 인코딩 방식
- 원-핫 인코딩: 여러 값 중 하나만 활성화하는 인코딩
- 타켓 인코딩 : 평균값으로 범주를 대체하는 방법
- 오디널 인코딩 : 변수의 순서를 유지하는 인코딩 방식. 순서가 중요한 특성에 대해서 사용되어야 한다
데이터 스케일링
- 인공지능 학습을 위해 데이터를 입력할 때 데이터 별로 그 데이터 값들의 범위가 다르다면 컴퓨터가 이해하기 어렵게 된다. 그럼으로 각 변수들의 범위 혹은 분포를 같게 만드는 작업
- 입력변수만 스케일링 하고 결과 변수는 스케일링을 하지 말아야 한다.
- 최소-최대 정규화
- 데이터를 정규화하는 가장 일반적인 방법
- 모든 Feature에 대해 각각의 최소값을 0, 최대값은 1로, 다른 값들은 0과 1사이의 값으로 변환
- 최소값이 20이고 최대값이 40인 경우, 30은 중간이므로 0.5로 변환된다. (X-Min)/(Max -Min)
- Z-점수 표준화
- Z = (X-평균) / (표준편차)를 통해 X라는 값을 Z라는 Z - 점수 표준화로 변환 할 수 있다.
- 기타 스케일링 종류
- 최대절대 스케일 : 최대 절대값이 0이 각각 1,0으로 되도록 스케일링
- 로버스트 스케일 : ((X-MEDIAN)/IQR) 아웃라이어의 영향을 최소화한 기법이다
불균형 데이터처리
- 클래스 하나에만 데이터가 편중되는 경우가 발생
- 큰 비중을 차지하는 클래스에 편향되어 학습
- 분포가 작은 값에 대한 Precision은 낮을 수 있고, 분포가 작은 클래스의 재현율이 낮아지는 문제가 발생할 수 있다.
- 과적합 문제가 발생 할 수 이음
해결기법
- 언더 샘플링 : 다수의 클래스 샘플들을 제거, 정보의 손실을 초래하게 되다는 문제점
- Random Under Sampling : 불균형 데이터셋을 무작위 언더 샘플링
- Tomek Link : 서로 다른 클래스에 속하는 한 쌍의 데이터로 서로에게 더 가까운 다른데이터가 존재하지 않는 것
- CNN(Condensed Nearest Neighbour) : 최근접인 클래스 분포 데이터를 삭제하면서 샘플링하는 방법
오버 샘플링
- 소수 클래스를 위한 샘플을 생성하는 방식으로 정보 손실을 피할 수 있으나 과적합을 초래할 수 있다.
- Random Over Sampling
- 소수의 클래스 데이터를 반복해서 넣는 것으로 가중치를 증가시키는 것과 유사
- ADASYN(Adaptive Synthetic Sampling)
- 소수클래스 주변에 얼만큼 많은 다수의 관측지가 있는지를 정량한 한 지표
- SMOTE
- 소수 범주에서 가상의 데이터를 생성하는 방법
- Borderline-SMOTE
- 소수 클래스 샘플과 다수 클래스 샘플 간의 경계를 기준으로 SMOTE 방식의 합성 방법
- Random Over Sampling
임계값 이동
- 분류를 시행할 때 사용되는 임계값을 양성과 음성의 비율을 이용해 조정해 가는 방법을 임계값 이동이라 한다.
- 학습단계에서는 변화 없이 학습하고 검정 단계에서 임계값을 이동한다.
반응형
'Certificate > 빅데이터 분석기사' 카테고리의 다른 글
[빅데이터분석기사] [2-3]빅데이터 탐색 통계기법 이해 (0) | 2023.08.29 |
---|---|
[빅데이터 분석기사] [2-2] 빅데이터 탐색 데이터 탐색 (0) | 2023.08.29 |
[빅데이터 분석기사] [1-5]데이터 수집 및 저장 계획 - 데이터 수집 및 전환 (0) | 2023.07.12 |
[빅데이터 분석기사] [1-4] 데이터 분석 계획 - 분석 작업 계획 (0) | 2023.06.30 |
[빅데이터 분석기사] [1-3] 데이터 분석 계획 - 분석 방안 수립 (0) | 2023.06.26 |