データ変換-サンプルと分割
重要
Machine Learning Studio (クラシック) のサポートは、2024 年 8 月 31 日に終了します。 その日までに、Azure Machine Learning に切り替えすることをお勧めします。
2021 年 12 月 1 日以降、新しい Machine Learning Studio (クラシック) リソースは作成できません。 2024 年 8 月 31 日まで、既存の Machine Learning Studio (クラシック) リソースを引き続き使用できます。
- ML Studio (クラシック) から Azure Machine Learning への機械学習プロジェクトの移動に関する情報を参照してください。
- Azure Machine Learning についての詳細を参照してください。
ML Studio (クラシック) のドキュメントは廃止予定であり、今後更新されない可能性があります。
この記事では、データのパーティション分割またはサンプリングに使用できる Machine Learning Studio (クラシック) のモジュールについて説明します。
注意
適用対象: Machine Learning Studio (クラシック)のみ
類似のドラッグ アンド ドロップ モジュールは Azure Machine Learning デザイナーで使用できます。
機械学習では、データセットの分割とサンプリングはどちらも重要なタスクです。 たとえば、データをトレーニングセットとテストセットに分割して、提示されたデータセットのモデルを評価できるようにするのが一般的です。 また、ビッグデータの時代 (年号) では、トレーニングデータにクラスが公平に配分されるように、サンプリングもますます重要になっています。 サンプリングを使用すると、必要以上に多くのデータを処理しないようにすることもできます。
Machine Learning Studio (クラシック) モジュールを使用して、データセットの分割方法やサンプルデータセットをカスタマイズできます。
- データの属性に基づいてトレーニングデータをフィルター処理します。
- 層化サンプリングを実行して、 n 個のグループの中でクラス変数を均等に分割します。
- カスタム比率を使用して、ソースデータをトレーニングデータセットとテストデータセットに分割します。
- データに正規表現を適用して、無効な値を除外します。
適切操作の選択: 分割またはサンプリング
Machine Learning Studio (クラシック) には、タスクをカプセル化する2つのモジュールが用意されています。 モジュールは似ていますが、使用方法が異なり、補完的な機能が用意されています。 実験で両方のモジュールを使用して、適切な量と適切なデータの組み合わせを取得することが考えられます。
次に、各モジュールが一般的に使用されているタスクを確認することで、 データの分割 モジュールと パーティションおよびサンプル モジュールを比較します。
データの分割モジュールの使用
- データを2つのグループに分割します。 データの 分割 モジュールを使用します。 モジュールでは、データの分割が2つだけ生成されます。 データを分割する条件と、各サブセットに格納するデータの割合を指定できます。 データを分割 すると、条件を満たしていないデータのサブセットは常に保存されます。
- ラベル値をデータセットに均等に割り当てます。 指定された列で分配するオプションは、両方のモジュールでサポートされています。 ただし、2つのデータセットを作成する必要があり、ほとんどが [ラベル] 列に関心がある場合は、 データの分割 モジュールが簡単なソリューションになります。
データの分割モジュールの使用例
CSV ファイルから非常に大きなデータセットをインポートしたとします。 データセットには、顧客の人口統計が含まれます。 異なる国の顧客に対して異なるモデルを作成する場合は、列の Country-Region
値を使用してデータを分割することを決定します。 このタスクを実行するには、次の手順を実行します。
- データの 分割 モジュールを追加し、フィールドに
Country-Region
式を指定します。 残りのデータは、セカンダリ出力で使用できます。 - データの分割モジュールの別のインスタンスを追加します。
- 手順 1 と 2 を繰り返します。 反復処理ごとに、式に別の国を指定します。
データの分割モジュールは、数値データの正規表現、テキストデータ、および相対式の両方をサポートしています。
データの分割モジュールには、特殊なデータセットを分割するために使用できる高度な機能も用意されています。 機能を使用して、推奨モデルを作成し、予測を生成します。
パーティションとサンプルモジュールの使用
- サンプリング。 常に パーティションとサンプル モジュールを使用します。 モジュールには、層化サンプリングのいくつかのオプションを含む、複数のカスタマイズ可能なサンプリングメソッドが用意されています。
- ケースを複数のグループに割り当てます。 パーティションとサンプルモジュールで [フォールド] または [フォールドの選択] オプションを使用します。
- データのサブセットのみを返します。 パーティションとサンプルモジュールを使用します。 モジュールは、プライマリ出力に対して指定されたサブセットを提供します。 残りのデータは、セカンダリ出力で使用できます。
- データセットの上位2000行のみを取得します。 パーティションとサンプルモジュールを使用します。 ヘッドオプションを選択します。 これは、新しい実験をテストするときに、ワークフローの短い試用版を実行する場合に特に便利です。
パーティションとサンプルモジュールの使用例
パーティションとサンプルモジュールでは、2つだけではなく、データの複数のパーティションを生成できます。 同時に、さまざまなサンプリング操作を実行できます。
たとえば、データの10% だけを取得し、ターゲット属性の分布がソースデータと同じであることを確認する必要があるとします。 このタスクを実行するには、次の手順を実行します。
- パーティションとサンプルモジュールを追加します。
- サンプリングモードを選択し、 10%を指定します。
- [層化サンプリング] オプションを選択し、対象の属性を含む列を選択します。
すべてのデータを保持する必要がない場合は、 パーティションとサンプル モジュールを使用します。 残りのデータはワークスペースにまだ存在しますが、実験の一部としてさらに処理する必要はありません。
関連タスク
- サンプルのまれなケースの数を増やすか、ターゲット値のケースを再調整します。 SMOTE モジュールを使用します。
- データ領域を最もよく表す特徴の組み合わせを見つけることにより、次元の削減を実行します。 主要なコンポーネント分析 モジュールを使用します。
- 特徴とカウントの分析に基づいてコンパクトな特徴を作成する:カウントのラーニングモジュールを使用します。
- 指定された列のみを使用して、ビューまたは射影を作成します。データセットの列を削除または非表示にする:データセット内の列の選択とSQL 変換モジュールの適用。
- より複雑なデータフィルター、グループ化、または変換を適用する: R スクリプトの実行およびSQL 変換モジュールを適用します。
モジュールの一覧
このカテゴリには、次のモジュールが含まれています。
- パーティションとサンプル: サンプリングに基づいて、データセットの複数のパーティションを作成します。
- データの分割: データセットの行を2つの異なるセットに分割します。