再帰的機能の除去: それは何で、なぜ重要なのか?

公開: 2023-03-27

データは現代の意思決定のバックボーンであり、企業は常にデータから貴重な洞察を引き出す方法を探しています。 機械学習は、データ分析のために組織で展開される最も一般的な手法の 1 つです。これには、履歴データに基づいて予測を行うトレーニング アルゴリズムが含まれます。 ただし、データセット内のすべてのフィーチャが同じように作成されるわけではなく、一部のフィーチャはモデルのパフォーマンスに他のフィーチャよりも大きな影響を与える可能性があります。

再帰的特徴の除去は、データセットから無関係または冗長な特徴を特定して除去するために使用される一般的なデータ分析手法であり、機械学習モデルの精度と効率を向上させます。

世界のトップ大学から機械学習認定を取得します マスター、エグゼクティブ PGP、または上級認定プログラムを取得して、キャリアを加速させましょう。

この記事では、再帰的特徴の除去とは何か、その仕組み、およびデータから有意義な洞察を抽出しようとしている企業にとって重要な理由について説明します

目次

特徴選択のためのさまざまな手法は何ですか?

特徴の選択は、データセットから最も関連性の高い属性を選択して、結果を正確に予測するモデルを構築することを含む、機械学習の重要なステップです。 ただし、適切な機能を選択することは必ずしも簡単ではありません。 さまざまなテクニックがあり、それぞれに長所と短所があります。 それらのいくつかを見てみましょう!

フィルター方法

フィルタ メソッドは、ターゲット変数や分散との相関など、統計プロパティで作成された機能を選択します。 これらの方法は計算効率が高く、モデルをトレーニングする前に適用できます。 フィルター方法の例としては、カイ 2 乗検定、相関ベースの特徴選択、分散しきい値処理などがあります。

ラッパー メソッド

ラッパー メソッドは、機能のサブセットを使用して機械学習モデルのパフォーマンスを評価することにより、機能を選択します。 これらの方法は計算コストが高くなりますが、モデルのパフォーマンスが向上する可能性があります。 ラッパー メソッドの例には、再帰的特徴の除去、前方選択、および後方除去が含まれます。

埋め込みメソッド

埋め込みメソッドの場合、トレーニング中に機能の選択が発生します。 これらの方法には、Lasso や Ridge Regression などの手法が含まれており、モデル係数にペナルティを追加して、重要度の低い特徴をゼロに縮小します。

ハイブリッド方式

ハイブリッド手法は、さまざまな特徴選択手法を組み合わせて、より良い結果を達成します。 これらの方法は、多くの場合、単一のアプローチを単独で使用するよりも効果的です。 ハイブリッド手法の例としては、ReliefF やランダム フォレストの特徴選択などがあります。

本質的に、特徴選択手法の選択は、特定の問題、データセット、および利用可能な計算リソースに依存します。

では、機能を削除するための最も重要なラッパー メソッドの 1 つである、再帰的な機能の削除について詳しく見ていきましょう。

再帰的特徴除去とは?

Recursive Feature Elimination (RFE) は、再帰的に機能を削除し、残りの機能の上にモデルを構築するラッパー メソッドです。 重要度に基づいて機能をランク付けし、目的の数の機能に達するまで重要度の低い機能を除外します。 RFE は、次のように機能する反復プロセスです。

  1. すべての機能についてモデルをトレーニングし、それらの重要性に基づいてランク付けします。
  2. 最も重要でない機能を削除します。
  3. 残りの機能でモデルを繰り返しトレーニングし、必要な数の機能に達するまで、最も重要でない機能を削除します。

RFE は、機能間の相互作用とモデルのパフォーマンスへの影響を考慮します。

RFE がどのように機能するかを理解するために、例を考えてみましょう。

寝室の数、面積、築年数など、10 の異なる特徴を持つ住宅価格のデータセットがあるとします。 これらの特徴に基づいて家の価格を予測するための機械学習モデルを構築したいと考えています。 ただし、一部の機能は重要ではなく、モデルのパフォーマンスを損なう可能性さえあると思われます。

RFE を使用して、モデルをすべての機能でトレーニングし、最適なサブセットに到達するまで重要性の低い機能を再帰的に削除することで、最も関連性の高い機能を特定できます。 RFE は、反復ごとにモデルをトレーニングし、クロス検証セットを使用してそのパフォーマンスを評価します。

たとえば、RFE は、寝室の数、面積、および場所が住宅価格を予測するための最も重要な特徴であると判断する場合があります。 対照的に、家の築年数などの他の特徴は、モデルの精度にほとんど影響しません。

