完璧な意思決定ツリーを作成する方法

完璧な意思決定ツリーを作成する方法

[51CTO.com クイック翻訳] ご存知のとおり、決定木は実生活で多くの実用的なシナリオで利用されています。決定木は、分類や回帰を含む幅広い機械学習分野に大きな影響を与えています。さまざまな意思決定分析において、意思決定ツリーは直感的で明確な意思決定の補助的な役割を果たすことができると言えます。

決定木とは何ですか?

意思決定ツリーは、一連の関連する選択肢から得られる可能性のある結果を示す「図」です。これにより、個人または組織は、コスト、確率、および利点に基づいて、さまざまな可能なアクションを比較検討できるようになります。

名前が示すように、決定木はツリーのような決定モデルを使用します。これは、非公式の議論を促進するため、および数学的に最適な選択を予測するためのアルゴリズムを「描画」するために使用できます。

決定木は通常、単一のノードから始まります。このノードは、さまざまな結果に分岐する可能性があります。同時に、これらの結果は新しいノードの生成につながり、他のタイプの可能性へと分岐し続けます。したがって、これらは最終的にツリーのような構造を形成します。

一般的に、決定木にはチャンスノード、決定ノード、終了ノードの 3 種類のノードがあります。特定の結果の確率を表すチャンス ノードを表すために円を使用します。また、さまざまな決定を表す決定ノードを表すために四角を使用します。そして、決定パスの最終結果を表す終了ノードを使用します。

決定木の利点と欠点

利点

  • 決定木は、理解しやすいさまざまなルールを生成できます。
  • 決定木は、膨大な計算を必要とせずに分類を実行できます。
  • 決定木は連続変数とカテゴリ変数の両方を処理できます。
  • 決定木は、予測や分類にとってどのフィールドが最も重要であるかを明確に示します。

