

Kami tidak lagi memperbarui layanan Amazon Machine Learning atau menerima pengguna baru untuk itu. Dokumentasi ini tersedia untuk pengguna yang sudah ada, tetapi kami tidak lagi memperbaruinya. Untuk informasi selengkapnya, lihat [Apa itu Amazon Machine Learning](https://docs.aws.amazon.com/machine-learning/latest/dg/what-is-amazon-machine-learning.html).

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Membuat Skema Data untuk Amazon ML
<a name="creating-a-data-schema-for-amazon-ml"></a>

 *Skema* terdiri dari semua atribut dalam data input dan tipe data yang sesuai. Hal ini memungkinkan Amazon ML untuk memahami data dalam sumber data. Amazon ML menggunakan informasi dalam skema untuk membaca dan menafsirkan data input, menghitung statistik, menerapkan transformasi atribut yang benar, dan menyempurnakan algoritme pembelajarannya. Jika Anda tidak memberikan skema, Amazon ML menyimpulkan satu dari data. 

## Contoh Skema
<a name="schema-example"></a>

Agar Amazon ML dapat membaca data input dengan benar dan menghasilkan prediksi yang akurat, setiap atribut harus diberi tipe data yang benar. Mari kita telusuri contoh untuk melihat bagaimana tipe data ditetapkan ke atribut, dan bagaimana atribut dan tipe data disertakan dalam skema. Kami akan menyebut contoh kami “Kampanye Pelanggan” karena kami ingin memprediksi pelanggan mana yang akan menanggapi kampanye email kami. File input kami adalah file.csv dengan sembilan kolom:

```
1,3,web developer,basic.4y,no,no,1,261,0

2,1,car repair,high.school,no,no,22,149,0

3,1,car mechanic,high.school,yes,no,65,226,1

4,2,software developer,basic.6y,no,no,1,151,0
```

Ini skema untuk data ini:

```
{
    "version": "1.0",
    "rowId": "customerId",
    "targetAttributeName": "willRespondToCampaign",
    "dataFormat": "CSV",
    "dataFileContainsHeader": false,
    "attributes": [
        {
            "attributeName": "customerId",
            "attributeType": "CATEGORICAL"
        },
        {
            "attributeName": "jobId",
            "attributeType": "CATEGORICAL"
        },
        {
            "attributeName": "jobDescription",
            "attributeType": "TEXT"
        },
        {
            "attributeName": "education",
            "attributeType": "CATEGORICAL"
        },
        {
            "attributeName": "housing",
            "attributeType": "CATEGORICAL"

        },
        {
            "attributeName": "loan",
            "attributeType": "CATEGORICAL"

        },
        {
            "attributeName": "campaign",
            "attributeType": "NUMERIC"
        },
        {
            "attributeName": "duration",
            "attributeType": "NUMERIC"
        },

        {
            "attributeName": "willRespondToCampaign",
            "attributeType": "BINARY"
        }
        
    ]
}
```

Dalam file skema untuk contoh ini, nilai untuk `rowId` adalah`customerId`:

```
"rowId": "customerId",
```

Atribut `willRespondToCampaign` didefinisikan sebagai atribut target: 

```
"targetAttributeName": "willRespondToCampaign ",
```

 `customerId`Atribut dan tipe `CATEGORICAL` data dikaitkan dengan kolom pertama, `jobId` atribut dan tipe `CATEGORICAL` data dikaitkan dengan kolom kedua, `jobDescription` atribut dan tipe `TEXT` data dikaitkan dengan kolom ketiga, `education` atribut dan tipe `CATEGORICAL` data dikaitkan dengan kolom keempat, dan seterusnya. Kolom kesembilan dikaitkan dengan `willRespondToCampaign` atribut dengan tipe `BINARY` data, dan atribut ini juga didefinisikan sebagai atribut target. 

## Menggunakan targetAttributeName Field
<a name="using-the-targetattributename-field"></a>

`targetAttributeName`Nilai adalah nama atribut yang ingin Anda prediksi. Anda harus menetapkan `targetAttributeName` saat membuat atau mengevaluasi model.

Saat Anda melatih atau mengevaluasi model ML, `targetAttributeName` mengidentifikasi nama atribut dalam data input yang berisi jawaban “benar” untuk atribut target. Amazon ML menggunakan target, yang mencakup jawaban yang benar, untuk menemukan pola dan menghasilkan model ML.

Saat Anda mengevaluasi model Anda, Amazon ML menggunakan target untuk memeriksa keakuratan prediksi Anda. Setelah membuat dan mengevaluasi model ML, Anda dapat menggunakan data dengan unassigned `targetAttributeName` untuk menghasilkan prediksi dengan model ML Anda.

Anda menentukan atribut target di konsol Amazon Amazon saat membuat sumber data, atau dalam file skema. Jika Anda membuat file skema Anda sendiri, gunakan sintaks berikut untuk menentukan atribut target: 

```
"targetAttributeName": "exampleAttributeTarget",
```

 Dalam contoh ini, `exampleAttributeTarget` adalah nama atribut dalam file input Anda yang merupakan atribut target.

## Menggunakan Bidang RowID
<a name="using-the-rowid-field"></a>

 `row ID`Ini adalah bendera opsional yang terkait dengan atribut dalam data input. Jika ditentukan, atribut ditandai sebagai disertakan dalam output prediksi. `row ID` Atribut ini memudahkan untuk mengaitkan prediksi mana yang sesuai dengan pengamatan mana. Contoh barang `row ID` adalah ID pelanggan atau atribut unik serupa. 

**catatan**  
ID baris hanya untuk referensi Anda. Amazon ML tidak menggunakannya saat melatih model ML. Memilih atribut sebagai ID baris mengecualikannya dari yang digunakan untuk melatih model ML.

Anda menentukan `row ID` di konsol Amazon ML saat membuat sumber data, atau dalam file skema. Jika Anda membuat file skema Anda sendiri, gunakan sintaks berikut untuk menentukan: `row ID` 

```
"rowId": "exampleRow",
```

 Dalam contoh sebelumnya, `exampleRow` adalah nama atribut dalam file input Anda yang didefinisikan sebagai ID baris. 

Saat membuat prediksi batch, Anda mungkin mendapatkan output berikut: 

```
tag,bestAnswer,score
55,0,0.46317
102,1,0.89625
```

 Dalam contoh ini, `RowID` mewakili atribut`customerId`. Misalnya, `55` CustomerID diprediksi akan menanggapi kampanye email kami dengan kepercayaan diri rendah (0.46317), `customerId` `102` sementara diprediksi akan menanggapi kampanye email kami dengan keyakinan tinggi (0.89625).

## Menggunakan AttributeType Field
<a name="assigning-data-types"></a>

Di Amazon ML, ada empat tipe data untuk atribut:

**Biner**  
Pilih atribut `BINARY` yang hanya memiliki dua kemungkinan status, seperti `yes` atau`no`.  
Misalnya, atribut`isNew`, untuk melacak apakah seseorang adalah pelanggan baru, akan memiliki `true` nilai untuk menunjukkan bahwa individu tersebut adalah pelanggan baru, dan `false` nilai untuk menunjukkan bahwa dia bukan pelanggan baru.  
Nilai negatif yang valid adalah`0`,`n`,`no`,`f`, dan`false`.  
Nilai positif yang valid adalah`1`,`y`,`yes`,`t`, dan`true`.  
Amazon ML mengabaikan kasus input biner dan menghapus ruang putih di sekitarnya. Misalnya, `" FaLSe "` adalah nilai biner yang valid. Anda dapat mencampur nilai biner yang Anda gunakan dalam sumber data yang sama, seperti menggunakan,`true`, `no` dan. `1` Amazon ML hanya mengeluarkan `0` dan `1` untuk atribut biner.

**Kategoris**  
Pilih `CATEGORICAL` atribut yang mengambil sejumlah nilai string unik. Misalnya, ID pengguna, bulan, dan kode pos adalah nilai kategoris. Atribut kategoris diperlakukan sebagai string tunggal, dan tidak diberi token lebih lanjut.  


**Numerik**  
Pilih `NUMERIC` atribut yang mengambil kuantitas sebagai nilai.   
Misalnya, suhu, berat, dan kecepatan klik adalah nilai numerik.  
Tidak semua atribut yang menyimpan angka bersifat numerik. Atribut kategoris, seperti hari dalam sebulan dan IDs, sering direpresentasikan sebagai angka. Untuk dianggap numerik, angka harus sebanding dengan angka lain. Misalnya, ID pelanggan tidak `664727` memberi tahu Anda apa pun tentang ID pelanggan`124552`, tetapi bobot `10` memberi tahu Anda bahwa atribut itu lebih berat daripada atribut dengan bobot. `5` Hari dalam sebulan tidak numerik, karena yang pertama dari satu bulan dapat terjadi sebelum atau sesudah bulan kedua bulan berikutnya.  
Saat Anda menggunakan Amazon ML untuk membuat skema Anda, ia menetapkan tipe `Numeric` data ke semua atribut yang menggunakan angka. Jika Amazon ML membuat skema Anda, periksa penetapan yang salah dan setel atribut tersebut. `CATEGORICAL` 

**Teks**  
Pilih `TEXT` atribut yang merupakan string kata. Saat membaca dalam atribut teks, Amazon ML mengubahnya menjadi token, dibatasi oleh spasi putih.   
Misalnya, `email subject` menjadi `email` dan`subject`, dan `email-subject here` menjadi `email-subject` dan`here`. 

Jika tipe data untuk variabel dalam skema pelatihan tidak cocok dengan tipe data untuk variabel tersebut dalam skema evaluasi, Amazon ML mengubah tipe data evaluasi agar sesuai dengan tipe data pelatihan. Misalnya, jika skema data pelatihan menetapkan tipe data `TEXT` ke variabel`age`, tetapi skema evaluasi menetapkan tipe data ke`NUMERIC`, `age` maka Amazon ML memperlakukan usia dalam data evaluasi sebagai `TEXT` variabel, bukan. `NUMERIC`

Untuk informasi tentang statistik yang terkait dengan setiap tipe data, lihat[Statistik Deskriptif](data-insights.md#descriptive-statistics).

## Menyediakan Skema ke Amazon ML
<a name="methods-for-creating-a-data-schema"></a>

Setiap sumber data membutuhkan skema. Anda dapat memilih dari dua cara untuk menyediakan Amazon ML dengan skema: 
+  Izinkan Amazon ML menyimpulkan tipe data dari setiap atribut dalam file data input dan secara otomatis membuat skema untuk Anda.
+  Berikan file skema saat Anda mengunggah data Amazon Simple Storage Service (Amazon S3).

### Mengizinkan Amazon ML Membuat Skema Anda
<a name="allowing-amazon-create-your-schema"></a>

Saat Anda menggunakan konsol Amazon ML untuk membuat sumber data, Amazon ML menggunakan aturan sederhana, berdasarkan nilai variabel Anda, untuk membuat skema Anda. Kami sangat menyarankan agar Anda meninjau skema Amazon ML-dibuat, dan memperbaiki tipe data jika tidak akurat. 

### Menyediakan Skema
<a name="providing-schema-to-amazon-ml"></a>

 Setelah Anda membuat file skema Anda, Anda harus membuatnya tersedia untuk Amazon ML. Anda memiliki dua pilihan: 

1.  Berikan skema dengan menggunakan konsol Amazon ML.

    Gunakan konsol untuk membuat sumber data Anda, dan sertakan file skema dengan menambahkan ekstensi.schema ke nama file file data input Anda. Misalnya, jika URI Amazon Simple Storage Service (Amazon S3) ke data input Anda adalah s3:///.csv.schema. my-bucket-name data/input.csv, the URI to your schema will be s3://my-bucket-name/data/input Amazon ML secara otomatis menemukan file skema yang Anda berikan alih-alih mencoba menyimpulkan skema dari data Anda. 

    Untuk menggunakan direktori file sebagai input data Anda ke Amazon ML, tambahkan ekstensi.schema ke jalur direktori Anda. Misalnya, jika file data Anda berada di lokasi s3:///.schema. examplebucket/path/to/data/, the URI to your schema will be s3://examplebucket/path/to/data 

1.  Menyediakan skema dengan menggunakan Amazon ML API.

    Jika Anda berencana untuk memanggil Amazon MLAPI untuk membuat sumber data Anda, Anda dapat mengunggah file skema ke Amazon S3, dan kemudian memberikan URI ke file tersebut dalam atribut API. `DataSchemaLocationS3` `CreateDataSourceFromS3` Untuk informasi lebih lanjut, lihat [CreateDataSourceFromS3](https://docs.aws.amazon.com/machine-learning/latest/APIReference/API_CreateDataSourceFromS3.html). 

    Anda dapat memberikan skema langsung di `CreateDataSource` payload\$1 `APIs` alih-alih menyimpannya terlebih dahulu ke Amazon S3. Anda melakukan ini dengan menempatkan string skema penuh dalam `DataSchema` atribut`CreateDataSourceFromS3`,`CreateDataSourceFromRDS`, atau `CreateDataSourceFromRedshift` APIs. Untuk informasi selengkapnya, lihat [Referensi API Amazon Machine Learning](https://docs.aws.amazon.com/machine-learning/latest/APIReference/). 