Menyediakan Metadata Set Data untuk Pekerjaan Pelatihan dengan File Manifes yang Ditambah - Amazon SageMaker

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

Menyediakan Metadata Set Data untuk Pekerjaan Pelatihan dengan File Manifes yang Ditambah

Untuk menyertakan metadata dengan kumpulan data Anda dalam pekerjaan pelatihan, gunakan file manifes tambahan. Saat menggunakan file manifes yang ditambah, kumpulan data Anda harus disimpan di Amazon Simple Storage Service (Amazon S3), dan Anda harus mengonfigurasi tugas latihan untuk menggunakan kumpulan data yang disimpan di sana. Anda menentukan lokasi dan format kumpulan data ini untuk satu atau lebih Channel. Manifestasi yang diperbesar hanya dapat mendukung mode input Pipa. Lihat bagian, InputModedi Channeluntuk mempelajari lebih lanjut tentang mode input pipa.

Saat menentukan parameter saluran, Anda menentukan jalur ke file, yang disebut aS3Uri. Amazon SageMaker menafsirkan ini URI berdasarkan yang ditentukan S3DataType dalam S3DataSource. AugmentedManifestFileOpsi ini mendefinisikan format manifes yang menyertakan metadata dengan data input. Menggunakan file manifes yang diperbesar adalah alternatif untuk preprocessing saat Anda telah memberi label data. Untuk pekerjaan pelatihan menggunakan data berlabel, Anda biasanya perlu melakukan pra-proses kumpulan data untuk menggabungkan data input dengan metadata sebelum pelatihan. Jika dataset pelatihan Anda besar, preprocessing bisa memakan waktu dan mahal.

Format File Manifes yang Ditambah

File manifes yang diperbesar harus diformat dalam format JSONGaris. Dalam format JSON Lines, setiap baris dalam file adalah JSON objek lengkap diikuti oleh pemisah baris baru.

Selama pelatihan, SageMaker parsing setiap JSON baris dan mengirimkan beberapa atau semua atributnya ke algoritma pelatihan. Anda menentukan konten atribut mana yang akan dilewati dan urutan untuk meneruskannya dengan AttributeNames parameter CreateTrainingJobAPI. AttributeNamesParameter adalah daftar urutan nama atribut yang SageMaker dicari dalam JSON objek untuk digunakan sebagai input pelatihan.

Misalnya, jika Anda mencantumkan ["line", "book"]AttributeNames, data input harus menyertakan nama atribut line dan book dalam urutan yang ditentukan. Untuk contoh ini, konten file manifes tambahan berikut ini valid:

{"author": "Herman Melville", "line": "Call me Ishmael", "book": "Moby Dick"} {"line": "It was love at first sight.", "author": "Joseph Heller", "book": "Catch-22"}

SageMaker mengabaikan nama atribut yang tidak terdaftar bahkan jika mereka mendahului, mengikuti, atau berada di antara atribut yang terdaftar.

Saat menggunakan file manifes tambahan, perhatikan pedoman berikut:

  • Urutan atribut yang tercantum dalam AttributeNames parameter menentukan urutan atribut yang diteruskan ke algoritme dalam pekerjaan pelatihan.

  • Yang terdaftar AttributeNames dapat menjadi bagian dari semua atribut di JSON baris. SageMaker mengabaikan atribut yang tidak terdaftar dalam file.

  • Anda dapat menentukan semua jenis data yang diizinkan oleh JSON formatAttributeNames, termasuk teks, numerik, array data, atau objek.

  • Untuk menyertakan S3 URI sebagai nama atribut, tambahkan akhiran -ref ke dalamnya.

Jika nama atribut berisi akhiran-ref, nilai atribut harus berupa S3 URI ke file data yang dapat diakses oleh pekerjaan pelatihan. Misalnya, jika AttributeNames berisi["image-ref", "is-a-cat"], contoh berikut menunjukkan file manifes augmented valid:

{"image-ref": "s3://amzn-s3-demo-bucket/sample01/image1.jpg", "is-a-cat": 1} {"image-ref": "s3://amzn-s3-demo-bucket/sample02/image2.jpg", "is-a-cat": 0}

Dalam kasus JSON baris pertama dari file manifes ini, SageMaker mengambil image1.jpg file dari s3://amzn-s3-demo-bucket/sample01/ dan representasi string is-a-cat atribut "1" untuk klasifikasi gambar.

Tip

Untuk membuat file manifes tambahan, gunakan Amazon SageMaker Ground Truth dan buat pekerjaan pelabelan. Untuk informasi lebih lanjut tentang output dari pekerjaan pelabelan, lihatData Keluaran.

Alirkan Data File Manifes Tertambah

