条件のタイプ

このユニットでは、決定を作成するために使用されるさまざまな条件に焦点を当てています。 学習します。

軸揃えの条件と傾斜の条件

軸に揃えられた条件には、特徴が 1 つだけ含まれます。斜め 条件に複数の特徴が関係しますたとえば、次の例は 軸に揃えられた条件:

num_legs ≥ 2

一方、傾斜のある条件は以下のとおりです。

num_legs ≥ num_fingers

多くの場合、ディシジョン ツリーは軸に揃えられた条件のみでトレーニングされます。ただし、 斜め分割は、より複雑な表現を表現できるため、 パターンです。斜め分割のほうが良い結果をもたらすこともあるが、その代償 トレーニングと推論の費用が 高くなります

YDF コード
YDF では、デフォルトでディシジョン ツリーは軸に揃えられた条件でトレーニングされます。 ディシジョン 斜めツリーを有効にするには、 split_axis="SPARSE_OBLIQUE" パラメータ。

軸で揃える条件は「num_legs >= 3」です。傾斜条件は、
  「num_legs + weight * 5 >= 12」です。

<ph type="x-smartling-placeholder"></ph> 図 4:軸に揃えられた条件と傾斜条件の例。 で確認できます。

 

上の 2 つの条件をグラフ化すると、次の特徴空間が生成されます。 分離:

体重と num_legs のグラフ。軸に揃えられる条件は、
  太さが無視されるため、ただの縦線になります。斜体
  負の傾きのある線を示しています。

<ph type="x-smartling-placeholder"></ph> 図 5:図 4 の条件に対する特徴空間の分離。 で確認できます。

 

バイナリ条件とノンバイナリ条件

2 つの結果(true または false)が発生する可能性がある条件を呼び出す バイナリ条件を使用します。バイナリ条件のみを含むディシジョン ツリーは、 バイナリ ディシジョン ツリーと呼ばれます。

ノンバイナリー状態では、3 つ以上の結果が考えられます。したがって、 ノンバイナリ条件は、バイナリ条件よりも識別能力が高くなります。 1 つ以上のノンバイナリー条件を含む判定をノンバイナリー判定と呼びます。 ツリー

バイナリとノンバイナリのディシジョン ツリーの比較。二項決定
  2 つのバイナリ条件を含むツリーです。ノンバイナリー ディシジョン ツリー
  非バイナリ条件が 1 つ含まれています。

<ph type="x-smartling-placeholder"></ph> 図 6: バイナリとノンバイナリのディシジョン ツリー。

 

条件が多すぎます 過学習する可能性が高くなります。このため、デシジョン フォレストでは バイナリ ディシジョン ツリーを使用するのが一般的であるため、本コースではバイナリ ディシジョン ツリーに焦点を当てます。

最も一般的な条件タイプは、次のように表されるしきい値条件です。

featurethreshold

例:

num_legs ≥ 2

他のタイプの条件が存在します。他にもよく使用されるタイプの バイナリ条件:

 

<ph type="x-smartling-placeholder"></ph> 表 2:一般的なタイプのバイナリ条件。 で確認できます。

名前 条件
しきい値条件 $\mathrm{feature}_i \geq \mathrm{threshold}$ $\mathrm{num\_legs} \geq 2$
等式条件 $\mathrm{機能}_i = \mathrm{value}$ $\mathrm{species} = ``cat"$
セット内の条件 $\mathrm{feature}_i \in \mathrm{collection}$ $\mathrm{species} \in {``cat", ``dog", ``bird"\}$
傾斜条件 $\sum_{i} \mathrm{weight}_i \mathrm{feature}_i \geq \mathrm{threshold}$ $5 \ \mathrm{num\_legs} + 2 \ \mathrm{num\_eyes} \geq 10$
機能がありません $\mathrm{feature}_i \mathrm{is} \mathrm{不明}$ $\mathrm{num\_legs} \mathrm{is} \mathrm{Missing}$