自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

決策樹分類預(yù)測過程可視化

大數(shù)據(jù) 數(shù)據(jù)可視化
首先導(dǎo)入所需庫文件,numpy,pandas用于數(shù)值處理,DictVectorizer用于特征處理,graphviz用于模型可視化。 導(dǎo)入所需的數(shù)據(jù)文件,用于訓(xùn)練和評估模型表現(xiàn)。

[[203082]]

開始前的準(zhǔn)備工作

首先導(dǎo)入所需庫文件,numpy,pandas用于數(shù)值處理,DictVectorizer用于特征處理,graphviz用于模型可視化。 

  1. #導(dǎo)入所需庫文件 
  2.  
  3. import numpy as np 
  4.  
  5. import pandas as pd 
  6.  
  7. from sklearn.feature_extraction import DictVectorizer 
  8.  
  9. from sklearn import cross_validation 
  10.  
  11. from sklearn import tree 
  12.  
  13. import graphviz  

導(dǎo)入所需的數(shù)據(jù)文件,用于訓(xùn)練和評估模型表現(xiàn)。

  1. #導(dǎo)入數(shù)據(jù)表 
  2.  
  3. test=pd.DataFrame(pd.read_csv('TEST_ML_v2.csv',header=0,encoding='GBK'))  

特征處理

第二步,對特征進(jìn)行處理。

  1. #特征處理 
  2.  
  3. X_df=test[['City''Item category''Period''Gender''Age''Market channels''Self-agent''Category''Loan channels']] 
  4.  
  5. X_list=X_df.to_dict(orient="records"
  6.  
  7. vec = DictVectorizer() 
  8.  
  9. X=vec.fit_transform(X_list) 
  10.  
  11. Y=np.array(test['Status'])劃分訓(xùn)練集和測試集數(shù)據(jù)。  

劃分訓(xùn)練集和測試集數(shù)據(jù)

  1. X_train,X_test,y_train,y_test=cross_validation.train_test_split(X.toarray(),Y,test_size=0.4,random_state=0) 

訓(xùn)練模型并進(jìn)行預(yù)測

使用訓(xùn)練集數(shù)據(jù)對決策樹模型進(jìn)行訓(xùn)練,使用測試集數(shù)據(jù)評估模型表現(xiàn)。

  1. #訓(xùn)練模型 
  2.  
  3. clf = tree.DecisionTreeClassifier(max_depth=5) 
  4.  
  5. clf=clf.fit(X_train,y_train) 
  6.  
  7. clf.score(X_test,y_test) 
  8.  
  9. 0.85444078947368418  

簡單對測試集的***組特征進(jìn)行預(yù)測,結(jié)果與實際值相符。

  1. #對測試集數(shù)據(jù)進(jìn)行預(yù)測 
  2.  
  3. clf.predict(X_test[0]),y_test[0] 
  4.  
  5. (array(['Charged Off'], dtype=object), 'Charged Off' 

查看具體的分類概率值。

  1. #查看分類概率 
  2.  
  3. clf.predict_proba(X_test[0]) 
  4.  
  5. array([[ 1., 0.]])  

決策樹分類預(yù)測可視化

第三步,對決策樹的分類預(yù)測過程進(jìn)行可視化,首先查看分類結(jié)果及特征的名稱。

  1. #獲取分類名稱 
  2.  
  3. clf.classes_ 
  4.  
  5. array(['Charged Off''Fully Paid'], dtype=object)  

對決策樹進(jìn)行可視化,feature_names為特征名稱,class_names為分類結(jié)果名稱。

  1. #決策樹可視化 
  2.  
  3. dot_data = tree.export_graphviz(clf, out_file=None, 
  4.  
  5. feature_names=vec.get_feature_names(), 
  6.  
  7. class_names=clf.classes_, 
  8.  
  9. filled=True, rounded=True
  10.  
  11. special_characters=True
  12.  
  13. graph = graphviz.Source(dot_data) 
  14.  
  15. graph 

 

 

將分類結(jié)果保存為PDF格式文檔。

  1. #導(dǎo)出PDF文檔  
  2. graph.render("test_e1")  

 

責(zé)任編輯:龐桂玉 來源: 36大數(shù)據(jù)
相關(guān)推薦

2020-11-02 13:54:41

Python可視化決策樹

2023-03-06 16:07:19

梯度提升算法機器學(xué)習(xí)

2024-09-11 08:34:28

2022-11-11 08:00:00

決策樹機器學(xué)習(xí)監(jiān)督學(xué)習(xí)

2017-11-21 13:00:20

機器學(xué)習(xí)決策樹可視化

2016-09-30 16:12:47

GBDT算法決策樹

2018-02-02 15:50:07

決策樹Apache Spar數(shù)據(jù)

2019-05-15 09:00:00

決策樹機器學(xué)習(xí)人工智能

2022-12-21 14:39:35

機器學(xué)習(xí)案發(fā)決策樹

2020-03-11 14:39:26

數(shù)據(jù)可視化地圖可視化地理信息

2012-08-06 09:04:01

決策樹建模

2017-05-10 15:41:29

機器學(xué)習(xí)算法數(shù)據(jù)

2017-07-18 16:25:31

機器學(xué)習(xí)算法決策樹

2017-12-12 12:24:39

Python決策樹

2018-07-13 15:53:26

大數(shù)據(jù)

2017-02-23 08:45:36

Python決策樹數(shù)據(jù)集

2022-01-24 09:00:00

機器學(xué)習(xí)決策樹算法

2023-08-11 17:30:54

決策樹機器學(xué)習(xí)算法

2017-10-14 13:54:26

數(shù)據(jù)可視化數(shù)據(jù)信息可視化

2022-08-26 09:15:58

Python可視化plotly
點贊
收藏

51CTO技術(shù)棧公眾號