データセットへの変換
この記事では、Azure Machine Learning デザイナーのデータセットへの変換コンポーネントを使用し、パイプラインのデータをデザイナーの内部形式に変換する方法について説明します。
ほとんどの場合、変換は必須ではありません。 Azure Machine Learning では、データに対して何らかの操作を実行する時点で、データがネイティブのデータセット形式に暗黙的に変換されます。
データのセットに対して何らかの正規化やクリーニングを実行し、その変更が他のパイプラインで確実に使用されるようにしたい場合には、データをこのデータセット形式に保存することをお勧めします。
注意
データセットへの変換では、データの形式のみが変化します。 ワークスペースにデータの新しいコピーは保存されません。 データセットを保存するには、出力ポートをダブルクリックし、 [データセットとして保存] を選択して新しい名前を入力します。
データセットへの変換の使用方法
データセットへの変換を使用する前に、メタデータの編集コンポーネントを使用してデータセットを準備することをお勧めします。 必要に応じて列名の追加や変更、データ型の調整などの編集を加えることができます。
データセットへの変換コンポーネントをパイプラインに追加します。 このコンポーネントは、デザイナーの [データ変換] カテゴリ内にあります。
データセットを出力する任意のコンポーネントにそれを接続します。
データが表形式の場合は、データセットに変換できます。 これには、データのインポートを使用して読み込まれたデータ、データの手動入力を使用して作成されたデータ、または変換の適用を使用して変換されたデータセットが含まれます。
[アクション] ボックスの一覧で、データセットを保存する前にデータのクリーンアップを実行するかどうかを指定します。
[なし]: データをそのまま使用します。
SetMissingValue:データセット内の特定の値を欠損値に設定します。 既定のプレースホルダーは疑問符 (?) ですが、[カスタム欠損値] オプションを使用して別の値を入力することもできます。 たとえば、 [Custom missing value](カスタム欠損値) に「Taxi」と入力すると、データセット内に出てくる Taxi という値がすべて欠損値に変わります。
ReplaceValues:このオプションを使用して、その他の正確な値に置き換えられる単一の正確な値を指定します。 欠損値とカスタム値のどちらを置換するかに応じて、 [置換] の方法を次のように設定します。
- [Missing](欠損) :入力データセット内の欠損値を置き換える場合にこのオプションを選択します。 [新しい値] には、欠損値を置き換える値を入力します。
- Custom:入力データセット内のカスタム値を置き換える場合にこのオプションを選択します。 [Custom value](カスタム値) には、検索する値を入力します。 たとえば、欠損値のプレースホルダーとして使用される文字列
obs
がデータに含まれている場合は、「obs
」と入力します。 [新しい値] には、元の文字列を置き換える新しい値を入力します。
ReplaceValues 操作は、完全一致にのみ適用されることに注意してください。 たとえば、
obs.
やobsolete
といった文字列は影響を受けません。パイプラインを送信します。
結果
- 結果のデータセットを新しい名前で保存するには、コンポーネントの右パネルにある [出力] タブの下の [データセットの登録] アイコンを選択します。
テクニカル ノート
データセットを入力として受け取るコンポーネントは、CSV ファイルまたは TSV ファイルのデータを受け取ることもできます。 入力は、コンポーネント コードの実行前に前処理されます。 その前処理は、入力に対してデータセットへの変換コンポーネントを実行した場合と同じものです。
SVMLight 形式からデータセットに変換することはできません。
カスタム置換操作を指定する場合、検索と置換の操作は完全な値に適用されます。 部分一致は許可されません。 たとえば、3 を -1 や 33 に置き換えることはできますが、35 などの 2 桁の数字の中の 3 を置き換えることはできません。
カスタム置換操作では、列の現在のデータ型に準拠していない文字を置換として使用すると、置換は自動的に失敗します。
次のステップ
Azure Machine Learning で使用できる一連のコンポーネントを参照してください。