個人財務 Pythonを使用してデータサイエンスの正しい変数を選択する方法 - ダミー

Pythonを使用してデータサイエンスの正しい変数を選択する方法 - ダミー

目次:

ビデオ: 「社会人のためのデータサイエンス入門」ダイジェスト講義 2024

ビデオ: 「社会人のためのデータサイエンス入門」ダイジェスト講義 2024
Anonim

Pythonで適切な変数を選択すると、ノイズの量を減らすことでデータサイエンスの学習プロセスを改善することができます(役に立たない情報)が含まれています。したがって、変数の選択は予測の分散を効果的に減らすことができます。

  • 一変量アプローチ: 目標結果に最も関連する変数を選択します。

    <! - 1 - >
  • 貪欲または後方アプローチ: 学習プロセスから除外できる変数のみを、パフォーマンスを損なうことなく保持します。

単変量測定による選択

変数をそのターゲットとの関連レベルで選択する場合、クラスSelectPercentileは、最良の関連機能の一定割合を保持するための自動手順を提供します。関連付けに使用できるメトリックは

<! - 2 - >
  • f_regression:数値ターゲットにのみ使用され、線形回帰のパフォーマンスに基づいています。

  • f_classif:カテゴリターゲットにのみ使用され、分散分析(ANOVA)統計テストに基づいています。

  • chi2:予測変数とその目標との間の非線形関係にあまり敏感でないカテゴリ目標のカイ二乗統計を実行します。

    <! - 3 - >

分類問題の候補を評価するとき、f_classifとchi2は同じトップ変数のセットを提供する傾向があります。両方のアソシエーションメトリックから選択項目をテストすることは、まだ良い習慣です。 SelectPercentileはトップパーセンタイルアソシエーションを直接選択するだけでなく、学習プロセスに参加するフィーチャを除外するパーセンタイルを簡単に決定できるように、最適な変数をランク付けすることもできます。 SelectKBestクラスはその機能に似ていますが、kは数字でありパーセンタイルではなく、上位k個の変数を選択します。

はスケートンから。 feature_selection skewarnからSelectPercentileをインポートします。 feature_selectionインポートf_regression Selector_f = SelectPercentile(f_regression、percentile = 25)Selector_f。 zipのn、sのfit(X、y)(boston。feature_names、Selector_f。scores_):print 'F-score:%3。フィーチャCRIM F-スコア:フィーチャZN F-スコアの場合:75フィーチャー:INDUS F-スコアの場合:153.95フィーチャー%s(%特徴CHAS Fスコア:特徴NOX Fスコアのための112. 59:特徴RM RMスコアのための85:83。機能AGEのF-スコア:33.機能のための58 F-スコア:機能RAD F-スコアのための85.91:機能TAX F-スコアのための76.機能PTRATIO F-スコアのための175.11:63。フィーチャBのF-スコア:601フィーチャLSTATの場合は62フィーチャの出力レベルを使用すると、機械学習モデルで最も重要な変数を選択するのに役立ちますが、発生する可能性のある問題については注意が必要です。 >関連性の高い変数の中には、学習プロセスでノイズとして機能する重複した情報を導入することで、相関性が高いものもあります。

いくつかの変数は、特にバイナリ変数(変数が存在するときは値1を、変数が存在しないときは0を使用して状態または特性を示します)がペナルティされる可能性があります。たとえば、出力には、バイナリ変数CHASがターゲット変数との関連性が最も低いものとして表示されていることがわかります(前の例から、クロスバリデーションフェーズの影響を受けることがわかります)。

単変量選択プロセスは、膨大な数の変数を選択し、他のすべてのメソッドが計算上実行不可能になったときに、大きな利点をもたらします。最良の手順は、SelectPercentileの値を使用可能な変数の半分またはそれ以上に減らし、変数の数を管理可能な数に減らし、結果として貪欲な検索などのより洗練されたより正確な方法の使用を可能にすることです。

  • 欲張り検索を使用する

  • 単変量選択を使用する場合は、保持する変数の数を自分で決定する必要があります。欲張り選択は、学習モデルに関与する機能の数を、エラー測定によって測定された性能。

データに適合するRFECVクラスは、有用な機能の数に関する情報を提供し、それらを指摘し、メソッド変換によってXデータを縮小変数セットに自動的に変換することができます。次の例はsklearnの

です。 feature_selection import RFECVセレクタ= RFECV(エスティメータ=回帰、cv = 10、スコアリング= "平均誤差比較")セレクタ。最適なフィーチャ数:6

RFECVから属性support_を呼び出すことによって、最適な変数セットへのインデックスを取得することができます(「最適フィーチャ数:%d」%セレクタ。n_features_)あなたがそれに合った後のクラス。

