はじめに
sklearnでは様々な方法で決定木を可視化できるのですが、これまでの方法ではそのためにはgraphvizを介する必要がありました。これは面倒くさく、トラブルの原因にもなりやすいものでした。
scikit-learn 0.21以降ではmatplotlibでプロットしてくれるplot_tree関数が入ったので、その必要もなくなりました。
plot_treeの使い方を見てみる
ドキュメントはこれ。
sklearn.tree.plot_tree — scikit-learn 0.21.3 documentation
見ればわかりますが、従来のexport_graphvizをmatplotlibに移植した的な色彩が強いです。
使ってみる
ということで意気込んでやってみた結果がこれです。
微妙・・・かな? なんでわざわざ図のサイズをいじっているのかというと、デフォルトのサイズが小さいからです。あと、いろいろ細かい作業をしないと思い通りの見た目にならないし、やっても結果はgraphvizのものより劣る気がします。ずいぶん箱のサイズが違うなぁと最初思ったけど、見直したらその点はgraphvizで出力しても同じでした。
まとめ
とりあえずできます、ということで、いまいちな部分は今後の改善に期待しましょう。sklearn標準の関数でとりあえず簡易的に見る方法として一番手っ取り早いのは確かなので、気が向いたときに使うと良いと思います。