본문 바로가기
IT,SW,Data,Cloud,코딩

빅데이터분석기사 필기 시험준비 - 나만의 암기포인트

by 착실하게 2021. 9. 30.
반응형

빅데이터분석기사 필기 PART 1 

 

 

정형 관계형 데이터베이스(RDB), 스프레드시트, CSV
반정형  XML, HTML, JSON, 로그 형태
비정형 소셜데이터(트위치, 페이스북), 영상, 이미지, 음성, 텍스트(word, PDF...) 등

 

 

빅데이터 조직 구조

 

 

데이터 이상값의 발생 원인

- 설문 응답 오류, 데이터 입력 오류, 고의적인 이상값, 측정 오류 

- 표본 추출 에러, 실험 오류 

★ 표본 추출 에러, 실험 오류도 데이터 이상값의 발생 원인 중 하나다. 

 

 

 

 

빅데이터 분석 절차

1) 문제 인식 2) 현황 분석 3) 모형화 4) 데이터 수집 5) 데이터 분석 6) 분석 결과 활용

 

 

빅데이터 분석 업무 흐름

1) 데이터 수집 2) 데이터 저장 3) 데이터 처리 4) 탐색적 데이터 분석 EDA 5) 모형 및 알고리즘 설계 6) 시각화 및 보고서를 통한 데이터 활용

 

 

 

빅데이터 분석 방법론

1) 분석 기획 2) 데이터 준비 3) 데이터 분석 4) 시스템 구현 5) 평가 및 전개

 

KDD 분석 방법론. Knowledge Discovery in DB :통계 패턴/지식 찾는 데이터마이닝. 프로파일링 기술 기반.

1) 데이터 선택 2) 데이터 전처리 3) 데이터 변환 4) 데이터 마이닝 5) 해석과 평가. 

 

CRISP-DM 분석 방법론. Cross Industry Standard Process for Data Mining :비즈니스 이해 바탕. 단계 간 피드백. 

단계 - 일반화 태스크 - 세분화 태스크 - 프로세스 실행. 

분석 절차 ~ 1) 업무 이해 2) 데이터 이해 3) 데이터 준비 4) 모델링: 모델 평가 5) 평가: 모델 적용성 평가 6) 전개 

 

 

 

분석 작업 계획

1) 데이터 확보 계획 (1) 목표 정의 (2) 요구사항 도출 (3) 예산안 수립 (4) 계획 수립 (인력, 일정, 리스크/품질 관리)

2) 빅데이터 분석 절차 (1) 문제 인식 (2) 현황 분석 (3) 모형화 (4) 데이터 수집 (5) 데이터 분석 (6) 분석 결과 활용

3) 빅데이터 작업 계획. 빅데이터 분석의 WBS. Work Breakdown Structure (1) 데이터 분석 과제 정의 (2) 데이터 준비 및 탐색 (3) 데이터 분석 모델링 및 검증 (4) 산출물 정리 

 

 

분석 마스터플랜/로드맵 수립

우선순위 설정: 전략적 중요도, 비즈니스 성과, 실행 용이성 고려.

적용 범위 및 방식 결정: 업무 내재화 적용 수준, 분석 데이터 적용 수준, 기술 적용 수준 고려. 

 

 

 

  분석대상: Known 분석대상: Unknown
분석방법: Known 최적화 통찰
분석방법: Unknown 솔루션 발견

 

 

하향식 접근법 1) 문제 탐색 ~ 외부 사례 벤치마킹 탐색. 비즈니스 모델 기반 탐색. 분석 유스케이스 정의. 2) 분석 문제 정의 ~ 데이터의 문제로 전환 3) 해결 방안 탐색 4) 타당성 평가 및 과제 선정 

 

디자인 사고 Design Thinking : 상향식 접근법으로 문제 도출하고 하향식 접근법으로 해결 방법 찾는 과정을 반복. 동적 환경에서 최적의 문제 정의를 하기 위함. 

 

 

데이터 분석 방법론의 구성 요소

- 절차, 방법, 도구 및 기법, 템플릿과 산출물

 

 

파생 변수의 생성 방법에 해당하는 것 

- 변수의 수량 단위를 변환하여 환산 단위로 표현

- 문자열에서 앞의 세 글자로만 구성한 변수로 변환

- 속성이 다른 두 지표를 나눠서 새로운 변수를 정의 

 

파생 변수의 생성 방법에 해당하지 않는 것

- 전체 데이터 중 소수의 데이터를 복제 

 


빅데이터분석기사 필기 PART 2,3,4

 

 

MANOVA

- 종속변수 간 상관관계 높을 때 결합된 차이 확인

- 종속변수는 다변량 정규분포를 따른다고 가정

- 종속변수가 2개 이상이고 종속변수 간에 상관관계가 있을 때 사용

 

 

명목형 변수 거리

- 단순 일치 계수: 전체 속성 중 일치하는 속성의 비율. 

- 자카드 계수: 두 집합 사이의 유사도 측정. 0과 1 사이 값을 가지며 두 집합이 같으면 1의 값, 공통의 원소가 없으면 0의 값. 

 

순서형 자료 

- 순위 상관 계수: 값에 순위를 매겨 그 순위에 대해 상관 계수를 구하는 방법. 

 

수치형 데이터 = 양적 데이터

범주형 데이터 = 질적 데이터 

 

변동계수 Coefficient Variation: 단위가 다른 두 자료 군의 산포도 비교에 좋다. 

분산은 한 가지 자료의 산포도 측정에 유리함. 

 

 

One Class Classificaton / Outlier Detection / Novelty Detection / Concept Learning 

ㅡ 대부분 positive training data 주어짐. 

ㅡ 대표적인 방법 예시: SVDD Support Vector Data Description 

 

 

