Minggu lalu di Google I/O, kami memperkenalkan Smart Compose, fitur baru di Gmail yang memanfaatkan machine learning untuk secara interaktif menawarkan saran pelengkapan kalimat saat Anda mengetik, sehingga Anda bisa menyusun draft email lebih cepat. Dibangun berdasarkan teknologi yang dikembangkan untuk Smart Reply, Smart Compose menawarkan cara baru untuk membantu Anda menyusun pesan — apakah ketika Anda membalas email yang masuk maupun menyusun draft yang baru dari awal.
Dalam mengembangkan Smart Compose, ada sejumlah tantangan utama yang harus dihadapi, meliputi:
  • Latensi: Karena memberikan prediksi berdasarkan tiap tombol yang ditekan, idealnya Smart Compose harus merespons dalam waktu kurang dari 100 ms agar pengguna tidak melihat adanya kelambatan. Menyeimbangkan kompleksitas model dan kecepatan inferensi adalah masalah yang sangat penting.
  • Skala: Gmail digunakan oleh lebih dari 1,4 miliar pengguna yang berbeda-beda. Untuk menyediakan pelengkapan otomatis yang berguna untuk semua pengguna Gmail, model harus memiliki kapasitas pemodelan yang cukup sehingga ia mampu membuat saran yang sesuai dalam konteks yang berbeda-beda.
  • Kelayakan dan Privasi: Dalam mengembangkan Smart Compose, kami perlu mengatasi sumber bias potensial dalam proses pelatihan, dan harus mengikuti standar privasi pengguna yang sama ketatnya seperti Smart Reply, untuk memastikan bahwa model kami tidak akan memaparkan informasi pribadi pengguna. Selain itu, para peneliti tidak memiliki akses ke email, yang berarti mereka harus mengembangkan dan melatih sistem machine learning untuk bekerja pada dataset yang mereka sendiri tidak bisa baca.
Menemukan Model yang Tepat
Model penulisan bahasa khusus, seperti model ngramneural bag-of-words (BoW) dan RNN language (RNN-LM), belajar memprediksi kata berikutnya yang dikondisikan berdasarkan urutan kata awal. Namun, dalam email, kata-kata yang diketik pengguna dalam sesi penulisan email sekarang hanyalah satu “sinyal” yang bisa digunakan model untuk memprediksi kata berikutnya. Untuk memasukkan lebih banyak konteks tentang apa yang ingin dikatakan pengguna, model kami juga dikondisikan pada subjek email dan isi email sebelumnya (jika pengguna membalas email yang masuk).

Salah satu pendekatan untuk memasukkan konteks tambahan ini adalah dengan mentransmisikan masalah sebagai tugas terjemahan mesin sequence-to-sequence (seq2seq), dalam hal ini, urutan sumber adalah rangkaian subjek dan isi email sebelumnya (jika ada), dan urutan target adalah email saat ini yang sedang ditulis pengguna. Meskipun pendekatan ini bekerja dengan baik dalam hal kualitas prediksi, ia gagal memenuhi batasan latensi ketat kami berdasarkan ukuran urutan.

Untuk memperbaikinya, kami menggabungkan model BoW dengan RNN-LM, yang lebih cepat daripada model seq2seq dengan hanya sedikit pengorbanan pada kualitas prediksi model. Dalam pendekatan hibrida ini, kami mengenkode subjek dan email sebelumnya dengan merata-ratakan kata tersemat di setiap kolom. Kami kemudian menggabungkan kata tersemat yang telah direrata tersebut, dan memberikannya ke urutan target RNN-LM pada setiap langkah decoding, seperti yang ditunjukkan diagram model di bawah ini.
Arsitektur model Smart Compose RNN-LM. Subjek dan pesan email sebelumnya dienkode dengan merata-ratakan kata tersemat di setiap kolom. Kata tersemat yang telah direrata tersebut kemudian diberikan ke RNN-LM pada setiap langkah decoding.
Pelatihan & Penyajian Model yang Dipercepat
Tentu saja, begitu kami memutuskan pendekatan pemodelan ini, kami masih harus menyesuaikan berbagai hyperparameter model dan melatih model pada miliaran contoh, yang semuanya sangat membutuhkan waktu. Untuk mempercepatnya, kami menggunakan TPUv2 Pod lengkap untuk melakukan eksperimen. Dengan demikian, kami bisa melatih model untuk konvergensi dalam waktu kurang dari satu hari.

Bahkan setelah melatih model hibrida kami yang lebih cepat, versi awal Smart Compose kami yang berjalan pada CPU standar memiliki latensi penyajian rata-rata beberapa ratus milidetik, yang masih tidak dapat diterima untuk fitur yang berupaya menghemat waktu pengguna. Untungnya, TPU juga bisa digunakan pada saat inferensi untuk mempercepat pengalaman pengguna. Dengan memindahkan sebagian besar komputasi ke TPU, kami meningkatkan latensi rata-rata menjadi beberapa puluh milidetik sembari meningkatkan jumlah permintaan yang bisa dilayani oleh satu mesin secara signifikan.

Kelayakan dan Privasi
Kelayakan dalam machine learning sangatlah penting, karena model pemahaman bahasa bisa mencerminkan bias kognitif manusia yang mengakibatkan asosiasi kata dan pelengkapan kalimat yang tidak diinginkan. Seperti yang disinggung Caliskan dkk. dalam makalah terbaru mereka “Semantics derived automatically from language corpora contain human-like biases”, asosiasi ini sangat berhubungan dalam data bahasa natural, yang menghadirkan tantangan yang cukup besar untuk membangun model bahasa apa pun. Kami secara aktif mencari cara untuk terus mengurangi bias potensial dalam prosedur pelatihan kami. Selain itu, karena Smart Compose dilatih pada miliaran frasa dan kalimat, mirip dengan cara model machine learning spam dilatih, kami telah melakukan pengujian ekstensif untuk memastikan bahwa hanya frasa umum yang digunakan oleh banyak pengguna yang diingat oleh model kami, menggunakan temuan dari makalah ini.

Karya selanjutnya
Kami terus berupaya meningkatkan kualitas saran model penulisan bahasa dengan mengikuti arsitektur termutakhir (mis., Transformer, RNMT+, dll.) dan bereksperimen dengan teknik pelatihan lanjutan dan terbaru. Kami akan menerapkan model lanjutan tersebut ke produksi setelah batasan ketat latensi kami terpenuhi. Kami juga bekerja dalam menggabungkan model bahasa personal, yang dirancang untuk lebih akurat dalam meniru gaya penulisan individu ke sistem kami.

Ucapan Terima Kasih
Model penulisan bahasa Smart Compose dikembangkan oleh Benjamin Lee, Mia Chen, Gagan Bansal, Justin Lu, Jackie Tsay, Kaushik Roy, Tobias Bosch, Yinan Wang, Matthew Dierker, Katherine Evans, Thomas Jablin, Dehao Chen, Vinu Rajashekhar, Akshay Agrawal, Yuan Cao, Shuyuan Zhang, Xiaobing Liu, Noam Shazeer, Andrew Dai, Zhifeng Chen, Rami Al-Rfou, DK Choe, Yunhsuan Sung, Brian Strope, Timothy Sohn, Yonghui Wu, dan banyak lagi.