

Amazon Machine Learning サービスの更新や、その新しいユーザーの受け入れは行っていません。このドキュメントは既存のユーザー向けに提供されていますが、更新は終了しています。詳細については、「[Amazon Machine Learning とは](https://docs.aws.amazon.com/machine-learning/latest/dg/what-is-amazon-machine-learning.html)」を参照してください。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# データ再配置


 データ再配置機能を使用すると、入力データの一部にのみ基づいてデータソースを作成できます。例えば、Amazon ML コンソールの **[Create ML Model]** (ML モデルの作成) ウィザードを使用して ML モデルを作成し、デフォルトの評価オプションを選択すると、Amazon ML は自動的に ML モデル評価のためにデータの 30% を予約して、残りの 70% をトレーニングに使用します。この機能は、Amazon ML のデータ再編成機能によって有効になります。

 Amazon ML API を使用してデータソースを作成する場合は、入力データのどの部分に新しいデータソースが基づいているかを指定できます。これを行うには、`DataRearrangement` パラメータの指示を `CreateDataSourceFromS3`、`CreateDataSourceFromRedshift` API、または `CreateDataSourceFromRDS` API に渡します。DataRearrangement 文字列の内容は、データの開始位置と終了位置を含む JSON 文字列で、パーセンテージ、補完フラグ、および分割戦略で表されます。たとえば、次の DataRearrangement 文字列は、最初の 70% のデータがデータソースの作成に使用されることを指定します。

```
{
    "splitting": {
        "percentBegin": 0,
        "percentEnd": 70,
        "complement": false,
        "strategy": "sequential"
    }
}
```

## DataRearrangement パラメータ


Amazon ML がデータソースを作成する方法を変更するには、以下のパラメータを使用します。

**PercentBegin (オプション)**  
`percentBegin` を使用して、データソースのデータの開始位置を指定します。`percentBegin` と `percentEnd` を指定しなければ、データソースの作成時に Amazon ML にすべてのデータが含まれます。  
有効な値は `0`～`100` です。

**PercentEnd (オプション)**  
`percentEnd` を使用して、データソースのデータの終了位置を指定します。`percentBegin` と `percentEnd` を指定しなければ、データソースの作成時に Amazon ML にすべてのデータが含まれます。  
有効な値は `0`～`100` です。

**補完 (オプション)**  
`complement` パラメータは、Amazon ML が `percentBegin` から `percentEnd` の範囲に含まれていないデータを使用してデータソースを作成するようにします。`complement` パラメータは、トレーニングと評価のための補完的なデータソースを作成する必要がある場合に便利です。補完的なデータソースを作成するには、`percentBegin` パラメータで `percentEnd` および `complement` と同じ値を使用します。  
たとえば、次の 2 つのデータソースはデータを共有せず、モデルをトレーニングおよび評価するために使用できます。最初のデータソースには 25% のデータがあり、2 番目のデータソースは 75% のデータがあります。  
評価のためのデータソース  

```
{
    "splitting":{
        "percentBegin":0, 
        "percentEnd":25
    }
}
```
トレーニングのためのデータソース  

```
{
    "splitting":{
        "percentBegin":0, 
        "percentEnd":25, 
        "complement":"true"
    }
}
```
有効な値は、`true` および `false` です。

**戦略 (オプション)**  
Amazon ML がデータソースのデータをどのように分割するかを変更するには、`strategy` パラメータを使用します。  
`strategy` パラメータのデフォルト値は `sequential` です。つまり、Amazon ML は、レコードが入力データに表示される順序で、データソースの `percentBegin` と `percentEnd` 間のすべてのデータレコードを取得します。  
次の 2 つの `DataRearrangement` 行は、順番に順序付けられたトレーニングと評価のデータソースの例です。  
評価のためのデータソース。`{"splitting":{"percentBegin":70, "percentEnd":100, "strategy":"sequential"}}`  
トレーニングのためのデータソース。`{"splitting":{"percentBegin":70, "percentEnd":100, "strategy":"sequential", "complement":"true"}}`  
データをランダムに選択してデータソースを作成するには、`strategy` パラメータを `random` に設定し、ランダムデータ分割のシード値として使用する文字列を指定します (たとえば、データへの S3 パスをランダムなシード文字列として使用できます)。ランダムな分割戦略を選択した場合、Amazon ML は各データ行に擬似乱数を割り当て、`percentBegin` と `percentEnd` の間に割り当てられた数を持つ行を選択します。バイトオフセットをシードとして使用して疑似乱数が割り当てられるため、データを変更すると異なる分割が発生します。既存の順序はすべて保存されます。ランダムな分割戦略により、トレーニングデータと評価データの変数が同様に分散されます。入力データに暗黙的な並べ替え順序が含まれている場合に役立ちます。そうでない場合は、類似しないデータレコードを含むトレーニングおよび評価データソースが作成されます。  
次の 2 つの `DataRearrangement` 行は、非連続的なトレーニングと評価のデータソースの例です。  
評価のためのデータソース  

```
{
    "splitting":{
        "percentBegin":70, 
        "percentEnd":100, 
        "strategy":"random", 
        "strategyParams": {
            "randomSeed":"RANDOMSEED"
        }
    }
}
```
トレーニングのためのデータソース  

```
{
    "splitting":{
        "percentBegin":70, 
        "percentEnd":100, 
        "strategy":"random", 
        "strategyParams": {
            "randomSeed":"RANDOMSEED"
        }
        "complement":"true"
    }
}
```
有効な値は、`sequential` および `random` です。

**(オプション) 戦略。RandomSeed**  
Amazon ML は **[randomSeed]** を使用してデータを分割します。API のデフォルトのシードは空の文字列です。ランダムな分割戦略のシードを指定するには、文字列を渡します。random Seed について詳しくは、「*Amazon Machine Learning デベロッパーガイド*」の「[データのランダムな分割](splitting-types.md#random-splitting)」を参照してください。

Amazon ML でクロスバリデーションを使用する方法を示すサンプルコードについては、「[Github Machine Learning Samples](https://github.com/awslabs/machine-learning-samples)」を参照してください。