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

Branch

概要

この演算子は2つのサブプロセスで構成されていますが、条件に応じて一度に1つのサブプロセスのみを実行します。この演算子は、指定された条件の結果に応じて2つのオプションのいずれかが選択される「if-then-else」ステートメントに似ています。この演算子を効果的に使用するには、サブプロセスを理解することが重要です。

詳細

Branchオペレーターは、 条件入力ポートで提供されたオブジェクトのパラメーターで指定された条件をテストします(ほとんどの場合、 条件タイプ条件値のパラメーターを介して)。条件が満たされると、最初のサブプロセス、つまり「Then」サブプロセスが実行されます。それ以外の場合、2番目のサブプロセス、つまり「Else」サブプロセスが実行されます。

この演算子を完全に理解するには、RapidMinerでのサブプロセスの使用を十分に理解することが非常に重要です。サブプロセスは、プロセス内にプロセスを導入します。プロセスの実行中にサブプロセスに到達するたびに、最初にサブプロセス全体が実行されます。サブプロセスの実行が完了すると、フローはプロセス(親プロセス)に返されます。サブプロセスは、プロセス内のすべての演算子および演算子の組み合わせをサブプロセスに適用できるように、プロセスの小さな単位と見なすことができます。そのため、サブプロセスは、後で適用される演算子のチェーンとして定義することもできます。サブプロセスの詳細については、サブプロセス演算子をご覧ください。

分岐演算子をダブルクリックして、内部に入り、サブプロセスを表示します。サブプロセスは、同じプロセスビューに表示されます。ここでは、「Then」サブプロセスと「Else」サブプロセスの2つのサブプロセスを確認できます。 「Then」サブプロセスは、パラメーターで指定された条件が真の場合に実行されます。 「Else」サブプロセスは、パラメーターで指定された条件がfalseの場合に実行されます。親プロセスに戻るには、プロセスビューツールバーの青色の上矢印ボタンをクリックします。これは、オペレーティングシステムで機能するファイルやフォルダーのように機能します。フォルダーにフォルダーを含めることができるように、サブプロセスにはサブプロセスを含めることができます。

Branch演算子はSelect Subprocess演算子に似ています。どちらも複数のサブプロセスを持っていますが、一度に実行されるサブプロセスは1つだけです。サブプロセスの選択演算子には3つ以上のサブプロセスを含めることができ、実行するサブプロセスはパラメーターで指定されます。反対に、Branchオペレーターには2つのサブプロセスしかなく、実行されるサブプロセスはパラメーターで指定された条件の結果に依存します。条件は、 条件タイプおよび条件値パラメーターを介して指定されます。マクロは、 条件値パラメーターで提供できます。したがって、実行するサブプロセスはマクロを使用して制御できます。この演算子がループ演算子に配置されている場合、この演算子は複数回実行されます。この演算子の真の力は、さまざまなマクロ演算子やループ演算子のような他の演算子と一緒に使用すると効果を発揮します。たとえば、この演算子がループ演算子に配置され、 条件値パラメーターがマクロによって制御されている場合、この演算子を使用してプロセス設定を動的に変更できます。これは、さまざまなレイアウトをテストするのに役立つ場合があります。

入力

  • 調子このポートで任意のオブジェクトを提供できます。パラメーターで指定された条件は、このオブジェクトでテストされます。条件が満たされると「Then」サブプロセスが実行され、そうでない場合は「Else」サブプロセスが実行されます
  • 入力分岐演算子には複数の入力を含めることができます。 1つの入力が接続されると、別の入力ポート(使用可能な場合)を受け入れる準備ができた別の入力ポートが使用可能になります。入力の順序は同じままです。 Branch演算子の最初の入力ポートで提供されるオブジェクトは、ネストされたチェーン(サブプロセス内)の最初の入力ポートで使用できます。すべての入力を正しい順序で接続することを忘れないでください。チェーンのすべてのレベルで適切な数のポートが接続されていることを確認してください。

出力

  • 入力分岐演算子には複数の出力を含めることができます。 1つの出力が接続されると、別の出力(ある場合)を配信する準備ができている別の入力ポートが使用可能になります。出力の順序は同じままです。サブプロセスの最初の入力ポートで配信されるオブジェクトは、Branchオペレーターの最初の入力で配信されます。すべての出力を正しい順序で接続することを忘れないでください。チェーンのすべてのレベルで適切な数のポートが接続されていることを確認してください。

パラメーター

  • condition_type条件のタイプは、このパラメーターを介して選択されます。 範囲:選択
  • condition_value選択した条件タイプの値は、このパラメーターを介して指定されます。 条件タイプ条件値パラメーターは、一緒に条件ステートメントを指定します。この条件は、 条件入力ポートで提供されるオブジェクトでテストされます。 範囲:
  • io_objectこのパラメーターは、 条件タイプパラメーターが「入力存在」に設定されている場合にのみ使用できます。このパラメータは、存在を確認する必要があるオブジェクトのクラスを指定します。 範囲:選択
  • return_inner_outputこのパラメーターは、内部サブプロセスの出力をこのオペレーターを介して配信する必要があるかどうかを示します。 範囲:ブール

チュートリアルプロセス

パフォーマンス値に応じてゴルフデータセットに異なるサブプロセスを適用

「ゴルフ」データセットは、検索演算子を使用してロードされます。デフォルトモデル演算子が適用されます。結果のモデルは、Apply Modelオペレーターを介して「Golf-Testset」データセットに適用されます。このモデルのパフォーマンスは、パフォーマンスオペレーターによって測定されます。このパフォーマンスベクトルを確認できるように、ブレークポイントがここに挿入されます。その精度値は64.29%であることがわかります。ブランチオペレーターの条件ポートで提供されます。したがって、Branch演算子のパラメーターで指定された条件は、このパフォーマンスベクトルでテストされます。 「ゴルフ」データセットは、ブランチオペレータにも(最初の入力ポートを介して)提供されます。

次に、Branch演算子のサブプロセスを見てみましょう。 「Then」サブプロセスは、演算子を適用せずに条件ポートを入力ポートに接続するだけです。したがって、パラメータで指定された条件がtrueの場合、条件オブジェクト、つまりパフォーマンスベクトルはBranch演算子によって配信されます。 「Else」サブプロセスは、条件ポートでオブジェクトを使用しません。代わりに、最初の入力ポート、つまり「ゴルフ」データセットのオブジェクトにK-NN演算子を適用します。したがって、パラメータで指定された条件がfalseの場合、K-NN演算子は最初の入力ポートのオブジェクト、つまり「ゴルフ」データセットに適用され、結果のモデルはBranch演算子によって配信されます。

次に、Branch演算子のパラメーターを見てみましょう。条件タイプパラメータは「最小パフォーマンス値」に設定され、条件値パラメータは70に設定されます。したがって、パフォーマンスベクトルのパフォーマンスが70を超える場合、条件は真になります。

このプロセス全体では、デフォルトモデルは「ゴルフ」データセットでトレーニングされます。「ゴルフテストセット」データセットでのパフォーマンスが70%を超える場合は、パフォーマンスベクトルが配信されます。 「ゴルフ」データセットが配信されます。

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