ランダム・フォレストとは

ランダム・フォレストとは

ランダム・フォレストは機械学習に広く使われるアルゴリズムで、Leo Breiman氏とAdele Catler氏によって商標登録されました。複数の決定木から得た出力を組み合わせて、1つの結果を導き出します。分類と回帰問題の両方に対処するため、その使いやすさと柔軟性から採用が促進されています。

決定木

ランダム・フォレスト・モデルは複数のDecision Treeで構成されているため、理解しやすいように、まずはDecision Treeアルゴリズムについて簡単に説明します。Decision Treeは、「サーフィンをすべきか」などの基本的な質問から始まります。そこから、「うねりの周期は長いか」または「風は陸から海に向かって吹いているか」といった一連の質問をして、答えを決めることができます。これらの質問はツリー内の決定ノードを構成し、データを分割する手段として機能します。1つ1つの質問は、個人がリーフノードで示される最終決定に達するのに役立ちます。基準を満たす観測値は「はい」の分岐に進み、そうでなければ別の分岐に進みます。Decision Treeは、データをサブセット化するのに最適な分割を見つけようとするもので、通常、分類および回帰ツリー(CART)アルゴリズムを通じて学習されます。分割の質を評価するために、ジニ不純度、情報利得、平均二乗誤差(MSE)といった測定基準を使用できます。

この決定木は、「サーフィンをする」「サーフィンをしない」というクラス・ラベルがある場合の分類問題の一例です。

決定木は教師あり学習アルゴリズムとして一般的ですが、バイアスや過剰適合などの問題が発生しやすい可能性があります。ただし、ランダム・フォレスト・アルゴリズムで複数の決定木が集合し、特に個々の木の間に相関がない場合には、より正確な結果が予測されます。

アンサンブル方式

アンサンブル学習方式は、Decision Treeなど一連の分類器で構成されており、予測を集計して最も一般的な結果を特定します。最もよく知られているアンサンブル方式はバギング(またはブートストラップ・アグリゲーションとも呼ばれる)とブースティングです。バギング方式は、1996年にLeo Breiman氏(ibm.com外部へのリンク)が導入しました。この方法では、学習・セット内データのランダムなサンプルが、復元抽出によって選択されます。つまり、個々のデータ・ポイントを何度も選択できるということです。いくつかのデータ・サンプルが生成されると、タスクのタイプ(回帰や分類など)に応じてモデルが個々に学習され、予測の平均または多数を占めるものから、より正確な評価が算出されます。このアプローチは、ノイズの多いデータ・セット内でバリアンスを小さくするためによく使用されます。

ランダム・フォレスト・アルゴリズム

ランダム・フォレスト・アルゴリズムはバギング法を拡張したものです。バギングと特徴量のランダム性を併用して、相関関係のないDecision Treeのフォレストを作成するからです。特徴バギングまたは「ランダム・サブスペース法」(ibm.com外部へのリンク)とも呼ばれる特徴量のランダム性により、Decision Tree間の相関を低くするランダムな特徴サブセットが生成されます。これがDecision Treeとランダム・フォレストの主な違いです。Decision Treeでは考えられるすべての機能分割が考慮されますが、ランダム・フォレストでは、特徴サブセットのみが選択されます。

「サーフィンをすべきか」という例に戻りましょう。予測を行うために私が尋ねる質問は、他の誰かが尋ねる一連の質問ほど包括的ではないかもしれません。データの潜在的な変動性をすべて考慮することで、過剰適合、バイアス、全体的なバリアンスのリスクを軽減し、精度の高い予測を実現できます。

ニュースレターを表示しているスマホの画面

The DX Leaders

「The DX Leaders」は日本語でお届けするニュースレターです。AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。

仕組み

ランダム・フォレスト・アルゴリズムには、学習前に設定すべき主なハイパーパラメーターが3つあります。ノードのサイズ、木の本数、サンプリングする特徴の数です。そこから、ランダム・フォレスト分類器を使用して回帰問題や分類問題を解くことができます。

ランダム・フォレスト・アルゴリズムは集められた決定木で構成されています。集合体の各ツリーはトレーニング・セットから復元抽出したデータ・サンプルで構成され、これをブートストラップ・サンプルと呼びます。このトレーニング・サンプルのうち3分の1は、アウトオブバッグ(oob)サンプルとして知られるテスト・データとして確保されますが、これは後ほど取り上げます。次に、特徴バギングによって別のランダム性インスタンスを注入することでデータ・セットに多様性が加わり、決定木間の相関が小さくなります。問題の種類によって予測の決定は異なります。回帰タスクでは個々の決定木が平均化され、分類タスクでは多数決(つまり最も頻度の高いカテゴリー変数)により予測クラスが取得されます。最後にoobサンプルを相互検証に使用して、予測を確定します。

