sklern:決定木でアイリスデータを分類してみる

decision_tree decision_tree.ipynb

決定木を使ってアイリスデータを分類してみます。

Contents

基本手順

基本手順はsklearnや他の機械学習モジュールであるtensor flowなども全く一緒です。

  1. データの読み込み
  2. 訓練用データと検証用データに分割
  3. 機械学習モデルの定義とハイパーパラメータの設定
  4. 訓練
  5. 予測
  6. 性能評価

必要なモジュール

インストールしておきましょう。

$ pip install pydotplus

graphvizもインストールしておきましょう。

graphviz もインストールしておきます。別ページにしておきますので、予めやっておく必要があります。当ページの最後の方にも同じ内容を記載しておきます。

スクリプト

データの読み込み~訓練 までです。

予測して、性能を評価します。

では、決定木を可視化してみましょう。

graph.write_png(‘tree.png’) で決定木のグラフはホームディレクトリに出力されていますので、眺めてみましょう。

 

graphvizのインストール

さて、これでうまく行かない人もいるのでしょうか。

上記スクリプトの中にも注意書きを書いていたのですが、graphvizを予めインストールしておく必要があります。

しかし、pip install graphvizしても

&pip install graphviz だけでは graph.write_png(‘tree.png’) の部分が実行されません。

どうやらdot.exe にパスを通しなさいと警告がでるのですが、そもそもpip install された 先がわかりませんでした。作戦変更です。

graphviz 公式サイトからのインストール

graphvizの公式webサイト

https://graphviz.gitlab.io/_pages/Download/Download_windows.html

からgraphvizのインストール graphviz-2.38.zip をダウンロードして展開するとreleaseというフォルダが作成されます。

C:\\Program Files (x86)\\ の下に 新規でgraphviz-2.38フォルダを作成して、そのさらに下にreleaseフォルダを移動します。

結果、dot.exeが

C:\\Program Files (x86)\\graphviz-2.38\\release\\bin\\dot.exe

の位置になります。(インストーラーがなさそうなので、フォルダ移動だけです。)

システム環境変数の追加

ではパスを通しましょう。

windowsボタンをおして検索に「システム環境変数」と入れます。システムのプロパティが開くので、環境変数ボタンを押して、システム環境変数のpathを編集します。

新規ボタンを押して、さっきのdot.exeのパスである

C:\\Program Files (x86)\\graphviz-2.38\\release\\bin\\dot.exe

をコピペします。

 

これでgraphvizが使えるようになったと思います。

補足:graphviz  のpipインストール ではだめです

なにやら graphviz-0.12 というバージョンがおかしなことになっているものが入ってきました・・・。

ということで、前述した公式サイトからダウンロードしてファイルを移動してパスを通して・・・という方法が良いのです。以上