ML Kit Google: Learn2Compress teknologi kompresi model otomatis

Google I/O 2018, Google merilis kit pengembangan ML Kit untuk pengembang untuk menyesuaikan model pembelajaran engine seluler, teknologi inti dalam rangkaian: Teknologi kompresi model Learn2Compress, Google juga dengan cepat menulis artikel di Google AI dan melakukan pengenalan terperinci dan pengujian yang sebenarnya. Berikut artikel yang dikompilasi dari posting blog resmi Google.

Semua orang tahu bahwa untuk berhasil melatih dan menjalankan model deep learning biasanya membutuhkan sumber daya komputasi yang besar, memori yang besar, dan energi yang cukup untuk mendukungnya. Ini juga berarti Anda ingin menjalankannya dengan sukses di perangkat seluler dan IoT. Model membawa hambatan yang sesuai. Pembelajaran engine di perangkat memungkinkan Anda menjalankan penalaran langsung di perangkat dan memiliki keuntungan memastikan privasi data dan siap pakai, terlepas dari konektivitas jaringan. Sistem pembelajaran engine seluler sebelumnya, seperti Jaringan Neural Ringan MobileNets dan ProjectionNets, mengatasi kemacetan sumber daya dengan mengoptimalkan efisiensi model. Tetapi bagaimana jika Anda ingin menjalankan desain dan model pelatihan Anda sendiri di aplikasi seluler di ponsel Anda?

