強烈安利這款功能強悍的機器學習可視化工具

  • 2019 年 10 月 4 日
  • 筆記

Yellowbrick是由一套被稱為"Visualizers"組成的可視化診斷工具組成的套餐,其由Scikit-Learn API延伸而來,對模型選擇過程其指導作用。總之,Yellowbrick結合了Scikit-Learn和Matplotlib並且最好得傳承了Scikit-Learn文檔,對你的模型進行可視化! Juan L. Kehoe

Yellowbrick主要包含的組件如下:

特徵可視化

Rank Features: 對單個或者兩兩對應的特徵進行排序以檢測其相關性

Parallel Coordinates: 對實例進行水平視圖

Radial Visualization: 在一個圓形視圖中將實例分隔開

PCA Projection: 通過主成分將實例投射

Feature Importances: 基於它們在模型中的表現對特徵進行排序

Scatter and Joint Plots: 用選擇的特徵對其進行可視化

分類可視化

Class Balance: 看類的分佈怎樣影響模型

Classification Report: 用視圖的方式呈現精確率,召回率和F1值

ROC/AUC Curves: 特徵曲線和ROC曲線子下的面積

Confusion Matrices: 對分類決定進行視圖描述

回歸可視化

Prediction Error Plot: 沿着目標區域對模型進行細分

Residuals Plot: 顯示訓練數據和測試數據中殘差的差異

Alpha Selection: 顯示不同alpha值選擇對正則化的影響

聚類可視化

K-Elbow Plot: 用肘部法則或者其他指標選擇k值

Silhouette Plot: 通過對輪廓係數值進行視圖來選擇k值

文本可視化

Term Frequency: 對詞項在語料庫中的分佈頻率進行可視化

t-SNE Corpus Visualization: 用隨機鄰域嵌入來投射文檔

Yellowbrick僅能運行於python3.4以上版本,安裝十分簡單。

$ pip install yellowbrick  

使用方法也很簡單,以特徵選擇為例

from sklearn.linear_model import Lasso  from yellowbrick.datasets import load_concrete  from yellowbrick.model_selection import FeatureImportances    # Load the regression dataset  dataset = load_concrete(return_dataset=True)  X, y = dataset.to_data()    # Title case the feature for better display and create the visualizer  labels = list(map(lambda s: s.title(), dataset.meta['features']))  viz = FeatureImportances(Lasso(), labels=labels, relative=False)    # Fit and show the feature importances  viz.fit(X, y)  viz.poof()  

感興趣的同學趕緊嘗試一下吧。

https://www.scikit-yb.org

英語不好的同學也不用擔心,已經有熱心小夥伴正在將文檔翻譯成中文

http://www.scikit-yb.org/zh/latest/