중요한 건 다시 복습!
빅데이터
- 기획, 탐색, 분석, 해석
빅데이터 3V + 1V
Volume, Variety, Velocity, Value
하둡 (플랫폼) 의 구성 : 분산 처리, 병렬 처리
하둡공통 HDFS(병렬 처리할 수 있게끔 분산 저장) MapReduce (처리)
R을 이용한 빅데이터 고급 분석
- 작업의 유연성 확보
- R의 In-memory 기반 (데이터의 크기 제한)
- R과 하둡의 결합으로 인메모리 한계 극복
- R에서 맵리듀스를 프로그래밍 가능하게 해주는 Rhipe 개발 (오픈소스)
RHadoop (R하둡) ?
- 상업용 병렬처리 R을 개발, 개인 사용자는 무료
- R에서 편하게 맵리듀스를 가능하게 해줌
- 4개의 패키지로 제공 (Rhdfs, rmr, Rhbase, plyrmr)
- Rhdfs : R에서 HDFS, rmr : R에서 맵리듀스, Rhbase : 하둡기반 분산데이터베이스, plyrmr : rmr에서 생성된 경험데이터를 plyr 패키지 형식으로 처리
HDFS ?
- 마스터 노드 (name node) : 관리자, 1개 존재
- name node : 작업해야할 파일을 블럭으로 나눠 data 노드에 전달, data 노드는 전달받을 파일을 읽기 및 쓰기 등 수행
- 슬레이브 노드 (data node) : 실제 데이터 분산 저장, 분산 상태를 마스터 노드가 관리
- data node : 슬레이브 노드 동작 상태 실시간 관리, 수천 개의 data 노드의 meta data 관리
- ※ meta data : data의 제작자, 목적, 날짜와 같은 데이터
빅데이터 | 수치형 데이터 | 연속형 데이터 | 비율척도 |
이산형 데이터 | 구간척도 | ||
문자형 데이터 | 명목형 데이터 | 명목척도 | |
순서형 데이터 | 서열척도 |
하둡의 특징?
- 분산시스템환경
- 데이터 위치 추적 방식으로 분산 파일 시스템 구축
- 사용자가 원하는 만큼 저장과 처리 지원
- 일부 시스템 고장이나 중단 없이 작동
- 저비용 고성능 고효율
하둡은 마스터 - 슬레이브 구조
- 마스터 노드
- 1대, 분산 파일 시스템에 대한 정보를 갖고 지원 할당 조절
- ▶ Name node : DFS(분산 파일 시스템) 관리, 어떤 데이터 블럭이 어떤 클러스터에 있는지 알려준다.
- ▶ Resource Manager : 스케줄링 / 슬레이브 노드의 처리 실행
- 슬레이브 노드
- 실제 데이터를 갖고 job을 수행하는데 데이터 노드와 노드 매니저를 통해 처리한다.
- data node : 네임 노드에 물리적으로 저장된 실제 데이터 관리
- node manager : 노드의 테스크를 실행
[ 필기 ]
★ 오늘의 핵심 (MAPREDUCE의 처리과정) ★
MapReduce
- Mapping + Reduce
- → INPUT / INPUT SPLIT / MAPPING / SHUTTLING / REDUCER / FINAL OUTPUT (Result)
- INPUT DATA : " Welcome to Hadoop Class Hadoop is good Hadoop is bad"
- INPUT SPLIT : "Welcome to Hadoop" , " Class Hadoop is" , "good Hadoop is" , "bad"
- MAPPING DATA <단어, 카운트> : <Welcome, 1> , <to, 1> , <Hadoop, 1> , <Class, 1> , <Hadoop, 1> , <is, 1> , ...
- → SPLIT에서 묶은 것끼리 카운트 세는 것 (일일이)
- SHUFFLING : <bad, 1> , <Class, 1> , <good, 1> , <Hadoop, 1> , <Hadoop, 1>, <Hadoop, 1> , <is, 1>, <is, 1>, ...REDUCER : <bad, 1> , <class, 1> , <good, 1> , <Hadoop, 3> , <is, 2> , <to, 1> , <Welcome, 1>
- → 카운트가 직접적으로 올라가지는 않는다, 같은 것끼리 모아주는 작업을 여기서 진행한다.
- FINAL OUTPUT : bad 1 Class 1 Good 1 Hadoop 3 is 2 to 1 Welcome 1 (정리를 해서 결과로 보여준다.)
- [ 예시 ]
- INPUT DATA : "가나다 가나 나다"
- INPUT SPLIT : "가나다" , "가나", "나다"
- SPLIT 의 기준은 알아서 자동으로 진행한다. 줄바꿈을 기준으로 나누거나, 또는 콤마를 기준으로 하거나 시스템이 자동적으로 한다.
- MAPPING DATA : <가, 1>, <나, 1> , <다, 1> , <가, 1> , <나, 1> , <나, 1> , <다, 1>
- ( SHUFFLING & SORT ) 중간과정 : <단어1, 1, 1, ...> , <단어2, 1, 1, ...> , 여기서 덧셈을 하면 안된다.
- SHUFFLING : <가, 1> , <가, 1> , <나, 1> , <나, 1> , <나, 1> , <다, 1> , <다, 1>
- SHUFFLING : 단어는 KEY, 개수는 VALUE이다. SHUFFLING 단계에서는 이 VALUE들을 모아 LIST로 만든다.
- REDUCER : <가, 2> , <나, 3> , <다, 2>
- REDUCER : <단어1, 1+1+...> , <단어2, 1+1+...>
- FINAL OUTPUT : 가 2 나 3 다 2
★ 여러 개의 문서에 등장하는 단어의 개수 세기
INPUT (HDFS) | SPLIT | MAPPING | SHUFFLING | REDUCER | FINAL OUTPUT |
Hello World by World |
생략 | <Hello, 1> <World, 1> <by, 1> <World, 1> |
|||
Hello Hadoop by Hadoop |
생략 | <Hello, 1> <Hadoop, 1> <by, 1> <Hadoop, 1> |
|||
Hello R Hello Map Reduce |
정형 데이터 : 분석 가능한 데이터 (회귀 분석)
변수 데이터 (DATA) : 독립 변수, 종속 변수
→ 변수마다의 평균과 분산을 구한다.
(CASE: 사람, VARIABLE 변수)
※ 원래 변수들은 독립변수로 존재한다, 그러나 예를 들어 "몸무게를 이용하여 키를 예측해보자" 라는 주제가 나왔을 때 몸무게라는 독립변수로 키라는 변수를 예측을 한다면 키는 종속변수가 된다. 예측하는 것, 과거 데이터를 이용한 예측모형이다. 상관분석 (회귀분석) → 회귀모형 → 키를 예측
모형화 : 예측 및 공분산
회귀분석 진행하기 전에, 기존데이터 X1과 X2에 대한 상관분석을 먼저 해야 한다. 그 이유는, X1과 X2의 연관성을 알기 위해서이다. X1과 X2의 연관성을 잘 보일 수 있도록 PLOTTING(산점도) 를 통해 시각화를 한다.
P 모상관 (모수)
- 공분산(X, Y) / (X의 표준편차 * Y의 표준편차)
참값 - 근사값 = 절대오차
편차VS잔차,VS오차
참고 : https://blog.naver.com/nabilera1/222054707647
- 편차(Deviation)
- 관측치가 평균으로부터 떨어져 있는 정도, 즉 평균과 관측치와의 차이
- → 표준편차(SD) : 이러한 편차들의 평균값으로 평균으로부터 얼마나 떨어져 있는가에 대한 정보를 제공한다.
- 오차(Error)
- 예측하기 위하여 추정된 값과 실제값의 차이, 즉 예측값이 정확하지 못한 정도
- → 표준오차(Standard Error) : 표본추출의 과정에서 발생하는 오차와 연관된 것으로 추정량의 정도를 나타낸다. (표준오차는 확률변수의 추정량의 표준편차이다.), 표본이 모집단으로부터 얼마나 떨어져 있는지를 나타낸다.
- 잔차(residual)
- 평균이 아니라 회귀식 등으로 추정된 값과의 차이이다. 즉, 추정된 값이 설명할 수 없어서 아직도 남아있는 편차로 편차의 일부분이다.
- 오차VS잔차
- 모집단에서 회귀식을 얻었고, 그 회귀식을 통해 얻은 예측값과 실제 관측값의 차이가 오차이다.
- 반면에 표본집단에서 회귀식을 얻었고, 그 회귀식을 통해 얻은 예측값과 실제 관측값의 차이가 잔차이다.
표본 상관계수는 r : -1 <= r <= 1의 범위를 가진다.
- r = 1 : 정비례
- r = 0 : 상관이없음
- r = -1 : 반비례
상관분석 VS 회귀분석
- 상관분석은 r이 무엇인지를 구하는 것이다. 즉, 관계성을 따지는 것이다.
- 회귀분석은 y = ax + b에서 a가 무엇인지 b가 무엇인지를 구하는 것이다.
- 최소자승법 : a와 b (회귀 계수)는 X데이터와 Y데이터에 의하여 구할 수 있다.
X 독립변수와 Y 종속변수를 최소자승법을 통하여 회귀계수를 구한다. X 와 Y의 상관 분석
예시로, r 표본상관이 0.7이라고 구해지면, 모집단 상관계수 P가 0.7이라고 추정할 수 있다. (예측)
예측 (~확률)
- 서버 (Population, 전체집합 = 서버에 있는 전체 데이터)를 예측하는 것 (부분집합을 추출)
- 미래를 예측하는 것 (예측에는 항상 확률이란 과목이 들어간다)
random sample에서 biased를 줄이기 위해 n-1로 나누는 것이다. n-1 : 자유도 (degree of freedom)
※ n-1 (degree of freedom)은, 단순히n으로 나누게 된다면 편향값 (biased) 가 발생하지만, 시뮬레이션 결과 n-1로 계산 시 문제가 없어지게 된다. 데이터 분석 시에 많이 사용된다. (카이제곱, T-분포 등...)
다음 수업에는 ...
1. 상관분석 : 상관계수
2. 회귀분석 : 2-1) 단순회귀, 2-2) 다중회귀
3. 로지스틱
추정 및 검정
- T검정
- 카이제곱 검정
- F검정
'빅데이터 분석 > 수업 필기' 카테고리의 다른 글
빅데이터분석 필기 (6) (0) | 2024.04.21 |
---|---|
빅데이터분석 필기 (5) (0) | 2024.04.21 |
빅데이터분석 필기 (4) (0) | 2024.04.21 |
빅데이터분석 필기 (2) (0) | 2024.03.31 |
빅데이터 분석 필기(1) (0) | 2024.03.05 |