MnasNet - Sebuah ide untuk otomisasi pencarian arsitektur model computer vision mobile (Iseng Part 2)

Anderies
6 min readJun 9, 2021

MnasNet — Factorized Hierachical Search and Multiple Optimization Objective Function sebuah konsep pencarian otomatis dengan constraint yang diberikan manusia.

Introduction — (Basa Basi)

Hi nama saya anno, sekarang sedang melakukan studi lanjut master degree di suatu universitas dan kebetulan melakukan penelitian di computer vision.

dikala ujian suatu mata kuliah saya menemukan paper yang menarik untuk dibahas dan diperkenalkan yaitu MnasNet[1], suatu penelitian mengenai AI yang teruji mengalahkan human-made model di 2019. penelitian ini melakukan pencarian dan pembuatan arsitektur model computer vision pada mobile phone secara otomatis dengan constraint dari manusia, jika statement ini “salah” silahkan komentar pendapat kalian. statement diatas diperoleh setelah membaca beberapa paper dari top-venue conference CVPR di link ini https://arxiv.org/abs/1807.11626. dan memahami konsep dari penelitian.

arsitektur MnasNet yang di tailor ini mengalahkan arsitektur computer vision seperti : MobileNet V1[3] MobileNet V2[2] dan beberapa arsitektur lain pada ImageNet dataset benchmark. sedangkan untuk membuat model computer vision biasanya dilakukan seorang ahli.

oh ya karena beberapa trend yaitu “Talk the walk” diakhir artikel terdapat source code arsitektur dari MnasNet-A1 pre-train dan normal.

Pembahasan — (Starto)

kepanjangan dari MnasNet [1] adalah Mobile Neural Architecture Search Network. dimana pada paper ini https://arxiv.org/abs/1807.11626 mengusulkan sebuah metode untuk mencari model CNN untuk sebuah low computational device(Smartphone) secara otomatis dengan menggunakan metode bernama Factorized Hierachical Search Space dan Multiple Optimization Objective Function.

mari kita bahas dua metode / benda asing ini bagaimana mereka bisa melakukan pencarian sebuah model yang mantap untuk low computational device :

  1. Factorized Hierachical Search Space
  2. Multiple Optimization Objective Function.

Pendekatan Metode Factorized Hierachical Search Space digambarkan secara terperinci pada Gambar 1.1 dengan tiga komponen utama Controller, Trainer dan Objective Function. dan pendekatan ini secara umum dijelaskan dengan tiga langkah.

Langkah Pertama : Controller Menentukan Block

pada Gambar 1.1 Step 1 Controller berperan menentukan kombinasi operasi dan koneksi pada block dengan nilai parameter theta / θ. untuk pertama kali block bisa diinisilisasi oleh manusia atau random.

Penentuan block dengan batasan pilihan sebagai berikut :

  1. ConvOp : dconv, conv, …
  2. KernelSize: 3x3, 5x5
  3. SERatio: 0, 0.25, …
  4. SkipOp: identity, pool, …
  5. Filter Size : Fi
  6. #Layers :Ni
Gambar 1.1 Pendekatan Terperinci dari Factorized Hierachical Search Space

Langkah Kedua : Trainer

setelah langkah pertama controller menentukan kombinasi isi block dengan dan menghasilkan sampel model CNN kemudian pada Langkah 2 pada Gambar 1.1 yang kami sebut Trainer adalah sampel model yang akan dilatih untuk mendapatkan nilai akurasi dan latensi dengan sebuah dataset di kasus MnasNet, dataset nya adalah COCO dan ImageNet. dimana akurasi di dapatkan oleh jumlah prediksi gambar dengan benar dan latensi di dapatkan dengan kecepatan waktu pemrosesan gambar oleh CPU Google Pixel One. kemudian kedua nilai ini akurasi dan latensi akan dihitung menggunakan Multiple Optimization Objective Function. pada Gambar 1.2 dibawah. pada langkah ini kedua nilai menghasilkan nilai reward R(m) untuk langkah 3.

Gambar 1.2 Accuracy — Latency Optimization Objective Function

Langkah 3 : Reinforcement Learning

Gambar 1.3 Reinforcement Learning Function

Pada Langkah 3 yang merupakan step 3 terakhir di Gambar 1.1 diatas, parameter θ dari controller sebelumnya diperbarui dengan theta / θ baru yang lebih tinggi dengan memaksimalkan rumus Reinforcement Learning Function pada Gambar 1.3.

