-
파이썬 결정나무<Python>/[Model] 2021. 12. 24. 16:10728x90
결정나무
from sklearn.tree import DecisionTreeClassifier
model = DecisionTreeClassifier(random_state=1, max_depth=10)결정나무 파라미터
# criterion={“gini”, “entropy”}, default=”gini”
# splitter={“best”, “random”}, default=”best”
# min_samples_split={int, float}, default=2 # 내부 노드를 분할하는 데 필요한 최소 샘플 수
# min_samples_leaf={int, float}, default=1 # 리프 노드에 있어야 하는 최소 샘플 수
# min_weight_fraction_leaf=float, default=0.0
# 리프 노드에 있어야 하는 가중치 합계(모든 입력 샘플)의 최소 가중치 비율입니다.
#min_sample_leaf와 같지만 가중치가 부여된 샘플 수에서의 비율
#sample_weight가 제공되지 않은 경우 샘플은 동일한 가중치를 갖습니다.
# max_depth=int, default=None
# max_features={int, float, “auto”, “sqrt”, “log2”}, default=None
# - 최적의 분할을 위해 고려할 최대 feature 개수
# - Default = None → 데이터 세트의 모든 피처를 사용
# max_leaf_nodes=int, default=None # 모든 리프노드의 최대 개수
# min_impurity_decrease=float, default=0.0 #최소불순도
# ccp_alphanon-negative=float, default=0.0 #값이 커지면 tree가 단순해진다. #최소 비용-복잡성 가지치기에 사용되는 복잡도 매개변수
# class_weight={dict, list of dict or “balanced”}, default=None
# random_state = {int, RandomState instance, None}, 기본값=None
model.fit(X_train, y_train['gender'])
print(model.score(new_X_train, new_y_train))
predict = model.predict_proba(X_val)
pred = predict[:, 1]
from sklearn.metrics import roc_auc_score
print(roc_auc_score(y_val, pred))728x90'<Python> > [Model]' 카테고리의 다른 글
파이썬 LinearSVC (0) 2021.12.24 파이썬 SVM (0) 2021.12.24 파이썬 랜덤포레스트 (0) 2021.12.24 파이썬 로지스틱 분류 (0) 2021.12.24 파이썬 KNN (0) 2021.12.24