본문 바로가기

Python-머신러닝

non-linear : Decision Tree

반응형

1.a. Decision Tree

non-linear 

선보다는 범위로 나누자. 

 

 

가지치기

 



 

- 이걸 거꾸로 보면, 나무같이 생겼다 해서, Tree라고 한다. 

ㄴ영역을 쪼갠다. 

ㄴ 가장 기본적인 모델, 실제 실무에서는 이걸 개선한 디시젼 트리가, 랜덤 포레스트라고 한다. 

 

import numpy as np
import matplotlib.pyplot as plt
import pandas as pd

df = pd.read_csv('data/Social_Network_Ads.csv')
X = df.iloc[:, [2,3]]
y = df['Purchased']

from sklearn.preprocessing import StandardScaler
scaler = StandardScaler()

X= scaler.fit_transform(X)

from sklearn.model_selection import train_test_split
X_train,X_test, y_train, y_test = train_test_split(X,y,test_size = 0.25, random_state=0)

from sklearn.tree import DecisionTreeClassifier
classifier  = DecisionTreeClassifier(random_state=0)

classifier.fit(X_train,y_train)
y_pred = classifier.predict(X_test)

 

 

from sklearn.metrics import confusion_matrix,accuracy_score

confusion_matrix(y_test,y_pred)
accuracy_score(y_test,y_pred)


반응형