변수 선택 Feature Selection 

1. 필터 기법 Filter Method : 모델링 전 전처리. 데이터의 통계적 측정 방법을 사용

- 다중 t 검정 

2. 래퍼 기법 Wrapper Method : 하위 집합을 반복하여 선택하면서 탐색 

- 2.1 전진 선택법 Forward Selection

- 2.2 후진 선택법 Backward Selection

- 2.3 단계적 방법 Stepwise Selection 

3. 임베디드 기법 Embedded Method : 모델 자체에 변수 선택이 포함되어 있음. 모델링 과정 중에 최적변수 선택. 

- 3.1 Shrinkage 방법: Lasso, Ridge, Elastic Net 

- 3.2 변수 중요도 방법: Decision Tree, Random Forest 

 

 

 

변수 추출 Feature Extraction / 차원 축소 Dimensionality Reduction 

- 완결된 분석 기법으로 사용되기 보다는 전처리나 시각화를 목적으로 사용한다. 

1. 주성분분석 PCA. Principal Component Analysis 

- 변수들 간의 상관관계 확인. 분산이 가장 높은 축. 상호 직교. 행렬 분해 (행과 열의 크기 같음)

- 주성분 개수 선택 기준: 개별고윳값 Eigenvalue, 정보량의 비율 Cumulative Proportion, 스크리 플롯 Scree plot

2. 선형판별분석 LDA. Linear Discriminant Analysis 

- 데이터를 최적으로 분류. 정량적 독립변수, 명목형 종속변수. 

3. 특이값 분해 SVD. Singular Value Decompostion 

- 행렬 분해 (행과 열의 크기 다름)

4. 요인 분석 Factor Analysis 

- 데이터 안에 관찰할 수 없는 잠재 변수 존재. 상관관계 유사 변수끼리 묶어줌. 

5. 독립성분분석 ICA. Independent Component Analysis 

- 독립적인 하부성분으로 분리. 비정규 분포. 

6. 다차원척도법 MDS. Multi-Dimensional Scaling 

- 변수들이 서로 독립적이라는 가정. 비정규 분포. 개체들의 유사성/비유사성을 측정하여 데이터의 내재된 구조를 시각화. 집단화(클러스터). 

- 개체들간의 상대적 관계를 상대적 위치로 시각화. 

- 연속형 변수인 경우 거리 행렬 이용한 계량적 다차원 척도법 사용

- 순서형 척도인 경우 순서척도를 거리로 변환하는 비계량적 다차원 척도법 사용. 

- 적용 절차 (1) 유클리드 거리행렬로 개체 간 유사성 측정 (2) 2차원, 3차원 공간에 개체를 점으로 배열 (3) 스트레스 값 stress value 를 부적합도로 측정하여 최소가 되도록 좌표를 조정. 적합도가 좋을 수록 스트레스값은 0에 가깝고 0.2 이상이면 나쁘다. 

 

 

  주성분분석PCA 요인분석FA
공통점 차원 축소. 사전 분석. 차원 축소. 사전 분석.
차이점1 선형적 결합 잠재적 결합
차이점2 데이터 요약 주성분 추출 상관성 기준 잠재변수 생성
차이점3 주성분 간 중요도 차이 있음 새로운 변수들은 대등함 

 

 

 

판별분석

판별함수의 수 = Min( 집단의 수 - 1 , 독립변수의 수 ) 

 

 

 

 

변수 변환

비닝(Binning): 연속형 → 범주형 (데이터 값을 몇 개의 Bin으로 분할하여 계산) 

더미 변수화: 범주형 → 연속형 (변수별 값을 각각 다른 열로 변경. 값이 있으면 1 없으면 0)

 

데이터 구간화(Binning)

관측 오류 때문에 생기는 노이즈를 제거하기 위해 구간 대표값으로 대체하여 사용하는 기법

 

불균형 데이터 처리

과소표집 Under-Sampling: 다수 클래스를 적게 선택하여 비율 맞추기. 데이터 소실 크고 정상 데이터 잃을 가능성. 

과대표집 Over-Sampling: 소수 클래스를 복제하여 비율 맞추기. 과적합 가능성. 

SMOTE Synthetic Minority Oversampling Technique. 일종의 과대표집. 소수 클래스의 데이터를 찾고 주변 값을 기준으로 새로운 데이터를 생성. 과소표집과 과대표집을 보완함. 

 

 

기술통계 Descriptive Statistics

추론통계 Inferential Statistics 

 

 

표본의 분산: 편차의 제곱을 합한 값을 n-1개로 나눈 값.

 

 

모수: 모집단의 특성을 나타내는 대표값.

통계량 Statistic: 표본에서 얻은 평균이나 표준오차와 같은 값. 무작위로 추출하면 표본에 따라 달라지는 확률변수.

추정량 Estimator: 모수의 추정을 위해 구해진 통계량. 

 

 

중심극한정리 Central Limit Theorem: 표본개수 커지면 모집단의 분포와 상관없이 표본분포는 정규분포에 근사. 

큰 수의 법칙 Law Large Number: 데이터를 많이 뽑을수록 표본평균의 분산은 0에 가까워짐. 

 

 

확률분포함수의 3가지 특징

1) 비감소성: 누적함수여서 a<b 이면 f(a)<f(b)

2) 극한성: 확률이라서 최소극한값은 0이고 최대극한값은 1

3) 우방 연속성: 누적함수여서 오른쪽으로 연속성을 가짐.

 

 

확률분포

1. 이산확률분포

1.1 이항분포: n번의 시행 중 각 시행의 확률이 p일 때, k번 성공할 확률 분포. *베르누이 시행: 두 가지 경우의 수 중 어떤 것이 나오는지 확인. *음이항분포: 성공확률이 p인 베르누이 시행을 독립적으로 반복시행할 때 k번 성공하기까지의 시행횟수 X의 확률분포. 