なぜRFEが登場したのですか? それは何を解決しますか?

機械学習が普及するにつれて、データ サイエンティストは、一部の機能は無関係または冗長である可能性がある一方で、他の機能はモデルの精度に大きな影響を与える可能性があることに気付きました。 これにより、効率的な機械学習モデルを構築するための重要な方法の 1 つである、再帰的特徴除去の特徴選択手法が生まれました。

Recursive Feature Elimination (RFE) は、既存のメソッドのいくつかの制限に対処するために導入されましたが、機能を再帰的に削除し、モデルのパフォーマンスへの影響を評価するラッパー メソッドとして登場しました。 このプロセスは、最適な機能数に達するまで続きます。

RFE は、従来の特徴選択手法が直面するいくつかの問題を解決します。

  • RFE は、すべての機能から開始し、重要度の低い機能を繰り返し削除する後方選​​択アプローチです。 このアプローチは、重要度の最も低い機能から開始し、最適な数に達するまでさらに追加する前方選択よりも優れています。
  • RFE は、特徴選択プロセス中の相互検証によって過剰適合を回避します。 オーバーフィッティングは、モデルが複雑すぎてトレーニング データに適合しすぎた場合に発生し、新しいデータのパフォーマンスが低下します。
  • RFE はどのモデル タイプにも適用できるため、さまざまなシナリオで使用できる汎用性の高い手法です。

Python での RFE アルゴリズムの実装

Python には、RFE アルゴリズムの実装に使用できるライブラリがいくつか用意されています。 それでは、いくつかの RFE Python の例を見てみましょう

RFE scikit-learn を使用

scikit-learn は、Python で人気のある機械学習ライブラリであり、RFE アルゴリズムの簡単な実装を提供します。 次のコード スニペットは、sci-kit-learn で RFE を実装する方法を示しています。

sklearn.feature_selectionインポートRFEから

sklearn.linear_modelインポートLogisticRegressionから

モデル = LogisticRegression()

rfe = RFE(モデル、n_features_to_select=5)

rfe.fit(X, y)

上記のコード スニペットでは、最初に sci-kit-learn の feature_selection モジュールから RFE クラスをインポートします。 次に、基本推定器として機能する LogisticRegression クラスのインスタンスを作成します。 次に、RFE クラスのインスタンスを作成し、ベース推定量と選択する機能の数を渡します。 次に、RFE オブジェクトをデータとラベルに適合させます。

分類のためのRFE

分類問題では、RFE は再帰的に特徴を削除し、残りの特徴に基づいてモデルを構築します。 機能のランキングは、エスティメータによって計算された機能の重要度スコアに基づいています。 次のコード スニペットは、分類問題に RFE を使用する方法を示しています。

sklearn.datasets import make_classification から

sklearn.feature_selectionインポートRFEから

sklearn.treeインポートDecisionTreeClassifierから

X, y = make_classification(n_samples=1000, n_features=10, n_informative=5, n_redundant=0, random_state=42)

モデル = DecisionTreeClassifier()

rfe = RFE(モデル、n_features_to_select=5)

rfe.fit(X, y)

print(“選択した機能: “, rfe.support_)

print(“機能ランキング:”, rfe.ranking_)

上記のコード スニペットでは、最初に sci-kit-learn の make_classification 関数を使用して合成データセットを生成します。 次に、基本推定器として機能する DecisionTreeClassifier クラスのインスタンスを作成します。 次に、RFE クラスのインスタンスを作成し、ベース推定量と選択する機能の数を渡します。 次に、RFE オブジェクトをデータとラベルに適合させ、選択した機能とランキング機能を出力します。

RFEハイパーパラメータ

RFE には、より良い結果を得るために調整できるいくつかのハイパーパラメーターがあります。 いくつかの重要なハイパーパラメータは次のとおりです。

  • n_features_to_select:このハイパーパラメーターは、選択する機能の数を決定します。
  • step:このハイパーパラメーターは、各反復を削除する機能の数を決定します。デフォルト値は 1 で、反復ごとに 1 つの機能が削除されることを意味します。
  • estimator:このハイパーパラメータは、使用する基本推定量を指定します。デフォルトでは、線形 SVM が使用されます。
  • スコアリング:このハイパーパラメーターは、特徴のランキングに使用するメトリックを指定します。デフォルト値は None です。これは、estimator のスコア メソッドが使用されることを意味します。
  • cv : このハイパーパラメーターは、使用する交差検証戦略を決定します。デフォルト値は None で、3 分割交差検証が使用されることを意味します。

最高の機械学習コースとオンライン AI コース

