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)
- 비슷한 성격을 가지고 있는 클러스터 단위로 군집한 다음 극단치를 제거
'자격증 > ADsP (데이터분석 준전문가)' 카테고리의 다른 글
[데이터분석 준전문가 Day 6/독학] ADsP 3-3 결측값 처리와 이상값 검색 정리본 (0) | 2022.08.08 |
---|---|
[데이터분석 준전문가 Day 6/독학] ADsP 3-2 R기초와 데이터 마트 정리본 (0) | 2022.08.08 |
[데이터분석 준전문가 Day 4/독학] ADsP 2-2 분석 마스터 플랜 정리본 (0) | 2022.08.04 |
[데이터분석 준전문가 Day 3/독학] ADsP 2-1 데이터 분석의 이해 정리본 (0) | 2022.08.03 |
[데이터분석 준전문가 Day 2/독학] ADsP 1-3 데이터 사이언스와 전략 인사이트 정리본 (0) | 2022.08.02 |