1.2 포아송 분포: 이산형확률분포 중 주어진 시간 또는 영역에서 어떤 사건의 발생 횟수. 

2. 연속확률분포

2.1 정규분포: 왜도는 0 첨도는 3. 모평균이 뮤, 모분산이 시그마의 제곱.

2.2 표준정규분포 (Z-분포): 평균이 0이고 분산과 표준편차가 1. 

2.3 t-분포: 모집단이 정규분포인 것만 알고 모표준편차를 모를 때 사용. 두 집단의 평균이 동일한지의 검정통계량으로 활용. 자유도에 따라 모양 변함. 0을 중심으로 좌우 대칭. 표본크기 30 이하에 사용. 기댓값(평균)은 0이고 분산은 k / k-2 (k는 자유도). 

2.4 카이제곱분포: 범주형 자료분석. k개의 서로 독립적인 표준 정규 확률 변수를 각각 제곱한 다음 합해서 얻어지는 분포. 오른쪽으로 긴 꼬리. 

2.5 F-분포: 두 집단 간 분산의 동일성 검정. 

 

 

점 추정 조건 통계: 표본평균, 표본분산, 중위값, 최빈값. 

 

 

가설 검정 오류

1종 오류: 실제는 참인데 거짓이라고 판단하는 오류.

2종 오류: 실제는 거짓인데 참이라고 판단하는 오류.

유의수준: 1종 오류를 범할 최대 허용 확률. 알파. 

유의확률: 귀무가설을 기각할 수 있는 최소의 유의수준. 

신뢰수준: 1-알파. 귀무가설이 참일 때 이를 참이라고 판단하는 확률. 

베타수준: 2종 오류를 범할 최대 허용 확률. 베타. 

검정력: 1-베타. 

 

 

오차 error: 모집단 회귀분석의 오차. 

잔차 residual: 표본 회귀분석의 오차. 오차의 추정치. 

오차분석 X 잔차분석 O 

 

  독립변수 종속변수
t-검정(t-test) (2집단)
분산분석 ANOVA (2집단이상) 
범주형 연속형
분할표분석
카이제곱검정
피셔의 정확도 검정
범주형 범주형
회귀분석 연속형 연속형
로지스틱 회귀분석 연속형 범주형
상대적위험도
의사결정나무
서포트벡터머신
  범주형

 

t-test

단일표본 t-test: 표본 평균으로 모집단의 평균을 검정

독립표본 t-test: 서로 다른 두 집단의 평균의 차이를 검정

대응표본 t-test: 동일 집단의 사전 사후 차이를 검정. 

 

 

분산분석

F-분포: 두 표본 분산의 비. 

 

 

분할표 분석

- 빈도 분포표 = 분할표 = 교차표.

(ex) 혼동행렬~분류 모델의 예측값과 실제값 매트릭스. (정확도 Accuracy, 정밀도 Precision , 재현율 Recall , 특이도 Specificity )

- 상대위험도 Relative Risk 

- 승산비 = 교차비 = Odds Ratio 

 

 

카이제곱검정 (*모수적 검정!!)

- 적합도 검정: 하나의 범주형 변수에 대하여 데이터가 특정 분포를 만족하는지. (사례: 3개 공장라인의 불량률 다름) 

- 동질성 검정: 서로 다른 집단에 대한 범주형 변수의 분포가 동질인지. (사례: 성별에 따라 선호 자동차 다름) 

- 독립성 검정: 두 범주형 변수가 서로 독립적인지. (공장 라인과 제품 등급은 독립적) 

 

적합성 검정 집단 1개 
동질성 검정 집단 2개 
독립성 검정 집단 2개 이상  

 

 

 

피셔의 정확 검정 Fisher's Exact Test 

- 가능한 모든 경우의 수를 직접 확인하는 검정 방법

- 기대빈도가 5보다 작은 셀이 20%를 넘으면 카이제곱 검정 대신 피셔의 정확 검정을 사용. 

 

 

 

회귀분석 독립변수: 연속형. 범주형은 더미변수로 변환. 
종속변수: 연속형.
로지스틱 회귀분석  독립변수: 연속형
종속변수: 범주형
이항분포를 따른다. 
단순선형 회귀분석 최소자승법: 회귀계수는 최소제곱법을 사용하여 추정. 
결정계수 = 회귀제곱합 SSR / 전체제곱합 SST = 회귀모형의 설명력.
독립변수 1개. 
종속변수와의 관계: 직선 
다중선형 회귀분석 독립변수 k 개.
종속변수와의 관계: 직선 
다항 회귀분석 독립변수 2개.
종속변수와의 관계: 1차 함수 이상. 
곡선 회귀 독립변수 1개.
종속변수와의 관계: 곡선
비선형 회귀  비선형

 

 

회귀분석

R: 상관계수

R^2: 결정계수. 상관계수의 제곱. 

베타: 회귀계수. 

 

회귀방정식의 기울기 = 상관계수 * y의 표준편차 / x의 표준편차 

 

회귀계수의 추정 방법 = 최소제곱법 = 최소자승법 : 측정값으로 만든 제곱합이 최소가 되는 값을 구한다. 

 

 

t-검정의 전제 등분산성, 정규성, 독립성
분산분석의 전제 등분산성, 정규성, 독립성
회귀분석의 전제 선형성, 등분산성, 정규성, 독립성. 

 

 

회귀분석의 전제: 선형성, 등분산성, 정규성, 독립성. 

- 선형성: X변수와 Y변수는 선형관계.