Sekarang bahwa Google telah memecahkan masalah ini untuk Anda, di Google I / O 2018, Google telah merilis Mobile Terminal Pembangunan Machine Learning Kit ML Ki t untuk semua pengembang mobile. Fitur inti yang akan datang dalam kit pengembangan ML Kit adalah service kompresi model otomatis yang didorong oleh teknologi Learn2Compress yang dikembangkan oleh tim peneliti Google. Teknologi Learn2Compress dapat menyesuaikan model deep learning seluler di TensorFlow Lite. Model yang disesuaikan dapat berjalan di perangkat seluler secara efisien tanpa mengkhawatirkan kekurangan memori dan kecepatan berjalan yang lambat. Google juga senang untuk segera menerapkan pengenalan gambar berbasis teknologi Learn2Compress di ML Kit. Teknologi Learn2Compress akan terbuka untuk sekelompok kecil pengembang dan akan tersedia untuk lebih banyak pengembang dalam beberapa bulan mendatang. Pengembang yang tertarik dengan fitur teknis dan tertarik untuk merancang model mereka sendiri dapat mengklik URL ini ( https://g.co/firebase/signup ) untuk mendaftar.

Teknologi Learn2Compress Bekerja

Teknologi Learn2Compress menggabungkan kerangka kerja pembelajaran seperti ProjectionNet yang diperkenalkan dalam studi sebelumnya dan menggabungkan beberapa teknik mutakhir untuk kompresi model jaringan saraf. Teknologi Learn2Compress bekerja seperti ini: pertama, masukkan model TensorFlow terlatih yang disediakan user, lalu teknologi Learn2Compress mulai melatih dan mengoptimalkan model, dan secara otomatis membuat model seluler siap pakai, yang ukurannya lebih kecil dan Kapasitas memori dan useran energi lebih efisien, dan penalaran yang lebih cepat dapat dicapai dengan kehilangan akurasi yang minimal.

Learn2Compress untuk membuat model ML di perangkat secara otomatis

Untuk mencapai kompresi model, teknologi Learn2Compress menggunakan beberapa optimasi jaringan saraf dan tiga teknik kompresi model berikut:

  • Kurangi ukuran model dengan menghilangkan bobot atau operasi yang tidak terlalu berpengaruh pada prediksi (seperti bobot dengan skor rendah). Operasi ini terutama dapat meningkatkan efisiensi model mobile-end yang berisi input atau output yang jarang. Meskipun model dikompresi dua kali dalam ukuran, masih mempertahankan 97% dari kualitas prediksi model aslinya.
  • Teknik terkuantisasi yang diterapkan selama pelatihan model sangat efektif, dan teknik ini dapat meningkatkan kecepatan inferensi model dengan mengurangi jumlah bit yang digunakan untuk bobot model dan nilai aktivasi. Misalnya, menggunakan representasi titik tetap 8-bit daripada nilai titik-mengambang dapat mempercepat inferensi model, mengurangi konsumsi energi, dan berjanji untuk lebih mengurangi ukuran model dengan faktor empat.
  • Pelatihan bersama dan metode distilasi dari strategi pembelajaran guru-siswa—menjamin hilangnya akurasi minimum, Google menggunakan jaringan besar pengajar (dalam hal ini, menggunakan model TensorFlow yang disediakan user) untuk melatih jaringan siswa terkompresi (yaitu, pada -model perangkat).

Pelatihan bersama dan pendekatan distilasi untuk mempelajari model siswa kompak

Jaringan guru dapat diperbaiki (seperti dalam metode distilasi) atau dapat dioptimalkan bersama-sama. Jaringan guru bahkan dapat melatih beberapa model siswa dengan ukuran berbeda secara bersamaan. Oleh karena itu, teknologi Learn2Compress dapat menghasilkan beberapa model seluler dengan ukuran berbeda dan kecepatan inferensi berbeda dalam satu operasi, bukan satu model. Ini juga mendukung pengembang untuk memilih salah satu yang paling memenuhi persyaratan aplikasi mereka.

Ini dan teknologi lainnya seperti pembelajaran migrasi juga dapat membuat proses kompresi model lebih efisien dan skalabel untuk kumpulan data skala besar.

Bagaimana kinerja teknologi Learn2Compress?

Untuk membuktikan keefektifan teknologi Learn2Compress, Google bekerja pada beberapa jaringan saraf dalam yang canggih yang digunakan dalam tugas gambar dan bahasa alami (seperti MobileNets, NASNet, Inception, ProjectionNet, dll.) dan menggunakan teknologi ini untuk mengompresnya menjadi model seluler … Dengan tugas dan kumpulan data, Google dapat menggunakan teknik ini untuk menghasilkan beberapa model sisi seluler dengan kecepatan inferensi dan ukuran model yang berbeda.

Akurasi pada berbagai ukuran untuk model Learn2Compress dan jaringan dasar berukuran penuh pada tugas klasifikasi gambar CIFAR-10 (kiri) dan ImageNet (kanan). Arsitektur jaringan siswa yang menghasilkan berbagai varian pengklasifikasi CIFAR-10 dan ImageNet terinspirasi oleh NASNet dan MobileNet.

Dalam pengenalan gambar, teknologi Learn2Compress dapat menghasilkan model kecil dan cepat yang cocok untuk aplikasi seluler dan memiliki akurasi prediksi yang baik. Misalnya, pada tugas ImageNet, teknologi Learn2Compress dapat mencapai model 22 kali lebih kecil dari baseline Inception v3 dan model 4 kali lebih kecil dari baseline MobileNet v1, dan tingkat akurasi hanya berkurang sebesar 4,6-7%. Pada CIFAR-10, waktu yang dihabiskan menggunakan parameter bersama untuk melatih beberapa model Learn2Compress secara bersama-sama hanya 10% lebih lama daripada melatih satu model besar Learn2Compress. Misalnya, model kompresi hasil 3 berukuran 94 kali lebih kecil. Ini 27 kali lebih cepat dan biaya berkurang 36 kali, dan dapat mencapai kualitas prediksi yang baik (90-95% top-1 level akurasi).

Tugas pengenalan gambar CIFAR-10, menggunakan ponsel Pixel untuk menguji model dasar dan Learn2Compress, biaya komputasi, dan penundaan prediksi rata-rata. Model pengoptimalan Learn2Compress menggunakan arsitektur jaringan bergaya NASNet.

Google juga sangat senang melihat bahwa pengembang telah menggunakan teknologi ini untuk membuat beberapa prestasi. Misalnya, platform sosial penggemar memancing yang disebut Fishbrain menggunakan teknologi Learn2Compress Google untuk mengompresi model cloud pengenalan gambar platform saat ini (80MB+, akurasi 91,8% teratas-3) menjadi model yang sangat kecil. Model seluler (berukuran kurang dari 5 MB tetapi masih mempertahankan akurasi yang sama dengan model besar asli). Dalam kasus lain, Google menemukan bahwa berkat efek regularisasi, model terkompresi bahkan mungkin memiliki akurasi yang sedikit lebih baik daripada model besar aslinya.

Google mengatakan bahwa dengan pengembangan pembelajaran engine dan teknologi pembelajaran mendalam yang berkelanjutan, mereka akan terus meningkatkan teknologi Learn2Compress dan memperluasnya ke lebih banyak kasus user (tidak terbatas pada model seperti pengenalan gambar). Google juga menantikan untuk meluncurkan service cloud kompresi model untuk ML Kit. Google berharap teknologi Learn2Compress dapat membantu pengembang secara otomatis membangun dan mengoptimalkan model pembelajaran engine seluler mereka sendiri sehingga pengembang dapat fokus pada pengembangan aplikasi yang sangat baik dan aplikasi keren yang mencakup visi komputer, bahasa alami, dan aplikasi pembelajaran engine lainnya.

Sumber