왜 scikit-learn을 사용하지?
- 파이썬에서 정형데이터로 머신러닝을 구현하는 것은 대부분 scikit-learn으로 함
- 사용하기 쉽고 가장 파이썬스러운 API
- 오랜 기간 실전 환경에서 검증됐으며, 매우 많은 환경에서 사용되는 성숙한 라이브러리
- 주로 NumPy와 Scipy 기반 위에서 구축된 라이브러리
scikit-learn 간단 정리
학습: fit()
예측: predict()
scikit-learn 모델
- 분류(Classifier) 구현 클래스
-DecisionTreeClassifier
-RandomForestClassifier
-GredientBoostingClassifier
-GaussianNB
-SVC- 회귀(Regressor) 구현 클래스
-LinearRegression
-Ridge
-Lasso
-RandomForestRegressor
-GradientBoostingRegressor
우리는 다음 글에서 분류 구현 클래스 중 하나인 DecisionTreeClassifier를 사용할 예정
지금부터 scikit-learn 라이브러리를 이용해서 유명한 iris(붓꽃) 데이터 분류 예측을 진행한다.
꽃잎의 길이와 너비, 꽃받침의 길이와 너비 feature를 기반으로 꽃의 품종을 예측
품종: [setosa, versicolor, virginica]
- Feature
X를 생각하면 됨, 데이터 세트의 일반 속성- Label (Class, Target)
Y를 생각하면 됨, 데이터 세트의 정답 데이터
그러니까 iris 데이터에서는
- 지도학습
Label(정답)이 있는 것
train 데이터의 Label 데이터로 모델을 학습한 뒤, 미지의 Label을 예측한다!- 비지도학습
Label(정답)이 없는 것
그러니까 iris 데이터 분류 예측은 지도학습이면서 분류(Classification)이다.