데이터 청년 캠퍼스(2022)/배운 내용 정리

6.28(화) 데이터 플랫폼 이론(3)

데욱 2022. 6. 28. 15:56

데이터 전처리

  • 수집한 데이터를 바로 분석할 수 없기 때문에 데이터를 정제해야함
    > 가장 오래걸리는 과정
  • 데이터 분석을 시작하기 전, 분석 과정에서 오류를 일으킬 수 있는 요인을 미리 찾아야 함
    - 결측값
    - 잡음/ 이상값

결측값


- 데이터 값이 존재하지 않는 것을 의미한다.
> 실수로 누락하거나 필요하지 않아서 없을 수 있음

  • 완전 무작위 결측(MCAR)
    - 다른 변수와 무관하게 무작위로 발생
  • 무작위 결측(MAR)
    - 결과 분포 자체에 영향을 미치지 않음
  • 비무작위 결측(NMAR)
    - 결측값이 결과에 영향을 미치는 경우

결측값의 처리

  • 삭제
    - 특정 단일값
    - 목록 
  • 대체
    - 특정값 대체 (특정 대푯값으로 대체)
    - 다중 대치법 (통계 및 추정을 통해 새로운 데이터 셋을 대체)

잡음/ 이상값

  • 둘 다 동일한 데이터셋에서 일반적인 데이터 값의 범위를 벗어난 값
  • 잡음은 의도적으로 제거 / 이상값은 별도 처리

잡음과 이상값의 검출 방법

  • 분산: 정규분포의 a%이하의 값을 이상값으로 판단
  • 우도/가능도: 관측지가 가장 많이 발견될 것으로 보이는 확률값을 우도로 정하고, 범위 밖에서 발견되는 값 > 이상값
  • 근접 이웃: 중심을 계산하고 임계값보다 멀리 떨어진 경우 > 이상값
  • 밀도:상대적 밀도를 고려해 이상값으로 판단
  • 군집: 밀도 방법의 업그레이드 방법, 유사한 관측값을 군집으로 묶어 어디에도 속하지 않으면 이상값으로 판단
    > 위의 5가지 방법들은 직관적이지 못함. 
  • 사분위수: 상자그림을 그려 Q2와 Q3의 1.5배수 바깥 값을 이상값으로 판단

위의 검출 방법을 이용하여 특정한 범위를 결정하고 범위 밖 관측값은 이상치로 판단하여 대체하거나 제거함

 

데이터 전처리 완료 > 분석 변수 선택

  • 변수 선택
    - 전진, 후진, 단계적 선택법
  • 차원 축소 (차원이 크면 오래걸리는건 당연하기 때문)
    - 주성분 분석, 선형 판별 분석, 특이값 분해
  • 파생 변수 생성
  • 클래스 불균형(데이터 적은 관측치에 대해 분석이 어려움)

3. 데이터 분석

 

분석 시스템 - 분석 도구

  • 엑셀
    - 쉽고 생각보다 강력
  • R
    - 시각화에 유리
    - 비교적 쉬움
  • 파이썬
    - 가장 강력하다고 손꼽히는 언어
  • 하둡/맵리듀스
    - 자바로 되어 있어 진입장벽이 있음
  • Tensorflow
    - 어려운 접근성 때문에 PyTorch로 이용
  • SAS / SPSS
    - 고가의 라이선스
    - 쉬운 통계 프로그램
  • 마이닝
    - '데이터가 모여있는 광산에서 원하는 보석을 캐내겠다'라는 용어

분석 방법의 용어

  1. 기술
    - 데이터가 가진 의미를 단순하게 기록
  2. 분류
    - 구체적인 기준으로 데이터를 분류하고 등급을 나눔
  3. 추정
    - 알려지지 않은 결과값을 밝힘 / 특정한 것을 찾아내고 싶을 때 (추정, 시간과 관계 없음)
  4. 예측
    - 과거의 데이터를 바탕으로 미래를 추정 / 시계열 데이터에서 많이 사용(시간과 관계 있음)
  5. 연관 분석
    - 이미 수집된 데이터에서 일련의 패턴과 규칙을 발견
  6. 군집
    - 유사한 특성을 지닌 데이터 간 분할

분석 방법의 종류

 

데이터 마이닝

  • 대규모 데이터 속에서 유의미한 패턴 혹은 규칙을 찾기 위한 방법
    > 댓글 분석에서 많이 사용하며, 자주 나온 표현들을 숫자로 표현

데이터 마이닝 절차

  1. 목적 정의
  2. 데이터 준비
  3. 데이터 가공
  4. 데이터 마이닝 기법 적용
  5. 데이터 검증

