データセットへの変換

データの入力を Microsoft Azure Machine Learning で使用される内部のデータセットの形式に変換します

Category: データ形式の変換

注意

適用対象: Machine Learning Studio (クラシック)

このコンテンツは、Studio (クラシック) のみに関連しています。 Azure Machine Learning デザイナーに同様のドラッグアンドドロップモジュールが追加されました。 この記事では、2つのバージョンの比較について詳しく説明します。

モジュールの概要

この記事では、Azure Machine Learning Studio (クラシック) の データセットへの変換 モジュールを使用して、実験に必要なデータを、Studio (クラシック) で使用される内部形式に変換する方法について説明します。

データに対して何らかの操作が実行されるときに、Azure Machine Learning によってデータがネイティブデータセット形式に暗黙的に変換されるため、ほとんどの場合、変換は必要ありません。

ただし、一連のデータに対してある種の正規化やクリーニングを実行していて、変更内容を今後の実験でも確実に使用する場合は、データをデータセット形式で保存することをお勧めします。

注意

データセットへの変換ではデータの形式が変更されるだけであり、データの新しいコピーがワークスペースに保存されるわけではありません。 データセットを保存するには、出力ポートをダブルクリックし、[Save as dataset] (データセットとして保存) を選択して新しい名前を入力します。

データセットへの変換の使用方法

データセットへの変換を使用する前に、メタデータの編集モジュールを使用してデータセットを準備することをお勧めします。 列名の追加や変更、データ型の調整などを行うことができます。

  1. データセットへの変換モジュールを実験に追加します。 このモジュールは Azure Machine Learning Studio (クラシック) の [ データ形式の変換 ] カテゴリで確認できます。

  2. データセットを出力する任意のモジュールに、それを接続します。

    データが表形式の場合は、データセットに変換できます。 これには、 データのインポートを使用して読み込まれたデータ、 Enter dataを使用して作成されたデータ、カスタムモジュールのコードによって生成されたデータ、 apply 変換を使用して変換されたデータセット、 SQL 変換の適用によって生成または変更されたデータセットが含まれます

  3. [アクション] ドロップダウン リストで、データセットを保存する前にデータのクリーンアップを実行するかどうかを指定します。

    • なし: データをそのまま使用します。

    • SetMissingValue: 欠損値があるすべての場所で、データセットに挿入されるプレースホルダーを指定します。 既定のプレースホルダーは疑問符 (?) ですが、[Custom missing value] (カスタム欠損値) オプションを使用して別の値を入力することもできます。

    • ReplaceValues:このオプションを使用して、その他の正確な値に置き換えられる単一の正確な値を指定します。 たとえば、欠損値のプレースホルダーとして使用される文字列がデータに含まれている場合は、 obs 次のオプションを使用してカスタムの置換操作を指定できます。

      1. 置換カスタム に設定

      2. [Custom value] (カスタム値) には、検索する値を入力します。 この場合は、「」と入力 obs します。

      3. [New value] (新しい値) には、元の文字列を置き換える新しい値を入力します。 この場合は、次のように入力します。 ?

    ReplaceValues 操作は、完全一致にのみ適用されることに注意してください。 たとえば、obs.obsolete といった文字列は影響を受けません。

    • Sparc 出力: データセットがスパースであることを示します。 スパースデータベクターを作成することにより、欠損値がスパースデータ分布に影響を与えないようにすることができます。 このオプションを選択した後、欠損値とゼロ値をどのように処理するかを指定する必要があります。

    0以外の値を削除するには、[ 削除 ] オプションをクリックして、削除する1つの値を入力します。 欠損値を削除することも、ベクターから削除するカスタム値を設定することもできます。 完全一致のみが削除されます。 たとえば、 x [ 値の削除 ] ボックスに「」と入力した場合、行は xx 影響を受けません。

    既定では、[ ゼロの削除 ] オプションがに設定されています。これは、 True スパース列の作成時にすべてのゼロ値が削除されることを意味します。

  4. 実験を実行するか、 データセットへの変換 モジュールを右クリックして、[ 選択した ものを実行] を選択します。

結果

  • 結果のデータセットを新しい名前で保存するには、データセットへの変換の出力を右クリックし、[Save as Dataset] (データセットとして保存) を選択します。

使用例

データセットへの変換モジュールを使用する方法の例については、 Azure AI Galleryを参照してください。

  • CRM サンプル: 共有データセットから読み取り、ローカルワークスペースにデータセットのコピーを保存します。

  • フライト遅延の例: 欠損値を置き換えることでクリーニングされたデータセットを保存し、将来の実験で使用できるようにします。

テクニカル ノート

このセクションには、実装の詳細、ヒント、よく寄せられる質問への回答が含まれています。

  • データセットを入力として受け取るモジュールは、CSV、TSV、または ARFF 形式のデータも受け取ることができます。 任意のモジュール コードが実行される前に、入力の前処理が実行されます。これは入力に対してデータセットへの変換モジュールを実行するのと同じです。

  • SVMLight 形式からデータセットに変換することはできません。

  • カスタム置換操作を指定する場合、検索と置換の操作は完全な値に適用されます。部分的な一致は許可されません。 たとえば、3 を-1 または 33 に置き換えることはできますが、35 などの 2 桁の数字の中の 3 を置き換えることはできません。

  • カスタム置換操作では、列の現在のデータ型に準拠していない文字を置換として使用すると、置換は自動的に失敗します。

  • スパースで、欠損値がある数値データを使用するデータを保存する必要がある場合、内部的には、Studio (クラシック) は、Math.NET 数値ライブラリ内のクラスである、Sparc ベクターを使用してスパース配列をサポートします。 ゼロを使用して欠損値があるデータを準備し、次に、引数を指定して Dataset への変換 を使用 して、 0 を 削除 します。

想定される入力

名前 Type 説明
データセット データ テーブル 入力データセット

モジュールのパラメーター

名前 Range Type Default 説明
アクション List アクション メソッド None 入力データセットに適用される操作

出力

名前 Type 説明
結果のデータセット データ テーブル 出力データセット

関連項目

データ形式の変換
モジュールの一覧 (アルファベット順)