AI 공부 저장소
[파이썬 머신러닝 완벽가이드] Chap02-2. 사이킷런 기반 프레임워크 익히기 본문
[파이썬 머신러닝 완벽가이드] Chap02-2. 사이킷런 기반 프레임워크 익히기
aiclaudev 2022. 1. 6. 18:00
- 본 글은 파이썬 머신러닝 완벽 가이드 (권철민 지음)을 공부하며 내용을 추가한 정리글입니다. 개인 공부를 위해 만들었으며, 만약 문제가 발생할 시 글을 비공개로 전환함을 알립니다.
[1] Estimator란?
분류(Classification)과 회귀(Regression)은 지도학습의 대표적인 둘인데요, 분류를 구현한 클래스를 Classifier, 회귀를 구현한 클래스를 Regressor라고 칭한답니다. 그리고 이 둘을 묶어서 Estimator라고 부릅니다. (Estimator를 그대로 번역하자면 '예측해주는 것' 정도가 되겠죠?)
이 Estimator는 학습할 땐 fit( ), 그리고 데이터의 특성을 기반으로 예측할 땐 predict( )를 사용합니다.
사이킷런에서 비지도학습인 차원 축소, 클러스터링, 피처 추출(Feature Extracion) 구현할 클래스 역시 대부분 fit( )과 transform( )을 적용합니다. 이 때 fit( )은 지도학습에서의 '학습'을 의미하는 것이 아닙니다. 입력 데이터의 형태에 맞춰 데이터를 변환하기 위한 사전 구조를 맞추는 작업입니다. fit( )으로 변환을 위한 사전 구조를 맞추면 이후 입력 데이터의 차원 변환, 클럿터링, 피처 추출 둥의 실제 작업은 transform( )으로 수행합니다.
[2] 사이킷런의 주요 모듈
1) 예제 데이터
ㆍsklearn.datasets
사이킷런에 내장되어 예제로 제공하는 데이터 세트
2) 피처 처리
ㆍ sklearn.preprocessing
데이터 전처리에 필요한 다양한 가공 기능 제공(문자열을 숫자형 코드 값으로 인코딩, 정규화, 스케일링 등)
ㆍ sklearn.feature_selection
알고리즘에 큰 영향을 미치는 피처(특성)을 우선순위대로 셀렉션 작업을 수행하는 다양한 기능 제공
ㆍ sklearn.feature_extraction
텍스트 데이터나 이미지 데이터의 벡터화된 피처를 추출하는 데 사용됨. 예를 들어 텍스트 데이터에서 Count Vectorizer나 Tf-ldf Vectorizer등을 생성하는 기능 제공. 텍스트 데이터의 피처 추출은 sklearn.feature_extraction.text 모듈에, 이미지 데이터의 피처 추출은 sklearn.feature_extraction.image 모듈에 지원 API가 있음.
3) 피처 처리 & 차원 축소
ㆍ sklearn.decomposition
차원 축소와 관련한 알고리즘을 지원하는 모듈임. PCA, NMF, Truncated SVD 등을 통해 차원 축소 기능을 수행할 수있음
4) 데이터 분리, 검증 & 파라미터 튜닝
ㆍ sklearn.model_selection
교차 검증을 위한 학습용/테스트용 분리, 그리드 서치(Grid Search)로 최적 파라미터 추출 등의 API 제공
5) 평가
ㆍ sklearn.metrics
분류, 회귀, 클러스터링, 페어와이즈(Pairwise)에 대한 다양한 성능 측정 방법 제공 Accuracy, Precision, Recall, ROC-AUC, RMSE 등 제공
6) ML 알고리즘
ㆍ sklearn.ensemble
앙상블 알고리즘 제공 / 랜덤 포레스트, 에이다 부스트, 그래디언트 부스팅 등을 제공
ㆍ sklearn.linear_model
주로 선형 회귀, 릿지(Ridge), 라쏘(Lasso) 및 로지스틱 회귀 등 회귀 관련 알고리즘을 지원. 또한 SGD(Stochastic Gradient Descent) 관련 알고리즘도 제공
ㆍ sklearn.naive_bayes
나이브 베이즈 알고리즘 제공. 가우시안 NB, 다항 분포 NB 등.
ㆍ sklearn.neighbors
최근접 이웃 알고리즘 제공. K-NN 등
ㆍ sklearn.svm
서포트 벡터 머신 알고리즘 제공
ㆍ sklearn.tree
의사 결정 트리 알고리즘 제공
ㆍ sklearn.cluster
비지도 클러스터링 알고리즘 제공 (K-평균, 계층형, DBSCAN 등)
7) 유틸리티
ㆍ sklearn.pipeline
피처 처리 등의 변환과 ML 알고리즘 학습, 예측 등을 함께 묶어서 실행할 수 있는 유틸리티 제공
- 본 글은 파이썬 머신러닝 완벽 가이드 (권철민 지음)을 공부하며 내용을 추가한 정리글입니다. 개인 공부를 위해 만들었으며, 만약 문제가 발생할 시 글을 비공개로 전환함을 알립니다.
'Artificial Intelligence > [파이썬 머신러닝 완벽가이드]' 카테고리의 다른 글
[파이썬 머신러닝 완벽가이드] Chap02-4. 데이터 전처리 (0) | 2022.01.09 |
---|---|
[파이썬 머신러닝 완벽가이드] Chap02-3. Model Selection 모듈 소개 (0) | 2022.01.06 |
[파이썬 머신러닝 완벽가이드] Chap02-1. 사이킷런 - 붓꽃 품종 예측하기 (0) | 2022.01.02 |
[파이썬 머신러닝 완벽가이드] Chap01-2. pandas 라이브러리 3 (0) | 2022.01.02 |
[파이썬 머신러닝 완벽가이드] Chap01-2. pandas 라이브러리 2 (0) | 2021.12.31 |