파이썬 결정나무

파이썬 결정나무

결정나무

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))

공유하기 글 요소 저작자표시

from http://9566.tistory.com/60 by ccl(A) rewrite - 2021-12-24 16:26:37