Personalisasi menggunakan machine learning, khususnya algoritma multi-armed bandit kontekstual, untuk menentukan pengalaman yang optimal bagi setiap pengguna untuk mencapai suatu tujuan. Dalam kasus kami, tujuannya adalah mengoptimalkan jumlah total atau parameter value total peristiwa Google Analytics tertentu.
Apa yang dimaksud dengan algoritma multi-armed bandit kontekstual?
"Multi-armed bandit" adalah metafora yang digunakan untuk menggambarkan situasi saat kita ingin terus memilih jalur yang menghasilkan reward tertinggi dan paling andal dari daftar beberapa jalur. Untuk memvisualisasikan hal ini, Anda dapat menggunakan metafora penjudi di depan deretan mesin slot. Mesin slot sering kali disebut sebagai “one-armed bandit” karena memiliki satu tuas (atau "arm") dan merampas uang Anda. Karena kita ingin menangani beberapa "arm", "one-armed bandit" menjadi multi-armed bandit.
Misalnya, kita memiliki tiga opsi dan ingin menentukan reward mana yang paling dapat diandalkan: Kita dapat mencoba setiap opsi. Lalu, setelah menerima hasil, kita dapat terus memilih "arm" yang menghasilkan reward terbanyak. Inilah yang disebut sebagai algoritma rakus (greedy): opsi yang memberikan hasil terbaik saat kita mencoba pertama kali adalah yang akan terus kita pilih. Namun, kita dapat memahami bahwa ini mungkin tidak selalu berhasil. Karena satu dan lain hal, reward yang tinggi bisa jadi hanya kebetulan. Mungkin juga, ada beberapa konteks terkait pengguna yang memberikan reward lebih tinggi selama jangka waktu tertentu, dan lambat laun menurun keefektifannya.
Jadi, konteks ditambahkan agar algoritma lebih efektif. Untuk personalisasi Remote Config, konteks awal ini adalah pengambilan sampel acak, atau ketidakpastian, yang memberikan entropi tertentu pada eksperimen. Hal ini akan menerapkan "multi-armed bandit kontekstual". Saat eksperimen terus berjalan, eksplorasi dan pengamatan berkelanjutan akan menambahkan konteks nyata yang telah dipelajari, tentang "arm" mana yang paling mungkin mendapatkan reward pada model. Ini akan meningkatkan efektivitas algoritma.
Apa artinya bagi aplikasi saya?
Sekarang, mari kita bahas arti dari algoritma multi-armed bandit dalam konteks aplikasi Anda. Misalnya, Anda ingin mengoptimalkan klik iklan banner. Dalam hal ini, "arm" atau grup personalisasi akan menjadi nilai alternatif yang Anda tentukan untuk merepresentasikan berbagai iklan banner yang ingin ditampilkan kepada pengguna. Klik iklan banner adalah reward. Kami mengistilahkannya sebagai tujuan.
.Saat pertama kali meluncurkan personalisasi, model tidak mengetahui nilai alternatif mana yang lebih cenderung mencapai sasaran Anda untuk setiap pengguna. Saat personalisasi mempelajari setiap nilai alternatif untuk memahami kemungkinan pencapaian tujuan Anda, model yang mendasarinya menjadi lebih matang, sehingga meningkatkan kemampuannya dalam memprediksi dan memilih pengalaman optimal bagi setiap pengguna.
Personalisasi menggunakan jendela kelekatan berdurasi 24 jam. Ini adalah durasi waktu bagi algoritma personalisasi untuk mempelajari satu nilai alternatif. Sediakan cukup waktu agar personalisasi dapat menjelajahi setiap nilai alternatif beberapa kali (umumnya sekitar 14 hari). Idealnya, biarkan personalisasi berjalan terus-menerus agar dapat terus ditingkatkan dan beradaptasi dengan perubahan perilaku aplikasi dan pengguna.
Melacak metrik tambahan
Personalisasi Remote Config juga menyediakan kemampuan untuk melacak hingga dua metrik tambahan guna membantu Anda memberikan konteks pada hasil. Misalnya, Anda telah mengembangkan aplikasi sosial dan menetapkan beberapa nilai alternatif untuk mendorong pengguna agar berbagi konten dengan teman mereka demi meningkatkan engagement secara keseluruhan.
Dalam hal ini, Anda dapat memilih untuk mengoptimalkan peristiwa Analytics, seperti
link_received
, dan menetapkan dua metrik ke user_engagement
dan
link_opened
. Lakukan ini guna memahami apakah engagement pengguna dan jumlah link
yang dibuka oleh pengguna meningkat (engagement nyata) atau menurun (mungkin terlalu banyak link yang berisi spam).
Meskipun metrik tambahan ini tidak akan diperhitungkan dalam algoritma personalisasi, Anda dapat melacaknya langsung bersama hasil personalisasi. Dengan demikian, Anda mendapatkan insight berharga tentang kemampuan personalisasi dalam mencapai sasaran secara keseluruhan.
Memahami hasil personalisasi
Setelah personalisasi berjalan cukup lama untuk mengumpulkan data, Anda dapat melihat hasilnya.
Untuk melihat hasil personalisasi:
Buka halaman Remote Config, lalu klik Personalisasi.
Pilih personalisasi yang ingin Anda lihat. Anda dapat menelusuri personalisasi tertentu menurut nama atau tujuan, dan dapat mengurutkan menurut Nama, Waktu mulai, atau Total peningkatan.
Halaman hasil meringkas Total peningkatan, atau perbedaan persentase dalam performa, yang diberikan personalisasi melalui grup dasar pengukuran.
Halaman hasil juga menampilkan status personalisasi saat ini, atribut personalisasi, dan grafik interaktif yang:
Menampilkan tampilan harian dan total mendetail tentang performa personalisasi terhadap dasar pengukuran.
Menunjukkan performa setiap nilai secara keseluruhan di seluruh grup dasar pengukuran.
Menampilkan hasil dan performa sasaran terhadap metrik tambahan yang Anda pilih. Grafik ini dapat diakses menggunakan tab di bagian atas ringkasan.
Personalisasi dapat dibiarkan berjalan tanpa batas waktu dan Anda dapat terus membuka kembali halaman hasil untuk memantau performanya. Algoritma akan terus belajar dan menyesuaikan sehingga dapat beradaptasi saat perilaku pengguna berubah.
Memahami penghapusan personalisasi
Anda dapat menghapus personalisasi menggunakan Firebase console atau dengan menghapus parameter personalisasi dari template menggunakan Firebase Remote Config API. Personalisasi yang dihapus tidak dapat dipulihkan. Untuk mempelajari retensi data, lihat Penghapusan data.
Anda juga dapat menghapus personalisasi dengan melakukan rollback atau mengimpor template.
Rollback
Jika template saat ini memiliki personalisasi dan Anda melakukan
rollback ke template yang tidak memiliki
personalisasi yang sama, personalisasi akan dihapus. Untuk kembali ke
template sebelumnya, gunakan Firebase console atau
roll back
gunakan Firebase Remote Config API.
Saat Anda menghapus personalisasi dan melakukan roll back ke template sebelumnya, referensi ke personalisasi yang tidak valid tersebut akan muncul di Firebase console. Anda dapat menghapus personalisasi yang tidak valid dari Firebase console dengan mengedit personalisasi di tab Parameters di halaman Remote Config.
Impor
Mengimpor template yang tidak lagi berisi personalisasi Anda saat ini juga akan menghapus personalisasi tersebut. Untuk mengimpor template, gunakan Firebase console atau gunakan Remote Config REST API.
Langkah berikutnya
Pelajari kasus penggunaan personalisasi Remote Config.
Mulai dengan personalisasi Remote Config.