Optimize Selection (Brute Force)
概要
この演算子は、属性選択のすべての可能な組み合わせを試行することにより、指定されたExampleSetの最も関連する属性を選択します。
詳細
選択の最適化(ブルートフォース)演算子は、ネストされた演算子です。つまり、サブプロセスがあります。このサブプロセスは常にパフォーマンスベクトルを返す必要があります。この演算子は、最高のパフォーマンスベクトルを持つ機能セットを選択します。この演算子を適用するには、サブプロセスの基本的な理解が必要です。サブプロセスの基本的な理解については、サブプロセス演算子のドキュメントをご覧ください。
機能の選択、つまり分類または回帰の問題に最も関連する機能の質問は、主要なデータマイニングタスクの1つです。進化的アルゴリズムを含む広範な検索方法がRapidMinerに統合されています。すべての検索方法について、検索ポイント(フィーチャサブセット)が特定のデータセットでどの程度実行されるかを示すパフォーマンス測定が必要です。
この機能選択演算子は、属性選択の可能なすべての組み合わせを試すことにより、最適な属性セットを選択します。最高のパフォーマンスをもたらした属性のサブセットを含むExampleSetを返します。この演算子は属性セットの累乗セットで機能するため、指数関数的なランタイムを持ちます。
分化
Optimize Selection (Evolutionary)
これも属性セット削減演算子ですが、この目的のために遺伝的アルゴリズムを使用します。
入力
- (IOObject)で 設定された例この入力ポートには、ExampleSetが必要です。このExampleSetは、サブプロセスで処理するために、ネストされたチェーンの最初のポート(サブプロセス内)で使用できます。
- スルー (IOObject)このオペレーターは複数のスルーポートを持つことができます。 1つの入力がスルーポートに接続されると、別のスルーポートが使用可能になり、別の入力(ある場合)を受け入れる準備が整います。入力の順序は同じままです。この演算子の最初のスルーポートで提供されるオブジェクトは、ネストされたチェーンの最初のスルーポート(サブプロセス内)で利用できます。すべての入力を正しい順序で接続することを忘れないでください。サブプロセスレベルで適切な数のポートが接続されていることを確認してください。
出力
- 設定例(IOObject)特徴選択アルゴリズムは、入力ExampleSetに適用されます。縮小された属性を持つ結果のExampleSetは、このポート経由で配信されます。
- 重み(平均ベクトル)属性の重みは、このポートを介して配信されます。
- パフォーマンス(パフォーマンスベクトル)このポートは、選択した属性のパフォーマンスベクトルを提供します。パフォーマンスベクトルは、パフォーマンス基準値のリストです。
パラメーター
- use_exact_number_of_attributesこのパラメーターは、正確な数の属性を含む組み合わせのみをテストするかどうかを決定します。正確な数は、attributesパラメーターの正確な数によって指定されます。 範囲:ブール
- exact_number_of_attributesこのパラメーターは、属性の正確な数の使用パラメーターがtrueに設定されている場合にのみ使用できます。この数の属性を含む組み合わせのみが生成およびテストされます。 範囲:整数
- restrict_maximum trueに設定すると、組み合わせが生成およびテストされる属性の最大数を制限できます。それ以外の場合、すべての属性のすべての組み合わせが生成され、テストされます。このパラメーターは、属性の正確な数の使用パラメーターがtrueに設定されている場合にのみ使用できます。 範囲:ブール
- min_number_of_attributesこのパラメーターは、生成およびテストされる組み合わせに使用される機能の最小数を決定します。 範囲:整数
- max_number_of_attributesこのパラメーターは、生成およびテストされる組み合わせに使用される機能の最大数を決定します。このパラメーターは、 制限の最大パラメーターがtrueに設定されている場合にのみ使用できます。 範囲:整数
- normalize_weightsこのパラメーターは、最終的な重みを正規化する必要があるかどうかを示します。 trueに設定すると、最大の重みが1、最小の重みが0になるように最終的な重みが正規化されます。 範囲:ブール値
- use_local_random_seedこのパラメーターは、ランダム化にローカルランダムシードを使用する必要があるかどうかを示します。同じ値のローカルランダムシードを使用すると、同じランダム化が生成されます。 範囲:ブール
- local_random_seedこのパラメーターは、 ローカルランダムシードを指定し、 use local random seedパラメーターがtrueに設定されている場合にのみ使用可能です。 範囲:整数
- show_stop_dialogこのパラメーターは、最適な機能スペースの検索を停止する停止ボタンのあるダイアログを表示するかどうかを決定します。最適なフィーチャスペースの検索が停止されると、それまでに見つかった最適な個人が返されます。 範囲:ブール
- user_result_individual_selectionこのパラメーターをtrueに設定すると、ユーザーは最後の母集団から最終結果の個人を選択できます。 範囲:ブール
- show_population_plotterこのパラメーターは、現在の人口をパフォーマンススペースに表示するかどうかを決定します。 範囲:ブール
- plot_generationsこのパラメーターは、 show population plotterパラメーターがtrueに設定されている場合にのみ使用できます。人口プロッターはこれらの世代で更新されます。 範囲:整数
- constraint_draw_rangeこのパラメーターは、 show population plotterパラメーターがtrueに設定されている場合にのみ使用できます。このパラメーターは、ポピュレーションプロッターの描画範囲を0〜1に制限するかどうかを決定します。 範囲:ブール値
- draw_dominated_pointsこのパラメーターは、 show population plotterパラメーターがtrueに設定されている場合にのみ使用できます。このパラメーターは、母集団プロッターでパレート支配ではない点のみを描画するかどうかを決定します。 範囲:ブール
- Population_criteria_data_fileこのパラメーターは、最終母集団の基準データを保存するファイルへのパスを指定します。 範囲:ファイル名
- maximal_fitnessこのパラメーターは、最大適合度を指定します。適合度がこの値に達すると、最適化は停止します。 範囲:実数
チュートリアルプロセス
多項式データセットの特徴削減
「多項式」データセットは、Retrieve演算子を使用してロードされます。 ExampleSetを見ることができるように、ブレークポイントがここに挿入されます。 ExampleSetには、label属性以外に5つの通常の属性があることがわかります。選択の最適化(ブルートフォース)演算子は、ネストされた演算子であるExampleSetに適用されます。つまり、サブプロセスがあります。サブプロセスがパフォーマンスベクトルを提供する必要があります。このパフォーマンスベクトルは、基礎となる機能削減アルゴリズムによって使用されます。この演算子のサブプロセスを見てください。そこでは、分割検証演算子が使用されており、それ自体がネストされた演算子です。 Split Validationオペレーターのサブプロセスをご覧ください。 SVMオペレーターは、モデルをトレーニングするための「トレーニング」サブプロセスで使用されます。トレーニング済みモデルは、「テスト」サブプロセスの「モデルの適用」演算子を使用して適用されます。パフォーマンスは、Performanceオペレーターを介して測定され、結果のパフォーマンスベクトルは基になるアルゴリズムによって使用されます。プロセスを実行し、結果ワークスペースに切り替えます。 5つの属性を持つExampleSetが3つの属性に削減されていることがわかります。