머신러닝의 처리 과정
학습 단계와 추론 단계
- 머신 러닝은 크게 학습 단계와 추론(예측) 단계로 이루어져 있다.
- 학습 단계 : 개발 과정 단계에 해당. 주어진 데이터에 대한 분석을 통해 입력 데이터와 추론 데이터를 매핑하는 결정함수를 찾는 과정.
- 추론 단계 : 실제 현실의 문제해결에 머신러닝 시스템을 적용하는 단계. 새롭게 주어지는 실제 데이터에 학습한 결정 함수를 적용하여 결과를 얻는 과정.
데이터 준비
- 머신러닝은 데이터 주도의 학습이기 때문에, 충분히 많은 양의 학습 데이터를 구축하는 것이 매우 중요하다.
- 또한 학습 데이터는 파악된 문제를 해결하는 데 이용하기에 적절한 형태 (데이터의 내용, 데이터의 타입 등) 여야 한다.
- 추론 방법(분류, 회귀, 군집)에 어울리는 데이터셋을 준비해야 한다.
전처리
- 전처리 : 입력 데이터의 중복과 불필요한 데이터를 제거하고, 분석에 용이한 형태로 데이터를 가공하는 것
- 전처리 과정은 해결하려는 문제의 주제, 구축된 학습 데이터의 형태 등에 따라 달라진다.
- 즉, 주어진 데이터에 대해 최적화된 전처리가 필요하다.
특징 추출
- 데이터의 특성을 분석해 추후 분석 작업에 용이한 형태로 데이터를 표현하고, 가장 핵심이 되는 정보만을 특징으로 선별한다.
- 특징 추출로 필요한 데이터만 뽑음으로써 계산량과 메모리를 절약할 수 있고, 불필요한 데이터 제거를 통한 모델 성능 향상도 가능하다.
머신러닝 시스템 개발 과정
문제 파악
데이터 수집 및 이해
- 시스템 개발과 평가를 위해 필요한 학습 및 테스트 데이터를 수집한다.
- 학습데이터 : 모델의 학습 (결정함수 도출)에 필요한 데이터
- 테스트데이터 : 모델의 성능을 평가하기 위해 필요한 데이터
- 데이터를 파악하기 위한 기초적인 이해와 분석을 수행
전처리 및 특징 추출
- 앞서 진행한 데이터 이해를 바탕으로 데이터에 대한 전처리와 특징 추출 진행
모델 수립 및 분석
- 문제 파악을 통해 식별한 목표에 적합한 머신러닝 모델을 적용하고 분석
모델 평가
- 분석 목적에 맞는 평가 기준을 선정
- 학습에 사용되지 않은 테스트 데이터로 모델의 성능을 평가 (예측값 - 실제값 비교)
- 평가 결과에 따른 보완, 프로젝트 종료를 진행
Referebce
머신러닝 (이관용, 박혜영 공저)