더북(TheBook)

문제에 랜덤 포레스트 알고리즘 적용하기

랜덤 포레스트 모델의 인스턴스를 생성하고 훈련 데이터로 모델을 학습합니다.

이때 두 가지 중요한 하이퍼 파라미터가 있습니다.

n_estimators

max_depth

n_estimators 하이퍼 파라미터는 개별 결정 트리를 몇 개나 생성할지 정하고, max_depth 하이퍼 파라미터는 개별 결정 트리의 최대 깊이를 정합니다.

제한이 없는 결정 트리는 훈련 데이터셋에 있는 모든 사례를 정확히 분류할 때까지 분할을 반복합니다. 이때 max_depth를 설정함으로써 분할 횟수를 제한할 수 있습니다. 이 하이퍼 파라미터는 모델의 복잡도를 조절하여 모델이 훈련 데이터에 적합한지 결정합니다. n_estimators는 랜덤 포레스트 모델의 너비를, max_depth는 모델의 깊이를 결정합니다.

▼ myrandomforest.ipynb

[in :]

from sklearn.ensemble import RandomForestClassifier
classifier = RandomForestClassifier(n_estimators = 10, max_depth = 4,criterion = 'entropy', random_state = 0)
classifier.fit(X_train, y_train)

[out:]

RandomForestClassifier(bootstrap=True, class_weight=None, criterion='entropy',
                       max_depth=4, max_features='auto', max_leaf_nodes=None,
                       min_impurity_decrease=0.0, min_impurity_split=None,
                       min_samples_leaf=1, min_samples_split=2,
                       min_weight_fraction_leaf=0.0, n_estimators=10,
                       n_jobs=None, oob_score=False, random_state=0, verbose=0,
                       warm_start=False)
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.