Método automático para la generación de reglas de

Método automático para la generación de reglas
de conversación para un chatbot
Angel Callejas Rodríguez1, Esaú Villatoro Tello1, Ivan Vladimir Meza Ruiz2
1Departamento
de Tecnologías y Sistemas de Información, Universidad Autónoma Metropolitana, Unidad Cuajimalpa
[email protected], [email protected]
2Instituto
de Investigaciones en Matemáticas Aplicadas y en Sistemas, UNAM
[email protected]
Introducción
Modelos de conversación
La expansión de Internet trajo consigo varias ventajas y desventajas. Una
de las desventajas son los depredadores sexuales en Internet y el riesgo
que esto implica para los menores con acceso a este servicio.
● 
● 
● 
● 
● 
● 
Palabra menos frecuente.
Palabra más frecuente.
Bigrama menos frecuente.
Bigrama más frecuente.
Bigrama más frecuente y palabra menos frecuente.
Bigrama menos frecuente y palabra más frecuente.
Ejemplo:
Hermana linda dile a mi papa que felicidades de mi parte <3
Un método de identificar a un depredador sexual es por medio de agentes
entrenados que se hacen pasar por un menor de edad para identificar a
un depredador. La desventaja de este método es que el número de
agentes es menor al número de depredadores.
Propuesta
En este trabajo se proponen una serie de algoritmos que permitan
generar reglas conversacionales para un chatbot de manera automática,
con la finalidad de sustituir a los agentes por el chatbot.
Para el caso donde se selecciona la palabra menos frecuente:
Hermana linda dile a mi papa que felicidades de mi parte <3
En caso si utilizamos el patrón con la palabra más frecuente sería:
Hermana linda dile a mi papa que felicidades de mi parte <3
Al hacer uso de los bigramas menos frecuentes tendríamos:
Hermana linda dile a mi papa que felicidades de mi parte <3
Por último usando el bigrama con mayor frecuencia nos da
como patrón:
Hermana linda dile a mi papa que felicidades de mi parte <3
Experimentos y Resultados
Se evaluó de 3 formas, en cada dos de ellas haciendo uso de unigramas,
bigramas y trigramas.
Riqueza Léxica
0.8
0.7
palabra_menos
palabra_más
bigrama_más
p_más y b_menos
p_menos y b_más
Usuario
Riqueza POS
bigrama_menos
0.6
0.6
0.5
0.5
0.4
palabra_menos
palabra_más
bigrama_más
p_más y b_menos
p_menos y b_más
Usuario
bigrama_menos
0.4
0.3
0.3
0.2
0.2
0.1
0
Riqueza Léxica Chatbot
Riqueza Léxica Chatbot
Riqueza Léxica Chatbot
Unigrama
Bigrama
Trigrama
Usuario
234
Longitud Promedio
10
7
Tamaño del vocabulario
711,854
186,857
Basado en el trabajo de Bayan Aref Abu Shawar” (2005) se crean 4
modelos conversacionales, los cuales se basan en el uso de palabras y
bigramas clave junto con su frecuencia dentro del corpus.
10000
iq
R
m
en
ue
z
ja a
ja
ja
ho
la
gu
s
qu ta
ie
ro
am
o
m
em is
qu ojis
ie
r
de es
ta
m lle
ie
do
lis
to
ás
os
y
b_
m
os
os
en
en
m
m
a_
b_
p_
m
ás
y
m
ra
big
0
Usuario
p_
a_
m
ra
pa
la
br
a_
m
m
ás
ás
5000
big
pa
Evaluación Riqueza
Léxica p-menos y bmás
35000
30000
25000
20000
15000
10000
5000
0
15000
os
782
Trigrama
20000
en
1300
Promedio de Intervenciones
Riqueza POS Chatbot
Bigrama
25000
m
Pre-procesamiento
1300
Riqueza POS Chatbot
Unigrama
30000
a_
Sin Procesamiento
la
br
Datos
No. Usuarios
Riqueza POS Chatbot
Evaluación Riqueza
Léxica P-menos
Chatbot
1800
1600
1400
1200
1000
800
600
400
200
0
●  Para la conformación del corpus de entrenamiento se utilizó la red
social ASK debido su tipo de usuarios.
●  Ese corpus es utilizado para generar las reglas conversacionales del
chatbot por medio de archivos AIML.
●  El chatbot aprende de uno o más archivos AIML, para interactuar con
los usuarios.
●  Gracias a la naturaleza del corpus, el chatbot adquiere la
personalidad de un adolecente.
0
Chatbot
emojis
...
amo
anonimo
claro
digo
dime
gracias
gusta
haha
hola
holi
jaja
mis
nose
quieres
quiero
Perplejidad
0.1
Usuario
Chatbot
Ejemplos:
Palabra menos frecuente
Usuario: Hola
Chatbot: Hola
Usuario: Como te llamas
Chatbot: muy bien:)
Usuario: que edad tienes
Chatbot: D:
Usuario: de donde eres
Chatbot: aslajshhas? C:
Usuario: que te gusta
Chatbot: D:
Usuario: platicame algo
Chatbot: Bien supongo...
Usuario: adiós
Chatbot:
Palabra menos y bigrama más
frecuente
Usuario: Hola
Chatbot: hola:3
Usuario: Como te llamas
Chatbot: pa que quieres saber
Usuario: que edad tienes
Chatbot: De cuantos me veo;)??
Usuario: de donde eres
Chatbot: DF. <3
Usuario: que te gusta
Chatbot: Quien o que? :)
Usuario: platicame algo
Chatbot: Jajajaja de que quieres que te
cuente
Usuario: adiós
Chatbot: de rato c: