ホーム Topics ブースティングとは ブースティングとは
ブースティング・アルゴリズムとそれによりデータ・マイニング・イニシアチブの予測力を向上させる方法をご紹介します。
青い背景
ブースティングとは

ブースティング・アルゴリズムとそれによりデータ・マイニング・イニシアチブの予測力を向上させる方法をご紹介します。 

ブースティングは、弱学習器の集合を強学習器に結合することで、学習誤差を最小限に抑えるアンサンブル学習法です。 ブースティングでは、データのランダムなサンプルを選択し、モデルをフィッティングした後、順次学習していきます。つまり、それぞれのモデルが前モデルの弱点を補おうとするのです。 反復するたびに、個々の分類器からの弱いルールが結合され、1つの強い予測ルールが形成されます。 

先に進む前に、アンサンブル学習というカテゴリーをより広く掘り下げ、最もよく知られた2つの手法であるバギングとブースティングに焦点を当ててみましょう。 

アンサンブル学習

アンサンブル学習は、大人数グループで行った決定の方が一人のエキスパートの判断に勝るという「群衆の叡智」の考え方に基づいています。 同様に、アンサンブル学習とは、ベースとなる学習器(またはモデル)を集めたグループ(またはアンサンブル)を用いて、最終予測値の精度を高める手法のことです。 ベース学習器、または弱学習器と呼ばれる単一のモデルは、単体では高バリアンスになるか、または高バイアスとなり、うまく機能しない場合があります。 しかし弱学習器が集約されている場合、組み合わせによってバイアスやバリアンスが減り、彼らはより良いモデル・パフォーマンスを持つ強学習器を形成することができます。 

アンサンブル法は、決定木を使用して図解されることがよくあります。なぜなら、このアルゴリズムは剪定されていない時にはオーバーフィット(高バリアンスかつ低バイアス)する傾向にあり、1つのレベルしか持たない決定木である決定株のように小規模な時はアンダーフィット(低バリアンスかつ高バイアス)に適応することも可能であるためです。 あるアルゴリズムがトレーニング・データセットに対してオーバーフィットもしくはアンダーフィットした際、新しいデータセットに対して汎用化できません。アンサンブル法は、新しいデータセットへのモデルの汎用化を可能とするため、対処方法として使用されています。 決定木は、高バリアンスや高バイアスを示すことができますが、一方で決定木のみが、バイアスとバリアンスのトレードオフにおける「スイートスポット」を見つけるためにアンサンブル学習を活用する、唯一のモデリング手法ではないということは注目すべき点です。  

バギングとブースティング

バギングとブースティングは、2つの主要なアンサンブル学習法です。 この研究 (PDF、242 KB)(ibm.com外部へのリンク)で示されている通り、これらの学習法の主な違いは訓練方法です。 バギングでは弱学習器は並行して訓練されますが、ブースティングではそれらは順番に学習します。 これは、一連のモデルが構築され、それぞれ新しいモデルの反復により、以前のモデルで誤分類されたデータの重みが増すことを意味します。 この重みを再配分することにより、アルゴリズムが、パフォーマンスを改善する上で焦点を絞る必要のあるパラメーターを特定するのに役立ちます。 AdaBoostは、「adaptative boosting algorithm(アダプティブ・ブースト・アルゴリズム)」の略で、このタイプの最初のアルゴリズムの1つであるため、最もよく使用されるブースティング・アルゴリズムの1つとなっています。 その他にもXGBoost、GradientBoost、およびBrownBoostといったブースティング・アルゴリズムが存在します。 

バギングとブースティングのもう1つの違いは、使用方法にあります。 例えば、バギング法が主に高バリアンスかつ低バイアスの弱学習器に対して活用されている一方で、ブースティング法は低バリアンスかつ高バイアスが確認された際に使用されます。 ブースティングはオーバーフィッティングを避けるために使用できますが、ブースティング法は、データセットにもよりますが、オーバーフィッティング (ibm.com外部へのリンク)を起こしやすいです。 しかし、パラメーターの調整により、この問題を回避することができます。 

その結果、バギングとブースティングでは、実際のアプリケーションも異なります。 バギングはローンの審査プロセスや統計的ゲノミクスに活用され、ブースティングは画像認識アプリや検索エンジンに多く利用されています。  

注目の製品

SPSS Modeler

ブースティングの種類

ブースティング法は、弱学習器を反復的に組み合わせて、より正確な結果を予測できる強学習器を構築することに焦点を当てています。 注意点としては、 弱学習器はランダムに推測するよりもわずかに正しくデータを分類します。 このアプローチは、予測問題で 優れた結果をもたらし、画像検索 などのタスクではニューラル・ネットワークやサポート・ベクター・マシンよりも優れた性能を発揮します(PDF、1.9 MB)(ibm.com外部へのリンク)。  

