30 ランダム・フォレスト

分類アルゴリズムとしてランダム・フォレストを使用する方法を学習します。

30.1 ランダム・フォレストとは

ランダム・フォレストは、ツリーのアンサンブル(フォレストとも呼ばれる)を作成する分類アルゴリズムです。

このアルゴリズムでは、多数のデシジョン・ツリー・モデルが作成され、ツリーの集合を使用して予測が行われます。個々のデシジョン・ツリーは、トレーニング・データセットからランダムなサンプルを入力値として選択することで作成されます。ツリーの各ノードでは、分岐点を計算するために予測子のランダム・サンプルのみが選択されます。これにより、フォレスト内の様々なツリーで使用されるデータが変化します。RFOR_SAMPLING_RATIOパラメータとRFOR_MTRYパラメータは、各ノードで選択されるサンプル・サイズと予測子の数を指定するために使用されます。ユーザーは、アルゴリズムを実行する前に、ODMS_RANDOM_SEEDを使用してランダム・シード値を設定できます。

30.2 ランダム・フォレストの構築

ランダム・フォレスト・モデルでは、属性評価のランキングが提供されます。このモデルは、既存のOracle Machine Learning for SQL APIを使用して作成されます。

ランダム・フォレスト・モデルは、予測子の属性評価ランキングを提供します。このモデルは、既存のAPIでパラメータを指定して構築されます。スコアリングは、既存の分類アルゴリズムと同じSQL問合せとAPIを使用して実行されます。Oracle Machine Learning for SQLは、古典的なランダム・フォレスト・アルゴリズムの変種を実装しています。この実装により、大規模なデータセットがサポートされます。アルゴリズムの実装は、次の点で異なります。

  • Oracle Machine Learning for SQLではバギングがサポートされていないため、かわりに置換なしのサンプリングを提供しています

  • ユーザーは、ツリーの深さを指定できます。ツリーは最大の深さまで作成されません。

ノート:

モデル設定と同じ意味でハイパーパラメータという用語も使用されます。

30.3 ランダム・フォレストを使用したスコアリング

ランダム・フォレストを使用したスコアリングでは、標準の分類関数が使用されます。

ランダム・フォレストを使用したスコアリングは、他の分類アルゴリズムと同じです。次の関数がサポートされています: PREDICTIONPREDICTION_PROBABILITYPREDICTION_COST PREDICTION_SETPREDICTION_DETAILS