[선형성 확인 방법] y 와 y 추정치의 산점도. x축이 y이고 y축이 y의 추정치일때 45도 직선에 일치하면 선형성 있음. 

- 정규성: 오차항의 분포가 평균이 0인 정규분포. 회귀식의 잔차가 정규성 만족해야. Q-Q Plot에서 잔차가 우상향하는 정규성. 

[정규성 확인 방법] 잔차의 정규확률 그림 Normal Q-Q plot 에서 우상향 직선과 일치하면 정규 분포가 성립한다. 

- 등분산성: 오차항의 분산이 동일.

[등분산성 확인 방법] x축이 y의 추정치, y축은 잔차인 산점도 그렸을 때 x에 대한 y값들의 최대값과 최소값의 차이가 x들마다 일정해야함. 메가폰처럼 터널이 벌어지면 등분산성 위반임. 다시말해, y추정치의 변화에 대한 잔차의 크기가 무상관해야함. 

- 독립성: 오차항들이 서로 독립. 독립변수들 사이에 독립성이 보장되어야. 회귀식의 잔차가 독립성 만족해야.  

 

 

[다중공선성]

독립변수 간의 높은 선형 관계를 가지는 것. 회귀분석에 포함되면 문제 발생함.

VIF (Variance Inflation Factors, 분산팽창요인) 이 10을 넘으면 다중공선성이 있다고 판단. 

p-값이 커서 개별인자들이 유의하지 않다면 다중공선성이 있는 것으로 판단. 

 


적합도 검정

- 적합도: 통계 분포가 관측치에 얼마나 잘 맞는지.

- 적합도 검정: 관측치의 분포를 가정한 후, 그 가정이 맞는지 확인. 

 

1. Q-Q plot

y축: 데이터를 표준화한 z점수 값. Sample Quantiles. 

x축: 표준정규분포에서의 해당 분위수. Theoretical Quantiles. 

정규성 검정. 

 

2. 카이제곱검정

2.1 독립성 검정: 두 변수는 서로 독립적?

2.2 적합성 검정: 모집단의 분포가 가설과 동일?

2.3 동일성 검정: 두 집단의 분포가 동일? 

 

3. 샤피로 윌크 검정 Shapiro-Wilk Normality Test

정규성 검정.

자료 값들과 표준정규점수와의 선형상관관계를 측정하여 검정.

 

4. 콜모고로프 스미르노프 검정 Kolmogorov-Smirnov test 

데이터의 누적분포함수와 예상 분포의 누적분포함수를 비교. 

연속형 데이터에도 적용가능. 

자료의 가장 작은 값부터 가장 큰 값까지의 누적상대빈도가 이론적 정규분포에서의 누적상대빈도와
얼마나 다른가를 측정하여 검정하는 방법.

 

 


데이터 분할

- 홀드 아웃 Hold-out: 랜덤 추출. (편향될 가능성 존재)

- k-fold 교차검증: 테스트 데이터를 제외한 데이터를 무작위로 중복되지 않은 k개의 데이터로 분할한다. k-1개의 데이터는 학습 데이터로 사용하고 나머지 1개 데이터는 검증 데이터로 상요한다. 검증 데이터를 바꾸며 k번 반복해 분할된 데이터가 한번씩 검증 데이터로 사용된다.

- 부트스트랩: 데이터 분포가 치우쳐있거나 데이터 건수가 너무 적을 때 사용 가능. 복원 추출을 통해 전체 데이터 개수와 동일한 사이즈의 샘플 데이터를 추출한다. 부트스트랩 샘플 데이터를 학습 데이터로 사용하고 샘플에 포함되지 않는 나머지 데이터를 검증 또는 테스트 데이터로 사용한다. 

 

 

 

파라메터: 모형 내부 요소. 모형의 성능에 직접적인 영향을 미친다. 모형이 데이터를 학습한 결과 자동으로 결정된다. (예) 인공신경망의 가중치, SVM의 SV, 선형회귀 모형의 결정계수 등. 

 

하이퍼 파라메터: 모형 외부 요소. 모형의 성능에 간접적인 영향을 미친다. 사용자가 설정하는 값으로 학습 과정에 영향을 주고 학습 결과인 파라메터 값에 영향을 준다. 

(예) 인공신경망의 학습률, KNN의 K의 개수. 

 

하이퍼 파라메터 튜닝 방법

- 매뉴얼 서치: 사용자의 직감 또는 경험에 근거. 매우 비효율적.

- 그리드 서치: 가능한 모든 조합을 시도. 

- 랜덤 서치: 지정된 범위 내에서 난수를 통해 무작위 표본추출. 확률적으로 탐색. 

 

손실함수: 분석 모형의 결과 값과 실제 값의 차이.

매개변수 parameter: 학습을 통해 분석 모형 내부에서 결정되는 변수. 

 

 

모의 담금질(Simulated Annealing)  

ㅡ 인공지능 최적화 알고리즘 An Artificial Intelligence Optimization Algorithm 

ㅡ 최적화문제: 문제를 해결할 수 있는 솔루션이 여러개가 있고, 솔루션마다 스코어가 다른데, 가장 좋은 스코어를 찾으려고 하는 것 

ㅡ 지역해 대신 최적해 global maxima 를 찾기 위한 해법이 simulated annealing 

ㅡ 일정 확률로 현재 후보 해답보다 더 나쁜 답으로 움직이는 것을 허용해서 국소 최적값(Local Optimum)을 탈출할 수 있게 한다 

ㅡ Local Search 의 변형 알고리즘

 

 

 

 

매개변수 최적화 Parameter Optimization

 

1. 경사하강법 Gradient descent

~ 현재 지점에서 다음 지점으로 이동할 때, 기울기에 학습률(보폭)을 곱하여 다음 지점을 결정한다. 

