2017-01-14 70 views
0

我想要顯示GridSearchCV的結果(即mean scoreparams)。可視化GridSearchCV的結果[sklearn]

我已經找到了解決方案,如果你有2個參數進行調整: http://scikit-learn.org/stable/auto_examples/plot_compare_reduction.html

但我的問題是,我現在有3個參數,所以這種類型的可視化將無法工作。有人有一個想法如何可視化它?無論有多少參數,是否有一種可視化的好方法? (1,2,3,4 ...參數)

此刻,我只是打印結果是這樣的:

for mean, params in zip(grid.cv_results_['mean_test_score'], grid.cv_results_['params']): 
     print("%0.3f for %r" % (mean, params)) 

回答

0

你的結果保存到數據幀,然後用大熊貓scatter_matrix(或類似的東西matplotlib)來可視化它。

您可以將顏色或/和大小應用於您的目標函數。

下面不完全是工作的例子,但一些代碼給一個想法:

cmb['rgb'] = scale(cmb[msr_col], 1, 0.25)  
cmb['size'] = scale((cmb[msr_col] * cmb[msr_col]), 100, 1000) 
df = pd.concat([cmb.seed, cmb.bk_val_profit_brutto_prc, cmb.bk_val_profit_brutto, cmb.recall_pos_val, cmb.target_col, cmb.return_over, cmb.max_depth_], axis=1) 
ms = scatter_matrix(df, alpha=0.50, figsize=figsize_, diagonal='hist', c=cmb['rgb'], s=cmb['size']) 
+0

這是一個不錯的主意,我已經繪就:https://s29.postimg.org/v6y1gatrb/scatterplot.png 但我認爲,這真的很難閱讀。特別是因爲也有無用的信息。例如,比較兩個參數始終是一個網格(這就是GridSearchCV的本質)。任何想法來改善這一點? – ScientiaEtVeritas

+0

根據繪圖,當k_best高(1000)和最大特徵(1200)時,您可以獲得更高的準確性,但是您也必須查看最低限度。你在GridSearch中使用不同的種子?在劇情中展示他們是一個好主意,看看模型如何適應不同的分割 – klubow

相關問題