LJMU の機械学習と AI の理学修士号 IIITB の機械学習と AI のエグゼクティブ ポスト大学院プログラム
IIITB の機械学習と NLP の上級認定プログラム IIITB の機械学習と深層学習の上級認定プログラム メリーランド大学のデータサイエンスと機械学習のエグゼクティブポスト大学院プログラム
すべてのコースを調べるには、以下のページにアクセスしてください。
機械学習コース

再帰的特徴除去の未来

Recursive Feature Elimination (RFE) は、機械学習における特徴選択の一般的な手法であり続けているため、未来は有望に見えます。 生成されるデータの量が増え、より効率的で正確なモデルが必要になるため、特徴の選択は機械学習パイプラインで不可欠なステップになりつつあります。

最近の研究では、RFE がデータの次元を削減し、無関係または冗長な機能を排除することで、機械学習モデルのパフォーマンスを大幅に改善できることが示されています。 たとえば、 NCBIによる研究では、RFE は機能的磁気共鳴画像法 (fMRI) データに基づいてうつ病患者を分類する際の特徴選択に使用されました。 結果は、RFEがうつ病の臨床診断と高度に相関する特徴のサブセットを選択したことを示しました。

機械学習の分野が成長し続けるにつれて、より洗練された効率的な機能選択手法が必要になります。 注目を集めている研究分野の 1 つは、特徴選択にディープ ラーニングを使用することです。 ただし、ディープ ラーニング モデルは多くの場合、計算コストが高く、大量のデータをトレーニングする必要があります。

対照的に、RFE は、さまざまなモデルやデータセットに適用できるシンプルで効果的な手法です。 したがって、RFE は引き続き一般的な特徴選択手法として使用される可能性があります。

需要の高い機械学習スキル

人工知能コース Tableau コース
NLPコース 深層学習コース

結論

結論として、Recursive Feature Elimination (RFE) は、進化する実装に続く明るい未来を監督する、機械学習における特徴選択の効果的な手法です。 効果的な特徴選択手法である RFE は、医療診断、バイオインフォマティクス、画像分析などのさまざまな領域での使用を促進し、その不屈の拡大を続けています。

機械学習と AI についてさらに学びたい場合は、 IIIT バンガロールと協力してupGrad のMachine Learning and AI PG Diploma プログラムに登録することを検討してください。 この包括的なプログラムでは、RFE などの機能選択手法を含む、機械学習と AI の最新のツールと手法を取り上げます。

このプログラムでは、実世界のアプリケーション向けの機械学習モデルを構築してデプロイするために必要なスキルと知識を習得できます。

今すぐ申し込んで、upGrad による没入型学習のさまざまなメリットを手に入れましょう!

upGrad が提供する管理、データ サイエンス、機械学習、デジタル マーケティング、テクノロジーの無料コースもご覧ください これらのコースにはすべて、一流の学習リソース、毎週のライブ講義、業界の課題、コース修了証明書があり、すべて無料です。

人気の AI と ML のブログと無料コース

IoT: 歴史、現在、未来 機械学習のチュートリアル: ML を学ぶ アルゴリズムとは? シンプル&イージー
インドのロボット工学エンジニアの給与:すべての役割 機械学習エンジニアの 1 日: 彼らは何をしているのか? IoT(モノのインターネット)とは
順列と組み合わせ:順列と組み合わせの違い 人工知能と機械学習のトップ 7 トレンド R による機械学習: 知っておくべきすべてのこと
AI & ML 無料コース
NLP入門 ニューラル ネットワークの深層学習の基礎 線形回帰: ステップ バイ ステップ ガイド
現実世界の人工知能 Tableau の紹介 Python、SQL、Tableau を使用したケース スタディ

特徴選択における RFE と PCA の違いは何ですか?

RFE と主成分分析 (PCA) はどちらも、特徴選択に使用される手法です。 この 2 つの主な違いは、PCA が元の属性を新しいセットに変更するのに対し、RFE は元の属性を削除することです。

RFE を使用して選択する機能の最適な数を決定するにはどうすればよいですか?

RFE を使用して選択する機能の最適な数を決定する 1 つの方法は、クロス検証を実行し、検証セットで最高のパフォーマンスを提供する機能の数を選択することです。 もう 1 つの方法は、スクリー プロットを使用することです。これは、対応するモデルのパフォーマンスに対して特徴の数をプロットします。

教師なし学習タスクに RFE を使用できますか?

いいえ、RFE は特徴を選択するためにラベル付けされたデータを必要とする教師あり学習手法です。 ラベル付けされたデータのない教師なし学習タスクでは、クラスタリングや次元削減などの他の手法を使用して特徴を選択できます。