ランダム・フォレストのメリットと課題

ランダム・フォレスト・アルゴリズムを分類や回帰の問題に利用する場合、重要なメリットと課題がいくつかあります。以下に例を挙げます。

主なメリット

  • 過剰適合のリスク軽減:決定木はトレーニング・データ内の全サンプルをしっかり適合させる傾向があるため、過剰適合のリスクがあります。ただしランダム・フォレスト内に多くの決定木があれば、相関のない複数のツリーを平均化することで全体的なバリアンスと予測誤差が下がるため、分類器がモデルに過剰適合することはありません。
  • 柔軟性を提供:ランダム・フォレストは回帰タスクも分類タスクも高い精度で処理できるため、データサイエンティストがよく用いる手法です。特徴バギングはデータが一部欠けていても精度を維持できるので、ランダム・フォレスト分類器は欠損値の効果的な推定ツールにもなります。
  • 特徴の重要度を容易に判断: ランダム・フォレストを使用すると、モデルに対する変数の重要度あるいは寄与度を簡単に評価できます。特徴の重要度を評価するには、いくつかの方法があります。ジニの重要度と不純度の平均減少(MDI)は通常、特定の変数を除外したときにモデルの精度がどの程度低下するかを測定するために使用されます。しかしもう1つの重要な尺度として、平均正解率減少量(MDA)とも呼ばれる並べ替えの重要度があります。MDAは、oobサンプルの特徴値をランダムに並び替えることで精度の平均的な低下を算出します。

主な課題

  • 時間のかかるプロセス:ランダム・フォレスト・アルゴリズムは大規模なデータ・セットを処理できるため、より正確な予測が可能ですが、決定木ごとにデータを計算するので処理に時間がかかる場合があります。
  • より多くのリソースが必要: ランダム・フォレストはより大きなデータ・セットを処理するため、データの保管に求められるリソースが増えます。
  • 複雑性を助長:1本の決定木から得られた予測は、その集合体に比べれば解釈が簡単です。
オフィスでミーティングをするビジネスチーム

IBMお客様事例

お客様のビジネス課題(顧客満足度の向上、営業力強化、コスト削減、業務改善、セキュリティー強化、システム運用管理の改善、グローバル展開、社会貢献など)を解決した多岐にわたる事例のご紹介です。

ランダム・フォレスト・アプリケーション

ランダム・フォレスト・アルゴリズムは多数の業界に適用されており、このアルゴリズムによってビジネス上の適切な意思決定が可能になります。ユースケースには次のものがあります。

  • 金融:データ管理や前処理タスクに費やす時間を削減できるため、他のアルゴリズムよりも好まれています。これは、信用リスクの高い顧客を評価したり、不正やオプション価格設定の問題を検出したりする目的で利用できます。
  • 医療:ランダム・フォレスト・アルゴリズムを計算生物学(ibm.com外部へのリンク)に応用すると、医師は遺伝子発現の分類、バイオマーカーの発見、遺伝子配列の注釈付けといった問題に取り組めるようになります。すると、医師が特定の薬剤に対する薬物反応を推定できます。
  • Eコマース:クロスセルを目的としたレコメンデーション・エンジンに利用可能です。
関連ソリューション
IBM watsonx.ai

AI開発者向けの次世代エンタープライズ・スタジオであるIBM watsonx.aiを使用して、生成AI、基盤モデル、機械学習機能をトレーニング、検証、チューニング、導入しましょう。わずかなデータとわずかな時間でAIアプリケーションを構築できます。

watsonx.aiをご覧ください。
人工知能ソリューション

業界をリードするIBMのAI専門知識とソリューション製品群を使用すれば、ビジネスにAIを活用できます。

AIソリューションはこちら
AIコンサルティングとサービス

AIの導入で重要なワークフローと業務を再構築し、エクスペリエンス、リアルタイムの意思決定とビジネス価値を最大化します。

AIサービスはこちら
次のステップ

AI開発ライフサイクル全体にわたる機能にワンストップでアクセスできます。使いやすいインターフェース、ワークフロー、業界標準のAPIやSDKを利用して、強力なAIソリューションを構築できます。

watsonx.aiの詳細はこちら デモを予約