데이터 분석 공부
[ADSP 정리] (과목 2) 제 1장 - 제 2절 분석 방법론 본문
과목 2 데이터 분석 기획
제 1장 데이터 분석 기획의 이해
제 2절 분석 방법론
1. 분석 방법론 개요
- 데이터 분석을 효과적으로 기업내 정착 -> 데이터 분석 방법론 필수
- 방법론은 상세한 절차 (Procedure), 방법 (Methods), 도구와 기법 (Tools and Techniques), 템플릿과 산출물 (Templates and Outputs)로 구성 -> 어느 정도 지식만 있으면 활용 가능해야
- 방법론 생성과정
- 1) 개인의 암묵지 -> 조직의 형식지 : 형식화
- 2) 체계화, 문서화한 최적화된 형식으로 전개 -> 방법론 만들어짐
- 3) 방법론이 다시 개인에게 전파되고 활용 -> 암묵지 : 내재화
- 위 세 단계가 순환 -> 조직 내 방법론 완성
- 방법론은 적용 업무 특성에 따라 다양한 모델 적용
- 폭포수 모델 (Waterfall Model) : 순차적 진행
- 이전 단계가 완료되어야 다음 단계로 진행
- 하향적 (Top Down)
- 문제나 개선사항 발견 시 전 단계로 돌아가는 피드백 (Feedback) 과정 수행되기도
- 나선형 모델 (Spiral Model) : 반복을 통하여 점증적으로 개발
- 프로젝트 적용이 용이
- 관리 체게 잘 갖추지 못한 경우 복잡도 상승
- 그외 프로토타입 모델 (Protoptype Model) 등
- 폭포수 모델 (Waterfall Model) : 순차적 진행
- 일반적으로 방법론은 계층적 프로세스 모델 (Stepwised Process Model) 형태로 구성
- 1) 단계 (Phase) : 최상위 단계
- 프로세스 그룹 (Process Group)을 통하여 완성된 단계별 산출물 생성되어야
- 각 단계는 기준선 (Baseline)으로 설정되어 관리
- 버전관리 (Configuration Management) 등을 통해 통제
- 2) 태스크 (Task)
- 단계를 구성하는 단위 활동
- 물리적 또는 논리적 단위의 품질검토의 항목이 될 수 있음
- 각 단계는 여러 개의 태스크 (Task)로 구성
- 3) 스텝 (Step) : 마지막 계층
- WBS (Work Breakdown Structure)의 워크패키지 (Work Package)에 해당
- 입력자료 (Input), 처리 및 도구 (Process and Tool), 출력자료 (Output)으로 구성된 단위 프로세스 (Unit Process)
- 1) 단계 (Phase) : 최상위 단계
2. KDD 분석 방법론
- KDD (Knowledge Discovery in Databases)
- KDD 분석 절차
가. 데이터셋 선택 (Selection)
- 앞서 분석대상의 비즈니스 도메인에 대한 이해와 프로젝트의 목표 설정
- 데이터베이스 또는 원시 데이터에서 선택 혹은 추가적으로 생성
- 데이터 마이닝에 필요한 목표 데이터 (Target Data) 구성
나. 데이터 전처리 (Preprocessing)
- 잡음 (Noise), 이상값 (Outlier), 결측치 (Missing Value) 식별, 필요시 제거하거나 의미있는 데이터로 처리 -> 데이터셋 정제작업
- 추가 데이터셋 필요한 경우 데이터셋 선택 프로세스 반복 가능
다. 데이터 변환 (Transformation)
- 분석 목적에 맞는 변수 선택 or 데이터 차원 축소 -> 데이터 마이닝이 효율적으로 적용될 수 있도록 데이터셋 변경 프로세스
라. 데이터 마이닝 (Data Mining)
- 분석 목적에 맞는 데이터 마이닝 기법, 알고리즘 선택
- 데이터의 패턴 찾기, 데이터 분류 또는 예측 등의 마이닝 작업
- 필요에 따라 데이터 전처리, 변환 프로세스 병행 가능
마. 데이터 마이닝 결과 평가 (Interpretation/Evaluation)
- 데이터 마이닝 결과에 대한 해석, 평가, 분석 목적과의 일치성 확인
- 필요시 선택부터 마이닝까지 프로세스 반복 수행
3. CRISP - DM 분석 방법론
- CRISP - DM (Cross Industry Standard Process for Data Mining)
- 계층적 프로세스 모델 (Hierarchical Process Model), 4개 레벨로 구성
- 1) 여러 개의 단계 (Phase) : 최상위 레벨
- 2) 일반화 태스크 (Generic Tasks)
- 데이터 마이닝의 단일 프로세스를 완전하게 수행하는 단위
- 각 단계는 일반화 태스크 포함
- 3) 세분화 태스크 (Specialized Tasks)
- 일반화 태스크를 구체적으로 수행하는 레벨
- 예) 데이터 정제의 일반화 태스크는 범주형, 연속형 데이터 정제 등으로 구체화된 세분화 태스크
- 4) 프로세스 실행 (Process Instances) : 마지막 레벨
- 예) 데이터 마이닝을 위한 구체적 실행 포함\
- CRISP - DM 프로세스는 6단계로 구성
- 폭포수 모델처럼 일방향 구성 X
- 단계 간 피드백 (Feedback)을 통하여 단계별 완성도 높임
가. 업무 이해 (Business Understanding)
- 비즈니스 관점에서 프로젝트 목적과 요구사항 이해하기 위한 단계
- 도메인 지식 -> 데이터 분석을 위한 문제정의
- 초기 프로젝트 계획 수립 단계
- 업무 목적 파악 / 상황 파악 / 데이터 마이닝 목표 설정 / 프로젝트 계획 수립
나. 데이터 이해 (Data Understanding)
- 데이터 수집, 데이터 속성 이해 과정
- 데이터 품질 문제점 식별, 인사이트 발견 단계
- 초기 데이터 수집 / 데이터 기술 분석 / 데이터 탐색 / 데이터 품질 확인
다. 데이터 준비 (Data Preparation)
- 분석기법에 적합한 데이터셋 편성 단계
- 많은 시간 소요할 수도
- 분석용 데이터셋 선택 / 데이터 정제 / 분석용 데이터셋 편성 / 데이터 통합 / 데이터 포맷팅
라. 모델링 (Modeling)
- 다양한 모델링 기법, 알고리즘 -> 파라미터 최적화 단계
- 데이터셋 추가 필요 경우, 데이터 준비 단계 반복 수행 가능
- 결정한 모델은 테스트용 프로세스와 데이터셋으로 평가 -> 과적합 등 문제 발견, 대응 방안 마련
- 모델링 기법 선택 / 모델 테스트 계획 설계 / 모델 작성 / 모델 평가
마. 평가 (Evaluation)
- 모델이 프로젝트 목적에 부합하는지 평가
- 데이터 마이닝의 결과 수용 여부 최종 판단
- 분석결과 평가 / 모델링 과정 평가 / 모델 적용성 평가
바. 전개 (Deployment)
- 완성한 모델을 실 업무에 적용 위한 계획 수립
- 모니터링과 모델의 유지보수 계획 마련
- 생명주기 (Life Cycle) 다양 -> 상세한 전개 계획 필요
- CRISP - DM의 마지막 단계 -> 프로젝트 종료 관련 프로세스 수행, 완료
- 전개 계획 수립 / 모니터링과 유지보수 계획 수립 / 프로젝트 종료보고서 작성 / 프로젝트 리뷰
4. 빅데이터 분석 방법론
- 계층적 프로세스 모델 (Stepwised Process Model) - 3계층
- 1) 단계 (Phase) : 최상위 계층
- 프로세스 그룹 (Process Group)을 통해 완성된 단계별 산출물이 생성되어야
- 각 단계는 기준선 (Baseline)으로 설정, 관리
- 버전관리 (Configuration Mangement) 등 통해 통제
- 2) 태스크 (Task) : 각 단계는 여러 개의 태스크로 구성
- 단계를 구성하는 단위 활동
- 물리적 또는 논리적 단위로 품질검토의 항목이 될 수 있음
- 3) 스텝 (Step) : 마지막 계층
- WBS (Work Breakdown Structure)의 워크 패키지 (Work Package)에 해당
- 입력자료 (Input), 처리 및 도구 (Process and Tool), 출력자료 (Output)으로 구성된 단위 프로세스 (Unit Process)
- 분석 기획 (Planning) / 데이터 준비 (Preparing) / 데이터 분석 (Analyzing) 단계로 방법론 수행
- 분석 단계 수행 중 추가적인 데이터 확보 필요한 경우 데이터 준비단계로 피드백 (Feedback), 두 단계 반복 진행
- 도출된 모델을 가동 시스템에 적용하거나 시스템 개발을 위한 사전 검증으로 프로토타입 시스템 구현 경우 시스템 구현 (Developing) 단계 수행
- 1) 단계 (Phase) : 최상위 계층
가. 분석 기획 (Planning)
- 비즈니스 이해, 도메인 문제점 파악 -> 프로젝트 범위 확정
- 프로젝트 정의 및 계획 수립
- 프로젝트 위험 계획 수립 - 위험 (Risk) 요소 사전 식별, 대응방안 수립
나. 데이터 준비 (Preparing)
- 필요 데이터 정의
- 전사 차원의 데이터 스토어 (Data Store) 준비
- 데이터 수집 및 정합성 전검 - 작업 효율성 위해 필요시 ETL (Extract Transform Load) 등 도구 사용
- 품질통제와 품질보증 프로세스도 수행
다. 데이터 분석 (Analyzing)
- 분석용 데이터 준비
- 텍스트 분석 - 비정형 텍스트 데이터 존재할 경우, 텍스트 마이닝, 텍스트 분석 등
- 탐색적 분석
- 모델링 - 비정형 분석 후 정형 데이터와 통합 모델
- 모델 평가 및 검증
- 모델 적용 및 운영 방안 수립
라. 시스템 구현 (Developing)
- 단순 데이터 분석이나 분석 보고서 작성이 끝인 경우 수행 필요 없음 / 바로 평가 및 전개 단계 수행
- 설계 및 구현
- 소프트웨어 개발 생명주기인 SDLC (Software Development Life Cycle) 와 기업내 시스템 개발에 사용하는 방법론은 커스터마이징 (Customizing) 하여 적용 가능
- 시스템 테스트 및 운영
마. 평가 및 전개 (Deploying)
- 모델 발전계획 수립
- 프로젝트 평가 및 보고 - 객관적이고 정량적인 평가 -> 내부 활용 및 자산화 추진
5. 분석 계획 (Planning)
가. 비즈니스 이해 및 범위 설정
- 업무 메뉴얼 및 업무 전문가의 도움 필요
- 구조화된 명세서 작성
1) 비즈니스 이해
- 업무 도메인 이해
- 내부 업무 메뉴얼, 관련자료, 외부의 관련 비즈니스 자료 조사 -> 방향 설정
2) 프로젝트 범위 설정
- 구조화된 프로젝트 범위 정의서 SOW (Statement Of Work)
- 범위 (Scope) 명확하게 설정
- 모든 관계자들 (Project Shareholders) 이해 일치시키기
나. 프로젝트 정의 및 계획 수립
1) 데이터 분석 프로젝트 정의
- 프로젝트 목표 및 KPI 목표 수준 구체화 -> 프로젝트 정의서 작성
- 모델 운영 이미지 및 평가 기준 설정
2) 프로젝트 수행 계획 수립
- 프로젝트 목적 배경, 기대효과, 수행방법, 일정 및 추진 조직, 프로젝트 관리 방안 작성
- WBS (Work Breakdown Structure) 작성 - 프로젝트 산출물 위주로
다. 프로젝트 위험계획 수립
1) 데이터 분석 위험 식별
- 발생 가능한 위험 식별
- 위험의 영향도, 빈도, 발생가능성 등을 평가 -> 우선순위 설정
2) 위험 대응 계획 수립
- 상세한 정량적, 정성적 분석 -> 대응방안 수립
- 위험에 대한 반응 : 회피 (Avoid), 전이 (Transfer), 완화 (Mitigate), 수용 (Accept)
6. 데이터 준비 (Preparing)
가. 필요 데이터 정의
- 전사 차원에서
1) 데이터 정의
- 다양한 내, 외부 원천 데이터 소스 (Raw Data Source)로부터 필요 데이터 정의
- 데이터 정의서 작성
2) 데이터 획득방안 수립
- 내, 외부의 다양한 데이터 소스로부터 정형, 비정형, 반정형 데이터를 수집하기 위한 구체적인 방안 수립
나. 데이터 스토어 설계 - 전사 차원
1) 정형 데이터 스토어 설계
- 다양한 데이터 스토어 형태 가질 수 있음
- 일반적으로 관계형 데이터베이스 RDBMS (Relational Data Base Management System) 사용
- 논리적, 물리적 설계 구분 ->효율적인 저장과 활용 위해
2) 비정형 데이터 스토어 설계
- 하둡, NoSQL 등을 이용, 비정형 또는 반정형 데이터 저장
- 논리적, 물리적 데이터스토어 설계
다. 데이터 수집 및 정합성 점검
1) 데이터 수집 및 저장
- 크롤링, ETL, API, 스크립트 (Script) 프로그램 등을 이용하여 데이터 수집
2) 데이터 정합성 점검
- 품질 확보를 위한 정합성 검증 실시
- 데이터 거버넌스 근거 -> 메타 데이터 (Meta Data) 및 데이터 사전 (Data Dictionary) 등이 작성, 적용되고 있는지 주기적 확인
7. 데이터 분석 (Analyzing)
가. 분석용 데이터 준비
1) 비즈니스 룰 확인
- 세부적인 비즈니스 룰 파악
- 분석에 필요한 데이터의 범위 확인
2) 분석용 데이터셋 준비
- 데이터 스토어로부터 분석에 필요한 데이터 추출
- 데이터베이스나 구조화된 형태로 구성
- 필요시 분석 위한 작업 공간 (Play Ground, Sandbox 등)과 전사 차원의 데이터 스토어와 분리 가능
나. 텍스트 분석
1) 텍스트 데이터 확인 및 추출
2) 텍스트 데이터 분석
- 용어 사전 (용어 유의어 사전, 불용어 사전) 등을 사전 확보, 업무 도메인에 맞도록
다. 탐색적 분석
1) 탐색적 데이터 분석
- 다양한 관점 별로 기초 통계량 산출
- 데이터 자체의 특성 (중심성, 분포성, 산포성) 및 데이터의 통계적 특성 이해
- 모델링 위한 기초 자료로 활용
2) 데이터 시각화
- 모델링 또는 향후 시스템 구현을 위한 사용자 인터페이스 또는 프로토타입으로 활용 될 수도
라. 모델링
1) 데이터 분할
- 분석용 데이터셋 -> 모델 개발을 위한 훈련용 데이터와 모델의 검증력을 테스트 하기 위한 데이터로 분할
- 교차 검증, 앙상블 기법
2) 데이터 모델링
- 훈련용 데이터 활용, 분류, 예측, 군집 등의 모델 만들기
- 비정형 데이터 분석결과 활용 -> 통합 모델링
3) 모델 적용 및 운영 방안
- 운영시스템 적용을 위한 상세한 알고리즘 설명서 작성
- 시스템 구현 단게에서 중요한 입력자료
- 모델의 안정적 운영을 모니터링하는 방안 수립
마. 모델 평가 및 검증
1) 모델 평가
- 프로젝트 정의서의 모델 평가 기준에 따라 평가
- 품질관리 차원에서 모델 평가 프로세스 진행
- 필요시 모델 검증 위한 별도 데이터 활용 가능
2) 모델 검증
- 검증용 데이터 이용 -> 모델링 검증 보고서 작성
- 실 운영용 데이터로 모델 품질 최종 검증
8. 시스템 구현 (Developing)
가. 설계 및 구현
1) 시스템 분석 및 설계
- 알고리즘 설명서 근거 -> 응용시스템 구축 설계 프로세스 진행
- 사용중인 정보시스템 개발방법론은 커스터마이징하여 적용 가능
2) 시스템 구현
- BI 패키지 활용, 새롭게 시스템 구축, 가동중인 운영시스템의 커스터마이징 통해 구현
나. 시스템 테스트 및 운영
1) 시스템 테스트
- 단위 테스트, 통합 테스트, 시스템 테스트 등 실시
- 시스템 테스트 - 품질관리 차원에서 진행, 객관성과 안전성 확보
2) 시스템 운영 계획
- 시스템 운영자, 사용자 대상 교육
- 시스템 운영계획 수립
9. 평가 및 전개 (Deploying)
가. 모델 발전 계획 수립
1) 모델 발전 계획 : 모델의 계속성 확보
나. 프로젝트 평가 및 보고
1) 프로젝트 성과 평가 : 정량적, 정성적 성과 - 성과 평가서 작성
2) 프로젝트 종료
- 지식자산화
- 최종 보고서 작성 -> 보고, 프로젝트 종료
'기타 > ADSP' 카테고리의 다른 글
[ADSP 정리] (과목 2) 제 1장 - 제 4절 분석 프로젝트 관리 방안 (0) | 2020.01.21 |
---|---|
[ADSP 정리] (과목 2) 제 1장 - 제 3절 분석 과제 발굴 (0) | 2020.01.21 |
[ADSP 정리] (과목 2) 제 1장 - 제 1절 분석 기획의 방향성 도출 (0) | 2020.01.21 |
[ADSP 정리] (과목 1) 제 3장 가치 창조를 위한 데이터 사이언스와 전략 인사이트 (0) | 2020.01.16 |
[ADSP 정리] (과목 1) 제 2장 데이터의 가치와 미래 (0) | 2020.01.16 |