Optimalkan kinerja model menggunakan Neo - Amazon SageMaker

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

Optimalkan kinerja model menggunakan Neo

Neo adalah kemampuan Amazon SageMaker yang memungkinkan model pembelajaran mesin untuk berlatih sekali dan berjalan di mana saja di cloud dan di tepi.

Jika Anda adalah pengguna pertama kali SageMaker Neo, kami sarankan Anda memeriksa bagian Memulai dengan Perangkat Edge untuk mendapatkan step-by-step petunjuk tentang cara mengkompilasi dan menyebarkan ke perangkat edge.

Apa itu SageMaker Neo?

Umumnya, mengoptimalkan model pembelajaran mesin untuk inferensi pada berbagai platform sulit karena Anda perlu menyesuaikan model untuk konfigurasi perangkat keras dan perangkat lunak tertentu dari setiap platform. Jika Anda ingin mendapatkan kinerja optimal untuk beban kerja tertentu, Anda perlu mengetahui arsitektur perangkat keras, set instruksi, pola akses memori, dan bentuk data input, di antara faktor-faktor lainnya. Untuk pengembangan perangkat lunak tradisional, alat seperti kompiler dan profiler menyederhanakan proses. Untuk pembelajaran mesin, sebagian besar alat khusus untuk kerangka kerja atau perangkat keras. Ini memaksa Anda ke dalam trial-and-error proses manual yang tidak dapat diandalkan dan tidak produktif.

Neo secara otomatis mengoptimalkan model Gluon, Keras, MXNet,,, TensorFlow -Lite PyTorch TensorFlow, dan ONNX untuk inferensi pada mesin Android, Linux, dan Windows berdasarkan prosesor dari Ambarella, ARM, Intel, Nvidia, NXP, Qualcomm, Texas Instruments, dan Xilinx. Neo diuji dengan model visi komputer yang tersedia di kebun binatang model di seluruh kerangka kerja. SageMaker Neo mendukung kompilasi dan penyebaran untuk dua platform utama: instance cloud (termasuk Inferentia) dan perangkat edge.

Untuk informasi selengkapnya tentang kerangka kerja yang didukung dan jenis instans cloud yang dapat Anda gunakan, lihat Jenis dan Kerangka Instance yang Didukung instance cloud.

Untuk informasi selengkapnya tentang kerangka kerja yang didukung, perangkat edge, sistem operasi, arsitektur chip, dan model pembelajaran mesin umum yang diuji oleh SageMaker Neo untuk perangkat edge, lihat Kerangka Kerja, Perangkat, Sistem, dan Arsitektur yang Didukung perangkat edge.

Cara kerjanya

Neo terdiri dari compiler dan runtime. Pertama, API kompilasi Neo membaca model yang diekspor dari berbagai kerangka kerja. Ini mengubah fungsi dan operasi khusus kerangka kerja menjadi representasi perantara kerangka kerja agnostik. Selanjutnya, ia melakukan serangkaian pengoptimalan. Kemudian menghasilkan kode biner untuk operasi yang dioptimalkan, menulisnya ke perpustakaan objek bersama, dan menyimpan definisi model dan parameter ke dalam file terpisah. Neo juga menyediakan runtime untuk setiap platform target yang memuat dan mengeksekusi model yang dikompilasi.

Anda dapat membuat pekerjaan kompilasi Neo baik dari SageMaker konsol, AWS Command Line Interface (AWS CLI), notebook Python, atau SageMaker SDK.Untuk informasi tentang cara mengkompilasi model, lihat. Gunakan Neo untuk Mengompilasi Model Dengan beberapa perintah CLI, pemanggilan API, atau beberapa klik, Anda dapat mengonversi model untuk platform pilihan Anda. Anda dapat menerapkan model ke SageMaker titik akhir atau di AWS IoT Greengrass perangkat dengan cepat.

Neo dapat mengoptimalkan model dengan parameter baik dalam FP32 atau dikuantisasi ke INT8 atau FP16 bit-width.