AI & BigData
python sklearn을 통한 모델 생성과 예측 메소드(fit, predict)
brad.min
2021. 9. 4. 12:01
반응형
Decision Tree 를 통한 붓꽃 분류
import sklearn
import pandas as pd
from sklearn.datasets import load_iris #데이터셋
from sklearn.tree import DecisionTreeClassifier #ML분류알고리즘
from sklearn.model_selection import train_test_split #학습, 테스트 데이터 분류
iris = load_iris()
iris_data = iris.data
iris_label = iris.target
#dataframe으로 변환
iris_df = pd.DataFrame(data=iris_data, columns=iris.feature_names)
#라벨 칼럼추가
iris_df['label'] = iris.target
iris_df.head(3)
#객체 생성
dt_clf = DecisionTreeClassifier(random_state=11)
dt_clf 객체를 생성하였고 fit과 predict 메소드를 사용해보자.
ML 모델 학습을 위한 fit 메소드
#모델 학습 수행(fit메소드)
dt_clf.fit(X_train, y_train)
모델을 사용하여 X_test데이터의 결과를 예측하기 위한 predict 메소드
#predict메소드를 사용하여 테스트 데이터로 예측 수행
pred = dt_clf.predict(X_test)
다른 모델에서도 이와 같은 fit과 predict 메소를 사용하여 모델을 만들고 예측을 수행할 수 있다.
# Classifier 생성
dt_clf = DecisionTreeClassifier(random_state=11)
rf_clf = RandomForestClassifier(random_state=11)
lr_clf = LogisticRegression()
#dt 학습 예측 평가
dt_clf.fit(X_train, y_train)
dt_pred = dt_clf.predict(X_test)
print('dt 정확도: {0:.4f}'.format(accuracy_score(y_test, dt_pred)))
#rf 학습 예측 평가
rf_clf.fit(X_train, y_train)
rf_pred = rf_clf.predict(X_test)
print('rf 정확도: {0:.4f}'.format(accuracy_score(y_test, rf_pred)))
#lr 학습 예측 평가
lr_clf.fit(X_train, y_train)
lr_pred = lr_clf.predict(X_test)
print('lr 정확도: {0:.4f}'.format(accuracy_score(y_test, lr_pred)))
반응형