交互決定木

交代決定木(ADTree)は、分類のための機械学習手法です。これは決定木を一般化し、ブースティングと関連があります

ADTreeは、述語条件を指定する決定ノードと、単一の数値を含む予測ノードの交互配置で構成されます。インスタンスは、すべての決定ノードが真となるすべてのパスを辿り、通過した予測ノードを合計することでADTreeによって分類されます。

歴史

ADTreeはYoav FreundとLlew Masonによって導入されました。 [1] しかし、提示されたアルゴリズムにはいくつかの誤植がありました。その後、Bernhard Pfahringer、Geoffrey Holmes、Richard Kirkbyによって明確化と最適化が行われました。[2]実装はWekaとJBoost で利用可能です

モチベーション

従来のブースティングアルゴリズムでは、通常、決定木 または決定木のいずれかを弱仮説として使用していました。例えば、ブースティング決定木では、重み付けされた決定木のセット(ここではブースティング反復回数)が作成され、それらの重みに基づいて最終的な分類が投票されます。個々の決定木は、データを分類する能力に応じて重み付けされます。

単純な学習器をブースティングすると、構造化されていない仮説集合が生成され、属性間の相関関係を推測することが困難になります。交代型決定木は、以前の反復で生成された仮説に基づいて仮説集合を構築することを必須とすることで、仮説集合に構造を導入します。結果として得られる仮説集合は、仮説とその「親」の関係に基づいてツリー構造で視覚化できます。

ブースティングアルゴリズムのもう一つの重要な特徴は、反復ごとにデータに異なる分布が与えられることです。誤分類されたインスタンスには大きな重みが与えられ、正しく分類されたインスタンスには小さな重みが与えられます。

交互決定木構造

交代決定木は、決定ノードと予測ノードで構成されます。 決定ノードは述語条件を指定します。 予測ノードには単一の数値が含まれます。ADTreeは常にルートとリーフの両方に予測ノードを持ちます。ADTreeは、すべての決定ノードが真となるすべてのパスを辿り、通過した予測ノードを合計することでインスタンスを分類します。これは、インスタンスがツリー内の1つのパスのみを辿る CART(分類回帰木)やC4.5などの2分分類木とは異なります。

以下のツリーは、スパムベースデータセット[3](UCI機械学習リポジトリから入手可能)に基づいてJBoostを使用して構築された。[4] この例では、スパムは次のようにコード化されている。1通常の電子メールは次のようにコード化されます−1

Spambase データセットの 6 回の反復の ADTree。
Spambase データセットの 6 回の反復の ADTree。

次の表には、単一インスタンスの情報の一部が含まれています。

分類対象となるインスタンス
特徴価値
文字頻度バン0.08
単語頻度0.4
最長資本ランレングス4
文字頻度ドル0
単語頻度削除0.9
単語頻度ジョージ0
その他の機能...

インスタンスは、通過するすべての予測ノードの合計スコアによってスコア付けされます。上記のインスタンスの場合、スコアは次のように計算されます。

上記のインスタンスのスコア
反復0123456
インスタンス値該当なし.08 < .052 = f.4 < .195 = f0 < .01 = t0 < 0.005 = t該当なし.9 < .225 = f
予測-0.0930.74-1.446-0.380.17601.66

最終スコアは0.657は正の値であるため、このインスタンスはスパムに分類されます。値の大きさは予測の信頼度を表します。原著者は、ADTreeによって識別される属性セットについて、3つの解釈レベルを挙げています。

  • 個々のノードの予測能力を評価できます。
  • 同じパス上のノードのセットは共同効果を持つと解釈される可能性がある
  • ツリーは全体として解釈できます。

スコアは各反復におけるデータの再重み付けを反映するため、個々のノードを解釈する際には注意が必要です。

アルゴリズムの説明

交互決定木アルゴリズムへの入力は次のとおりです。

  • 入力のセット。は属性のベクトルであり、-1または 1 のいずれかです。入力はインスタンスとも呼ばれます。
  • 各インスタンスに対応する重みのセット。

ADTreeアルゴリズムの基本要素はルールです。1つのルールは、前提条件、条件、そして2つのスコアで構成されます。条件は「属性 <比較> 値」という形式の述語です。前提条件は、単に条件の論理積です。ルールの評価は、ネストされたif文のペアによって行われます。

1 if(前提条件)2 if (条件)3 スコア1を返す4 そうでない場合5 score_twoを返す6 終了 if
7 else
8 0を返す9 終了の場合

アルゴリズムではいくつかの補助関数も必要です。

  • 述語を満たすすべての肯定ラベル付き例の重みの合計を返します。
  • 述語を満たすすべての否定ラベル付き例の重みの合計を返します。
  • 述語を満たすすべての例の重みの合計を返します

アルゴリズムは次のとおりです。

1 関数ad_tree2 入力m個のトレーニングインスタンスのセット34 w i =すべての i について1 / m
5 6 R 0 =スコアa0 、前提条件「真」、条件「真」を持つルール7 8 すべての可能な条件の集合9 に対して10 を最小化する値を取得する11 12 13 14 R j =前提条件p、条件c、重みa 1a 2を持つ新しいルール15 16 に対して 終了17 R jの集合を返す  

セットは各反復で 2 つの前提条件ずつ増加し、連続する各ルールで使用される前提条件を記録することで、ルール セットのツリー構造を導出できます。

実証的結果

原著論文[1]の図6は、ADTreeがブースト決定木やブースト決定スタンプと同程度の堅牢性を示すことを示しています。通常、再帰分割アルゴリズムよりもはるかに単純なツリー構造で同等の精度を達成できます。

参考文献

  1. ^ ab Freund, Y.; Mason, L. (1999). 「交代決定木学習アルゴリズム」(PDF) . 第16回国際機械学習会議 (ICML '99). Morgan Kaufmann. pp.  124– 133. ISBN 978-1-55860-612-8
  2. ^ Pfahringer, Bernhard; Holmes, Geoffrey; Kirkby, Richard (2001). 「交代決定木の誘導の最適化」(PDF) .知識発見とデータマイニングの進歩. PAKDD 2001.コンピュータサイエンス講義ノート. 第2035巻. Springer. pp.  477– 487. doi :10.1007/3-540-45357-1_50. ISBN 978-3-540-45357-4
  3. ^ 「Spambaseデータセット」UCI機械学習リポジトリ. 1999年。
  4. ^ Dua, D.; Graff, C. (2019). 「UCI機械学習リポジトリ」. カリフォルニア大学アーバイン校 情報・コンピュータサイエンス学部.
  • Boosting と ADTrees の紹介 (実際の交互決定木のグラフィカルな例が多数あります)。
  • ADTree を実装する JBoost ソフトウェア。
「https://en.wikipedia.org/w/index.php?title=Alternating_decision_tree&oldid=1327283246」より取得