LoginSignup
39
35

More than 1 year has passed since last update.

PyCaret が可視化を強化!! 〜Ver.2.3.6以降〜 [Google Colabで実行]

Last updated at Posted at 2022-04-24

image.png

更新

  • ×:exp_name = setup(data = Boston, target = 'medv') ←誤りがありました。
     ○:exp_name = setup(data = data, target = 'medv') 
  • AutoViz は、動作が不安定(起動初回は描画、2回目は描画しない時がある等)な場合は、セッション再起動するといけます。

はじめに

PythonのAutoML(自動機械学習)といえば PyCaret

PyCaretは、機械学習の一連の処理、可視化がほぼ自動で実行できるPythonのライブラリ。

このPyCaretが、

を統合したようです。

統合で実現された内容は、PyCaret のyoutubeチャンネルにアップされた動画をみるとよくわかります。

ということで、早速やってみることにしました。

実行条件など

  • Google colabで実行
  • ボストン住宅価格のデータセットで実行
    ※ 以前にAutoVizを適用した以下の記事でも「ボストン住宅価格のデータセット」を使っていますので比較できると思います。

強化されたPyCaretの可視化を試してみよう

まずはAutoEDAの「AutoViz」から実行します。

AutoViz

AutoViz」は、わずかなコード記述でAutoEDA(自動データ探索)できるライブラリです。
動画を見るまでは、「ふーん、統合したんだ」というだけでスルーしようと思っていたのですが、公式動画を見るとAutoVizが私が以前使った時よりも単独でインタラクティブなものになっています。(※AutoVizのVer.up)

ライブラリインストール&インポート

!pip install pycaret
pip install autoviz

私の環境では、PyCaretインストール後にランタイムの再起動が求められました。

#実行
from pycaret.datasets import get_data
data = get_data('boston')
from pycaret.regression import *
exp_name = setup(data = data,  target = 'medv')
eda(display_format = 'bokeh')

このコードは、ほぼPyCaret ページのExample の通りです。
実行すると、読み込んだデータのデータ型を表示してくれます。
データ型を変更する必要がなければ⏎をクリックします。

image.png
image.png
image.png
image.png
image.png
とてもインタラクティブです。これはなかなかいいですね。

また、以下のように display_format = 'html' とすると、各グラフがhtml形式で出力されます。

eda(display_format = 'html')

↓ このように出力されます。
image.png

次に「ExplainerDashboard」を実行してみます。

ExplainerDashboard

ExplainerDashboard は、xgboost, catboost, lightgbm などの機械学習モデルを分析するための対話型ダッシュボードを高速に構築するライブラリです。

ライブラリインストール&インポート

!pip install explainerdashboard

このダッシュボードは、機械学習モデルを分析するための対話型ダッシュボードなので、まずPyCaretでモデルを比較し、比較結果がもっともよかったモデルを構築したいと思います。

#モデル比較
best = compare_models()
#モデル構築
model = create_model(best) 
#Dashboard生成
dashboard(model, display_format='inline')

たったこれだけのコードで、ExplainerDashboardが起動しました。
以下は、Feature Importancesの表示のキャプチャです。
[Importances Type:][Depth:]のドロップダウンを切替えると表示が変わります。
Importances Typeは、Permutation Importances が選択できます。これはいい!
また、右上の[Download]ボタンを押すと、タブ単位でhtml形式で保存することができます。
image.png

さらに、Decision Treeは dtreeviz で描かれます!
image.png

以下のように display_format ='external' とすると 実行後にセルに示されるURLをクリックするとDashboardはURL表示されます。

dashboard(tuned_model, display_format='external')

最後に

PyCaretは、まだまだ進歩し続けているんだなということを実感しました。私はPyCaretがブレンド、スタッキング、時系列データに対応していることも数日前まで知りませんでした。今回 記事に取り上げた可視化の強化を知ったのも偶然・・・たまにはアップデートをチェックしたいと思います。

参考サイト

39
35
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
39
35