14章決定木とフォレスト

レシピ14.0 はじめに

 決定木を基盤としたさまざまな学習アルゴリズムは、ノンパラメトリックな*1教師あり機械学習手法として、クラス分類と回帰の双方で広く使われている。これらのアルゴリズムの基盤となる決定木は、一連の決定ルール(「もし性別が男性なら..」のような)を連続的に行うものだ。決定木は、最初の決定ルールが一番上に来て、それに続く決定ルールが下に広がるような、上下が逆になった木のように構成される。決定ノードには決定ルールが付随していて、そのルールによって新たなノードへの分岐を行う。一番下にある決定ルールを持たないノードをリーフ(leaf)と呼ぶ。

*1 訳注:ノンパラメトリックとは、観測値が特定の分布に従うという仮定を置かず、順序のみを用いることを意味する。

 決定木を基盤としたモデルが広く使われている理由の1つは、解釈が容易だからだ。実際、決定木はそのすべてを文字通り1枚の図に書き示すことができる(レシピ14.3 決定木モデルの可視化参照)。この基本的な決定木から、ランダムフォレストやスタッキングなどのさまざまな拡張が派生している。本章では、決定木を基本としたさまざまなアルゴリズムの訓練、取り扱い、適用、可視化、評価について説明する。

レシピ14.1 決定木を用いたクラス分類器の訓練

問題

 決定木を用いたクラス分類器を訓練したい。

解決策

 scikit-learnのDecisionTreeClassifierを用いる。

# ライブラリをロード from sklearn.tree import DecisionTreeClassifier from sklearn import datasets # データをロード iris ...

Get Python機械学習クックブック now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.