プリントボストン。 feature_names [セレクタ。現在、一変量検索の結果とは対照的にCHASが最も予測的な特徴の1つに含まれていることに注意してください。RFECVメソッドは、変数予測でフィーチャが果たす役割を直接評価するため、バイナリ、カテゴリ、数値のいずれであっても重要です。

RFECVメソッドは、一変量のアプローチと比較して確かに効率的です。高度に相関するフィーチャを考慮し、評価尺度(通常はカイ2乗またはFスコアではない)を最適化するように調整されています貪欲なプロセスであるため、計算が要求され、ベストプラクティスのみを近似することができます。

RFECVはデータから最適な変数のセットを学習するので、選択は過大になる可能性があります。これは、他のすべての機械学習アルゴリズムで起こることです。トレーニングデータの異なるサンプルでRFECVを試してみると、使用する最良の変数を確認できます。

Pythonを使用してデータサイエンスの正しい変数を選択する方法 - ダミー

エディタの選択

自転車の点検チェックリスト - ダミー

自転車の点検チェックリスト - ダミー

すぐに自転車の点検をするために数分。あなたの自転車を一時的に与えることは、あなたの次の乗り心地の安全性、快適性、そして楽しさを高めることができます。乗車準備の一環として、次の手順に従ってください:車輪のクイックリリースレバーを開閉して、確認します。

必須サイクリング用具 - ダミー

必須サイクリング用具 - ダミー

あなたはバイクの乗り心地をさらに楽しくするために何百万ものものを買うことができます。自転車用に必要なアクセサリーをいくつかご紹介します。ヘルメット:ヘルメットを着用することはオーストラリアとニュージーランドの法律です。

自転車の範囲を閲覧可能 - ダミー

自転車の範囲を閲覧可能 - ダミー

あなたはサイクリングをすることに決めましたが、その重要なキットを欠いている - バイク!あなたが望む自転車のタイプを正確に知っていない限り、良いアドバイスは、あなたの時間を費やして、自転車で何をするのか、どこに乗るのかを本当に考えてみることです。

エディタの選択

アプリとプライバシー - ダミーを特定する

アプリとプライバシー - ダミーを特定する

Spotifyアプリケーションに登録すると、あなたの個人的な詳細の一部にアクセスする。たとえば、Top10アプリを使用してプレイリストを公開するには、既存のFacebookアカウントにリンクする必要があります。このプロセス中、Facebookはあなたに特定の種類の共有を許可するかどうか尋ねます。

モバイル対応携帯電話を識別する - ダミー

モバイル対応携帯電話を識別する - ダミー

SpotifyモバイルはiPhoneで最も人気がありますが、優れたAndroidバージョン(basks Androidマーケットの5つ星評価のうち5つの評価では5位に入っています)が急速に追いついています。

特集 - ダミー

特集 - ダミー

スポットメイキングは、モバイルでも、あらゆる音楽への普遍的な即時アクセスを可能にしますデバイスまたはデスクトップコンピュータ。 Facebookは人々が古い友達と再会して新しい友達を作るのを助け、Spotifyの助けを借りて青春の歌を再発見し、友人や検索を通じて新鮮な音楽を発見しました。

エディタの選択

IOSアプリケーションでオブジェクト指向設計を使用する方法 - ダミー

IOSアプリケーションでオブジェクト指向設計を使用する方法 - ダミー

IOSは、動作がオブジェクトに関連付けられているプログラムを設計するさまざまな方法です。説明するために、紅茶とスープの作り方を検討することを検討してください。しかし、即座に代わりに活動に飛び込んではいけません。探偵が犯罪現場に入るように行動してください。

IOSアプリケーションでハイレベル抽象化を使用してビデオを再生する方法 - ダミー

IOSアプリケーションでハイレベル抽象化を使用してビデオを再生する方法 - ダミー

このセクションでは、MPMoviePlayerViewControllerクラスの高レベル抽象化を使用してiOSアプリケーションでビデオを再生する方法を説明します。 - (IBAction)playVideo:(id)sender {MPMoviePlayerViewController * moviePlayer = [[MPMoviePlayerViewController alloc] initWithContentURL:movieURL];このコードは、ビデオビューコントローラ内のTTTVideoViewControllerファイルからです。 [self presentMoviePlayerViewControllerAnimated:moviePlayer];}シンプルさ自体!必要なのはURLです。

IOSアプリケーションでJavaスクリプトオブジェクト表記を使用する方法 - ダミー

IOSアプリケーションでJavaスクリプトオブジェクト表記を使用する方法 - ダミー

JavaScript Object Notation (JSON)はiOSアプリのデータを表現する上で事実上の標準になっています。 JSONを使用して、Web上でデータを転送したり、長期保存データを保存および取得するためのフォーマットとして使用することができます。 JSONは、人間が読める形式であり、マシンが理解しやすい形式です。 JSONのデータは1つにまとめることができます...