1.1 배치 경사하강법 Batch Gradient Descent. 전체 데이터. 

1.2 확률적 경사하강법 Stochastic Gradient Descent. 무작위 1개. 

1.3 미니 배치 경사하강법 Mini-batch Gradient Descetn. 무작위 10~1000개. 

 

2. 옵티마이저 ~ 확률적 경사하강법을 개선.

2.1 모멘텀 Momentum ~ 매개변수 변경방향을 개선. 방향에 가속도 부여. 

2.2 Adagrad, RMSProp ~ 매개변수 변경폭을 개선.

- Adaptive Gradient: 변수마다 학습률 다르게 적용. 값이 많이 변한 매개변수는 학습률을 작게, 값이 많이 변하지 않은 매개변수는 학습률을 크게. h = 이전 기울기의 제곱 값을 누적해서 저장하는 값. 1/루트h 비율로 학습률을 조정.

단, 최적값에 도달하기 전에 학습률이 0에 가까워져서 가중치 업데이트 이루어지지않는 문제. 

- RMSProp: Adagrad의 문제 개선을 위해 도입. p를 도입하여 h에서 기울기를 더할 때 단순 누적 대신 지수가중이동평균값을 더한다. p가 작을수록 최근 기울기를 더 많이 반영하게 된다. 

2.3 Adam = 모멘텀 + RMSProp

Adaptive Moment Estimation.

매개변수의 변경 방향과 폭을 모두 적절하게 조절할 수 있음.

 

 

 

분석모형융합 = 앙상블 Ensemble

~ unstable classifier의 성능을 향상시키는 목적으로 사용

~ 과적합 방지 효과 있음. 다수모형 결합하여 분산 variance 감소.

~ 평균/다수결 취하여 편향 bias 제거.

~ 예측력 증가 but 예측 근거에 대한 설명력은 감소. 

~ 단일 모델 보다 성능 높으려면, 전제 1) 각 모델은 상호 독립적 2) 각 모델의 분류 정확도는 50% 이상이여야 함.

~ 앙상블기법의 종류 1) 보팅 Voting 2) 배깅 Bagging 3) 부스팅 Boosting 4) 스태킹 Stacking 

 

1) 보팅 Voting

직접 투표 Hard Voting. 많이 선택된 클래스로 예측.

간접 투표 Soft Voting. 각 모형의 클래스 확률 값을 평균 내어 확률이 가장 높은 클래스로 예측. 

 

2) 배깅 Bagging = Bootstrap aggregating = Bootstrap Aggregation.

배깅은 과대적합 감소 & 모형의 분산을 줄이는 데 좋음. 분산 감소에 의한 오류 감소. 과적합 줄일 수 있다. 

배깅은 기반 classifier가 unstable한 경우 성능이 좋다. 

> 회귀 모형 ~ 각 예측 값을 평균.

> 분류 모형 ~ 다수결로 종합. 

부트스트랩Bootstrap을 사용하는 방법. (데이터의 다양성) 무작위 복원 추출 (=중복 허용). 소스데이터와 크기가 같은 표본의 중복을 허용함. - 부트스트랩으로 학습 데이터를 구성할 경우 OOB(Out-of-Bag) 데이터를 검증 데이터로 사용한다. *OOB: 부트스트랩 샘플을 추출할 때 학습 데이터에 속하지 않은 데이터. 

* 페이스팅 Pasting: 중복을 허용하지 않으면서 샘플링. 

 

Bagging 방법의 특징

ㅡ 데이터의 다양성 (부트스트랩)

ㅡ 나무모형 생성의 다양성

ㅡ 여러 모형의 통합성

 

"Bagging has been demonstrated to give impressive improvements in accuracy by combining together hundreds or even thousands of trees into a single procedure."
출처 :   https://static1.squarespace.com/static/5ff2adbe3fe4fe33db902812/t/6062a083acbfe82c7195b27d/1617076404560/ISLR%2BSeventh%2BPrinting.pdf

 

 

Bagging 배깅 

ㅡ 회귀모델에도 사용가능하며 분류모델에도 가능한데, 분류모델일때 더 유용함

ㅡ 각각의 회귀 트리에 배깅을 적용함. 이때 회귀 트리들은 가지치기 하지않음. 각 개별 트리들은 높은 분산을 가지나 바이어스는 낮음. 결과값은 간단히 평균시킴. 평균내면 분산이 감소함.

ㅡ 수많은 트리를 결합하여 정확도 향상에 효과가 있음

 

 

 

랜덤 포레스트 ~ 의사결정나무 기반. 배깅의 후속버전. 

[배깅과의 차이점] 배깅은 전체 중에 가장 중요도 높은 것을 뿌리 노드로 선택 → 복원추출해도 루트 노드가 비슷하여 다양성이 낮음. RF는 다양성 최대화 위해 p개 만큼 변수 임의 추출 후 그중에서 가장 좋은것을 뿌리노드로 선택. 

[랜덤포레스트 단점] Best는 아님. (배깅은 Best를 찾는다.) 트리 사이즈가 배깅보다 커진다. (뿌리노드 설명력 낮을 수 있기 때문. 즉, 중요인자가 남아있을 확률 높아서.) 

 

 

3) 부스팅 Boosting

부트스트랩 사용 안함.

편향 감소에 의한 오류 감소. 불균형 데이터 분석 시 배깅보다 더 적합하다. 

높은 정확도 but 과적합 위험 높고, 이상치에 취약하다. 

약한 분석 모형 Weak learner 여러 개 연결해서 강한 분석 모형 Strong Learner 만드는 방법. 

순차적 학습하면서 가중치 재조정. (배깅은 병렬처리하기 좋음. 부스팅은 순차적 학습이다보니 배깅보다 병렬처리 어려움.) 

