Augmented Manifest Files untuk Pekerjaan Pelatihan - Amazon SageMaker

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

Augmented Manifest Files untuk Pekerjaan Pelatihan

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 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 meskipun nama tersebut 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 algoritma 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, lihatPelabelan data keluaran pekerjaan.

Gunakan File Augmented Manifest

Bagian berikut menunjukkan cara menggunakan file manifes tambahan dalam pekerjaan SageMaker pelatihan Amazon Anda, baik dengan SageMaker konsol atau secara terprogram menggunakan Python. SageMaker SDK

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 suatu AWS Wilayah di 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, lihatAlgoritma bawaan dan model yang telah dilatih sebelumnya di Amazon SageMaker. 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 Saluran, 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, sepertiModel Topik Saraf (NTM) Algoritma, 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 kunci enkripsi AWS Key Management Service (AWS KMS) untuk mengenkripsi data keluaran 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 ke sumber daya. AWS 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. Terapkan 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. Terapkan model ke Amazon EC2