Salah satu langkah umum saat membuat bot adalah mendefinisikan "maksud".
Maksudnya mungkin "atur ulang kata sandi saya", "pesan penerbangan", atau "hubungi dukungan". Pengembang bot perlu memasukkan beberapa frasa ke dalam perangkat lunak yang semuanya memiliki arti yang sama dengan maksudnya. Misalnya, "Saya ingin terbang ke Paris" adalah salah satu frasa untuk maksud "pesan penerbangan".
Umumnya, platform pengembangan bot meminta pengguna untuk memasukkan banyak frasa untuk maksud tertentu. Frasa-frasa ini adalah data pelatihan untuk algoritme Pemrosesan Bahasa Alami (NLP).
Algoritme NLP adalah algoritme pembelajaran mesin yang melatih dirinya sendiri pada data untuk dapat mengenali frasa dengan makna yang sama tetapi kata-kata yang berbeda (dibandingkan dengan data pelatihan).
Algoritme NLP menggunakan data maksud yang disediakan oleh pengembang bot ditambah dengan korpus data yang sangat besar terkait bahasa (yang telah dilatih sebelumnya) untuk mengkalibrasi model internalnya agar dapat mengenali frasa baru.
Semakin banyak contoh yang diberikan kepada algoritma NLP oleh pengembang chatbot, maka semakin akurat algoritma tersebut dapat mengenali makna yang sama dalam frasa lain yang memiliki kata-kata yang berbeda. Setidaknya itulah pesan yang diberikan kepada pengembang bot.
Masalahnya adalah bahwa semua data pelatihan tidak dibuat sama. Kualitas data sama pentingnya dengan kuantitasnya.
Sebagai contoh, bayangkan saya ingin membuat maksud yang disebut "atur ulang kata sandi saya".
Penulis bot mungkin mulai membuat frasa berikut ini:
Mengatur ulang kata sandi saya
Saya lupa kata sandi saya
Kata sandi saya tidak berfungsi
Tolong kata sandi baru
Masalah kata sandi
Dll.
Masalahnya adalah bahwa semua frasa menggunakan kata yang sama yaitu "kata sandi". Ini berarti bahwa ketika algoritme melatih dirinya sendiri pada data ini, algoritme akan melihat aturan bahwa jika kata "kata sandi" ada dalam frasa, maka maksudnya adalah "setel ulang kata sandi saya". Ini tentu saja salah. Orang dapat mengatakan banyak frasa lain tanpa kata "kata sandi" di dalamnya yang memiliki arti yang sama dengan "atur ulang kata sandi saya". Ada juga banyak frasa dengan kata "kata sandi" di dalamnya yang tidak berarti "atur ulang kata sandi saya".
Dalam dunia algoritme, masalah ini disebut overfitting terhadap data pelatihan. Algoritme telah melakukan overfitting terhadap kata "password" dan oleh karena itu "meyakini" bahwa setiap frasa yang mengandung kata "password" berarti "reset password saya".
Ada contoh lain untuk tujuan yang sama. Misalnya, pengembang bot dapat memasukkan frasa berikut:
Kredensial saya tidak berfungsi
Login saya tidak berhasil
Kata sandi saya tidak berfungsi
Nama pengguna saya tidak berfungsi.
Dll.
Tentu saja, ini adalah contoh masalah yang lebih ekstrem, tetapi polanya umum terjadi saat membuat data pelatihan. Hal ini sekali lagi akan menyebabkan algoritme menjadi terlalu cocok dengan data, tetapi kali ini dengan frasa "tidak berfungsi".
Solusinya mudah-mudahan sudah jelas sekarang. Setiap frasa dalam data pelatihan harus sebisa mungkin berbeda dengan frasa lain dalam kumpulan data. Sebagai contoh:
Kredensial saya tidak berfungsi.
Saya memerlukan pengaturan ulang kata sandi.
Bagaimana cara memperbaiki masalah login saya?
Siapa yang dapat membantu saya masuk ke dalam sistem.
Dll.
Tentu saja, membuat kumpulan data seperti di atas membutuhkan lebih banyak usaha. Bahkan dapat membantu jika Anda membuka tesaurus untuk menemukan sinonim dengan tujuan merangsang ide untuk frasa.
Cara lain yang digunakan pengembang bot untuk mengatasi masalah ini adalah dengan memiliki akses ke data obrolan layanan pelanggan yang memberikan banyak contoh tentang semua cara pelanggan yang sebenarnya mengajukan pertanyaan yang sama. Data ini bisa sangat berharga.
Ada pertanyaan tentang kapan algoritme NLP dapat bekerja dengan baik hanya dengan set data pelatihan yang kecil. Akan lebih baik jika bot dapat bekerja dengan sempurna hanya dengan menggunakan set data yang kecil. Ini jelas merupakan sesuatu yang sedang dikerjakan oleh para peneliti karena tidak hanya akan mengurangi waktu dan upaya yang diperlukan untuk membuat chatbots, tetapi juga akan sangat meningkatkan kualitasnya.
Algoritme NLP adalah kotak hitam bagi sebagian besar pengembang bot. Namun, penting bagi mereka untuk memahami dasar-dasar cara kerja algoritme sehingga mereka tahu jenis data pelatihan (data maksud) yang perlu mereka berikan kepada algoritme untuk memberikan hasil terbaik.
Bagikan ini:
Buat chatbot AI pribadi Anda sendiri secara gratis
Mulailah membuat bot GPT yang dipersonalisasi dengan antarmuka seret & lepas yang intuitif.
Mulailah - gratis! 🤖Tidak diperlukan kartu kredit
Terus ikuti perkembangan terbaru tentang AI chatbots