가중치 조정 알고리즘: Adaboost, Gradient Boosting, XGboost, Light GBM

* Adaboost 알고리즘: 오분류 관찰치에 가중치를 올리는 방법. 

* GBM. Gradient Boosting Machine 알고리즘: 직전 단계의 오차를 학습하는 방법. 사용자가 Loss function에 대한 정의를 해줘야 한다. Loss Function은 미분이 가능해야 한다. Adaboost보다 좋음. 확률값을 추정. 함수별 최적 가중치 계산. 경사하강법 사용. 그리디 알고리즘. 과적합 위험. 학습시간 길다. 트리 분할 시 Level-wise 방식. 

* XGboost 알고리즘: Gradient Boosting + 병렬학습 + 가지치기 → 속도향상. GBM 보다 더 다양해서 더 좋음. 트리 분할 시 Level-wise 방식. 

* Light GBM 알고리즘: 트리 분할 시 Leaf-wise 방식. 트리 기반. 최대 손실을 갖는 리프 노드를 지속 분할하여 깊고 비대칭적인 트리를 생성함. 

 

 

4) 스태킹 Stacking

각 분석 모형의 예측값을 독립변수로 하는 최종 예측 모형(=블렌더Blender =메타학습기 Meta Learner)을 학습시킨다. 

 

 

랜덤 포레스트의 변수 중요도 계산 ~ 정확도에 기여할수록 (=노드 순수도 증가 = 노드 불순도 개선) 중요도 값 크다.  

회귀 문제인 경우 %IncMSE, IncNodePurity 

분류 문제인 경우 MeanDecreaseAccuracy, MeanDecreaseGini

 

부분 의존도 plot. PDP. Partial Dependence Plot. 

- 2개 변수에 대해 그릴 수 있음.

- 개별 관측치에 대한 설명을 하기에는 부족함. 이럴 땐 Shap 모델을 활용. *SHapley Additive exPlanations. 예측 결과 값 각각을 설명하는 방법. 지역적인 모형 해석 방법. 

- 한 변수가 분석 모형의 종속 변수에 어떤 영향을 미치는지 파악 가능.

- 회귀, 분류 모두 가능. 

- 변수 중요도 plot 에서 특정 변수를 뽑아서 그리는 사례. 

- 확인하고자 하는 변수 외의 나머지는 단순 평균을 취하고, 선택된 변수는 고정하고, 결과 값의 평균을 구한 후, 이 작업을 선택한 변수의 전체 범위에 대해 반복하여 결과값을 구한다. 

 


의사결정나무

장점: 대용량 데이터에서도 빠르다. 상호작용 효과의 해석에 좋다. 두 개 이상 변수의 영향 정도를 쉽게 파악할 수 있다. 

단점: 각 변수의 고유한 영향력 해석이어렵다. 

 

의사결정나무의 가지치기 분리 알고리즘들: CHAID, CART, C4.5 

 

의사결정나무 분석을 활용한 예 (지도학습) 

- 고객 신용도에 따라 일반 고객과 불량 고객으로 분류

- 회원들의 반응이 가장 좋은 이메일 마케팅 모델을 구현 

- 반품 및 환불 요청 발생에 큰 영향을 미치는 요인 탐색

- 음원 스트리밍 이용 고객이 향후 3개월 이내에 서비스를 해지할 확률 

vs. 안되는 사례

- 잠재적 고객 데이터 분석하여 집단으로 구분 (비지도학습) 

 

 

(비지도학습) 연관 분석 사례

- 고객 과거 구매 패턴 분석하여 새로운 상품 추천 

- 유사 상품 구매 고객 데이터로 마케팅 쿠폰 발행 

 

연관성 분석

- 지지도: 전체 거래 중 항목 A와 B를 동시에 포함하는 거래의 비율

- 신뢰도: A 상품을 샀을 때 상품을 살 조건부 확률에 대한 척도 

- 향상도: A 를 구매하지 않았을 때 품목 B를 구매할 확률 대비, A를 구매했을 때 품목 B를 구매할 확률의 증가 비율 

 

연관성 분석의 특징 

- 목적 변수가 없어 분석 방향과 목적이 없어도 적용할 수 있다.

- 조건 반응으로 표현되어 결과를 해석하기 쉽다.

- 너무 세분된 품목은 의미 없는 결과를 도출할 수 있다. 

- 빈발하게 발견되는 규칙만을 고려하기 위해 Apriori 알고리즘 활용.

- 자료 분석을 위한 초기 탐색적 단계에 적절한 기법.

- 한 개의 변수가 여러 개의 값을 갖는 데이터에 유용.

- 적절한 품목 선택을 위하여 지지도를 기준으로 가지치기 해야함.

 

인공신경망

 

인공신경망은 지도학습, 비지도학습에 모두 활용 가능한 모델.

- 장점: 스스로 가중치 학습. 비선형 문제 해결 가능. 노이즈에 민감하지 않음.

- 단점: 학습 시간 오래 걸림. 추정한 가중치의 신뢰도가 낮음. 결과 해석이 어려움. 은닉층의 수와 은닉 노드의 수를 결정하기가 어려움. 

 

활성함수: 인공신경망은 노드에 입력된 값을 비선형 함수에 통과시켜 다음 노드로 전달하는데, 이 비선형 함수를 활성 함수라고 한다. 활성 함수는 입력된 값을 적절하게 변환하며, 변환 출력된 값을 다음 노드에서 활성화할지를 결정. 이 과정을 통해 데이터의 비선형성을 표현 가능. 

 

인공지능 활성화 함수

