분석 프로세스 본문
** 분석 프로세스는 어떻게 되어야 할까
** 서비스로 부터 도출한 과제 정의
** 데이터 수집
> 정의한 과제에 따라서 어떤 데이터가 필요한가?
- 데이터 유형 정의
- 소스 데이터 수집 ( 있을 경우 sql 추출, 없다면 직접 수집 )
- 데이터 처리 및 가공 ( 분석할 수 있는 포맷으로 만들어 주어야 한다 , 더미처리 등 )
- 분석 데이터 가공 ( )
데이터 수집 <--> 분석 설계 ( 원하는 결과가 나올때 까지 loop )
** 데이터 분석 설계
- 분석 계획 수립
- 데이터 탐색 ( EDA ) : 데이터 수집 , 처리 및 가공에서도 데이터 특성을 알아내 처리 방법을 위해서 꼭 확인 (중앙값, 범위, 트렌드 등 )
- 데이터 특성(feature) 발굴 ( ex: 마케팅에 영향을 많이 받는 종속변수가 있다면 그 조건(변수)이나 확률 ), 요즘은 랜덤 포레스트 같이 알고리즘으로도 feature importance를 알아낼 수 있다. 지니계수//
** 분석 모델 개발
- 변수 및 모델 선정 : 요즘은 변수 1,000개 이상으로도 하지만 중요한 변수의 개수만 추린다. 복잡도가 올라가면 좋지도 못하고 설명하기도 어렵다. 또, 변수가 너무 많으면 변수들간 상관관계도 높아지며 과적합과 시간복잡도의 문제도 생긴다.
- 모델링
- 모델 테스트 및 검증 : 분할 데이터 셋 ( 트레인 : 벨리데이션 ) -> 평가 셋에서도 트레인 셋 만큼의 성능이 나와야 함
또 관심의 대상이 테스트와 평가셋 모두 적절하게 분배되어야 한다. 의도적으로 이 부분에 대한 샘플링 필요.
- 모델 선정 및 최적화
** 분석 모델 적용
- 코드 튜닝 : ( 필수는 아니지만 )자동화와 속도 개선 , 설명서 처럼 주석처리와 가독성있게 만들어야 한다
- 모델 스코어링
- 모델링 결과 정리 : 산출된 결과가 유의하다 아니다를 보고서 형태처럼 정리해야 한다.
( 데이터 정의서, 추출쿼리 , 분석 수행 계획서, EDA 및 결과서 , 모델링 코드 및 결과표, 모델링 결과서, 종료 보고서 )
** 이후는 비즈니스 영역
'BF 2024 > 분석 프로세스' 카테고리의 다른 글
DeepLearning Flow (0) | 2022.05.25 |
---|---|
머신러닝 프로세스 (0) | 2022.02.18 |