자격증/ADsP (데이터분석 준전문가)

[데이터분석 준전문가 Day 5/독학] ADsP 3-1 빅데이터 수집과 정제 플랜 정리본

thisisjade 2022. 8. 5. 18:21
728x90

 

3과목 공부 시작

 

 

[데이터 유형]

- 정형 데이터

  • 관계형 데이터베이스, 데이터베이스 스키마 지원
  • 데이터 종류: RDB, 스프레드시트

 

- 반정형 데이터

  • 스토리지에 저장되는 데이터 파일
  • XML 형태의 데이터로 값과 형식이 일관성이 없다
  • 데이터 종류: HTML, XML, JSON, 웹페이지, 웹로그, 센서데이터

 

- 비정형 데이터

  • 언어분석이 가능한 텍스트 데이터
  • 형태와 구조가 복잡한 이미지, 동영상 같은 멀티미디어 데이터
  • 데이터 종류: 소셜 데이터, 문서, 이미지, 오디오, 비디오

 

[데이터 유형별 수집기술]

- 정형 데이터: ETL, FTP, Open API

- 반정형 데이터: Crawling, RSS, Open API, FTP

- 비정형 데이터: Crawling, RSS, Open API, Streaming, FTP

 

[데이터 수집기술]

- Crawling

  • 뉴스, SNS, 웹페이지 등의 인터넷 정보를 수집
  • 데이터 종류: 웹페이지

 

- FTP

  • 인터넷 프로토콜을 사용해서 파일을 다운로드
  • sftp프로그램은 암호화하여 송수신
  • 데이터 종류: 파일 수집

 

- Open API

  • SNS정보를 API를 사용해서 데이터를 수집
  • 데이터 종류: 실시간 데이터

 

- RSS

  • XML 기반으로 블로그, 뉴스 등을 수집
  • 데이터 종류: 컨텐츠 수집

 

- Streaming

  • 음성, 오디오, 비디오 등의 멀티미디어 데이터를 실시간으로 수집
  • 데이터 종류: 실시간 데이터

 

- Log Aggregator(로그 수집기)

  • 웹로그, 웹서버 로그, 트랜잭션 로그 웹페이지 클릭 로그, DB로그 등을 수집
  • 데이터 종류: 로그

 

- RDB Aggregator(RDB 수집기)

  • 정형화된 데이터를 수집하여 분산파일시스템이나 HBase와 같은 NoSQL에 저장
  • 데이터 종류: RDB기반 데이터 수집

 

[데이터 유형]

- 내부 데이터베이스 데이터

  • 데이터베이스에 저장된 데이터는 정형화된 형식
  • 데이터베이스에 있는 데이터도 데이터 프로파일링을 통해서 데이터 품질을 검사

 

- 텍스트 데이터

  • 텍스트 데이터는 비정형 데이터로 전처리 과정을 통해서 정형화한 후에 빈도수 분석을 하는 텍스트마이닝 사용

 

- SNS 데이터

  • API로 수집
  • SNS 데이터는 JSON 형태로 데이터를 제공

 

- 로그 데이터

  • 로그파일은 계속적으로 발생하는 데이터
  • 시스템별로 로그파일을 저장하는 방식이 다르다.

 

- 센서 데이터

  • IoT의 센서에서 전송하는 사물정보를 수집하여 데이터를 분석

 

- 음성 데이터

  • 아날로그 데이터
  • 아날로그 데이터를 디지털로 변환하는 것을 PCM과정
  • 디지털로 변환된 데이터는 다시 텍스트로 변환
  • 음성은 STT, TTS를 지원

 

- 이미지 데이터

  • 비정형 데이터
  • 아주 작은 픽셀들의 모임이고 이미지에서 픽셀을 추출하여 빅데이터 분석에 사용
  • OpenCV는 이미지를 활용해서 머신러닝을 지원

 

[데이터 속성]

- 휴면 빅데이터: 사람의 행위에 대한 정보를 저장하고 있는 빅데이터

- 시스템 빅데이터

- 소셜 빅데이터

- 행태 및 상태 빅데이터: 사람의 행위에서 발생하는 빅데이터(ex.통화기록)

 

[데이터 특성 파악]

- JSON

  • 속성과 값의 표현식
  • 사람과 기계 모두가 이해하기 쉬운 데이터 타입

 

- Open API

  • 표준화된 인터페이스를 사용해서 원하는 컨텐츠를 읽어올 수 있다.
  • 실시간 데이터 수집을 위해서 활용

 

- RSS

  • 새로운 뉴스 혹은 블로그에 새로운 글이 게시되면 자동 통보

 

- WSNs

  • 넓은 공간을 관측하기 위해서 수백에서 수천 개의 센서를 배포하여 네트워크를 형성

 

- 크롤링

  • 크롤러: 웹사이트를 탐색해서 정보를 추출하는 컴퓨터 프로그램

 

[Data Transformation]

  • 표준화
  • 정규 분포화
  • 범주화
  • 개수축소
  • 차원축소
  • 시그널 데이터 변환

 

[표준화]

- 표준화

  • 평균을 중심으로 데이터가 어느 정도 떨어져 있는지를 구할 때 사용

 

- 정규화

  • 0과 1로 변환하여 데이터 분포를 조정하는 방법
  • 수식: (해당 값 - 최소값)/(최대값 - 최소값)

 

- Z 변환

  • 중심극한정리에 근거하여 표본을 추출하는 경우 표본은 정규분포에 근사하다고 가정

 

- [0-1] 변환

  • 연속형 변수를 0~1 사이의 값으로 변환
  • 수식: x-min(x)/(max(x)-min(x))

 

[정규 분포화]

- 로그 변환

- 제곱근 변환

 

[범주화]

