[ML] 코드로 이해하는 Ensemble Voting

Oni·2023년 10월 7일
0

ML

목록 보기
3/5

voting은 Ensemble 기법 중 하나이다.
특별한 알고리즘을 칭하는 기법이 아니라 기존 모델알고리즘을 어떻게 mix할 것인지에 대한 기법을 의미한다.

유방암데이터 실습 코드를 통해 정확히 이해해보자


import pandas as pd

from sklearn.ensemble import VotingClassifier
from sklearn.linear_model import LogisticRegression
from sklearn.neighbors import KNeighborsClassifier
from sklearn.datasets import load_breast_cancer
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score

cancer = load_breast_cancer()

data_df = pd.DataFrame(cancer.data, columns=cancer.feature_names)

# 데이터셋분리 
X_train, X_test, y_train, y_test = train_test_split(cancer.data, cancer.target, test_size=0.2)

# 개별 모델
lr_clf = LogisticRegression()
knn_clf = KNeighborsClassifier(n_neighbors=8)

# 개별 모델을 소프트 보팅 기반의 앙상블 모델로 구현한 분류기 
vo_soft_clf = VotingClassifier(estimators=[('LR', lr_clf), ('KNN', knn_clf)], voting='soft')

vo_soft_clf.fit(X_train, y_train)
pred = vo_soft_clf.predict(X_test)

# 개별 모델을 하드 보팅 기반의 앙상블 모델로 구현한 분류기 
vo_hard_clf = VotingClassifier(estimators=[('LR', lr_clf), ('KNN', knn_clf)], voting='hard')
vo_hard_clf.fit(X_train, y_train)
pred = vo_hard_clf.predict(X_test)


Reference

profile
데이터 분석/엔지니어링/ML에 관한 기록

0개의 댓글