Langkah 1 sampai 3 akan terus berulang sampai nilai θ konvergen atau step maksimal yang ditentukan.

jadi secara singkat Langkah-langkah diatas adalah :

  1. Langkah 1 (Menentukan Sampel Model Menggunakan RNN)

2. Langkah 2 (Melakukan training dan testing model menggunakan Fungi trade-off akurasi dan latensi berdasarkan 2 nilai akurasi dan latensi menghasilkan value R(m) untuk langkah 3)

3. Langkah 3 (Melakukan Updating nilai θ untuk Langkah 1 menggunakan Reinforcement Learning berdasarkan R(m) )

Factorized Hierachical Search Space sebuah pencarian model berbasis RNN Model berbasis reinforcement learning yang di evaluasi dengan trade-off akurasi dan latency.

Multiple Optimization Objective Function sebuah rumus trade-off antara akurasi dan latency( jumlah waktu suatu data diproses oleh device)

jadi kita sudah tau apa itu Factorized Hierachical Search Space dan Multiple Optimization Objective Function. mari kita bahas hal menarik pada penelitian paper ini https://arxiv.org/abs/1807.11626 :

  1. Menguji latensi menggunakan device sebenarnya

penulis mencoba menguji pendapat umum mengenai FLOPS dan parameter bahwa semakin besar FLOPS tidak sepenuhnya merepresentasikan kecepatan atau latency pada model computer vision di device dengan menguji beberapa model yaitu MobileNet dan NASnet memiliki FLOPS yang hampir sama tetapi latency nya sangat berbeda jauh yaitu 575M FLOPS dengan latency 113ms vs 564M dengan latency 183ms. Sehingga membuat penulis langsung menguji model sampel dengan perangkat smartphone.

2. Pencarian Memakan Resource yang cukup besar dan lama

Hasil pencarian metode Factorized Hierachical Search Space di Gambar 1.1 menghasilkan 8.000 sampel model CNN di controller untuk gawai dan hanya 15 model yang melakukan performa, 3 model state-of-the-art dan 1 model yang paling baik hasil trade-off akurasi dan latency yaitu MnasNet-A1.

Experiment pencarian dilakukan pada ImageNet dengan pengunaan training set sebesar 50.000 Gambar sebesar 5 epoch dengan menggunakan hyperparameters RMSProp Optimizer, Weight Decay 0.9, momentum 0.9, BN Added after convolutional layers, learning rate 0.256 dinaikan dari 0 pada 5 epoch pertama, batch size 4k dan inception pre-process dengan image size 224x224, T (target latency)= 75.

3 model terbaik yang dihasilkan oleh eksperimen penulis dari 8000 sampel model : MnasNet-A1 (yang dijadikan library), MnasNet-A2, MnasNet-A3 dengan perbandingan model lain di Tabel 1.

Tabel 1 Perbandingan Model

Hal yang sedikit powerfull dan futuristik

Factorized Hierachical Search Space atau yang bisa kita sebut AI mengajari secara tidak langsung pentingnya implementasi Diversity layer di arsitektur model smartphone, yang pada penelitian model mobile sebelumnya semuanya hanya menggunakan 3x3 convolutions. dan pada MnasNet-A1 gabungan 3x3 dan 5x5 convolutions dipakai, lihat Table 2 hasil penelitian diversity layer dan Gambar 1.4 Arsitektur MnasNet-A1 tailored untuk ImageNet dataset.

Table 2 Diversity Layer on MnasNet-A1
Gambar 1.4 MnasNet-A1 Arsitektur

implementasi source code dari solusi ini akan menyusul di artikel berikutnya tetapi model MnasNet-A1 sudah dapat diakses pada library pytorch: https://pytorch.org/vision/stable/models.html https://pytorch.org/vision/stable/_modules/torchvision/models/mnasnet.html

Penutup

tulisan iseng aja karena ada hal yang membuat berdebar-debar ingin menulis yang ada di pikiran, jangan dijadikan acuan dalam jurnal-jurnal ilmiah ya kalo artikel-artikel boleh lah ✌️.

And as usual, if you liked this article, hit that clap button below see you on the next post👏

Referensi

[1] Mingxing Tan et al, MnasNet: Platform-Aware Neural Architecture Search for Mobile(2019), CVPR 2019.

[2] M. Sandler, A. Howard, M. Zhu, A. Zhmoginov, and L.-C.Chen. Mobilenetv2: Inverted residuals and linear bottlenecks. CVPR 2018.

[3] Andrew G. Howard et al, MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications, CVPR 2017.

--

--