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

AdaBoost

概要

この演算子はAdaBoostアルゴリズムの実装であり、RapidMinerで利用可能なすべての学習器で使用できます。 AdaBoostは、他の多くの学習アルゴリズムと組み合わせて使用​​してパフォーマンスを改善できるメタアルゴリズムです。

詳細

AdaBoost演算子はネストされた演算子です。つまり、サブプロセスがあります。サブプロセスには、学習者、つまりExampleSetを予期してモデルを生成する演算子が必要です。この演算子は、サブプロセスで提供される学習器を使用して、より良いモデルを構築しようとします。この演算子を適用するには、サブプロセスの基本的な理解が必要です。サブプロセスの基本的な理解については、サブプロセス演算子のドキュメントをご覧ください。

AdaBoostは、Adaptive Boostingの略で、メタアルゴリズムであり、他の多くの学習アルゴリズムと組み合わせて使用​​して、パフォーマンスを向上させることができます。 AdaBoostは、構築された後続の分類子が前の分類子によって誤分類されたインスタンスを優先して微調整されるという意味で適応性があります。 AdaBoostは、ノイズの多いデータや外れ値に敏感です。ただし、一部の問題では、ほとんどの学習アルゴリズムよりも過適合問題の影響を受けにくい場合があります。使用する分類子は弱い(つまり、かなりのエラー率を表示する)場合がありますが、パフォーマンスがランダムでない限り(バイナリ分類のエラー率が0.5になる場合)、最終モデルが改善されます。

AdaBoostは、一連のラウンドt = 1、…、Tのそれぞれで新しい弱分類器を生成して呼び出します。コールごとに、重みD(t)の分布が更新され、分類用のデータセットの例の重要性が示されます。各ラウンドで、誤って分類された各例の重みが増加し、正しく分類された各例の重みが減少するため、新しい分類器は、正しい分類をこれまで回避できた例に焦点を合わせます。

アンサンブル理論のブースティングはアンサンブル手法であるため、ここではアンサンブル理論の概要について説明しました。 Ensembleメソッドは、複数のモデルを使用して、構成モデルのいずれかから得られるよりも優れた予測パフォーマンスを取得します。言い換えると、アンサンブルは、強い学習者を生成するために、多くの弱い学習者を組み合わせる手法です。通常、アンサンブルの予測を評価するには、単一のモデルの予測を評価するよりも多くの計算が必要です。そのため、アンサンブルは、多くの余分な計算を実行することにより、貧弱な学習アルゴリズムを補う方法と考えることができます。

アンサンブルはそれ自体が教師あり学習アルゴリズムです。これは、アンサンブルをトレーニングしてから予測を行うために使用できるためです。したがって、訓練された集団は単一の仮説を表します。ただし、この仮説は、それが構築されたモデルの仮説空間に必ずしも含まれるわけではありません。したがって、アンサンブルは、表現できる機能の柔軟性が高いことを示すことができます。この柔軟性により、理論的には、単一のモデルよりもトレーニングデータをオーバーフィットできますが、実際には、いくつかのアンサンブル手法(特にバギング)は、トレーニングデータのオーバーフィットに関連する問題を軽減する傾向があります。

経験的に、アンサンブルは、モデル間に大きな多様性がある場合により良い結果をもたらす傾向があります。したがって、多くのアンサンブルメソッドは、組み合わせたモデル間の多様性を促進しようとします。おそらく直感的ではありませんが、よりランダムなアルゴリズム(ランダムな決定木など)を使用して、非常に意図的なアルゴリズム(エントロピーを削減する決定木など)よりも強いアンサンブルを生成できます。ただし、さまざまな強力な学習アルゴリズムを使用することは、多様性を促進するためにモデルをダムダウンする手法を使用するよりも効果的であることが示されています。

入力

  • トレーニングセット (IOObject)この入力ポートには、ExampleSetが必要です。これは、添付のプロセス例のRetrieveオペレーターの出力です。他の演算子の出力も入力として使用できます。

出力

  • モデル (Ada Boost Model)メタモデルはこの出力ポートから配信され、ラベル属性の予測のために、見えないデータセットに適用できるようになりました。
  • サンプルセット (IOObject)入力として指定されたExampleSetは、このポートを介して出力に変更せずに渡されます。これは通常、別の演算子で同じExampleSetを再利用するため、または結果ワークスペースでExampleSetを表示するために使用されます。

パラメーター

  • iterationsこのパラメーターは、AdaBoostアルゴリズムの最大反復回数を指定します。 範囲:整数

チュートリアルプロセス

より良いデシジョンツリーを生成するためのAdaBoostオペレーターの使用

「ソナー」データセットは、検索演算子を使用してロードされます。分割検証演算子は、分類モデルのトレーニングとテストのために適用されます。 AdaBoostオペレーターは、Split Validationオペレーターのトレーニングサブプロセスに適用されます。決定木演算子は、AdaBoost演算子のサブプロセスで適用されます。 AdaBoostオペレーターの反復パラメーターは10に設定されているため、そのサブプロセスの反復は最大で10になります。モデルの適用演算子は、AdaBoost演算子によって生成されたモデルを適用するためのテストサブプロセスで使用されます。結果のラベル付きExampleSetは、モデルのパフォーマンスを測定するためにパフォーマンス(分類)演算子によって使用されます。分類モデルとそのパフォーマンスベクトルは出力に接続され、結果ワークスペースで確認できます。 AdaBoost演算子が各反復で新しいモデルを生成し、各モデルに異なる重みがあることがわかります。このモデルの精度は約69%です。 AdaBoostオペレーターなしで同じプロセスが繰り返される場合、つまり、決定ツリーオペレーターのみがトレーニングサブプロセスで使用される場合。そのモデルの精度は約66%です。したがって、AdaBoostは、元のモデルよりもパフォーマンスの良いモデルの組み合わせを生成しました。

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