RapidMiner(ラピッドマイナー)はデータ可視化、データ加工、モデル作成、評価、運用まで一括サポートする機械学習プラットフォームです。KSKアナリティクスはRapidMinerの正規販売代理店です。

Optimize Selection (Evolutionary)

概要

この演算子は、指定されたExampleSetの最も関連性の高い属性を選択します。特徴の選択には、遺伝的アルゴリズムが使用されます。

詳細

機能の選択、つまり分類または回帰の問題に最も関連する機能の質問は、主要なデータマイニングタスクの1つです。進化的アルゴリズムを含む広範な検索方法がRapidMinerに統合されています。すべての検索方法について、検索ポイント(フィーチャサブセット)が特定のデータセットでどの程度実行されるかを示すパフォーマンス測定が必要です。

遺伝的アルゴリズム(GA)は、自然進化のプロセスを模倣する検索ヒューリスティックです。このヒューリスティックは、最適化と検索の問題に対する有用なソリューションを生成するために日常的に使用されます。遺伝的アルゴリズムは、より大きなクラスの進化的アルゴリズム(EA)に属し、継承、突然変異、選択、クロスオーバーなどの自然進化にヒントを得た手法を使用して、最適化問題の解決策を生成します。

特徴選択のための遺伝的アルゴリズムでは、「突然変異」は特徴のオンとオフを切り替えることを意味し、「クロスオーバー」は使用された特徴を交換することを意味します。選択は、 選択スキームパラメータによって選択される指定された選択スキームによって行われます。遺伝的アルゴリズムは次のように機能します。

p個の個人で構成される初期集団を生成します。各属性は、確率p_iでオンに切り替えられます。数pp_iは、 母集団サイズp初期化パラメーターによってそれぞれ調整できます。

母集団のすべての個人に対して突然変異を実行します。つまり、使用される属性を確率p_mで未使用に設定します。逆も同様です。確率p_mは、 p突然変異パラメーターによって調整できます。母集団から2人の個人を選択し、確率p_cでクロスオーバーを実行します。確率p_cは、 p crossoverパラメーターによって調整できます。クロスオーバーのタイプは、 クロスオーバータイプパラメーターによって選択できます。選択を実行し、フィットネスに従ってすべての個体をマッピングし、確率に従ってp個の個体をランダムに描きます。ここで、 p母集団サイズパラメーターで調整できる母集団サイズです。フィットネスが改善する限り、ステップ2に進みます。

ExampleSetにブロック番号付きの値シリーズ属性が含まれている場合、ブロック全体のオンとオフが切り替わります。テストする組み合わせの属性の正確な数、最小数、または最大数は、適切なパラメーターで指定できます。この演算子では、他の多くのオプションも利用できます。詳細については、パラメータのセクションをご覧ください。

入力

  • 設定された例(IOObject)この入力ポートには、ExampleSetが必要です。このExampleSetは、サブプロセスで処理するために、ネストされたチェーンの最初のポート(サブプロセス内)で使用できます。
  • 属性の重み(Average Vector)このポートは属性の重みを想定しています。このポートを使用することは必須ではありません。
  • スルー (IOObject)このオペレーターは複数のスルーポートを持つことができます。 1つの入力がスルーポートに接続されると、別のスルーポートが使用可能になり、別の入力(ある場合)を受け入れる準備が整います。入力の順序は同じままです。この演算子の最初のスルーポートで提供されるオブジェクトは、ネストされたチェーンの最初のスルーポート(サブプロセス内)で利用できます。すべての入力を正しい順序で接続することを忘れないでください。サブプロセスレベルで正しい数のポートが接続されていることを確認してください。

出力

  • 設定例(IOObject)遺伝的アルゴリズムは、入力ExampleSetに適用されます。縮小された属性を持つ結果のExampleSetは、このポート経由で配信されます。
  • 重み(平均ベクトル)属性の重みは、このポートを介して配信されます。
  • パフォーマンス(パフォーマンスベクトル)このポートは、選択した属性のパフォーマンスベクトルを提供します。パフォーマンスベクトルは、パフォーマンス基準値のリストです。