- 이산형화

  • 범주형 변수를 특정 분석 데이터로 변환
  • 다수의 구간으로 연속형 변수를 범주화

 

- 이항변수화

 

[개수축소]

- 단순 임의 추출(Simple random sampling): 모집단에서 표본을 균등하게 임의 추출

- 체계적 추출(Systematic sampling): 모집단에서 시간적, 공간적으로 간격을 두고 표본을 추출

- 층화 임의 추출(Stratified random sampling): 모집단을 몇개로 분류하고 분류 내에서 임의 추출

- 군집 추출(Cluster sampling): 모집단을 특정 군집으로 분류하고 군집 내의 모든 데이터를 표본으로 추출

- 다단계 추출(Multi-stage sampling): 단계를 나누어 표본을 추출하는 방법(ex. 1단계 군집추출, 2단계 층화 임의 추출)

 

[차원축소]

- 요인분석: 수많은 변수 중에서 잠재적인 몇개의 요인을 찾는 방법으로 공통적인 요인을 찾아낸다.

  • 변수의 특성 분석: 입력 변수들 간의 상관관계를 파악하고 데이터 특성을 이해할 수 있다.
  • 새로운 변수 생성: 분석모델에 잠재적인 변수를 추출하여 새로운 변수를 생성하는 효과가 있다.
  • 데이터 축소: 변수의 수를 줄일 수 있어서 분석결과에 대한 해석이 용이하다.
  • 다중공선성 문제: 독립변수 간의 상관관계가 있는 다중공선성 문제는 잠재적 변수를 추가해서 해결할 수 있다.

 

- 주성분분석: 여러 변수들 간의 상관관계를 분석, 소수의 주성분 혹은 요인으로 차원을 축소하는 방법

- 데이터 변환 방법

  • 평활화(Smoothing): 데이터로부터 잡음을 제거하기 위해 추세에 벗어나는 값들을 변환
  • 집계(Aggregation): 다양한 차원의 방법으로 데이터를 요약
  • 일반화(Generalization): 특정 구간에 분포하는 값으로 스케일을 변환
  • 정규화(Nomalization): 최소, 최대 정규화 및 Z-스코어 정규화, 소수 스케일링 등 통계적 기법을 적용
  • 속성생성(Attribute/Feature construction): 데이터 통합을 위해 새로운 속성이나 특징을 만든다.

 

[시그널 데이터 변환]

- 푸리에 변환: 시간에 따른 진폭 데이터를 주파수별로 세기로 변환

- 웨이블릿 변환: 푸리에 변환의 이러한 문제점을 해결한 것이 웨이블릿 변환

 

[데이터 품질 검증]

- 빅데이터 수집, 정제, 저장, 분석 등 모든 과정에서 지속적으로 이루어져야 한다.

 

[데이터 정제] - 데이터 표준에 맞게 변환, 비정형 데이터를 정형 데이터로 변환

 

[빅데이터 전처리 과정]

- 데이터 변환

  • 데이터 분석이 용이한 형태로 변환

 

- 데이터 교정

  • 결측치를 변한하고 이상치를 제거
  • 노이즈 데이터를 교정
  • 비정형 데이터를 수집할 때는 반드시 수행

 

- 데이터 통합

  • 기존 또는 유사 데이터를 연계하거나 통합
  • 레거시 시스템(Lagacy System)과 함께 분석을 할 경우에 데이터 통합을 수행

 

[빅데이터 전처리 기술]

  • 데이터 여과
  • 데이터 변환
  • 데이터 정제
  • 데이터 통합
  • 데이터 축소

 

[빅데이터 후처리]

- 데이터를 저장하고 지속적인 품질관리 활동을 수행하는 것

 

[빅데이터 저장방식]

- RDB

  • 관계형 데이터 베이스에 저장하므로 SQL을 사용해 쉽고 편하게 관리할 수 있다
  • 제품: Oracle, MySQL, Sybase, MSSQL

 

- NoSQL

  • Not Only SQL
  • Key-value, Document key-value, Column기반으로 사용
  • Mongo DB, HBase, Cassandra, Redis

 

- 분산 파일 시스템

  • 분산 서버를 사용해서 여러 서버에 분산하여 저장, 대규모 저장소를 제공하고 성능을 향상
  • HDFS(Hadoop Distributed File System)

 

[데이터 정제 방법 - 결측치(Missing value)]

- 해당 레코드 무시

  • 데이터 분류에서 각 클래스의 라벨 구분이 없는 경우 해당 레코드를 무시
  • "해당 레코드 무시"는 결측치가 자주 발생하는 환경에서는 매우 비효율적

 

- 자동으로 채우기

  • 결측치 값을 특정한 값으로 입력(ex.unknown으로 입력)
  • 해당 클래스와 같은 레코드에 속한 데이터의 평균값으로 입력
  • 베이지안 확률추론, 결정트리를 이용하여 추정치를 적용

 

- 담당자(전문가) 수작업 입력

  • 담당자가 데이터를 확인하고 적절한 값으로 수정
  • 작업에 많은 시간이 필요하지만 높은 신뢰성을 얻는다.

 

[데이터 정제 방법 - 잡음처리]

- 구간화(Bining)

  • 데이터를 정렬한 후에 여러 개의 구간으로 나누고 구간에 있는 값들을 대표값으로 대체
  • 구간 단위로 잡음을 제거, 데이터 축약효과
  • 구간화에 사용되는 대표값은 평균값, 중앙값 등이 있다.

 

- 회귀값 적용(Regressing)

  • 데이터를 잘 표현하는 추세함수를 찾아 이 함수 값을 적용한다.

 

- 군집화(Clustering)

  • 비슷한 성격을 가지고 있는 클러스터 단위로 군집한 다음 극단치를 제거
728x90