決策樹
認識決策樹
早期的決策樹是利用條件分支結構分割資料的一種分類學習方法。
決策樹的分類依據之一:資訊增益。
基尼係數:劃分更加仔細
接下來是用決策樹對泰坦尼克號進行預測生死。
def decision():
"""
決策樹對泰坦尼克號進行預測生死
"""
#獲取資料
titan = pd.read_csv("../data/titanic.txt")
#處理資料,找出特徵值和目標值
x = titan[['pclass','age','sex']]
y = titan['survived']
#缺失值處理
x['age'].fillna(x['age'].mean(),inplace=True)
#分割資料集到訓練集和測試集
x_train,x_test,y_train,y_test = train_test_split(x,y,test_size=0.25)
#進行處理(特徵工程) 當特徵是類別裡的資訊時,應該使用one-hot編碼處理
dict = DictVectorizer(sparse=(False)) #例項化
#pd轉換字典,進行特徵抽取
x_train= dict.fit_transform(x_train.to_dict(orient="records"))
print(dict.get_feature_names())
x_test = dict.transform(x_test.to_dict(orient="records"))
#print(x_train)
#用決策樹進行預測
dec = DecisionTreeClassifier()
dec.fit(x_train,y_train)
#預測準確率
print("預測的準確率:",dec.score(x_test, y_test))
#匯出決策樹的結構
export_graphviz(dec, out_file="./tree.dot",feature_names=['age', 'pclass=1st', 'pclass=2nd', 'pclass=3rd', 'sex=female', 'sex=male'])
return None
輸出結果:
['age', 'pclass=1st', 'pclass=2nd', 'pclass=3rd', 'sex=female', 'sex=male']
預測的準確率: 0.8085106382978723
相關文章
- 決策樹模型(3)決策樹的生成與剪枝模型
- 決策樹示例
- 4. 決策樹
- Decision tree——決策樹
- 決策樹(Decision Tree)
- Python機器學習:決策樹001什麼是決策樹Python機器學習
- 分類——決策樹模型模型
- 決策樹演算法演算法
- ML《決策樹(三)CART》
- 機器學習:決策樹機器學習
- 關於決策樹的理解
- 決策樹學習總結
- 決策樹和隨機森林隨機森林
- 決策樹模型(2)特徵選擇模型特徵
- 機器學習——決策樹模型機器學習模型
- 機器學習之決策樹機器學習
- 大資料————決策樹(decision tree)大資料
- ML《決策樹(一)ID3》
- ML《決策樹(二)C4.5》
- 【Python機器學習實戰】決策樹和整合學習(二)——決策樹的實現Python機器學習
- 02決策樹-初識與構建
- 深入淺出學習決策樹(二)
- 決策樹在sklearn中的實現
- 決策樹模型(1)總體介紹模型
- 決策樹模型(4)Cart演算法模型演算法
- 決策樹演算法-實戰篇演算法
- 決策樹詳解,從熵說起熵
- 決策樹演算法-理論篇演算法
- 深入淺出學習決策樹(一)
- ML《決策樹(四)Bagging 和 Random Forest》randomREST
- 【西瓜書筆記】3. 決策樹筆記
- 01 決策樹 - 數學理論概述 - 熵熵
- 分類演算法-決策樹 Decision Tree演算法
- 機器學習筆記(四)決策樹機器學習筆記
- 機器學習Sklearn系列:(三)決策樹機器學習
- 機器學習|決策樹-sklearn實現機器學習
- 淺談樹模型與整合學習-從決策樹到GBDT模型
- Rxjs操作符決策樹-思維導圖JS