- Sigmoid 시그모이드 = 로지스틱함수. 곡선의 형태로 0과 1 사이의 값을 출력. 기울기 소실 문제 있음. S자 모양과 비슷. 

- ReLU 렐루 함수 : 0보다 작으면 0 출력. 0보다 크면 입력값 그대로(y=x) 출력. __/ 모양이다. 시그모이드의 기울기 소실 문제 해결 가능. 

- tanh: 출력값으로 -1과 1 사이의 값을 출력. 시그모이드의 확장 형태. 시그모이드가 음수 영역까지 내려감.

- Softmax: 

 

*신경망분석은 지도학습이다.

 

지도 학습 
서포트 벡터 머신 (support vector machine)
은닉 마르코프 모델 (Hidden Markov model)
회귀 분석 (Regression)
인공신경망 (Neural network)
나이브 베이즈 분류 (Naive Bayes Classification)

의사결정나무.

랜덤포레스트. 

 

비지도학습

k-평균 군집.

자기 조직화 지도 SOM. Self-Organizing Maps.

자율학습 인공신경망.

 

 

자기 조직화 지도 SOM. Self-Organizing Maps.

: 인공신경망. 비지도 신경망. 군집화. 지도형태로 형상화. 고차원 데이터 → 저차원 뉴런으로 정렬. 입력층과 경쟁층.

[경쟁층] 2차원 격자. 유클리드 거리 사용. 가장 거리가 짧은 뉴런이 승자 독점 방식. 

 

 

 

딥러닝분석

- 인공신경망 기반 머신러닝 알고리즘

- 딥러닝의 주요 하이퍼파라미터: learning rate (파라미터의 업데이트 정도를 조절), epoch (모든 학습용 데이터가 한번씩 forward pass와 backward pass를 진행), iteration (한 번의 forward pass와 backward pass 진행), mini-batch size (1 iteraction에 학습할 학습용 데이터의 샘플 수)

- 딥러닝 알고리즘: CNN, RNN, LSTM, GAN

 

1. CNN Convolution neural network 합성곱신경망

- 이미지 처리 특화. AlexNet, VGGNet, GoogLeNet, ResNet, DenseNet 등. 

- 합성곱: 이미지 데이터로부터 특징을 추출하는 과정. 

- 패딩: 특성 맵의 사이즈 조정. 

- 풀링 Pooling: 합성곱 과정을 거친 데이터를 요약. 

Max Pooling 맥스 풀링: 최댓값을 대표값으로 산출.

Average Pooling 평균 풀링: 평균값을 대표값으로 산출. 

 

2. RNN Recurrent Neural Network 순환신경망

- 시계열 데이터 등 순차적인 데이터 학습에 특화된 알고리즘. 과거의 학습을 현재 학습에 반영하는 구조. 

- 매 시점 데이터를 처리할 때 동일한 파라메터를 공유함. 현 시점의 정보는 현 시점의 입력값과 이전 시점의 정보로 구성됨. 

- 입력과 출력의 길이가 유연하여 다양한 모형 설계 가능. 

- 단점: 경사 소멸 Gradient vanishing. (시간을 많이 거슬러 올라갈수록 역전파 시 경사 소실로 학습 능력이 크게 저하된다.) 장기의존성 Long-term Dependency (갈수록 먼 시점의 정보가 점점 희미해짐)

 

3. LSTM Long Short Term Memory 장단기 메모리. 

- RNN의 단점을 보완. 순환구조에서 불필요한 정보를 삭제하거나 정보 중요도에 따라 가중치를 조절.

 

4. GAN Generative Adversarial Network 생성적 적대 신경망.

- 생성자 Generator (진짜 같은 가짜를 만들도록 학습하는 생성자) 와 구분자 Discriminator (진짜를 판별하도록 학습하는 구분자) 가 대립하여 서로의 성능을 개선하며 학습하는 알고리즘. 

 


k-평균 군집

- 개체와 개체들이 속하는 군집의 중심 간 거리가 가장 작은 군집 방법.

- 초기값으로 k개의 군집을 지정.

- k값 선택 시 주로 엘보Elbow 방식 사용. 

 

k-평균 군집: 하드 군집, 유클리드 거리, 대용량에 적합.

혼합 분포 군집: 소프트 군집, 통계적 방법(EM), 대용량에 부적합.

 

혼합 분포 군집

- 데이터가 k개의 모수적 모형의 가중 합으로 표현되는 모집단 모형으로부터 나왔다는 가정 하에 모수의 가중치를 추정. 

- 최대 가능도 추정을 위해 EM 알고리즘 이용. 

[EM 알고리즘] 관측되지 않은 잠재변수에 의존하는 확률모델에서 최대가능도나 최대 사후 확률을 갖는 모수의 측정값을 찾는 반복적인 알고리즘.

- E 단계: 잠재변수 Z의 기대치를 계산하고 M 단계에서 기대치를 활용하여 파라미터를 추정. 

- 이상치에 민감함. 

 


 

과대적합

- 학습 오류 작고, 검증 오류 크다. 

- 분석 모형의 편향 Bias는 낮고, 분산 Variance는 높은상태. 

 

 

 

과적합 해결 방법 5가지 

- Early Stopping: 중단지점 설정. 검증용 데이터로 중단지점 결정. 

- Weight Decay: 제약조건 (예) L2 

- Data augmentation: 훈련용 데이터 증가. 

- Dropout

- Batch normalization 

 

 

 

 


빅데이터분석기사 필기 PART 4

 

오차 Error. 실제값과 예측값의 차이

잔차 Residual. 

 

회귀모형 성능평가지표

평균절대오차 MAE. Mean Absolute Error. 오차에 절댓값을 취해 평균한 값. 

평균제곱오차 MSE. Mean Squared Error. 오차를 제곱하여 평균한 값. 

평균제곱근오차 RMSE. Root Mean Squared Error. MSE에 제곱근을 씌운 값. 

평균절대백분율오차 MAPE. Mean Absolute Percentage Error. MAE를 퍼센트로 변환한 값. 

 

이상치가 있는 데이터에서는 MAE가 MSE보다 유리하다. 

MAPE는 실제 값이 0에 가까워지면 값이 극단적으로 커진다. MAPE는 실제 값이 0일 경우 구할 수 없다. (MAPE 계산식 상 분모에 실제값이 들어가있음.)

 

 

 

ROC 곡선. Receiver Operating Characteristic curve.

y축 = 참 긍정률 TPR 

x축 = 거짓 긍정률 FPR

 

 

 

 

교차 검증 

1. k-fold 교차 검증 k-fold cross validation

k개의 fold로 나누어 k-1개는 학습에 1개는 검증에 사용. k번 반복 후 평가지표값을 평균내어 성능지표로 사용. 

 

2. 홀드아웃  교차 검증 Holdout cross validation 

p개의 관측치만 검증 데이터로 사용하고 나머지는 학습 데이터로 사용. 

데이터를 무작위로 7:3 또는 8:2로 학습:검증으로 나누는 교차검증방법.

전체 데이터에서 데이터셋 하나를 랜덤 비복원 추출하여 학습 데이터로 사용. 나머지는 검증 데이터로 사용. 

데이터가 많을 때 유용한 방법이다.

 

3. 리브-p-아웃 교차 검증 LpOCV. Leave-p-Out Cross Validation 

p개의 관측치는 검증용 나머지는 학습 데이터로 사용. 

검증 데이터를 구성하는 경우의 수는 nCp이다. 

p=1인 경우, LOOCV. Leave-One-Out Cross Validation.

 


 

 

[분석 모형의 구축 절차] 요건 정의 - 모델링 - 검증 및 테스트 - 적용

[모델링 절차] 데이터 마트 구축 - EDA - 모델링 - 모델 성능 평가 

 

 

 

시각화 분류

1. 데이터 시각화: 마인드맵. 뉴스표현. 통계 그래픽. 의사결정트리. raw data 취급 함.

2. 정보 시각화: 분기도. 수지도. 히트맵. 트리맵. 

3. 정보 디자인: 데이터 시각화. 정보 시각화. 인포그래픽. raw data 취급 안함. 정보형 메시지, 설득형 메시지. 

 

시각화 프로세스 3단계 

1. 정보 구조화 ~ 데이터 멍잉 Data Munging. 원 데이터를 정리 및 변환하여 패턴을 식별하거나 특정 정보를 추출하는 과정. 

2. 정보 시각화 ~ 시간 시각화, 공간 시각화, 관계 시각화, 비교 시각화 

3. 정보 시각표현 ~ 인포그래픽 .

 

 

시각화 종류

- 시간, 공간, 관계, 비교

 

 

1. 시간 시각화: 막대 그래프, 산점도, 선 그래프, 계단식 그래프, 영역 차트, 도트맵.  

2. 공간 시각화: 등치 지역도, 도트 플롯 맵, 버블 플롯 맵, 등치선도, 카토그램 

3. 관계 시각화: 산점도 Scatter plot, 산점도 행렬 Scatter plot matrix, 버블 차트 Bubble chart, 히스토그램 Histogram. 

4. 비교 시각화: 히트맵, 스타차트, 체르노프 페이스, 평행좌표 그래프. 

 

 

1. 시간 시각화

1.1 이산형 데이터: 막대 그래프 Bar Chart, 산점도 Scatter chart

1.2 연속형 데이터: 선 그래프 Line chart, 계단식 그래프 Step chart , 영역 차트 Area chart 

 

 

2. 공간 시각화

2.1 등치지역도 = 코로플레스 지도 Choropleth Map (지리적 단위 기준. 데이터의 의미를 색상으로 구분.)

2.2 도트 플롯 맵 Dot plot map (위도, 경도 값. 좌표 위에 점.)

2.3 버블 플롯 맵 Bubble plot map (위도, 경도 값. 수치 데이터. 데이터 값의 크기에 따라 점의 크기를 다르게.) 

2.4 등치선도 Isarithmic map. (지역별 강수량. 지역별 개화시기 등. 같은 지리적 위치끼리 선으로 이어서.)

2.5 변량비례도 = 카토그램. Cartogram. (데이터 값에 따라 지도 상의 지역의 크기를 다르게 나타냄.) 

 

 

4. 비교 시각화

4.1 히트맵 Heat Map. 각 칸의 색상을 이용해 값의 크기를 나타냄. 일반적으로 진할수록 값이 크다. 

4.2 스타차트 Star Chart. (= 레이더 차트, 방사형 차트) 수치형 변수 여러개에 대해 각각을 축으로 두고 중앙으로부터의 거리로 값을 나타냄. 

4.3 체르노프 페이스 Chernoff faces. 각 변수 값을 얼굴 부분에 대응하여 표현. 

4.4 평행좌표 그래프. Parallel coordinates plot. 변수 별 세로축 위에 데이터 1개당 선 1개로 표현. 

 

 

 

 

[분석결과활용]

1. 분석 모형 전개 Deployment. (운영 시스템에 맞게. )

2. 분석 결과 활용 시나리오 개발. (인사이트 발굴 및 확장. 의사결정 방법 선택. 차트/시각화도구 선택)

3. 분석 모형 모니터링. (주기, 성능 측정 항목, 분석 모형 재학습)

4. 분석 모형 리모델링. (기존 분석모형 분석, 데이터 수집 및 전처리, 분석 모형 구축, 최종 분석 모형 선정 및 반영.) 

 

반응형

댓글