欠点

  • 決定木は、連続的な属性値を予測することを目的とする推定タスクには適していません。
  • 決定木は、複数のクラスと比較的少ないトレーニング例を含む分類問題に直面すると、エラーが発生しやすくなります。
  • トレーニング プロセス中、決定木には高い計算コストがかかります。各ノードでは、最適な分割を見つける前に、まず各候補フィールドをソートする必要があります。一部のアルゴリズムでは、フィールドの組み合わせを使用して、最適な重みの組み合わせを検索します。さらに、さまざまな候補サブツリーを形成して比較する必要があるため、プルーニング アルゴリズム (https://www.edureka.co/blog/implementation-of-decision-tree/) はコストが高くなります。

決定木の作成

天文学者のグループが新しい惑星を発見し、彼らの興味の対象が「それは次の地球である可能性があるか?」というシナリオを考えてみましょう。

明らかに、惑星に水が存在するかどうか、気温はどれくらいか、地表が持続的な嵐に見舞われやすいかどうか、植物や動物がこの特定の気候で生き残ることができるかどうかなど、情報に基づいた判断を下す前にさらに研究する価値のある決定要因が数多くあります。

次に、それが人間の次の「生息地」であるかどうかを判断するための決定木を作成しましょう。

まず、居住可能な温度を摂氏0度から100度の間に設定します。

第二に、水はありますか?

では、動植物は繁栄しているのでしょうか?

形成後、惑星の表面に嵐は発生しますか?

この時点で、完全な決定木が得られました。

分類ルール

分類ルールは、すべての可能性を考慮した後、各ソリューションにクラス変数を割り当てることです。

クラス変数

各リーフノードにクラス変数を割り当てます。クラス変数は、判断の最終的な出力に直接影響します。

上記で作成した決定木から次の分類ルールを導出してみましょう。

1. 温度が273〜373K(ケルビン、熱力学の単位)の範囲外の場合、生存は困難であると考えられます。

2. 温度が 273 ~ 373 K で水が存在しない場合は、生存は困難であると考えられます。

3. 温度が 273 ~ 373 K の場合、水は存在するが植物や動物が存在しないため、生存は困難であると考えられます。

4. 温度が 273 ~ 373 K で、水が存在し、動植物が存在し、地表に嵐がない場合、生存は可能とみなされます。

5. 温度が 273 ~ 373K で、水があり、植物や動物がいるが、地表に嵐がある場合は、生存は困難であると考えられます。

決定木

この例の決定木は次の部分で構成されています。

  • ルート ノード: 上記の例では、温度係数がルートと見なされます。
  • 内部ノード: 1 つの入力エッジと 2 つ以上の出力エッジを持つノード。
  • リーフ ノード: 出力エッジがなくなったターミナル ノード。

上記の 3 つの部分に従って、ルート ノードから開始し、テスト条件を 1 つずつ確認し、判断結果 (または制御) を出力エッジの 1 つに割り当てて、次の条件付きテスト ラウンドで別のノードの入力エッジとして使用できるようにします。すべてのテスト条件を通過してリーフ ノードに到達すると、決定木が完成します。リーフ ノードには、決定 (判断) が承認されるかどうかを示すさまざまなクラス ラベルが含まれています。

おそらく疑問に思うでしょう。なぜ「温度」属性をルートとして使用して決定木を構築するのでしょうか。他の属性を選択した場合、何が変わるのでしょうか。確かに、異なる属性機能によって、さまざまなツリーが作成されます。何らかのアルゴリズムに従って最適な決定木を選択する必要があります。次に、貪欲アプローチと呼ばれる決定木作成アルゴリズムについて説明します。

貪欲の法則

Wikipedia によると、貪欲ルールはヒューリスティックな問題解決の概念に基づいており、各ノードで最適なローカル選択を行います。次に、これらのローカルな最適な選択を通じて、グローバルな近似最適解が見つかります。

アルゴリズムには以下が含まれます。

1. 各ステージ(ノード)で、テスト条件として最適な機能を選択します。

2. 次に、ノードを可能な出力(内部ノード)に分割します。

3. リーフノード内のすべてのテスト条件が走査されるまで、上記の手順を繰り返します。

前の質問に戻りましょう。初期テスト条件をどのように選択するか? ここでは、エントロピーと情報ゲインという 2 つの概念が関係しています。

エントロピー:決定木では、エントロピーは均質性を表します。データが完全に均一な場合、エントロピーは 0 になります。そうでない場合、つまりデータが分割されている場合 (例: 50:50)、エントロピーは 1 になります。

情報ゲイン:情報ゲインは、ノードが分割されたときのエントロピーの増加または減少を表します。

私たちの目標は、分割のために選択された属性機能が最高の情報ゲインを持つようにすることです。したがって、計算されたエントロピーと情報ゲインの値に基づいて、特定のステップで最適な属性を選択する必要があります。

次のデータセットを見てみましょう。

上図のさまざまな次元の属性機能セットに基づいて、さまざまな種類の決定木を導き出すことができます。ここに 2 つの作成実験があります。

ツリー作成テスト1:

ここでは、属性特徴「学生」を初期テスト条件として使用し、その決定木を下図に示します。

ツリー作成テスト2:

同様に、次の図に示すように、テスト条件として「収入」を選択できます。

貪欲ルールを使用して最適な決定木を作成する

ここでは、2 つのクラスが関係しています。「はい」は、その人がコンピュータを購入することを意味し、「いいえ」は、購入しないことを意味します。エントロピーと情報ゲインを計算するために、2 つのクラスの確率値をそれぞれ見てみましょう。

»肯定的: 「buys_computer=yes」の確率は次のとおりです。

»否定的: 「buys_computer=no」の確率は次のとおりです:

D のエントロピー: 上記の式に確率値を入力してエントロピーを求めます。

準備段階では、エントロピー値を次のように事前分類しました。

エントロピー = 0: データは完全に均質(純粋)

エントロピー = 1: データは 50% 対 50% に分割されます (不純)

計算したエントロピー値は 0.940 なので、不純です。

情報ゲインを計算するための適切な属性を見つけるために、さらに詳しく見てみましょう。

データを「年齢」に基づいて分割すると、年齢に応じて人々がコンピュータ製品を購入するかどうかを区別することができます。

たとえば、30 歳以下の人の場合、2 人がコンピューターを購入し (はい)、3 人が購入しません (いいえ)。次に、3 つの年齢グループの人々 (年齢属性の特徴値を分割) の最初の列 (コンピュータを購入するかどうか) の Info(D) を計算します。

情報ゲインは、合計情報 (0.940) と年齢に基づいて計算された情報 (0.694) の差であることがわかります。

したがって、これは、属性「年齢」を使用して分割する場合に使用する係数です。同様に、次のような他の属性機能ディメンションの「情報ゲイン」も計算できます。

情報ゲイン(年齢) = 0.246

情報ゲイン(収入) = 0.029

情報ゲイン(学生) = 0.151

情報ゲイン(信用格付け) = 0.048

上記の値を総合的に比較すると、「年齢」の「情報ゲイン」が最も高いことがわかり、「年齢」を分割する方がよい決定です。

作成すべき *** 決定木は以下のようになることがわかります。

上の図からわかるように、次のロジックに従って決定木の分類ルールを「描画」する必要があります。

年齢が 30 歳未満で学生でない人は、製品を購入しません。

年齢 (<30) ^ 学生 (なし) = いいえ

年齢が 30 歳未満で学生であれば、その商品を購入するでしょう。

年齢 (<30) ^ 学生(はい) = はい

年齢が 31 歳から 40 歳の場合、その製品を購入する可能性が最も高くなります。

年齢 (31…40) = はい

40 歳以上で信用格付けが非常に高い人は、その製品を購入しません。

年齢 (>40) ^ 信用格付け (優秀) = いいえ

40 歳以上で信用格付けが良好な人であれば、その製品を購入する可能性が高いでしょう。

年齢 (>40) ^ 信用格付け (妥当) = はい

これは、上記の例に基づいて実装した *** 決定木です。

完璧な決定木を作成する方法

[51CTOによる翻訳。パートナーサイトに転載する場合は、元の翻訳者と出典を51CTO.comとして明記してください]

<<:  有名人の「ペイント肌」顔変更技術を悪用したいたずら合成AI動画の調査

>>:  ビール会社がIoTとAIを活用する方法

ブログ    

推薦する

...

人工知能の 10 大トレンドのうち、予想もしなかったものはどれですか?

[[237644]] 人工知能(AI)は、国家や企業が支配権を争う新たな技術の最前線です。マッキン...

TensorFlow と PyTorch: ディープラーニングに最適なフレームワークはどれですか?

この記事を読んでいるということは、おそらくすでにディープラーニングの旅を始めているということでしょう...

Siriは中国で禁止されるのでしょうか?国内AI企業がアップルを特許侵害で訴え、高等法院は中国の特許を有効と認定

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

Googleの視覚言語モデルPaLI-3がリリースされました。パラメータはわずか50億で、より小さく、より高速で、より強力です。

大規模モデルの時代では、視覚言語モデル (VLM) のパラメータは数百億、さらには数千億にまで拡大し...

...

GoogleとOpenAIがマシンビジョンアルゴリズムをより良く研究するための新しいツールを開発

AIの世界はどのようなものになるのでしょうか?研究者たちは何十年もの間、これに困惑してきましたが、近...

...

...

...

開発者の「第2の脳」が登場、GitHub Copilotがアップデートされ、人間の開発参加がさらに減少

Andrej Karpathy 氏が嘆くのは、ソフトウェア開発プロセスにおいてコードを直接記述するこ...

...

AIロボットが大規模に導入されると、私たちはより良くなるのでしょうか?

人工知能の波が大きな変化を引き起こすには、4年という時間は十分あります。 2016年に北京の大学の講...

人工知能に関するあまり知られていない3つの事実!古代中国にロボットは存在したのでしょうか?

時代の発展とテクノロジーの進歩に伴い、人工知能の分野も革新を繰り返しています。しかし、この神秘的な業...