Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Sesuaikan komponen machine learning Anda
Di AWS IoT Greengrass, Anda dapat mengonfigurasi sampel komponen machine learning untuk menyesuaikan cara Anda melakukan inferensi machine learning di perangkat Anda dengan komponen inferensi, model, dan waktu aktif sebagai blok bangunan. AWS IoT Greengrass juga menyediakan Anda fleksibilitas untuk menggunakan komponen sampel sebagai templat dan membuat komponen kustom Anda sendiri sesuai kebutuhan. Anda dapat mencampur dan mencocokkan pendekatan modular ini untuk menyesuaikan komponen inferensi machine learning Anda dengan cara berikut:
- Menggunakan komponen inferensi sampel
-
-
Ubah konfigurasi komponen inferensi ketika Anda men-deploy-nya.
-
Gunakan model kustom dengan komponen inferensi sampel dengan mengganti komponen penyimpanan model sampel dengan komponen model kustom. Model kustom Anda harus dilatih menggunakan waktu aktif yang sama seperti model sampel.
-
- Menggunakan komponen inferensi kustom
-
-
Gunakan kode inferensi kustom dengan model sampel dan waktu aktif dengan menambahkan komponen model publik dan komponen waktu aktif sebagai dependensi komponen inferensi kustom.
-
Buat dan tambahkan komponen model kustom atau komponen waktu aktif sebagai dependensi komponen inferensi kustom. Anda harus menggunakan komponen kustom jika Anda ingin menggunakan kode inferensi kustom atau waktu aktif yang tidak disediakan komponen sampelnya oleh AWS IoT Greengrass.
-
Topik
Ubah konfigurasi komponen inferensi publik
Di konsol AWS IoT Greengrass
{ "accessControl": { "aws.greengrass.ipc.mqttproxy": { "aws.greengrass.TensorFlowLiteImageClassification:mqttproxy:1": { "policyDescription": "Allows access to publish via topic ml/tflite/image-classification.", "operations": [ "aws.greengrass#PublishToIoTCore" ], "resources": [ "ml/tflite/image-classification" ] } } }, "PublishResultsOnTopic": "ml/tflite/image-classification", "ImageName": "cat.jpeg", "InferenceInterval": 3600, "ModelResourceKey": { "model": "TensorFlowLite-Mobilenet" } }
Ketika Anda men-deploy komponen inferensi publik, Anda dapat mengubah konfigurasi default untuk menyesuaikan deployment Anda. Untuk informasi tentang parameter konfigurasi yang tersedia untuk setiap komponen inferensi publik, lihat topik komponen di AWS-menyediakan komponen pembelajaran mesin.
Bagian ini menjelaskan cara men-deploy komponen yang dimodifikasi dari konsol AWS IoT Greengrass tersebut. Untuk informasi tentang men-deploy komponen menggunakan konsol AWS CLI, lihat Buat deployment.
Untuk men-deploy komponen inferensi publik yang dimodifikasi (konsol)
-
Masuk ke konsol AWS IoT Greengrass
tersebut. -
Pada menu navigasi, pilih Komponen.
-
Pada halaman Komponen, pada tab Komponen publik, pilih komponen yang ingin Anda deploy.
-
Pada halaman komponen, pilih Deploy.
-
Dari Tambahkan ke deployment, pilih salah satu langkah berikut ini:
-
Untuk menggabungkan komponen ini ke deployment yang ada pada perangkat target Anda, pilih Tambahkan ke deployment yang ada, lalu pilih deployment yang ingin Anda revisi.
-
Untuk membuat deployment baru di perangkat target Anda, pilih Buat deployment baru. Jika Anda memiliki deployment yang ada di perangkat, dengan memilih langkah ini Anda akan menggantikan deployment yang ada.
-
-
Di halaman Tentukan target, lakukan hal berikut:
-
Di bawah informasi Deployment, masukkan atau ubah nama yang ramah untuk deployment Anda.
-
Di bawah Target deployment, pilih target untuk deployment Anda, dan pilih Selanjutnya. Anda tidak dapat mengubah target deployment jika Anda merevisi deployment yang ada.
-
-
Pada halaman Pilih komponen, di bawah Komponen publik verifikasi bahwa komponen inferensi dengan konfigurasi yang dimodifikasi dipilih, dan pilih Selanjutnya.
-
Pada halaman Konfigurasikan komponen, lakukan hal berikut:
-
Pilih komponen inferensi, dan pilih Konfigurasikan komponen.
-
Di bawah Pembaruan konfigurasi, masukkan nilai konfigurasi yang ingin Anda perbarui. Sebagai contoh, masukkan pembaruan konfigurasi berikut di kotak Konfigurasikan untuk menggabungkan untuk mengubah interval inferensi menjadi 15 detik, dan instruksikan komponen untuk mencari citra bernama
custom.jpg
di folder/custom-ml-inference/images/
.{ "InferenceInterval": "15", "ImageName": "custom.jpg", "ImageDirectory": "/custom-ml-inference/images/" }
Untuk me-reset seluruh konfigurasi komponen ke nilai default-nya, tentukan string kosong tunggal
""
di kotak Reset path. -
Pilih Konfirmasi dan kemudian pilih Selanjutnya.
-
-
Pada halaman Konfigurasikan pengaturan lanjutan, simpan pengaturan konfigurasi default tersebut, dan pilih Selanjutnya.
-
Di halaman Tinjauan, pilih Deploy.
Gunakan model kustom dengan komponen inferensi sampel
Jika Anda ingin menggunakan komponen inferensi sampel dengan model machine learning Anda sendiri untuk waktu aktif yang untuknya AWS IoT Greengrass menyediakan komponen waktu aktif sampel, Anda harus mengganti komponen model publik dengan komponen yang menggunakan model-model tersebut sebagai artefak. Pada tingkat tinggi Anda menyelesaikan langkah-langkah berikut untuk menggunakan model kustom dengan komponen inferensi sampel:
-
Buat komponen model yang menggunakan model kustom dalam bucket S3 sebagai artefak. Model kustom Anda harus dilatih dengan menggunakan waktu aktif yang sama seperti model sampel.
-
Ubah parameter konfigurasi
ModelResourceKey
dalam komponen inferensi untuk menggunakan model kustom tersebut. Untuk informasi tentang pembaruan konfigurasi komponen inferensi, lihat Ubah konfigurasi komponen inferensi publik
Ketika Anda men-deploy komponen inferensi, AWS IoT Greengrass akan mencari versi terbaru dari dependensi komponennya. Ia akan menimpa komponen model publik dependen jika versi kustom selanjutnya dari komponen tersebut berada di Akun AWS dan Wilayah AWS yang sama.
-
Unggah model Anda ke bucket S3. Untuk informasi tentang mengunggah model ke bucket S3, lihat Bekerja dengan Bucket Amazon S3 di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.
catatan
Anda harus menyimpan artefak Anda di bucket S3 yang berada di Akun AWS dan Wilayah AWS yang sama dengan komponen tersebut. Untuk memungkinkan AWS IoT Greengrass untuk mengakses artefak ini, peran perangkat Greengrass harus mengizinkan tindakan
s3:GetObject
. Untuk informasi lebih lanjut tentang peran perangkat, lihat Otorisasi perangkat inti untuk berinteraksi dengan AWS layanan. -
Pada menu navigasi konsol AWS IoT Greengrass
tersebut, pilih Komponen. -
Ambil resep komponen untuk komponen penyimpanan model publik.
-
Pada halaman Komponen, pada tab Komponen publik, cari dan pilih komponen model publik yang ingin Anda buat versi barunya. Misalnya,
variant.DLR.ImageClassification.ModelStore
. -
Pada halaman komponen, pilih Lihat resep dan salin resep JSON yang ditampilkan.
-
-
Pada halaman Komponen, pada tab Komponen saya, pilih Buat komponen.
-
Pada halaman Buat Komponen, di bawah Informasi komponen, pilih Masukkan resep sebagai JSON sebagai sumber komponen Anda.
-
Di kotak Resep, tempelkan komponen resep yang sebelumnya telah Anda salin.
-
Dalam resep tersebut, perbarui nilai berikut:
-
ComponentVersion
: Kenaikan versi minor komponen.Ketika Anda membuat komponen kustom untuk menimpa komponen model publik, Anda harus memperbarui hanya versi minor dari versi komponen yang ada. Sebagai contoh, jika versi komponen publik
2.1.0
Anda dapat membuat komponen kustom dengan versi2.1.1
. -
Manifests.Artifacts.Uri
: Perbarui setiap nilai URI untuk Amazon S3 URI model yang ingin Anda gunakan.
catatan
Jangan ubah nama komponen.
-
-
Pilih Buat komponen.
-
Unggah model Anda ke bucket S3. Untuk informasi tentang mengunggah model ke bucket S3, lihat Bekerja dengan Bucket Amazon S3 di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.
catatan
Anda harus menyimpan artefak Anda di bucket S3 yang berada di Akun AWS dan Wilayah AWS yang sama dengan komponen tersebut. Untuk memungkinkan AWS IoT Greengrass untuk mengakses artefak ini, peran perangkat Greengrass harus mengizinkan tindakan
s3:GetObject
. Untuk informasi lebih lanjut tentang peran perangkat, lihat Otorisasi perangkat inti untuk berinteraksi dengan AWS layanan. -
Jalankan perintah berikut untuk mengambil resep komponen pada komponen publik. Perintah ini menuliskan resep komponen untuk file output yang Anda berikan dalam perintah Anda. Konversi string berkode base64 yang diambil untuk JSON atau YAML, sesuai keperluan.
-
Perbarui nama file resep untuk
, di mana versi komponen adalah versi target komponen baru. Misalnya,<component-name>
-<component-version>
variant.DLR.ImageClassification.ModelStore-2.1.1.yaml
. -
Dalam resep tersebut, perbarui nilai berikut:
-
ComponentVersion
: Kenaikan versi minor komponen.Ketika Anda membuat komponen kustom untuk menimpa komponen model publik, Anda harus memperbarui hanya versi minor dari versi komponen yang ada. Sebagai contoh, jika versi komponen publik
2.1.0
Anda dapat membuat komponen kustom dengan versi2.1.1
. -
Manifests.Artifacts.Uri
: Perbarui setiap nilai URI untuk Amazon S3 URI model yang ingin Anda gunakan.
catatan
Jangan ubah nama komponen.
-
-
Jalankan perintah berikut untuk membuat komponen baru dengan menggunakan resep yang telah Anda ambil dan ubah.
aws greengrassv2 create-component-version \ --inline-recipe fileb://
path/to/component/recipe
catatan
Langkah ini membuat komponen dalam layanan AWS IoT Greengrass dalam aplikasi AWS Cloud. Anda dapat menggunakan Greengrass CLI untuk mengembangkan, menguji, dan men-deploy komponen Anda secara lokal sebelum Anda meng-upload ke cloud. Untuk informasi selengkapnya, lihat Kembangkan AWS IoT Greengrass komponen.
Untuk informasi selengkapnya tentang membuat komponen, lihat Kembangkan AWS IoT Greengrass komponen.
Buat komponen machine learning khusus
Anda harus membuat komponen kustom jika Anda ingin menggunakan kode inferensi kustom atau waktu aktif yang tidak disediakan komponen sampelnya oleh AWS IoT Greengrass. Anda dapat menggunakan kode inferensi kustom Anda dengan sampel model machine learning dan waktu aktif yang disediakan oleh AWS, atau Anda dapat mengembangkan solusi inferensi machine learning yang benar-benar disesuaikan dengan model dan waktu aktif Anda sendiri. Jika model Anda menggunakan waktu aktif yang untuknya AWS IoT Greengrass menyediakan komponen waktu aktif sampel, Anda dapat menggunakan komponen waktu aktif, dan Anda perlu membuat komponen kustom hanya untuk kode inferensi Anda dan model yang ingin Anda gunakan.
Topik
Ambil resep untuk komponen publik
Anda dapat menggunakan resep komponen machine learning publik yang ada sebagai templat untuk membuat komponen kustom. Untuk melihat resep komponen untuk versi terbaru dari komponen publik, gunakan konsol atau AWS CLI sebagai berikut:
-
Menggunakan konsol
-
Pada halaman Komponen, pada tab Komponen publik, cari dan pilih komponen model publik yang ingin Anda buat versi barunya.
-
Pada halaman komponen, pilih Lihat resep.
-
-
Menggunakan AWS CLI
Jalankan perintah berikut untuk mengambil resep komponen pada komponen varian publik. Perintah ini menuliskan resep komponen untuk file resep JSON atau YAML yang Anda berikan dalam perintah Anda.
Ganti nilai-nilai dalam perintah Anda sebagai berikut:
-
. Amazon Resource Name (ARN) dari komponen publik.<arn>
-
. Format di mana Anda ingin membuat file resep. Nilai yang didukung adalah<recipe-format>
JSON
danYAML
. -
. Nama resep dalam format<recipe-file>
.<component-name>
-<component-version>
-
Ambil contoh artefak komponen
Anda dapat menggunakan artefak yang digunakan oleh komponen machine learning publik sebagai templat untuk membuat artefak komponen kustom Anda, seperti kode inferensi atau skrip instalasi waktu aktif.
Untuk melihat artefak sampel yang disertakan dalam komponen machine learning publik, deploy komponen inferensi publik dan kemudian lihat artefak pada perangkat Anda di folder
.
/packages/artifacts-unarchived//greengrass/v2
component-name
/component-version
/
Unggah artefak komponen ke bucket S3
Sebelum Anda dapat membuat komponen kustom, Anda harus meng-upload artefak komponen ke bucket S3 dan menggunakan URI S3 dalam resep komponen Anda. Misalnya, untuk menggunakan kode inferensi kustom dalam komponen inferensi Anda, unggah kode tersebut ke bucket S3. Anda kemudian dapat menggunakan Amazon S3 URI kode inferensi Anda sebagai artefak dalam komponen Anda.
Untuk informasi tentang mengunggah konten ke bucket S3, lihat Bekerja dengan Bucket Amazon S3 di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.
catatan
Anda harus menyimpan artefak Anda di bucket S3 yang berada di Akun AWS dan Wilayah AWS yang sama dengan komponen tersebut. Untuk memungkinkan AWS IoT Greengrass untuk mengakses artefak ini, peran perangkat Greengrass harus mengizinkan tindakan s3:GetObject
. Untuk informasi lebih lanjut tentang peran perangkat, lihat Otorisasi perangkat inti untuk berinteraksi dengan AWS
layanan.
Buat komponen khusus
Anda dapat menggunakan artefak dan resep yang telah Anda ambil untuk membuat komponen machine learning kustom Anda. Lihat contohnya di Buat komponen inferensi khusus.
Untuk informasi detail tentang membuat dan men-deploy komponen ke perangkat Greengrass, lihat Kembangkan AWS IoT Greengrass komponen dan Deploy komponen AWS IoT Greengrass ke perangkat.
Buat komponen inferensi khusus
Bagian ini menunjukkan kepada Anda cara membuat komponen inferensi kustom dengan menggunakan komponen klasifikasi gambar DLR sebagai templat.
Topik
Unggah kode inferensi Anda ke bucket Amazon S3
Buat kode inferensi Anda dan kemudian unggah ke bucket S3. Untuk informasi tentang mengunggah konten ke bucket S3, lihat Bekerja dengan Bucket Amazon S3 di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.
catatan
Anda harus menyimpan artefak Anda di bucket S3 yang berada di Akun AWS dan Wilayah AWS yang sama dengan komponen tersebut. Untuk memungkinkan AWS IoT Greengrass untuk mengakses artefak ini, peran perangkat Greengrass harus mengizinkan tindakan s3:GetObject
. Untuk informasi lebih lanjut tentang peran perangkat, lihat Otorisasi perangkat inti untuk berinteraksi dengan AWS
layanan.
Buat resep untuk komponen inferensi Anda
-
Jalankan perintah berikut untuk mengambil resep komponen pada komponen klasifikasi citra DLR. Perintah ini menuliskan resep komponen untuk file resep JSON atau YAML yang Anda berikan dalam perintah Anda.
Ganti
<recipe-file>
dengan nama resep dalam format
.<component-name>
-<component-version>
-
Di objek
ComponentDependencies
dalam resep Anda, lakukan salah satu atau lebih hal berikut ini tergantung pada model dan waktu aktif komponen yang ingin Anda gunakan:-
Jaga dependensi komponen DLR jika Anda ingin menggunakan model terkompilasi DLR. Anda juga dapat menggantinya dengan dependensi pada komponen waktu aktif kustom, seperti yang ditunjukkan dalam contoh berikut.
Komponen runtime
-
Pertahankan dependensi penyimpanan model klasifikasi gambar DLR untuk menggunakan model ResNet -50 yang telah dilatih sebelumnya yang AWS menyediakan, atau memodifikasinya untuk menggunakan komponen model kustom. Ketika Anda menyertakan dependensi untuk komponen model publik, jika versi kustom komponen ada di Akun AWS dan Wilayah AWS, maka komponen inferensi menggunakan komponen kustom. Tentukan dependensi komponen model seperti yang ditunjukkan dalam contoh berikut.
Komponen model publik
Komponen model kustom
-
-
Di objek
ComponentConfiguration
, tambahkan konfigurasi default untuk komponen ini. Anda nanti dapat mengubah konfigurasi ini ketika Anda men-deploy komponen tersebut. Kutipan berikut menunjukkan konfigurasi komponen untuk komponen klasifikasi gambar DLR.Misalnya, jika Anda menggunakan komponen model kustom sebagai dependensi untuk komponen inferensi kustom Anda, maka ubah
ModelResourceKey
untuk memberikan nama-nama model yang Anda gunakan. -
Di objek
Manifests
, berikan informasi tentang artefak tersebut dan konfigurasi komponen ini yang digunakan ketika komponen tersebut di-deploy pada beberapa platform yang berbeda dan informasi lain yang diperlukan untuk berhasil menjalankan komponen tersebut. Kutipan berikut menunjukkan konfigurasi objekManifests
untuk platform Linux dalam komponen klasifikasi gambar DLR.
Untuk informasi detail tentang membuat resep komponen, lihat AWS IoT Greengrass referensi resep komponen.
Buat komponen inferensi
Gunakan konsol AWS IoT Greengrass atau konsol AWS CLI untuk membuat komponen dengan menggunakan resep yang baru saja Anda tetapkan. Setelah Anda membuat komponen, Anda dapat men-deploy-nya untuk melakukan inferensi pada perangkat Anda. Untuk contoh cara menggunakan komponen inferensi, lihat Tutorial: Lakukan inferensi klasifikasi gambar sampel menggunakan Lite TensorFlow .
-
Masuk ke konsol AWS IoT Greengrass
tersebut. -
Pada menu navigasi, pilih Komponen.
-
Pada halaman Komponen, pada tab Komponen saya, pilih Buat komponen.
-
Pada halaman Buat Komponen, di bawah Informasi komponen, pilih Masukkan resep sebagai JSON atau Masukkan resep sebagai YAML sebagai sumber komponen Anda.
-
Di kotak Resep, masukkan resep kustom yang Anda buat.
-
Klik Buat Komponen.
Jalankan perintah berikut untuk membuat komponen baru dengan menggunakan resep yang telah Anda buat.
aws greengrassv2 create-component-version \ --inline-recipe fileb://
path/to/recipe/file
catatan
Langkah ini membuat komponen dalam layanan AWS IoT Greengrass di AWS Cloud. Anda dapat menggunakan Greengrass CLI untuk mengembangkan, menguji, dan men-deploy komponen Anda secara lokal sebelum Anda meng-upload ke cloud. Lihat informasi yang lebih lengkap di Kembangkan AWS IoT Greengrass komponen.