텍스트 마이닝

  • 대표적인 비정형 데이터에서 정보를 추출하기 위한 방법
  • 비정형 텍스트에서 특정 단어의 출현 빈도, 연관성, 단어의 긍정 / 부정의 방향성 등을 파악
    > 댓글분석에서 텍스트 마이닝은 문자열, 데이터 마이닝은 숫자를 분석

기술 통계 분석

  • 데이터를 분석하기 전, 데이터 간의 통계적 수치를 탐색

머신러닝

  • 확률과 통계를 바탕으로 어떤 데이터를 분류하거나 값을 예측
  • 크게 지도 학습과 비지도 학습으로 분류되며 확률과 통계를 바탕으로 어떤 데이터를 분류하거나 예측
    > 지도학습: 정답 존재, 비지도학습: 정답 존재 안함 // 인공지능 파트에서 자세히 배울 예정

네트워크 분석

  • SNS를 이용한 네트워크 분석 방법을 주로 활용, 인간과 사회의 관계를 분석하기 위한 방법
    > 공학쪽에서 사실 사용하지 않는 방법. 인스타 그램의 View 수를 통해 분석함. 순위 조작이 심함

시뮬레이션

  • 어떠한 시스템을 모델로 표현하고 그 모델을 이용하여 실험하는 방법

최적화

  • 어떤 데이터에 대한 최대 혹은 최소가 되는 상태를 해석
  • 최대한 빠르게 하기 위한 목표

 

평가지표

  • 평가지표
    상대방과 본인이 서로 만족할 수 있는 최종적인 결과를 보여주기위해 나타낸 기준 

군집분석

  1. 계층적 군집: 나눌 수 있는 군집의 수를 그래프로 표현
    > 군집이 많으면 소스코드와 수식이 많아질 수밖에 없음
    > 군집을 나누는 방법이 명확하게 나눠져있지 않음
  2. k-means 군집: 똑같은 양으로 k개의 군집을 만듦
  3. DBSCAM 
    > 비슷한 것 끼리 묶지만 겹치는 부분이 존재하지 않음
  4. 가우시안 혼합 모델
    > DBSCAM과 다르게 겹치는 부분이 존재
  5. SOM
    > 높낮이나 온도를 표현하기 쉬움

회귀 평가지표

  • 값이 크면 클수록 값을 벗어난 값들이 많다는 것이다.
  1. 평균절대오차
  2. 평균제곱오차
  3. 평균제곱근오차
  4. 평균절대백분율오차

분석 모형의 오류

교차검증을 이용하여 과적합 혹은 과소적합인지 확인

데이터 셋을 학습셋과 테스트셋으로 어떻게 나눌 지 판단

  • K-폴드 교차검증

분류분석 평가지표

 

혼동행렬, ROC 곡선: 분류분석 모형이 내놓은 답과 실제 정답이 어느 정도 일치하는지 판단하는 평가지표

 

  • 혼동행렬: 실제값과 예측값의 조합을 표 형태로 나타낸 행렬
  Positive Negative
Positive TP FN
Negative FP Tn
  • 정확도(Accuracy)

  • 정밀도(Precision)

  • 민감도(재현율)

  • 특이도( 참 부정률)

  • ROC 곡선 (ROC Curve): 대다수의 분류 모형은 임계값을 기준으로 임계값보다 높으면 긍정, 낮으면 부정으로 분류

    - AUC 면적이 넓을수록 분류를 잘하는 모형이다. (시각화로써 도움이 됌)
    > 아래면적을 AUC라고 한다.

불균형 데이터 분류

  • 데이터셋 내 클래스 혹은 카테고리 별 데이터 양이 매우 다를 수 있음.
  • 데이터가 적은 클래스 혹은 카테고리는 제대로 된 학습이 안될 수 있음 
  • 가중치
    - 데이터 학습 혹은 분류 중에 임의의 가중치를 적용하여 비대칭 구성 데이터를 균형 있게 출력
  • 샘플링
    - Undersampling: 데이터가 많은 클래스의 양을 적은 클래스 수준으로 줄임
    - Oversampling: 데이터가 적은 클래스의 양을 많은 클래스 수준으로 늘림

1. 기존 데이터 혼동행렬 표현 > ROC 곡선 확인

2. 가중치 적용 >혼동행렬 비교 확인 > ROC곡선 비교 확인

3. 오버샘플링 > 혼동행렬 비교 확인 > ROC곡선 비교 확인

4. 최종적인 평가

'데이터 청년 캠퍼스(2022) > 배운 내용 정리' 카테고리의 다른 글

6.29(수) CSS 3  (0) 2022.06.29
6.28(화) HTML(2)  (0) 2022.06.29
6.28(화) 데이터 플랫폼 이론(2)  (0) 2022.06.28
6.27(월) HTML  (0) 2022.06.27
6.27(월) 데이터 플랫폼 이론  (0) 2022.06.27