심화 프로젝트 2일차.
어제 얼떨결에 받아버린 튜터링을 통해 EDA&전처리 시도.
아직 너무 지저분해서 연휴동안 정리할 예정..
의사결정나무(Decision Tree, DT)
랜덤 포레스트 이론
랜덤 포레스트 : 의사결정 나무의 과적합과 불안정성을 해결하기 위해 나무를 여러개 만들어 숲을 만드는 것.
배깅(Bagging)의 원리
랜덤 포레스트 정리
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.preprocessing import LabelEncoder
from sklearn.tree import DecisionTreeClassifier
titanic_df = pd.read_csv('/Users/yejin/Documents/GitHub/eden_jeong/train_titanic.csv')
titanic_df.info()
X_features = ['Pclass', 'Sex', 'Age']
#Pclass : LabelEndcoder
#Sex : Label Encoder
#Age : 결측치 - 평균으로 대치
le = LabelEncoder()
titanic_df['Sex'] = le.fit_transform(titanic_df['Sex'])
le2 = LabelEncoder()
titanic_df['Pclass'] = le2.fit_transform(titanic_df['Pclass'])
age_mean = titanic_df['Age'].mean()
titanic_df['Age'] = titanic_df['Age'].fillna(age_mean)
X = titanic_df[X_features]
y = titanic_df['Survived']
model_dt = DecisionTreeClassifier(max_depth = 1)
model_dt.fit(X,y)
plt.figure(figsize = (10,5))
plot_tree(model_dt, feature_names=X_features, class_names=['Not Survived', 'Survived'], filled = True)
plt.show()
국취제 초기 상담 끝냈다.
나랏돈 받는 것은 쉽지 않구나 ;o;
내일은 강의 끝내놓고 심화 1강 다시 들어봐야겠다.
전처리, 머신러닝 기초, 심화 다 들어도 막상 직접 하려면 모르겠다.
연휴가 어딨어,,, 안그만둘거면 해 그냥,,,