본문 바로가기
5. 활동/KT AIVLE AI 3기

[KT AIVLE 3기] 사전 교육 2주차

by 로기(dev-loggi) 2023. 1. 16.

 

목차

     

    3-1-1. [데이터 전처리 이해와 실무] 데이터 정제 - 결측 데이터 처리

    1) 결측치(Missing Value)

    • Null, NA, NAN
    • 데이터가 수집되지 않거나 누락되어 정보(값)가 존재하지 않음을 의미
    • 결측치가 보함된 데이터는 모델 학습이 불가능하므로 반드시 사전에 결측치 처리를 진행해야 한다

    2) 결측치 발생 원인

    • 미수집
    • 시스템오류
    • 신규항목

    3) 결측치 처리 방안

    결측치 제거하기

    가장 쉬운 처리 방안(단, 데이터 손실이 발생한다)

    • Listwise deletion: 결측치가 존재하는 행 삭제 -> df.dropna()
    • Pairwise deletion: 모든 값이 결측치로만 존재하는 행 삭제 -> df.dropna(how='all')

    결측치 대체하기

    정보의 손실을 방지하나 변수 특성(평균, 상관관계 등)에 영향을 줄 수 있음

    • 일정 값 대체: 결측치를 각 변수의 평균값으로 대체 -> df['col1'].replace(np.nan, df['col1'].mean())
    • 선형 값 대체: 선형 함수 기반 앞 뒤 관측치 활용 대체 -> df.interpolate()

     

    3-1-2. [데이터 전처리 이해와 실무] 데이터 정제 - 이상 데이터 처리

    1) 이상치(Outlier)

    관측된 데이터 내 전체적 패턴에서 아주 작게 혹은 아주 크게 벗어난 값

    데이터 분석 과정 및 결과에서 영향을 미쳐 분석 결과 및 의사 결정의 왜곡을 불러일으킬 수 있음

     

    이상치 유형

    • 오류 데이터: 센서 혹은 시스템 오류로 인해 잘못된 값을 수집(ex. 과속 단속 카메라에 차량 제원을 넘어선 속도 감지)
    • 실제 데이터: 극단적 관측치로 인해 일반적 관측 범위를 벗어남(ex. 마이클 조던이 졸업한 대학의 졸업생 평균 연봉이 25만불로 책정됨)

     

    이상치 처리 프로세스

    통계적 방안(데이터 관점) or 인적 판단 방안(비지니스 관점) -> 이상치 처리

     

    2) 이상치 판단 방안

    통계적 연산 기반 대표적 이상치 판단 방안

     

    Z-Score

    • 해당 데이터가 평균으로부터 얼마의 표준편차 만큼 벗어나 있는지를 의미
    • 일반적으로, -3 이하 3 이상 Z 값 관측치는 이상치로 정의

    IQR(Interquartile Range)

    • 사분위수 개념 기반의 이상치 판단 방안으로 데이터 흩어짐 정도를 기반으로 이상치를 정의
    • Min, Max 범위를 벗어난 관측치는 이상치로 정의

     

    3) 이상치 처리 방안

    • 삭제
    • 대체 및 변경

     

    3-2-1. [데이터 전처리 이해와 실무] 데이터 변환 - 구간화, 정규화

    1) 데이터 변환(Transformation)

    • 여러 형태로 표현된 데이터 값을 다양한 분석 방법론에 적용하기 위해 원시 형태에서 다른 형식으로 바꾸는 과정
    • 주어진 목적 기반의 올바른 결과 획득을 위하여 원시 데이터를 데이터 분석에 용이하도록 형태 변환

     

    2) 변환 목적 및 특징

    빠른 특성 파악

    • 데이터의 특성을 빠르게 파악 가능
    • 파생변수 생성 및 단순화를 통한 결과 리포팅 등에 활용

    분석 알고리즘 적용

    • 변수 간 범위가 다를 경우 알고리즘 적용시 영향력의 차이가 발생
    • 올바른 학습을 위해 다른 범위를 지닌 변수들의 변환 필요

     

    3) 구간화(Binning)

    연속형 데이터를 구간으로 구별하여 범주화 형태 변환

     

    지정 길이 기반 구간 정의

    사용자 기준으로 데이터 범위의 간격을 구분하여 관측치를 나누는 방안

     

    분포 기반 구간 정의

    관측치가 각 구간 내 동일한 개수로 구분되도록 나누는 방안

     

    4) 정규화(Normalization)

    데이터 탐색 및 기계학습 적용을 위한 연속형 변수 변환

     

    최대-최소 정규화

    • Min-Max Scaling
    • 데이터 구간을 0에서 1사이로 변환
    • 특정 데이터의 위치 파악

    Z-점수 정규화

    • 표준화(Standardization)
    • 0을 중심으로 양쪽으로 데이터 분포시킴
    • 특정 데이터가 평균과 얼마나 떨어져 있는지 파악

     

    3-2-2. [데이터 전처리 이해와 실무] 데이터 변환 - 특징 생성

    데이터 분석 경진대회의 많은 수상자들이 말하길 Feature Enginnering 이 중요하다고 함

    1) 특징 생성(Feature Creation)

    • 원본 데이터의 조합/변환 등을 기반하여 새로운 특징들을 구축 및 생성하는 방법
    • 원본 데이터로 특징을 새롭게 생성하여 분석 과정 내 성능과 효율성을 확보하고자 함

    목적 및 필요성

    • 품질 확보: 가공을 거치지 않은 Raw 데이터 활용 기반의 모델링은 품질 확보 어려움
    • 최적화된 형태 변환: 효과적인 Feature를 확보하는 것이 데이터 분석 내 가장 중요한 과정임

     

    2) 특징 생성 방안

    범주 인코딩

    • 크게 Nominal(순서가 없는)과 Ordinal(순서가 있는) 형식으로 나뉘는 범주형 변수
    • 숫자가 아닌 범주 변수 값을 숫자로 표현하고 모델링에 적용하기 위한 과정
    • 대표적으로 순서의 의미를 지니지 않은 변수형 변수를 처리하는 One-hot Encoding 이 있음. K개의 범주형 변수를 k개의 변수로 변환함

    결합 및 분해

    • 데이터 셋의 변수들의 조합을 기반으로 새로운 특징을 구축하는 방법
    • 변수 간의 연산 혹은 분해를 통해 새로운 특징을 구축하고 입력 변수로 모델링에 적용
    • 결합 기반 특징 생성
    • 분해 기반 특징 생성

    차원 축소

    • 원본 데이터로부터 새로운 특징의 집합을 생성하는 것
    • 고차원 원시 데이터 셋을 저차원으로 차원 축소하도록 새로운 특징을 생성하는 방식
    1. 변수들이 지닌 정보를 최대한 확보하는 저차원 데이터로 생성
    2. 군집 분석 기반의 고차원 데이터를 하나의 특징으로 자원 축소

     

    3-3. [데이터 전처리 이해와 실무] 데이터 축소 - 특징 선택

    1) 특징 선택(Feature Selection)

    • 가장 좋은 성능을 보여줄 수 있는 데이터의 부분 집합(Subset)을 찾아내는 방법
    • 모델 생성에 밀접한 데이터의 부분 집합을 선택하여 연산 효율성 및 모델 성능을 확보

     

    2) 특징 선택 방안

    2-1) 필터(Filter) 방식

    • 특징들에 대한 통계적 점수를 부여하여 순위를 매기고 선택하는 방법론
    • 실행 속도가 빠르다는 측면에서 시간 및 비용 측면의 장점을 보임
    • 카이제곱 필터(Chi-square filter)
    • 상관관계 필터(Correlation filter)

    2-2) 래퍼(Wrapper) 방식

    • 특징들의 조합을 지도 학습 기반 알고리즘에 반복적으로 적용하여 특징을 선택하는 방법론
    • 최적의 데이터 조합을 찾기 때문에 성능 관점 상 유용하나 시간과 비용 크게 발생
    • 대표적 방식으로 재귀적 특성 제거(Recursive Feature Elimination)

    2-3) 임베디드(Embedded)

    • 모델을 학습하여 정확도에 기여하는 특징을 선택하는 방안
    • Filter와 Wrapper의 장점을 결합한 방법
    • 트리 계열 모델 기반의 특징 선택이 대표적
      (랜덤포레스트 기반 Feature Importance 기반)

     

    3) 특징 선택 알고리즘

    랜덤포레스트 모형 기반의 알고리즘 - 보루타 알고리즘(Boruta Algorithm)

    • Boruta Algorithm은 기존 데이터 임의로 복제하여 랜덤 변수(shadow)생성하고 원 자료와 결합하여 랜덤포레스트 모형에 적용
    • shadow 보다 중요도가 낮을 경우 중요하지 않은 변수로 판단 후 제거

     

    4-1. [데이터 탐색 이해와 실무] 일변량 비시각화

    1) 탐색적 데이터 분석(EDA)

    • EDA(Exploratory Data Analysis)는 데이터를 다양한 측면에서 바라보고 이해하는 과정
    • 통계적 요약, 분포 파악 및 시각화 등의 기법을 통해 직관적으로 데이터 특성 파악

     

    EDA 기본 개요

    데이터가 표현하는 현상을 이해하고 다양한 패턴 발견

     

    • 속성 파악: 분석 목적 및 개별 변수 속성 파악
    • 관계 파악: 변수 간의 관계 파악 및 가설 검증

     

    사전 데이터 탐색

    1. 데이터 정의 확인

    2. 실 데이터 확인

     

    요인별 EDA 유형 구분

    1. 데이터 변수 개수가 몇 개인가? (일변량 or 다변량)

    2. 결과를 어떻게 파악할 것인가?  (시각화 or 비시각화)

    3. 데이터의 유형은 무엇인가?  (범주형 or 연속형)

      일변량
    (Univariable)
    다변량
    (Multivariable)
    비시각화 - 빈도표
    - 기술 통계량
    - 교차표
    - 상관계수
    시각화 - 파이차트
    - 막대그래프
    - 히스토그램
    - 박스플롯
    - 모자이크플롯
    - 박스플롯
    - 평행좌표
    - 산점도

     

    2) 일변량 비시각화

    • 분석 대상 데이터가 하나의 변수로 구성되고 요약 통계량, 빈도 등으로 표현하는 탐색 유형
    • 단일 변수이므로 원인 및 결과를 다루지는 않으나 데이터 설명 및 구성을 파악

    범주형 비시각화

    빈도표(범주형 데이터의 구성 및 비율 등을 확인)

    • 특정 범주 별 빈도 파악이 목적
    • 범주 별 빈도 수 기반의 구성 파악 및 결측치 빈도 파악
    • 데이터 전체 수 대비 각 범주 별 분포 파악

    연속형 비시각화

    주요 통계 지표(연속형 데이터의 기술 통계량 및 주요 지표 등을 확인)

    • 평균, 분산 등의 기술 통계량
    • 중앙값 등의 사분위수
    • 왜도, 첨도 등의 분포 관련 지표
    • 특정 범주 별 빈도

     

    4-2. [데이터 탐색 이해와 실무] 일변량 시각화

    1) 일변량 시각화

    하나의 변수로 구성된 데이터를 전체적으로 파악하는 데이터 탐색 유형

     

    시각화 특징

    • 시각화: 직관적 이해 추구, 정보 전달 시간 단축
    • 비시각화: 효과적인 데이터 요약, 빠른 데이터 성격 파악

     

    2) 범주형 일변량 시각화

    범주 별 구성 우위를 비교하기 위해 파이차트, 막대그래프 등을 활용

     

    3) 연속형 일변량 시각화

    연속형 데이터의 분포 및 양상을 살펴보기 위해 히스토그램, 박스플롯 등을 활용

     

    4-3. [데이터 탐색 이해와 실무] 다변량 비시각화

    1) 다변량 비시각화

    • 두 개 이상의 변수로 구성된 데이터의 관계를 교차표 및 상관계수 등으로 파악하는 데이터 탐색 유형
    • 주어진 변수 간의 관계를 수치 및 통계적 지표 기반으로 파악하는 것이 목적

     

    2) 다변량 비시각화 종류

    데이터 조합 비시각화 방안 목적
    범주형 - 범주형 교차표 두 개 범주형 변수의 범주 별 연관성 및 구성 파악
    범주형 - 연속형 범주 별 통계량 범주 별 대표 통계량 비교 파악
    연속형 - 연속형 상관계수 두 개 연속형 변수의 관계성 정도 파악

     

    ※ 상관계수는 -1 ~ 1 사이의 값을 갖는데, 절대값이 1에 가까울 수록 높은 상관 관계를 갖고 있음을 의미한다. 그런데 회귀분석에서 이러한 독립변수 간의 강한 상관관계는 모델의 안정성을 저해하는 요인이 됨을 유의해야 한다.

     

     

    4-4. [데이터 탐색 이해와 실무] 다변량 시각화

    1) 다변량 시각화

    • 두 개 이상의 변수로 구성된 데이터의 관계를 시각화 기반으로 파악하는 데이터 탐색 유형
    • 주어진 변수 간의 패턴 및 관계를 다양한 그래프의 시각화를 통해 전체적으로 파악

     

    2) 다변량 시각화 종류

    데이터 조합 시각화 방안 목적
    범주형 - 범주형 모자이크 플롯 두 개 범주형 변수 내 범주 별 조합의 빈도 크기를 개략적으로 파악
    범주형 - 연속형 박스플롯, 평행좌표 범주 별 기술통계량 및 경향성을 개략적으로 파악
    연속형 - 연속형 산점도 연속형 변수 간 관계성을 개략적으로 파악(선형/비선형 및 음양 방향 등)

     

    댓글