パラメーター

  • use_exact_number_of_attributesこのパラメーターは、正確な数の属性を含む組み合わせのみをテストするかどうかを決定します。正確な数は、attributesパラメーターの正確な数によって指定されます。 範囲:ブール
  • exact_number_of_attributesこのパラメーターは、属性の正確な数の使用パラメーターがtrueに設定されている場合にのみ使用できます。この数の属性を含む組み合わせのみが生成およびテストされます。 範囲:整数
  • restrict_maximum trueに設定すると、組み合わせが生成およびテストされる属性の最大数を制限できます。それ以外の場合、すべての属性のすべての組み合わせが生成され、テストされます。このパラメーターは、属性の正確な数の使用パラメーターがtrueに設定されている場合にのみ使用できます。 範囲:ブール
  • min_of_attributesこのパラメーターは、生成およびテストされる組み合わせに使用される機能の最小数を決定します。 範囲:整数
  • max_number_of_attributesこのパラメーターは、生成およびテストされる組み合わせに使用される機能の最大数を決定します。このパラメーターは、 制限の最大パラメーターがtrueに設定されている場合にのみ使用できます。 範囲:整数
  • population_sizeこのパラメータは、母集団のサイズ、つまり世代ごとの個体数を指定します。 範囲:整数
  • maximum_number_of_generationsこのパラメーターは、アルゴリズムを終了するまでの世代数を指定します。 範囲:整数
  • use_early_stoppingこのパラメーターは、早期停止を有効にします。 trueに設定されていない場合、常に最大世代数が実行されます。 範囲:ブール
  • generations_without_improvalこのパラメーターは、 早期停止パラメーターの使用がtrueに設定されている場合にのみ使用できます。このパラメーターは、早期停止の停止基準を指定します。つまり、パフォーマンスを改善せずにn世代後に停止します。 nはこのパラメーターで指定されます。 範囲:整数
  • normalize_weightsこのパラメーターは、最終的な重みを正規化する必要があるかどうかを示します。 trueに設定すると、最大の重みが1、最小の重みが0になるように最終的な重みが正規化されます。 範囲:ブール値
  • use_local_random_seedこのパラメーターは、ランダム化にローカルランダムシードを使用する必要があるかどうかを示します。同じ値のローカルランダムシードを使用すると、同じランダム化が生成されます。 範囲:ブール
  • 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このパラメーターは、最大適合度を指定します。適合度がこの値に達すると、最適化は停止します。 範囲:実数
  • selection_schemeこのパラメーターは、この進化的アルゴリズムの選択スキームを指定します。 範囲:選択
  • tournament_sizeこのパラメーターは、 選択スキームパラメーターが「トーナメント」に設定されている場合にのみ使用できます。トーナメントメンバーとして使用される現在の人口の割合を指定します。 範囲:実数
  • start_temperatureこのパラメーターは、 選択スキームパラメーターが ‘Boltzmann’に設定されている場合にのみ使用できます。スケーリング温度を指定します。 範囲:実数
  • dynamic_selection_pressureこのパラメーターは、 選択スキームパラメーターが「Boltzmann」または「tournament」に設定されている場合にのみ使用できます。 trueに設定すると、完全な最適化の実行中に選択圧力が最大に増加します。 範囲:ブール
  • keep_best_individual trueに設定すると、各世代の最高の個人が次の世代に選択されることが保証されます。 範囲:ブール
  • save_intermediate_weightsこのパラメーターは、中間の最良の結果を保存する必要があるかどうかを決定します。 範囲:ブール
  • intermediate_weights_generationsこのパラメーターは、 save Intermediate Weightsパラメーターがtrueに設定されている場合にのみ使用できます。中間の最良の結果は、 k世代ごとに保存され、 kはこのパラメーターで指定されます。 範囲:整数
  • intermediate_weights_fileこのパラメーターは、中間の重みを保存するファイルを指定します。 範囲:ファイル名
  • p_initialize属性がオンになる初期確率は、このパラメーターによって指定されます。 範囲:実数
  • p_mutation属性が変更される確率は、このパラメーターで指定されます。 -1に設定すると、確率は1 / nに設定されます。nは属性の総数です。 範囲:実数
  • p_crossover個人が交差のために選択される確率は、このパラメーターによって指定されます。 範囲:実数
  • crossover_typeこのパラメーターにより、クロスオーバーのタイプを選択できます。 範囲:選択

チュートリアルプロセス

多項式データセットの特徴削減

「多項式」データセットは、Retrieve演算子を使用してロードされます。 ExampleSetを見ることができるように、ブレークポイントがここに挿入されます。 ExampleSetには、label属性以外に5つの通常の属性があることがわかります。最適化選択(進化)演算子は、ネストされた演算子であるExampleSetに適用されます。つまり、サブプロセスがあります。サブプロセスがパフォーマンスベクトルを提供する必要があります。このパフォーマンスベクトルは、基になる遺伝的アルゴリズムによって使用されます。この演算子のサブプロセスを見てください。そこでは、分割検証演算子が使用されており、それ自体がネストされた演算子です。 Split Validationオペレーターのサブプロセスをご覧ください。 SVMオペレーターは、モデルをトレーニングするための「トレーニング」サブプロセスで使用されます。トレーニング済みモデルは、「テスト」サブプロセスの「モデルの適用」演算子を使用して適用されます。パフォーマンスは、Performanceオペレーターを介して測定され、結果のパフォーマンスベクトルは基になるアルゴリズムによって使用されます。プロセスを実行し、結果ワークスペースに切り替えます。 5つの属性を持つExampleSetが3つの属性に削減されていることがわかります。

API認証に失敗しました メールまたはパスワードが正しくありません メールアドレスは必須です パスワードは必須です
キャンセル