Download parry

Document related concepts

Bot conversacional wikipedia , lookup

Transcript
conversando con la computadora:
¿será verdad?
Dra. Daniela López De Luise
AIGroup
[email protected]
Temario:
Introducción a los bots conversacionales.
Sistemas existentes. Posibilidades.
Propuesta Word Intelligent Handler (WIH)
Bots conversacionales
Def. Sistema informático que conversa con una persona simulando
un diálogo humano
características
Interfase generalmente es teclado
Tienen respuestas pre-programadas
La respuesta se dispara en función de ciertas palabras en s
entrada
No comprenden el significado del diálogo en curso
Características
Cantidad de recursos
Requieren inteligencia artificial
Librerías de vocabulario
Algunos: capacidad de aprender
- estímulo-respuesta
- cadenas de markov
Carecen de conciencia
- redes neuronales
- language sisambiguation parsing
No comprenden dialogo
- Case Logic (lógica de casos)
-blackboards
-NLP
-part of speech tagging
ELIZA
Bots clásicos
ELIZA
Eliza: —Hola, ¿de qué vamos a hablar hoy?
Humano: —Hablemos de fútbol.
Eliza: —¿De qué cuadro sos? (encontró "fútbol" en su memoria y
esta respuesta es una de las que tiene).
Humano: —De Racing.
Eliza: —¿Qué más podrías decir sobre eso? (una proposición
ambigua que puede servir para todo).
Humano: —Ser de Racing es estar acostumbrado a sufrir.
Eliza: —Es una frase llamativa: "Ser de Racing es estar
acostumbrado a sufrir"
(envuelve el texto).
ELIZA
J. Weizenbaum (1966)
Parodia de terapeuta Carl Rogers
Trabaja por simple búsqueda de keywords y frases modelo
Implementaciones en Java, perl , python, javaScript, etc.
SmarterChild
SmarterChild
courtjester5000: I hate it when people use up all my printer paper.
SmarterChild: Oh yeah?
courtjester5000: They think paper just grows on trees or
something.
SmarterChild: They think paper just grows on trees or something?
courtjester5000: Do you have any of those trees growing in
YOUR backyard?
SmarterChild: Have any of those trees growing in your backyard?
I'm pretty sure I don't.
courtjester5000: Me either.
SmarterChild
Colloquis Inc. (2001)
Relanzado en 2003 como servicio gratuito
(MSN, ICQ, Messenger)
En los momentos de mayor éxito, SmarterChild ha enviado
más de 500 respuestas por segundo y más de cuatro millones
de mensajes al día
Algunos foros lo refieren como un bot erótico
PARRY
PARRY
interviewer: How are you today?
parry: OK.
interviewer: What is your name?
parry: My name is Frank Smith.
interviewer: How old are you?
parry: Twenty-eight.
interviewer: Are you married?
parry: No.
interviewer: What sort of work do you do?
parry: I work in the Post Office.
interviewer: Why are you in the hospital?
parry: I shouldn't be here.
interviewer: Who brought you here?
parry: The police.
interviewer: What trouble did you have with the police?
parry: Cops don't do their jobs.
PARRY
PARRY fue escrito en 1972 por el psiquiatra Kenneth Colby
PARRY intenta simular un esquizofrénico paranoico
PARRY y ELIZA, conversaron varias veces entre sí
(el encuentro más popular ocurrió en el ICCC 1972)
PARRY conversando con ELIZA
parry: People get on my nerves sometimes.
eliza: I am not sure I understand you fully.
parry: You should pay more attention.
eliza: Suppose you should pay more attention?
parry: You're entitled to your opinion.
eliza: What makes you think I'm entitled to my opinion?
parry: It bothers me just to be around people.
eliza: Please go on.
[Parry continúa con ciertas frases paranoicas con menciones a la
monta de caballos y la Mafia]
Dr. Sbaitso
Dr. Sbaitso
Programa de simulación de inteligencia artificial para MS-DOS
-distribuido junto con varias placas de sonido de
Creative Labs a principios de los 90.
Intentaba mantener una conversación por texto y voz artificial.
El nombre Sbaitso proviene de Sound Blaster Acting Intelligent
Text to Speech Operator y simula un psicólogo.
SHRDLU
SHRDLU
Persona: Toma un bloque rojo grande.
SHRDLU: De acuerdo.
Persona: Toma la piramide.
SHRDLU: No entiendo a qué pirámide se refiere.
Persona: Encuentra un bloque más alto que ese que estás sosteniendo
y ponlo en la caja.
SHRDLU: Supongo que con "lo" se refiere al bloque que es más alto que
éste que estoy sosteniendo.
SHRDLU: De acuerdo.
Persona: ¿Qué contiene la caja?
SHRDLU: La pirámide azul y el bloque azul.
Persona: ¿Qué sostiene a la pirámide?
SHRDLU: La caja.
Persona: ¿Cuántos bloques no están en la caja?
SHRDLU: Cuatro de ellos.
…
SHRDLU
Original screen display
Later color rendering
(Univ. de Utah)
Objetivo: comprensión del lenguaje natural
T. Winograd (1968-70)
Micro PLANNER y LISP
Define un mundo acotado o de “bloques”.
El usuario instruye al sistema.
El sistema comprende el lenguaje natural
Racter
Racter
Programa de inteligencia artificial que generaba
prosa aleatoria en inglés.
Fue mostrado en el año 1983, donde se exageró sobre su
sofisticación.
Escrito por William Chamberlain y Thomas Etter.
A.L.I.C.E
A.L.I.C.E
Artificial Linguistic Internet Computer Entity
ganó el Loebner Contest
Proyecto de Internet, implementada en Java
Parte de Proyecto Pandora (creación de bots de todo tipo)
Autor: R. Wallace
The ALICE A.I. Foundation es una organización sin fines de
lucro dedicada al desarrollo y adopción de AIML
(AI markup lang.)
WIH
WIH
(Word Intelligent Handler)
sentencia
Parser
morfosintáctico
Estructuras
morfosintáctica
extractor
estructuras
extractor
Conceptos corto plazo
memoria
Corto plazo
respuesta
filtro
wavelet
sintetizador
De respuestas
Arbol de estructuras
y respuestas
memoria
largo plazo
WIH
Consideraciones generales
Las operaciones sobre texto son finitas y numerables
La lista de operaciones no es estática
Cada operación tiene asociado un símbolo de conector especia
que permite construir un grafo direccional
WIH
Ejemplo de operaciones
WIH
Reducción de operaciones:
La cantidad de operaciones a analizar, se pueden reducir definiendo
algunas en función de otras más básicas.
A continuación se define cada operación con número o ID n como <n>
A<1>B → A<6>B . A<16> B
A<2>B → A<6>B
A<3>B → A<6>B . A<4>B
A<5>B → A<7>B
A<8>B → A<6>B
A<10>B → A<6>B
A<12>B → A<6>B . A<16>B
A<13>B → A<6>B
A<14>B → A<6>B
A<15>B → A<6>B
...
WIH
Operaciones básicas:
Sea el conjunto C de las siguientes operaciones básicas :
C={∧, ∨, ¬,° , ⊥} donde se definen cada una como
∧
∨
¬
°
⊥
conjunción o coocurrencia
disyunción u ocurrencia alternada
opuesto
análisis
síntesis
WIH
operaciones WIH:
1.reducibles a un conjunto mínimo.
2. es definible una proyección sobre el conjunto mínimo
fWIH(4)→ ∧
fWIH (7)→ ∨
fWIH (11)→ ¬
fWIH (6)→ °
fWIH (16)→⊥
WIH
Aplicación de las operaciones:
La casa de mi padre→ casa <1> mi padre→reduciendo
casa <6> mi padre. casa <16> mi padre→ reemplazando
n1: casa
n2: mi padre
n1 ° n2 . n1 ⊥ n2
Abierto de nueve a una→ abierto <1> nueve <14> una→ reduciendo
(abierto <6> nueve. abierto <16> nueve) <6> una→ reemplazando
n3:abierto
n4: nueve
n5:una
(n3 ° n4 . n3 ⊥ n4) ° n5
WIH
Estoy para marchar de un momento a otro→
Estoy <2> marchar <1> un momento <14> otro→ reduciendo
Estoy <6> ( marchar <6> un momento. marchar <16> un momento)
<6> otro→ reemplazando
n9: estoy
n10: marchar
n11: un momento
n12: otro
n9 ° ( n10 ° n11. n10 ⊥ n11) ° n12
WIH
Estado
Implementados los filtros para aprender y manipular:
-diccionario automático de palabras
-categorización automática de palabras
-estructuras sintácticas posibles
-estructuras sintácticas dentro de un diálogo
-extracción automática de la esencia de una sentencia
Implementada la conversión de sentencias en un formato interno
optimizado para el uso de los filtros
Pendiente la implementación del sintetizador de respuestas.
Gracias