Snoopy [ML] 3. 머신러닝 파이프라인, 전체과정
머신러닝과 딥러닝/ML 개념정리

[ML] 3. 머신러닝 파이프라인, 전체과정

Sooyoon Jeong 2022. 10. 26.

멋쟁이 사자처럼 AI스쿨 오늘코드 박조은 강사님의 수업자료 및 수업내용을 바탕으로 포스팅하였습니다.


1. 머신러닝의 파이프라인

1️⃣ EDA

  - 기본 탐색: info, describe, histplot, 결측치, 이상치, 희소값 확인 등

2️⃣ Data Preprocessing(데이터 전처리)

3️⃣ Feature Engineering: 피쳐를 어떻게 유용하게 만들 것인가?, 도메인 지식을 기반으로 피쳐를 변형, 생성하는 것

  - feauture selection(target에 중요한 영향을 미치는 feature를 어떻게 선택할 것인가?)

  - feature extraction(차원축소 등을 통해 새로운 중요 피쳐를 추출)

  - feature transform & Scaling(피쳐 스케일링, 피쳐 정규분포화)

4️⃣ modeling 

5️⃣ hyperparameter tuning

6️⃣ fit

7️⃣ predict

8️⃣ evaluation

 

※ 사이킷 런 활용 머신러닝 기본적인 절차, 세부 내용을 아래 5번에서 보다 자세하게 다룰 예정

데이터 EDA 및 전처리

데이터 세트 분리

모델 학습(fit)

예측 수행(predict)

평가(evaluation)

 

2. 머신러닝의 과정(지도학습)

지도학습은 정답이 있는 경우의 학습이며 절차는 다음과 같다.

 

지도학습 과정

사진 출처: odscon-2015/machine-learning-with-scikit-learn-odscon-expanded.pdf at master · amueller/odscon-2015 (github.com)

 

머신러닝, 딥러닝에 공통으로 적용되는 프로세스이다.

다만, 딥러닝이면 인공신경망이 들어갈 뿐이다.

 

채점할 때 분류/회귀 문제이냐에 따라 채점 방식이 달라진다.

즉, 기출문제와 정답을 가지고 공부를 한다음 실전문제를 풀고 푼 값이 정답인지 채점을 하는 것

 

3. 머신러닝 과정(지도학습 中 분류)

사진 출처: odscon-2015/machine-learning-with-scikit-learn-odscon-expanded.pdf at master · amueller/odscon-2015 (github.com)

 

4. 지도학습 전체과정

1. 데이터 EDA 및 전처리

EDA를 통해 데이터의 특성을 살피고

이상치, 결측치, 인코딩, 정규화 등 전처리 진행

 

2. 데이터 셋 구분

train(학습용) 데이터와 test(시험용) 데이터

추가로 검증용 데이터 등 구축

 

3. feature_names

학습, 예측에 사용할 컬럼을 리스트 형태로 만들어 변수에 담아주기

 

4. label_name

정답 값으로 사용할 컬럼을 변수에 담아주기

 

5. X_train

학습에 사용할 데이터 셋, 기출문제

feature_names에 해당되는 컬럼만 train 데이터에서 가져오기

 

6. y_train

학습 데이터의 정답, 기출문제의 정답

label에 해당되는 컬럼을 train 데이터에서 가져오기

 

7. X_test

예측에 사용할 데이터 셋, 실전 시험문제

feature_names에 해당되는 컬럼을 test 데이터에서 가져오기

 

8. model 생성

학습, 예측에 사용할 머신러닝 알고리즘을 생성하기

 

9. model.fit(X_train, y_train)

학습(기출문제와 기출문제의 정답을 가지고 공부)

 

10. model.predict(X_test)

예측(실전 시험문제를 풀어서 정답을 찾는다.)

 

11. score

점수(10번에서 푼 문제를 채점한다.)

 

12. metric

점수를 매기는 공식

 

5. 머신러닝의 과정(비지도학습)

사진 출처: odscon-2015/machine-learning-with-scikit-learn-odscon-expanded.pdf at master · amueller/odscon-2015 (github.com)

 

6. 머신러닝의 과정(비지도학습 中 차원축소: 주성분 분석)

사진 출처: odscon-2015/machine-learning-with-scikit-learn-odscon-expanded.pdf at master · amueller/odscon-2015 (github.com)

 

비지도학습은 fit-predict를 쓰지 않으며, fit - transform을 사용한다.

7. Basic API

사이킷런에서 분류 알고리즘은 Classifier, 회귀 알고리즘은 Regressor로 지칭한다.

Estimator = Classifier + Regressor

즉, Estimator는 지도학습의 모든 알고리즘을 지칭하는 것

 

estimator.fit (x, [y])

 

estimator.predict: Classification, Regression, Clustering

estimator.transform: Preprocessing, Dimensionality reduction, Feature selection, Feature extraction

 


🔗 참고자료

오늘코드 박조은 강사님 강의자료

http://odscon-2015/machine-learning-with-scikit-learn-odscon-expanded.pdf at master · amueller/odscon-2015 (github.com)

댓글