스터디📖/ML, DL

머신러닝 처음 시작하기(인프런) - 9강 의사 결정 나무 구현

호프 2021. 8. 6. 20:36

https://www.inflearn.com/course/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D-%EC%B2%98%EC%9D%8C-%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0/dashboard

 

머신러닝 처음 시작하기 (기초 원리 + 초급 실습) - 인프런 | 강의

머신러닝을 처음 접하는 사람들을 대상으로 기초적인 머신러닝 이론을 간략하게 다룬 머신러닝 기초 강의입니다., 그것이 알고 싶다!요새 핫한 머신러닝 🤖 [사진] 🗒 강의소개 (이 강의는 강

www.inflearn.com

9강 의사 결정 나무 구현

import pandas as pd
import numpy a np
import seaborn as sns
from sklearn.datasets import load_iris
iris = load_iris()
X = iris.data
y = iris.target
df = pd.DataFrame(X, columns = ['sepal_width(cm)', 'sepal_length(cm)', 'petal_width(cm)', 'petal_length(cm)'])
df.head() #5개 행 출력'

from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.3) 
#데이터 중에서 70%는 training data고 30%가 test data

from sklearn.tree import DecisionTreeClassifier
clf = DecisionTreeClassifier()
#의사 결정 나무 생성
clf = clf.fit(X_train, y_train)
#의사 결정 나무를 훈련
y_pred = clf.predict(X_test)
#test data set을 통해 예측

from sklearn import metrics
print("Accuracy: ", metrics.accuracy_score(y_test, y_pred))
#모델의 정확도를 알 수 있음

 

#의사 결정 나무 이미지 만들기
pip install graphviz
pip install pydotplus
from sklearn.tree import export_graphviz
import pydotplus
from IPython.display import Image
dot_data = export_graphviz(clf, out_file=None, feature_names = ['sepal_width(cm)', 'sepal_length(cm)', 'petal_width(cm)', 'petal_length(cm)'], class_names=iris.target_names, filled = True, rounded = True, special_characters = True)
graph = pydotplus.graph_from_dot_data(dot_data)
Image(graph.create_png())