반응형
1. 사이키런이란?
파이썬 기반에서 머신러닝 분석을 위해 사용할 수 있는 라이브러리이다.
머신러닝을 위한 다양한 알고리즘과 개발을 위한 편리한 프레임워크, 그리고 API를 제공한다. 주로 Numpy와 Scipy 기반 위에서 구축된 라이브러리 오랜 기간 실전 환경에서 검증되었다.
2. fit()과 predict()
사이킷런은 분류(Classifiacation)와 회귀(regression)의 다양한 알고리즘을 fit()과 predict() 함수로 간단하게 학습과 예측을 할 수 있다. ML 모델 학습을 위해서 fit() 함수를 사용하고, 학습된 모델의 예측을 위해서는 predict() 함수를 사용한다.
분류 알고리즘으로는 Classifier, 회귀 알고리즘으로는 Regressor로 지칭하고 이 2개를 합쳐서 Estimator 클래스라고 부른다.
3. 사이킷런의 주요 모듈
분류 | 모듈명 | 설명 |
예제 데이터 | sklearn.datasets | 사이킷런에 내장되어 예제로 제공하는 데이터 셋 |
피처처리 | sklearn. preprocessing | 데이터 전처리에 필요한 다양한 가공 기능 제공(문자열을 숫자형 코드 값으로 인코딩, 정규화 스케일링등) |
피처처리 | sklearn. feature_selection | 알고리즘에 큰 영향을 미치는 피처를 우선순위대로 셀렉션 작업을 수행하는 다양한 기능 제공 |
피처처리 | sklearn. feature_extraction | 텍스트 데이터나 이미지 데이터의 벡터화된 피처를 추출하는데 사용됨. |
피처처리 &차원 축소 | sklearn. decomposition | 차원 축소와 관련한 알고리즘을 지원하는 모듈. PCA,NMF,Truncated SVD 등을 통해 차원 축소 기능을 수행 가능. |
데이터 분리, 검증 & 파라미터튜닝 |
sklearn. model_selection | 교차 검증을 위한 학습용/테스트용 분리. 그리드 서치로 최적 파라미터 추출 등의 API 제공 |
평가 | sklearn. metrics | 분류, 회귀, 클러스터링, 페어와이즈에 대한 다양한 성능 측정 방법 제공. Accuracy, Precision, Recall, ROC-AUC, RMSE등 제공 |
ML알고리즘 | sklearn. ensemble | 앙상블 알고리즘 제공 랜덤 포레스트, 에이다 부스트, 그래디언트 부스팅 등을 제공 |
ML알고리즘 | sklearn. linear_model | 주로 선형 회귀, 릿지, 라쏘 , 및 로지스틱 회귀 등 회귀 관련 알고리즘을 지원. 또한 SGD관련 알고리즘도 제공 |
ML알고리즘 | sklearn. naive_bayes | 나이브 베이즈 알고리즘 제공. 가우시안 NB 다항분포 NB 등 |
ML알고리즘 | sklearn. neighbors | 최근점 이웃 알고리즘 제공. K-NN등 |
ML알고리즘 | sklearn. svm | 서포트 벡터 머신 알고리즘 제공 |
ML알고리즘 | sklearn. tree | 의사 결정 트리 알고리즘 제공 |
ML알고리즘 | sklearn. cluster | 비지도 클러스터링 알고리즘 제공 유틸리티 |
ML알고리즘 | sklearn. pipeline | 피처 처리 등의 변환과 ML 알고리즘 학습, 예측 등을 함께 묶어서 실행할 수 있는 유틸리티 제공 |
4. 내장된 예제 데이터셋
사이킷런에서는 분류 및 회귀 예제로 활용하기 위한 데이터셋이 내장되어있다.
API 명 | 설 명 |
datasets. loda_boston() | 회귀 용도이며, 미국 보스턴의 집 피처들과 가격에 대한 데이터 셋 |
datasets. loda_breast_cancer() | 분류 용도이며, 위스콘신 유방암 피처들과 악성/음성 레이블 데이터 셋 |
datasets. load_diabetes() | 회귀 용도이며, 당뇨 데이터 셋 |
datasets. load_digits() | 분류 용도이며, 0 ~ 9 까지의 숫자의 이미지 픽셀 데이터 셋 |
datasets. load_iris() | 분류 용도이며, 붓꽃에 대한 피처를 가진 데이터 셋 |
반응형
'ML > 사이킷런' 카테고리의 다른 글
데이터전처리-인코딩 (0) | 2024.01.29 |
---|---|
GridSearchCV이란? (1) | 2024.01.24 |
파라미터와 하이퍼파라미터 (0) | 2024.01.23 |
K폴드 교차 검증이란? (0) | 2024.01.02 |
사이킷런을 이용한 붓꽃 데이터 분류(Classification) (1) | 2023.12.29 |