フィルターの適用
重要
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 (クラシック)のみ
類似のドラッグ アンド ドロップ モジュールは Azure Machine Learning デザイナーで使用できます。
モジュールの概要
この記事では、Machine Learning Studio (クラシック) のフィルターの適用モジュールを使用して、以前に定義したフィルターを適用して値の列を変換する方法について説明します。 フィルターは、ノイズを減らしたり、パターンを強調表示したりするために、デジタル信号処理で使用されます。 したがって、変換する値は常に数値であり、通常は何らかの種類のオーディオまたは視覚的信号を表します。
ヒント
別の種類のフィルターを探していますか? Studio (クラシック) には、データのサンプリング、データのサブセットの取得、不適切な値の削除、テストおよびトレーニングセットの作成 (データの分割、欠損データのクリーンアップ、パーティションとサンプルの適用、 SQL 変換の適用、クリップ値) のモジュールが用意されています。 ソースから読み取るときにデータをフィルター処理する必要がある場合は、「 データのインポート」を参照してください。 オプションは、ソースの種類によって異なります。
データソースに最適なフィルターの種類を決定したら、パラメーターを指定し、[ フィルターの適用 ] を使用してデータセットを変換します。 フィルター設計はフィルターを適用するプロセスから独立しているため、フィルターは再利用できます。 たとえば、予測に使用されるデータを頻繁に操作する場合は、複数のモデルのトレーニングと比較のために複数の種類の移動平均フィルターを設計することがあります。 また、他の実験または別のデータセットに適用するフィルターを保存することもできます。
適用フィルターを構成する方法
フィルターの 適用 モジュールを実験に追加します。 IIR フィルターモジュールは、[フィルター ] カテゴリの [データ変換] で確認できます。
右側の入力に、数値を含むデータセットを1つの入力に接続します。
左側の入力には、既存のフィルターを接続します。 保存されたフィルターを再利用するか、またはフィルターモジュール ( しきい値フィルター、 移動平均フィルター、 中央値フィルター、 IIR フィルター、 FIR フィルター、 ユーザー定義フィルター) のいずれかを使用してフィルターを構成することができます。
[フィルターの適用] の [プロパティ] ペインで、[列セレクターの起動] をクリックし、フィルターを適用する列を選択します。
実験を実行するか、[ フィルターの適用 ] を右クリックして [ 選択されたものを実行] をクリックします。
結果
出力には、選択された定義済みの数学的変換を適用して変換された、選択した列のデータのみが含まれます。
データセット内の他の列を表示する場合は、[ 列の追加 ] モジュールを使用して、元のデータセットとフィルター処理されたデータセットをマージできます。
注意
元の列の値は削除または上書きされていないため、引き続き実験で参照用に使用できます。 ただし、通常、フィルターの出力はモデリングに便利です。
例
機械学習でフィルターを使用する方法の例については、 Azure AI Galleryを参照してください。
- フィルター: 設計した波形データセットを使用して、すべてのフィルターの種類を示します。
テクニカル ノート
このセクションには、実装の詳細、ヒント、よく寄せられる質問への回答が含まれています。
フィルターの適用モジュールは、指定された種類のフィルターを選択された列にバインドします。 異なる種類のフィルターを別の列に適用する必要がある場合は、 [データセット内の列の選択] を使用して列を分離し、別のワークフローで異なる種類のフィルターを適用する必要があります。 詳細については、「 データセット内の列の選択」を参照してください。
フィルターの影響を受けないデータ列はフィルターを通過できません。 そのため、フィルターの適用の出力に含まれるのは変換された数値のみです。 ただし、 列の追加 モジュールを使用して、変換された値をソースデータセットに結合できます。
フィルター期間
フィルター期間は、フィルターの種類によって次のように決定されます。
有限インパルス応答 (FIR)、単純移動平均値、三角移動平均の各フィルターの場合、フィルター期間は有限です。
無限インパルス応答 (IIR)、指数移動平均、累積移動平均の各フィルターの場合、フィルター期間は無限です。
しきい値フィルターの場合、フィルター期間は常に 1 です。
中央値フィルターの場合は、フィルター期間に関係なく、入力信号に NaN と欠損値があると新しい NaN は出力されません。
不足している値
このセクションでは、欠損値が検出された場合のフィルターの種類別の動作について説明します。 一般に、入力データセット内で NaN または欠損値が検出されると、フィルター期間に応じて、次のいくつかのサンプルについて、出力データセットが Nan と影響になります。 したがって、結果は次のようになります。
FIR、単純移動平均、または三角移動平均の各フィルターには、有限の期間があります。 その結果、欠損値の後には、フィルター順序から1を引いた数の Nan が続きます。
IIR、指数移動平均、または累積移動平均の各フィルターには、無期限の期間があります。 その結果、最初の欠損値が検出された後も、Nan は無期限に反映されます。
しきい値フィルターでは、しきい値フィルターの期間は1です。 その結果、欠損値と Nan は反映されません。
中央値フィルターの場合は、フィルター期間に関係なく、入力データセットで NaN と欠損値が検出されると新しい NaN は出力されません。
想定される入力
名前 | 型 | 説明 |
---|---|---|
Assert | IFilter インターフェイス | フィルターの実装 |
データセット | データ テーブル | 入力データセット |
Studio (クラシック) モジュール固有のエラーの一覧については、「 Machine Learning エラーコード」を参照してください。
API 例外の一覧については、「 Machine Learning REST API のエラーコード」を参照してください。
モジュールのパラメーター
名前 | Range | Type | Default | 説明 |
---|---|---|---|---|
列セット | Any | ColumnSelection | NumericAll | フィルター処理する列を選択します |
出力
名前 | 型 | 説明 |
---|---|---|
結果のデータセット | データ テーブル | 出力データセット |