ブースティング・アルゴリズムは、逐次的なプロセスの中で、弱学習器をどのように作成し、どのように集約するかで異なります。 次の内容は、ブースティング法で人気のある3種類の手法の一部です。 

  • 適応型ブースティング(AdaBoost): Yoav Freund氏とRobert Schapire氏がAdaBoostアルゴリズムを開発したと言われています。 この方法は反復的に実行され、誤って分類されたデータ・ポイントを特定し、その重みを調整して学習誤差を最小化します。 このモデルは、最強の分類子が得られるまで、順次、最適化を続けます。  
  • 勾配ブースティング: Leo Breiman氏の研究を基に、Jerome H. Friedman氏が開発した 勾配ブースティング は、アンサンブルに分類子を順次追加し、それぞれの分類子が前の分類子のエラーを修正するというものです。 しかし、AdaBoostのようにデータ・ポイントの重みを変えるのではなく、勾配ブースティング では、前の分類子の残余誤差を利用してトレーニングを行います。 勾配降下法とブースティング法を組み合わせたことから、勾配ブースティングと呼ばれています。  
  • Extreme gradient boosting (XGBoost):  XGBoostは、計算速度とスケールを考慮して設計された勾配ブースティング法の実装です。 XGBoostは、CPUのマルチコアを活用することで、 訓練時に並行して学習を行うことができます。  

バギングの利点と課題

分類や回帰の問題にブースティング・メソッドを使用する場合は、いくつかの重要な利点と課題があります。 

ブースティングの主な利点:   

  • 実装のしやすさ:ブースティングは、フィッティングを向上させるために、いくつかのハイパーパラメーター・チューニング・オプションと共に使用することができます。 データの前処理は不要で、ブースティング・アルゴリズムには欠損データを処理するルーチンが組み込まれています。 Pythonでは、scikit-learnのアンサンブル法のライブラリ(sklearn.ensembleとも呼ばれる)により、AdaBoost、XGBoostなどの一般的なブースティング法を簡単に実装することができます。  
  • バイアスの低減: ブースティング・アルゴリズムは、複数の弱学習器を順次組み合わせて、観測結果を反復的に改善していきます。 このアプローチは、浅い決定木やロジスティック回帰モデルでよく見られる高いバイアスを減らすのに役立ちます。 
  • 計算効率: ブースティング・アルゴリズムは、学習時に予測力を高める特徴のみを選択するため、次元の削減や計算効率の向上に役立ちます。  

バギングの主な課題は次のとおりです。  

  •  オーバーフィッティング: ブースティングがオーバーフィッティングの抑制に役立つかどうか、あるいは悪化させるかどうかについては、研究 (ibm.com外部へのリンク)でも議論があります。 このような事態が発生した場合に、予測を新しいデータセットに一般化することができないという点が課題になります。  
  •  集約的な計算: ブースティングの逐次学習は、拡大することが困難です。 XGBoostは、他のブースティング法に見られるスケーラビリティーの問題を解決することを目指していますが、各推定器は先行する推定器に基づき構築されるため、ブースティング・モデルは計算量が多くなります。 ブースティング・アルゴリズムは、バギングと比較して、パラメーターの数が多く、それがモデルの挙動にも影響するため、学習に時間がかかる場合があります。 
ブースティングのアプリケーション

ブースティング・アルゴリズムは、以下のような幅広い産業分野での人工知能プロジェクトに適しています。  

  • 健康管理: 心血管疾患リスク因子や癌患者の生存率の予測など、医療データ予測のエラーを減らすために使用されます。 例えば、アンサンブル法は、心血管疾患の予防治療が有効な患者を特定する精度を大幅に向上させ、一方で患者への不必要な治療を避けることができるという研究 結果(ibm.com外部へのリンク)があります。 同様に、別の研究(IBM外部へのリンク)では、ブースティングを複数のゲノミクス・プラットフォームに適用すると、癌の生存時間の予測値を改善できることが分かりました。 

  • IT: 検索エンジンのページ・ランキングには勾配ブースティング回帰木が、 画像検索にはViola-Jonesブースティング・アルゴリズムが使われています。 Cornell氏 が述べているように(ibm.com外部へのリンク)、ブーストされた分類では、予測の方向性が明らかになったときに、早めに計算を停止することができます。 これは、 検索エンジンが下位のページの評価を止めることができることを意味しています。一方、イメージ・スキャナーは、目的のオブジェクトが実際に含まれている画像のみを考慮します。   

  • 金融: ブースティングをディープ・ラーニング・モデルと併用することで、不正検知や価格分析などの重要なタスクを自動化します。 例えば、クレジットカードの不正使用の検知や、金融商品の価格分析 におけるブースティング手法(ibm.com外部へのリンク)は、膨大なデータセットの分析精度を向上させ、金銭的損失を最小限に抑えることができます。  

関連ソリューション
SPPS Modeler

直感的なドラッグ・アンド・ドロップによるデータサイエンス・ツールを活用して、ROIを高め、迅速な価値創出を実現します。

IBM SPSS Modelerの詳細はこちら
IBM Cloudソリューション

ハイブリッド。 オープン。 レジリエント。 デジタル・トランスフォーメーションのためのお客様のプラットフォームであり、パートナーでもあります。

IBM Cloudソリューションの詳細はこちら
Cloud Pakソリューション

AI搭載のハイブリッドクラウド・ソフトウェアです。

Cloud Pakソリューションの詳細はこちら
次のステップへ

IBMのソリューションは、機械学習のライフサイクルをエンドツーエンドでサポートします。 IBM SPSS ModelerなどのIBMデータ・マイニング・ツールを使用することによって、どのように予測モデルを開発してビジネス・オペレーションに展開できるのかをご紹介します。 モデリングでモデルの精度を高めることも容易です。 ブースティング法とバギング法の利点の詳細については、IBMのデータサイエンス・コミュニティーをご覧ください。

IBMのデータサイエンス・コミュニティーに今すぐ参加する