Format manifes yang diperbesar memungkinkan Anda melakukan pelatihan dalam mode Pipa menggunakan file tanpa perlu membuat file RecorDio. Anda perlu menentukan saluran kereta dan validasi sebagai nilai untuk InputDataConfig parameter CreateTrainingJobpermintaan. File manifes yang diperbesar hanya didukung untuk saluran yang menggunakan mode input Pipe. Untuk setiap saluran, data diekstraksi dari file manifes yang ditambah dan dialirkan (secara berurutan) ke algoritme melalui pipa bernama saluran. Mode pipa menggunakan metode first in first out (FIFO), sehingga catatan diproses sesuai urutan antrian. Untuk informasi tentang mode input Pipa, lihat Input Mode.

Nama atribut dengan titik "-ref" akhiran ke data biner yang telah diformat sebelumnya. Dalam beberapa kasus, algoritma tahu cara mengurai data. Dalam kasus lain, Anda mungkin perlu membungkus data sehingga catatan dibatasi untuk algoritme. Jika algoritme kompatibel dengan data berformat Recordio, menentukan RecordIO untuk memecahkan masalah ini. RecordWrapperType Jika algoritme tidak kompatibel dengan RecordIO format, tentukan None RecordWrapperType dan pastikan data Anda diurai dengan benar untuk algoritme Anda.

Menggunakan ["image-ref", "is-a-cat"] contoh, jika Anda menggunakan pembungkus RecorDo, aliran data berikut dikirim ke antrian:

recordio_formatted(s3://amzn-s3-demo-bucket/foo/image1.jpg)recordio_formatted("1")recordio_formatted(s3://amzn-s3-demo-bucket/bar/image2.jpg)recordio_formatted("0")

Gambar yang tidak dibungkus dengan format RecorDo, dialirkan dengan nilai is-a-cat atribut yang sesuai sebagai satu record. Ini dapat menyebabkan masalah karena algoritme mungkin tidak membatasi gambar dan atribut dengan benar. Untuk informasi selengkapnya tentang penggunaan file manifes tambahan untuk klasifikasi gambar, lihat Melatih dengan Augmented Manifest Image Format.

Dengan file manifes yang ditambah dan mode Pipa secara umum, batas ukuran EBS volume tidak berlaku. Ini termasuk pengaturan yang sebaliknya harus berada dalam batas ukuran EBS volume seperti S3DataDistributionType . Untuk informasi selengkapnya tentang mode Pipa dan cara menggunakannya, lihat Menggunakan Algoritma Pelatihan Anda Sendiri - Konfigurasi Data Input.

Menggunakan File Augmented Manifest (Konsol)

Untuk menyelesaikan prosedur ini, Anda perlu:

  • Bucket S3 tempat Anda menyimpan file manifes yang diperbesar. URL

  • Untuk menyimpan data yang tercantum dalam file manifes tambahan di bucket S3.

  • Bucket S3 tempat Anda ingin menyimpan output pekerjaan. URL

Untuk menggunakan file manifes tambahan dalam pekerjaan pelatihan (konsol)
  1. Buka SageMaker konsol Amazon di https://console.aws.amazon.com/sagemaker/.

  2. Di panel navigasi, pilih Pelatihan, lalu pilih Pekerjaan pelatihan.

  3. Pilih Buat pekerjaan pelatihan.

  4. Berikan nama untuk pekerjaan pelatihan. Nama harus unik dalam AWS Wilayah di sebuah AWS akun. Ini dapat memiliki 1 hingga 63 karakter. Karakter yang valid: a-z, A-Z, 0-9, dan.: + = @ _% - (tanda hubung).

  5. Pilih algoritma yang ingin Anda gunakan. Untuk informasi tentang algoritme bawaan yang didukung, lihatGunakan algoritme SageMaker bawaan Amazon atau model yang telah dilatih sebelumnya. Jika Anda ingin menggunakan algoritma khusus, pastikan itu kompatibel dengan mode Pipa.

  6. (Opsional) Untuk konfigurasi Sumber Daya, terima nilai default atau, untuk mengurangi waktu komputasi, tingkatkan konsumsi sumber daya.

    1. (Opsional) Untuk tipe Instance, pilih tipe instans komputasi ML yang ingin Anda gunakan. Dalam kebanyakan kasus, ml.m4.xlarge sudah cukup.

    2. Untuk hitungan Instance, gunakan default,1.

    3. (Opsional) Untuk volume tambahan per instans (GB), pilih ukuran volume penyimpanan ML yang ingin Anda berikan. Dalam kebanyakan kasus, Anda dapat menggunakan default,1. Jika Anda menggunakan dataset besar, gunakan ukuran yang lebih besar.

  7. Berikan informasi tentang data input untuk kumpulan data pelatihan.

    1. Untuk nama Channel, terima default (train) atau masukkan nama yang lebih bermakna, sepertitraining-augmented-manifest-file.

    2. Untuk InputMode, pilih Pipa.

    3. Untuk tipe distribusi data S3, pilih FullyReplicated. Saat berlatih secara bertahap, replikasi sepenuhnya menyebabkan setiap instance komputasi ML menggunakan salinan lengkap dari kumpulan data yang diperluas. Untuk algoritma berbasis saraf, sepertiAlgoritma Model Topik Saraf (NTM), pilih. ShardedByS3Key

    4. Jika data yang ditentukan dalam file manifes tambahan tidak dikompresi, setel tipe Kompresi ke Tidak Ada. Jika data dikompresi menggunakan gzip, atur ke Gzip.

    5. (Opsional) Untuk jenis Konten, tentukan MIME jenis yang sesuai. Jenis konten adalah jenis ekstensi surat internet multiguna (MIME) dari data.

    6. Untuk Record wrapper, jika dataset yang ditentukan dalam file manifes ditambah disimpan dalam format RecorDo, pilih RecorDo. Jika kumpulan data Anda tidak disimpan sebagai file berformat Recordio, pilih Tidak Ada.

    7. Untuk tipe data S3, pilih AugmentedManifestFile.

    8. Untuk lokasi S3, berikan jalur ke bucket tempat Anda menyimpan file manifes tambahan.

    9. Untuk nama AugmentedManifestFile atribut, tentukan nama atribut yang ingin Anda gunakan. Nama atribut harus ada dalam file manifes yang ditambah, dan peka huruf besar/kecil.

    10. (Opsional) Untuk menambahkan lebih banyak nama atribut, pilih Tambahkan baris dan tentukan nama atribut lain untuk setiap atribut.

    11. (Opsional) Untuk menyesuaikan urutan nama atribut, pilih tombol atas atau bawah di sebelah nama. Saat menggunakan file manifes yang ditambah, urutan nama atribut yang ditentukan adalah penting.

    12. Pilih Selesai.

  8. Untuk konfigurasi data Output, berikan informasi berikut:

    1. Untuk lokasi S3, ketik path ke bucket S3 tempat Anda ingin menyimpan data output.

    2. (Opsional) Anda dapat menggunakan AWS Key Management Service (AWS KMS) kunci enkripsi untuk mengenkripsi data output saat istirahat. Untuk kunci Enkripsi, berikan ID kunci atau Nomor Sumber Daya Amazon (ARN). Untuk informasi selengkapnya, lihat KMS-Kunci Enkripsi Terkelola.

  9. (Opsional) Untuk Tag, tambahkan satu atau beberapa tag ke pekerjaan pelatihan. Tag adalah metadata yang dapat Anda tentukan dan tetapkan AWS sumber daya. Dalam hal ini, Anda dapat menggunakan tag untuk membantu Anda mengelola pekerjaan pelatihan Anda. Tag terdiri dari kunci dan nilai, yang Anda tentukan. Misalnya, Anda mungkin ingin membuat tag dengan Project sebagai kunci dan nilai yang mengacu pada proyek yang terkait dengan pekerjaan pelatihan, sepertiHome value forecasts.

  10. Pilih Buat pekerjaan pelatihan. SageMaker menciptakan dan menjalankan pekerjaan pelatihan.

Setelah tugas pelatihan selesai, SageMaker simpan artefak model di bucket yang jalurnya Anda sediakan untuk jalur keluaran S3 di bidang konfigurasi data Output. Untuk menerapkan model untuk mendapatkan prediksi, lihat. Langkah 5: Menyebarkan Model ke Amazon EC2

Gunakan File Augmented Manifest () API

Berikut ini menunjukkan cara melatih model dengan file manifes tambahan menggunakan pustaka SageMaker Python tingkat tinggi:

import sagemaker # Create a model object set to using "Pipe" mode. model = sagemaker.estimator.Estimator( training_image, role, instance_count=1, instance_type='ml.p3.2xlarge', volume_size = 50, max_run = 360000, input_mode = 'Pipe', output_path=s3_output_location, sagemaker_session=session ) # Create a train data channel with S3_data_type as 'AugmentedManifestFile' and attribute names. train_data = sagemaker.inputs.TrainingInput( your_augmented_manifest_file, distribution='FullyReplicated', content_type='application/x-recordio', s3_data_type='AugmentedManifestFile', attribute_names=['source-ref', 'annotations'], input_mode='Pipe', record_wrapping='RecordIO' ) data_channels = {'train': train_data} # Train a model. model.fit(inputs=data_channels, logs=True)

Setelah tugas pelatihan selesai, SageMaker simpan artefak model di bucket yang jalurnya Anda sediakan untuk jalur keluaran S3 di bidang konfigurasi data Output. Untuk menerapkan model untuk mendapatkan prediksi, lihat. Langkah 5: Menyebarkan Model ke Amazon EC2