Perhatian ini merupakan RESUME PAPER dan alat bantu untuk memahami isi dari paper yang berjudul:
"Implementation of an inquisitive chatbot for database supported"
Paperi ini bercerita tentang chatbot berbasis AIML dengan menggunakan KB Engine akan mampu membuat chatbot tersebut bertanya balik menanyakan tentang informasi yang hilang didalam chatbot tersebut untuk mendapatkan jawaban
KB Engine disini berhasil membuktikan chatbot tersebut dapat membantu chatbot tersebut sendiri untuk menemukan informasi yang hilang ataupun kurang, tetapi sayangnya tidak ada jumlah akurasi yang bisa dijadikan perbandingan.
Pembangunan chatbot ini menggunakan template ALICE
1 of 5
Download to read offline
More Related Content
Inquisitive Chatbot
1. 20161 | P a g e
medium.com/ashrovy | ashrovy.tumblr.com | ashrovy.wordpress.com
Ref____
{2}: A semantic layer on semi-structured data sources
for intuitive chatbots
{3}: First Sinhala Chatbot in Action.
Mengajukan:
Di Ambil:
Membantah:
To Pose(v)
Fetched(v)
Retort(v)
Implementation of an inquisitive chatbot for
database supported knowledge bases
S. Reshmi & Kannan Balakrishnan
Resume Paper by Ashrovy
Abstract Paper ini merupakan laporan implementasi inquisitive chatbot yang
mencari data didalam query dan menyelidiki pertanyaan dari user untuk
mengumpulkan data yang dibutuhkan untuk menjawab query.
Chatbot; Intelligent Conversional Agent; Knowledge Base; AIML : Keyword
Introduction[1]
Chatbot adalah entitas tiruan yang didesain
untuk mensimulasi sebuah percakapan cerdas
dengan manusia melalui interaksi natural
language antara manusia dan mesin.
Kebanyakan chatbot hanya melihat keyword,
phrase dan pola yang diprogram didalam
database mereka. Pada paper ini merupakan
impelementasi membuat chatbot lebih
penasaran dan ingin menemukan suatu
kejelasan dari inputan user.
Chatbot Architecture[2]
Chatbot menganalisis inputan user dan
memberikan jawaban menggunakan Natural
Language Processing (NLP) dan kecerdasan
buatan. Kebanyakan dari ssitem chatbot
menggunakan bentuk dari NLP dengan
melakukan matching inputan user kepada kata
dan frase yang ada knowledge base memilih
jawaban yang cocok dari input dan konteks pada
percakapan. Pattern matching, finite-state-
machines, dan model frame-based adalah
teknologi utama chatbot{2}
Chatbot pada intinya memiliki 3 bagian:
Knowledge base yang terbungkus oleh
intelligence sistem
Chat Engine sebagai interface engine
Interpreter Program{3}
Interpreter program terdiri dari analyzer dan
generator untuk melakukan komunikasi dengan
user interface.
Existing Chatbots[3]
Ide dari chatbot sebenarnya simpel, dimana
algoritma pattern matching dan rekonstruksi
kalimat dapat di proses didalam natural
language.
Gambar 1: Arsitektur Chatbot
2. 20162 | P a g e
medium.com/ashrovy | ashrovy.tumblr.com | ashrovy.wordpress.com
Ref____
{4}: A computer program for sudy of natural language
communication between man and machine.
{10}: Using learning analytics to understand the design
of an intelligent language tutor Chatbot lucy
{11}: CHARLIE: An AIML-based chatterbot which works
as an interface among INES and humans.
{12}: Chinese intelligent chat robot based on the AIML
language.
Terbatas:
Terdiri dari:
Tempat menyimpan barang-barang cadangan:
Memperdebatkan:
Mempertahankan:
Keterangan didalam kalimat yang menyatakan:
sikap pembicara terhadap hal yang dibicarakan
Dikhususkan:
Finite(adj)
Comprises(v)
Reservoir(n)
Argue(v)
Sustaining(adj)
Modalities(n)
Devoted(adj)
Impelementasi chatbot sudah dilakukan
dibeberapa kasus, dari mulai ELIZA, kemudian
ALICE lalu muncul juga chatbot yang bersifat
khusus untuk menangani depresi beberapa
masalah mental, juga ada Jabberwacky yang
menggunakan pattern matching dengan dabase
yang besar dan lain-lain. Dan mayoritas chatbot
ini dibuat dengan menggunakan AIML kecuali
Jabberwacky.
Analisis perkembangan chatbot berbasis NLP
dapat identifikasi menjadi satu dari tiga generasi
sistem.
1. Generasi pertama chatbot berbasis
simpel teknik dari pattern matching
seperti ELIZA{4}
.
2. Generasi kedua terdapat teknik
kecerdasan buatan.
3. Generasi ketiga lebih canggih dengan
teknik pattern-matching berbasis
markup language.
Markup language genenerasi ketiga ini adalah
AIML seperti LUCY{10}
, CHARLIE{11}
, dan Xiao Hui-
Hui.{12}
AIML[3|1]
Merupakan dialect XML yang memiliki spesifikasi
sendiri dan dikembangakn oleh Richard S
Wallace. Setiap katagori input AIML dibentuk
dari <pattern> elemen, output template
<template> element, opsional <that> tag me-
refer ke chatbot previous reply dan melewati tag
<srai>. Ilustrasinya dapat dilihat sendiri pada
gambar 2.
Gambar 2. Basic AIML Format
Issue and Challenge[3|2]
Umumnya, chatbot dapat merespon input
standar yang sudah ditraining oleh knowledge
base, tetapi chatbot sulit mengindentifikasi
dengan input yang serupa atau makna yang
ambigu. Hal ini menjadi dalam aspek
pengembangan yang sangat penting didalam
impelementasi chatbot untuk dua alasan:
Pertama, itu mampu untuk membuat
pembicaraan menjadi lebih natural dan user-
friendly; kedua, inputan dari user kadang
bersifat tidak tentu dan chatbot sulit
memberikan jawaban. Dengan kata lain bot
membutuhkan informasi yang cukup untuk
mendapatkan jawaban yang sesuai dengan
maksud user.
3. 20163 | P a g e
medium.com/ashrovy | ashrovy.tumblr.com | ashrovy.wordpress.com
Ref____
{4}: A computer program for sudy of natural language
communication between man and machine.
{10}: Using learning analytics to understand the design
of an intelligent language tutor Chatbot lucy
{11}: CHARLIE: An AIML-based chatterbot which works
as an interface among INES and humans.
{12}: Chinese intelligent chat robot based on the AIML
language.
Terbatas:
Terdiri dari:
Tempat menyimpan barang-barang cadangan:
Memperdebatkan:
Mempertahankan:
Keterangan didalam kalimat yang menyatakan:
sikap pembicara terhadap hal yang dibicarakan
Dikhususkan:
Finite(adj)
Comprises(v)
Reservoir(n)
Argue(v)
Sustaining(adj)
Modalities(n)
Devoted(adj)
Proposed System[4]
Paper ini mendsikusikan impementasi chatbot
yang memiliki sifat penasaran, yang
dikembangakn dengan memodifikasi engine
pada ALICE dimana knowledge base support
untuk database.
Kemungkinan inputan user akan berisikan satu
atau lebih data yang hilang, pada situasi ini bot
harus menanyakan data yang hilang tersebut,
jumlah informasi yang hilang agar query lebih
propotional.
dimana adalah jumlah informasi yang hilang
dan dibutuhkan untuk menjawab pertanyaan
secara akurat, dan adalah jumlah pertanyaan
yang harus ditanyakan oleh chatbot kepada user.
Level pertama dari mekanisme query inquisitve
akan mengembalikan satu buah pertanyaan
inquisitve kepada user. Level kedua, jika jumlah
informasi yang hilang adalah dua maka chatbot
mengajukan dua pertanyaan kepada user dan
seterusnya. Contoh:
Jika pertanyaan yang diinputkan oleh user
bersifat ambigu makan speerti ini jadinya
HOD disini ialah Head of Department, tapi bagi
chatbot yang tidak mengenal akronim atau
istilah HOD akan bingung menjawab pertanyaan
tersebut. Chatbot harus menanyakan lebih jauh
tentang HOD, ini adalah contoh level pertama.
Pada contoh level kedua akan sedikit berbeda:
Pada contoh diatas merupakan Level 2 dimana
informasi yang diminta tidak relevant karena bot
kehilangan dua informasi penting, our itu kita-
nya siapa? dan course coordiantornya, course
nya apa? Untuk mendapatkan data ini dari
kumpulan input, chatbot harus lebih proaktif
dalam bertanya.
Methodology
AIML bersifat hand-coded apabila pertanyaan
berubah tetapi maksud sama akan sulit sekali
untuk menambah atau mengedit code tersebut,
pada penelitian ini lebih mencoba mencari solusi
dengan hybird knowledge base model, yang
melibatkan AIML dan databsae.
Pada model ini user akan bertanya dan jawaban
akan terdapat dua kemungkinan didalam
knowledge base: AIML atau database. Jawaban
permanent akan di taruh di database,
pergantian jawaban didalam AIML akan
dihindari. Untuk mengatasi kemungkinan ini
maka cara mengatasinya yang diajukan didalam
paper ini menggunakan knowledge base engine
(KB Engine) pada sistem dan interface dengan
databset untuk mengambil data faktual didalam
merespon inputan.
Mekanismenya, pertama inputan akan dicari di
AIML, kemudian akan di lanjutkan ke KB Engine
untuk searching di database. Knowledge base
engine akan mencari jawaban yang cocok dari
databse menggunakan AIML yang termodikasi
yang diambil dari chat engine.
User: Who is Principal
Bot: Dr Srinivas ayer
User: Who is HOD?
User: Who is our course coordiantor?
4. 20164 | P a g e
medium.com/ashrovy | ashrovy.tumblr.com | ashrovy.wordpress.com
Gambar 3: Sistem arsitektur yang diajukan
KB Engine[5|1]
Level pertama pada KB Engine ini membutuhkan
jawaban dari inputan dan mengevaluasi respon.
KB Enigne berkerja didalam dua fase metodologi
evaluasi, dimana yang terkait untuk
mengindetifikasi data yang hilang pada user dan
memproses pengambilan jawban untuk formasi
jawaban yang benar yang diharapkan user.
Tahap pertama indetifikasi evaluasi data yang
hilang dan menghasilkan kalimat pertanyaan
untuk user. Fase kedua, proses user-provided
answer untuk inquisitive question.
Gambar 4: KB command structure
Primary Phase[5|2]
Query dari user (pertanyaan) akan di hentikan
oleh KB engine dan memasukkannya ke chat
engine untuk proses. Jika AIML memiliki jawaban
maka, pertanyaan akan langsung dijawab
melewati KB Engine, jika jawaban harus
mengambil dari database, modifikasi template
AIML digunakan menggunakan format yang ada
di gambar 4.
Tempalte akan memulai dengan token "KB"
dimana mengindikasi bahwa tempalte itu harus
diproses dengan KB engine. F(command)
mengindikasi fungsi aksi oleh KB enigne.
Untuk menemukan wilayah yang hilang, seksi
Main dan Subdata dapat digunakan untuk
menghasilakn command response dengan
format:
KB engine command: Function to act by KB
engine: Table name which contain the field:
(Field required to answering the query).
Indetifikasi wilayah dapat berupa nilai apa saja
dari kumpulan wilayah yang di simpan didalam
sistem. adalah kumpulan yang menyimpan
nilai wilayah tersebut
= {1, 2, . . . , }
KB engine membadningkan inputan user dari
kumpulan yang terdapat didalam nilai wilayah.
{} {1, 2, . . . , } = 陸
dimana adalah inputan user dan
{1, 2, . . . , } adalah kumpulan nilai yang
tersedia untuk mengindentifikasi wilayah
didlama sistem. {} harus berupa subset dari
{1, 2, . . . , }. Irisan dari kumpulan {} dan
kumpulan adalah null set, kemudian KB enigne
menghasilkan jawaban dari data yang hilang dan
mengumpulkan flag untuk mendaptkan input
langsung dari KB Engine.
Secondary phase[5|3]
Disini, nilai dari user dapat langsung di proses
oleh KB engine daripada chat engine. KB engine
membandingkan inputan user dengan kumpulan
nilai wilayah. Jika matching nilai input
ditemukan, maka konsentrasi input user dengan
command KB engine dan mematikan flag untuk
mendapatkan nilai input langsung dari KB
Engine.
Selama proses perlu menyimpan last response
dari user.
5. 20165 | P a g e
medium.com/ashrovy | ashrovy.tumblr.com | ashrovy.wordpress.com
Hasil dan Diskusi[6]
Setelah implementasi, kami mengobservasi
peningkatan interaktif antara user dan chatbot.
KB Enigme berhasil menemukan data infomrasi
yang hilang pada percakapan.
Setelah berhasil mendapatkan jawaban yang
tepat kami mencoba lagi dengan menanyakan
langsung tanpa bertanya begitu spesifik.
Gambar 5: User interface inquisitve bot
Conlusion[7]
Human-computer interaction dapat ditingkatkan
dengan cara membuat komputer dapat
memahami langsung maksud dari yang inputkan
user dengan bertanya lebih jelas. Percobaan ini
cukup sukses tetapi tidak menginfokan lebih
jauh tentang akurasi chatbot tersebut.