>> [REPRODUCCIÓN DE MÚSICA]
>> DAVID MALAN: Este es CS50.
Este es el final de la semana 10.
Y el muchacho, ¿tenemos una buena clase para usted hoy.
Estamos muy emocionados de invitar a dos de nuestros amigos de Yale hasta nosotros hoy
y buscar en la intersección de inteligencia artificial, la robótica,
procesamiento del lenguaje natural, y más.
>> Y, en efecto, sobre el últimas semanas, hemos
Ciertamente pasado mucho tiempo, especialmente en los conjuntos de procesadores anteriores,
centrándose en bonitos detalles de bajo nivel.
Y es muy fácil perder de vista del bosque por los árboles
y se colgó en bucles y condiciones y punteros, sin duda, y similares.
Pero la realidad es que ustedes tienen ahora la ingredientes con los que se puede realmente
resolver algunos problemas interesantes, entre ellos los que nuestros amigos de Yale
trabajar en apenas por debajo de Cambridge.
>> Así que permítanme primero en introducir la cabeza profesor ayudante de la Universidad de Yale, Andy.
>> [APLAUSOS]
>> ANDY: En primer lugar, simplemente gracias por permitirme un par Yalies
hacer estallar abajo a Cambridge en la actualidad.
Nosotros realmente lo apreciamos.
En segundo lugar, a nuestros amigos volver casa- Jason,
gracias por estar en funcionamiento conferencia.
Espero que todo está bien en New Haven.
>> Así que sí, estoy súper emocionada introducir Scaz hoy.
Scaz dirige el laboratorio de robótica.
Él es un profesor de, como, cinco diferentes departamentos de la Universidad de Yale.
En su laboratorio, él tiene muchos, muchos robots que le gusta jugar con.
Él tiene, como, la mejor trabajo en el mundo.
Y llega a la clase de desastre alrededor con eso todo el día
de largo y hacer algún trabajo, también.
>> Y así que en realidad trajo uno de ellos hacia abajo con nosotros hoy.
Así que sin más preámbulos, Scaz es va a seguir adelante y presentarnos
a su amigo robot.
>> [APLAUSOS]
BRIAN Scassellati: Gracias, David.
Gracias, Andy.
Es tan maravilloso estar aquí con todo el mundo en la actualidad.
Quiero ser muy claro que primero el personal CS50 aquí en Cambridge
ha sido muy hospitalarios con nosotros.
Estamos muy agradecidos por todo lo que han hecho para que nos apoyen.
Y así, nos gustaría poder para devolver la amabilidad.
>> Así que hoy, llegamos a anunciar que vamos a tener una nueva,
uno-de-una especie de evento CS50 pasando en New Haven la semana que viene.
Y este es el CS50 Investigación Expo.
Así que vamos a estar invitando everyone-- CS50 estudiantes,
el personal tanto de Harvard y Yale-- a bajar y visitar con nosotros el viernes.
Vamos a tener una gran variedad de más de 30 personas diferentes que presentan
y upperclassmen exhibiting-- mostrando a algunos de sus productos de investigación.
Tendremos algunas nuevas empresas, incluso, mirando para un poco de nuevos talentos tecnología,
nuevas empresas, tanto de la Universidad de Harvard y Yale.
Y vamos a tener algunos grupos de estudiantes buscando alguna nueva composición.
>> Va a ser un momento muy emocionante.
Esperemos que aquellos de ustedes que son que baja para el partido de Harvard-Yale
será capaz de detener por un poco temprano,
justo en el centro del campus, Sterling Memorial Library.
Vamos a tener un conjunto de exposiciones que van desde autónoma
veleros a formas de utilizar el software para preservar los manuscritos medievales.
>> Vamos a tener el anuncio redes hoc y la gente
la enseñanza de la codificación del software en Ciudad del Cabo.
Tendremos equipo manifestaciones musicales.
Y vamos a por supuesto tenemos más robots.
Así que usted Esperamos voy únase a nosotros para este evento.
Debe haber un montón de diversión, un poco de comida,
y un montón de interesante cosas de que hablar.
>> Así que hoy, vamos a hablar sobre el procesamiento del lenguaje natural.
Y este es el intento por nosotros para construir una nueva forma de interactuar
con nuestros dispositivos, ya desde hace unas semanas,
usted ha estado enfocado en cómo es que puede escribir código, escribir software
que es una forma de ser capaz de decirle a un máquina, esto es lo que quiero que hagas.
>> Pero no deberíamos necesitar esperar que todo
eso es por ahí que se utiliza por todos en el mundo
va a ser competentes en este tipo de instrucción.
Así distinguimos entre el ordenador idiomas y Las Lenguas naturales
es decir, las cosas que los seres humanos utilizan para comunicarse con otros seres humanos.
Y tratamos de construir interfaces que utilizan estos mecanismos de comunicación naturales.
>> Ahora, al igual que cualquier otro tema que hemos empezado con en CS50,
vamos a empezar con el más simple poco de procesamiento del lenguaje natural
que podemos imaginar.
Vamos a comenzar con el parte histórica del lenguaje natural.
Y luego vamos a construir hasta sistemas cada vez más recientes
y tienen algunos demos diversión en el camino.
>> Así que vamos a empezar con lo que era probablemente el primer lenguaje natural
sistema de procesamiento.
Esto era un sistema de software escrito en 1966 por Joseph Weizenbaum llamado ELIZA.
Y Eliza fue diseñado para replicar el tipo de interacción
que tendría con un Psicoterapeuta de Rogers.
Ahora, los rogerianos, tenían una idea que la psicoterapia
involucrados poder reflejar de vuelta a un paciente y hablar con ellos,
básicamente, por sólo les da una poquito del terapeuta.
Es decir, todo que el terapeuta dijo
se suponía que era sólo un reflejo de lo que el paciente estaba diciendo a ellos.
>> Así que vamos a tratar de Demo Esta.
¿Tenemos un voluntario que estaría dispuestos a compartir su más profunda,
más oscuras, y / o secretos falsos con ELIZA?
Claro, ¿por qué no vamos para arriba.
Fantástico.
¿Y tu nombre?
>> MILES: Miles.
>> BRIAN Scassellati: Miles.
Encantado de conocerte, Miles.
Si desea aferrarse a eso.
Y vamos a utilizar una versión de ELIZA
que hemos replicado dentro del IDE CS50.
Y vamos a ver la fuente código para esto en un rato.
Pero por ahora, sólo somos va a invocarlo escribiendo eliza.
>> Y Eliza se va a dar respuestas que van a ser en todas las capitales.
Y voy a hacerle algunas preguntas.
Y vamos a responder y tipo en las respuestas a ELIZA.
Así ELIZA ha dicho: "Hola, soy ELIZA.
¿Cuál es tu problema?"
Que te gustaría decirle ELIZA hoy?
>> MILES: Sólo puedo conciliar el sueño si tengo zapatillas de conejo en.
>> BRIAN Scassellati: De acuerdo.
Correcto.
>> [RISA]
>> "Sólo puedo conciliar el sueño con zapatillas de conejo en ".
Y Eliza dice: "Oye, ¿verdad tener problemas psicológicos?
Tal vez esto es un buen indicador ".
>> OK.
Entonces, ¿qué le gustaría responder?
>> MILES: Sí.
>> BRIAN Scassellati: Sí.
Hombre de muchas palabras.
Me gusta eso.
Eliza dice: "Usted parece bastante positivo."
>> MILES: No, yo soy, de hecho, un electrón.
>> BRIAN Scassellati: "No.
De hecho, soy un electrón ". "¿Has venido a mí
porque usted es un electrón? "
Ahora, podemos ver algunos de el cosas-- voy
a usted hacer una pausa por un segundo, Miles.
No ir a ninguna parte.
No hemos terminado contigo todavía.
ELIZA es, en cierto modo, responder a ciertas cosas
que él está diciendo, pero sin ninguna comprensión real.
Y también está repitiendo recuperar parte de las partes de su condena.
>> Así que nos dijo: "No.
De hecho, soy un electrón ".
Eliza respondió de vuelta, "¿Has venido para mí, porque usted es un electrón? "
Correcto.
Vamos a darle una respuesta más aquí.
Darle una buena, Miles.
>> MILES: Bueno uno?
>> Sí, por favor, ayúdame.
BRIAN Scassellati: "Sí.
Por favor, ayúdame "." ¿Estás seguro? "
MILES: No.
BRIAN Scassellati: No.
"¿Qué sugiere para usted?"
>> MILES: Yo no puede ser un electrón.
>> BRIAN Scassellati: "Yo no puede ser un electrón ".
"¿Estás diciendo que no acaba de ser negativo?"
>> Correcto.
Así Miles, muchas gracias.
>> MILES: Gracias.
>> BRIAN Scassellati: Muchas gracias.
[APLAUSOS]
>> Así que este programa ELIZA, en muchos sentidos, está respondiendo simplemente a las piezas
que estamos ofreciendo sin ningún profunda comprensión de lo que está pasando aquí.
Este es un tipo de sistema de denominado coincidencia de patrones, donde
estamos buscando cierta fragmentos de texto que estamos continuación
va a sacar de lo fue proporcionado como entrada,
convertirlo, potencialmente, de alguna manera, y luego darle la espalda al usuario.
>> ¿Alguno de ustedes piensan ELIZA que es en realidad
realizar el psicoanálisis válida aquí?
A una persona, tal vez.
>> AUDIENCIA: [inaudible].
BRIAN Scassellati: ¿Y cómo te hace sentir eso?
Sí, de hecho, lo hace.
Y vamos a ver, en realidad, la código fuente para que en un momento.
Y por lo que vas a ser capaz de hacer exactamente esto.
>> Ahora, ELIZA es una forma de lo que hoy llamaríamos un bot de chat.
Simplemente va a través de la texto que usted está proporcionando,
proporciona el monto mínimo de comprensión o de procesamiento,
y luego loros de nuevo a usted.
Así que vamos a echar un vistazo, conceptualmente, y hablar de lo
es que Eliza está haciendo realidad.
>> ELIZA está tomando de un let sentence-- digo: "Quiero impresionar a mi jefe."
Y Eliza está mirando a través de esa frase,
y tratando de encontrar y coincidir con ciertos patrones.
Así, por ejemplo, uno de los patrones ELIZA que está buscando son las palabras
"Yo quiero."
Y cada vez que ve algo que tiene "Quiero" en ella,
formula una respuesta.
Y esa respuesta es una cadena fija.
En este caso, se trata de "qué es lo que quieres?"
Y puse una pequeña estrella en el final, porque eso es sólo
el comienzo de nuestra respuesta.
Y la estrella indica que vamos a tomar el resto
de utterance-- del usuario "para impresionar a mi jefe" -
y vamos a añadir que en el extremo de esta cadena.
>> Así que ahora, en lugar de decir, "¿por qué Qué quieres impresionar a mi jefe "
hay un poco de adicional procesamiento que vamos a hacer.
Es decir, tendremos que convertir algunos de los pronombres
aquí desde "mi jefe" a "su jefe".
Y podría haber algunos otros cambios que necesitamos hacer.
Así que en lugar de simplemente pegándolo directamente sobre el final, lo que vamos a hacer
está tomaremos el resto del utterance-- de usuario en aquí-- blanco
y lo tomaremos una pieza a un tiempo y convertir cada cuerda
modo, cada palabra, en la sentencia.
>> Así que vamos a tomar la palabra "para".
No hay conversión que tenemos que hacer eso.
"Impresionar."
No hay conversión tenemos que hacer allí.
"Mi" se convertirá en "su".
Y "jefe" sólo tendremos que dejamos como "jefe".
Y finalmente, cualquier cosa que termina con un punto,
nos convertiremos en una pregunta.
>> Esta muy simple coincidencia de patrones es en realidad bastante éxito.
Y cuando esto se introdujo en 1966-- Joseph Weizenbaum
programada en un equipo.
Ahora, las computadoras de la época no eran modelos de escritorio.
Ellos se compartieron recursos.
Y sus estudiantes lo haría ir y charlar con ELIZA.
Finalmente, tuvo que restringir el acceso a la misma
porque sus estudiantes no estaban conseguir cualquier trabajo hecho.
Estaban charlando con ELIZA.
Y, de hecho, tuvo que despedir a su ayudante, que
gastado todo su tiempo hablando con ELIZA sobre sus problemas profundos y preocupantes.
>> Todo el que utiliza estos sistemas comenzado a antropomorfizar ellos.
Empezaron a pensar en ellos como siendo animado y personas reales.
Empezaron a reconocer algunos de las cosas que ellos estaban diciendo
fueron llegando de nuevo a ellos.
Y fueron descubriendo cosas sobre sí mismos.
Y, de hecho, incluso los expertos, incluso los psicoterapeutas,
comenzó a preocuparse de que, de hecho, quizá ELIZA sería sustituirlos.
E incluso el ordenador Los científicos temen que estábamos
tan cerca de la solución de lenguaje natural.
>> Ahora, eso no era cualquier lugar cerca de la verdad.
Pero eso es lo impresionante estos sistemas pueden parecer.
Así que vamos a empezar a buscar debajo y tratar
para conseguir un poco de una pregunta de donde el código que realmente sucede.
Así que vamos a hacer este código disponibles después.
Y esta es una muy puerto simple y directo
de la implementación original ELIZA.
>> Así que algunos de estos estilística cosas que verás aquí
no son estilísticamente lo nos gustaría que hicieras
o lo que hemos estado enseñando que hagas.
Pero hemos tratado de mantenerlos la misma a través de los muchos puertos
que esto ha tenido de manera que tiene el sabor de la original.
Así que vamos a incluir un montón de cosas,
y luego tendremos un un conjunto de palabras clave, las cosas
que ELIZA reconocerá y responder directamente a.
Así que si usted tiene palabras como "Puede usted" o "no hacer" o "no"
o "sí" o "sueño" o "hola", entonces ELIZA
responderá selectivamente a aquellos.
También tendremos un cierto número de cosas
que vamos a cambiar, al igual que la conversión de "mi" a "su".
>> Y luego vamos a tener un conjunto de respuestas que para cada una de estas palabras clave,
vamos a girar a través de estas diferentes respuestas.
Así que si digo "sí" tres veces seguidas, me
podría obtener tres diferentes respuestas de ELIZA.
Nuestro código es, pues, realmente muy simple.
Si me desplazo hacia abajo más allá todos ellos respuestas que hemos programados en
y nos ponemos manos a nuestro principal, vamos a inicializar
un par de diferentes variables y hacer un poco de limpieza
al principio.
Pero entonces no hay absolutamente un conjunto de código que usted pueda entender.
Un bucle while grande que dice que soy va a repetir esto una y otra.
Voy a leer en una línea, y voy a almacenar que, en una cadena de entrada.
Voy a comprobar y ver si es la palabra clave especial "bye", que
significa salir del programa.
Y luego voy a comprobar y ver si alguien está simplemente repitiendo a sí mismos
una y otra vez.
Y voy a gritar a ellos si lo hacen.
Voy a decir "no te repitas".
>> Mientras que ninguno de los que suceda, vamos a a continuación, analizar a través y recorrer,
en las líneas 308 a 313 aquí, y comprobar y ver
son cualquiera de las palabras clave frases contenidas en la entrada
que me acaban de dar?
Si hay una coincidencia para ellos, así a continuación, voy a recordar esa ubicación.
Voy a recordar esa palabra clave.
Y voy a ser capaz de construir una respuesta.
>> Si no encuentro uno, bueno, entonces, la última cosa en mi arsenal de palabras clave
serán mis respuestas predeterminadas, cuando nada más partidos.
Le preguntaré a preguntas como "¿Por qué lo hiciste vengo aquí? "o" ¿Cómo puedo ayudarle? "
que son sólo parcialmente adecuada no importa lo que es la entrada.
>> A continuación, le construimos la respuesta de ELIZA.
Seremos capaces de tomar que la respuesta de base,
tal como lo hicimos en ese ejemplo "mi jefe".
Si eso es todo lo que hay es-- si es sólo una
cadena que se supone que debo respond-- Yo sólo puedo enviarlo de vuelta.
Si tiene un asterisco al el final de la misma, entonces voy a
procesar cada ficha individual en el resto de la respuesta del usuario
y añadir los de, intercambiando palabra por palabra lo que necesito.
>> Todo esto es absolutamente algo que se podría construir.
Y de hecho, las formas en que nos tener argumentos de línea de comandos procesados,
la forma en que usted tiene procesado a través de peticiones HTTP
siga el mismo tipo de reglas.
Son patrones.
>> Así ELIZA tenía una relativamente importante impacto en lenguaje natural
porque hacía parecer como si fuera una meta muy alcanzable, al igual que de alguna manera nos habíamos
ser capaz de resolver este problema directamente.
Ahora, eso no quiere decir que ELIZA hace todo lo que nos gustaría hacer.
Ciertamente no.
Pero debemos ser capaces de hacer algo más.
>> Nuestro primer paso para ir más allá de ELIZA va
ser capaz de mirar a No está ingresado texto
en el teclado, pero el habla, real discurso grabado en un micrófono.
Así que si nos fijamos en estos diferentes piezas, estamos
va a tener que construir un conjunto de modelos.
Vamos a tener que ser capaz de para ir de la acústica de bajo nivel
echada información--, amplitud, frequency--
y convertir esto en algunas unidades que estamos
capaz de manipular con mayor facilidad y, por último, manipularlos
en palabras y oraciones.
>> Así que la mayoría de reconocimiento de voz sistemas que están ahí fuera hoy
seguir una estadística modelo en el que construimos
tres representaciones diferentes de lo que que la señal de audio contiene en realidad.
Comenzamos con un modelo de fonética que habla de solo la base
sonidos que estoy produciendo.
¿Estoy produciendo algo que es un B como en niño o una D como en el perro?
¿Cómo puedo reconocer los dos diferentes móviles como separado y distinto?
>> Además de eso, vamos a continuación, construimos un modelo de pronunciación de las palabras,
algo que une esos teléfonos individuales
y los combina en una sola palabra.
Y después de eso, vamos a tomar las palabras y nosotros montamos con un lenguaje
modelar en una oración completa.
>> Ahora, vamos a hablar de cada uno de ellos de forma independiente y por separado.
Pero estos tres modelos son todos sólo va a ser estadísticas.
Y eso significa que cuando nos trabajar con ellos, vamos a
ser capaz de trabajar con todos ellos simultáneamente.
Correcto.
Vamos a empezar con nuestro modelo de fonética.
Así modelos fonéticos dependen de una técnica computacional
llamada modelos ocultos de Markov.
Estos son modelos gráficos en los que me tener y reconocer un estado del mundo
como se caracteriza por un conjunto de características.
Y ese estado describe una parte de una acción que estoy comprometido en.
>> Así que si lo pienso hacer el sonido "ma", como madre,
hay diferentes componentes a ese sonido.
Hay una parte en la que me baso en la respiración.
Y luego Aprieto los labios.
Y Pongo los labios un poco hacia atrás granito de arena para hacer que el sonido "ma".
Y luego está un comunicado.
Mis labios se separan.
El aire es expulsado.
"Mamá."
>> Esas tres partes diferentes serían representado por los estados en este graph--
el comienzo, el medio y el fin.
Y yo tendría transiciones que me permitió viajar de un estado
a la siguiente con una cierta probabilidad.
Así, por ejemplo, que M sonar podría tener un muy,
ingesta muy corto en el beginning-- "mm" - y luego un más largo,
fase vibratoria donde me estoy conteniendo los labios y casi humming--
"mmmm" - y luego un muy corto plosive donde yo expulso breath-- "ma".
>> El modelo oculto de Markov es diseñado para capturar el hecho de
que la forma en que hago ese sonido "ma" se va
a ser ligeramente diferente en su temporización, es la frecuencia,
y sus funciones que la forma en que usted lo hace
o la manera en que yo podría hacerlo cuando estoy hablando
unos usos diferentes de la letra.
"Madre" y "puede que" voluntad sonar ligeramente diferente.
>> Así que para reconocer una en particular sonido, lo haríamos
construir modelos de Markov, éstos oculto de Markov modelos, de todos los teléfonos posible que yo
puede ser que desee reconocer, cada sonido posible,
y luego mirar el datos acústicos que tengo
y determinar estadísticamente cuál es la más probable
haber producido este sonido.
OK.
Con ese modelo, que luego empezar a construir en la parte superior de la misma.
Tomamos un modelo de pronunciación.
Ahora, pronunciación veces modelos son simples y fáciles
porque sólo hay una manera de pronunciar algo.
Otras veces, son un poco más complicado.
He aquí una guía de pronunciación para esa cosa roja que es
una fruta que usted hace la salsa de tomate fuera de.
La gente no piensa que es una fruta.
¿Correcto?
>> Ahora, hay muchas maneras diferentes que las personas se pronuncia esta palabra.
Algunos dirán "toe-may-toe".
Algunos dirán "toe-mah-toe".
Y podemos captar que con uno de estos modelos gráficos
donde, de nuevo, representamos transiciones como teniendo una cierta probabilidad
y asociado probabilidad con ellos.
>> Así que en este caso, si tuviera que seguir la ruta superior a través de todo este gráfica,
Yo estaría empezando en la letra En el extremo izquierdo, el "ta" de sonido.
Me tomaré la mitad superior, el "oh" y luego un "ma"
y luego una "a", y luego un "ta", y un "oh". "Toe-may-toe".
Si tomé el camino de fondo a través de esto, voy a conseguir "ta-mah-toe".
Y si me bajé y después hasta, me gustaría tener "ta-may-dedo del pie."
>> Estos modelos capturan éstos diferencias porque siempre
desplegamos una de ellas sistemas de reconocimiento,
que va a tener que trabajar con un montón de diferentes tipos de personas,
un montón de diferentes acentos, e incluso diferentes usos de las mismas palabras.
Por último, además de eso, vamos a construir algo
que se ve muy complicado, llamado el modelo de lenguaje,
pero en realidad es el más simple de los tres debido a que estos operan
en lo que se llaman modelos de n-gram.
Y en este caso, te estoy mostrando un modelo de n-gramas de dos partes, una bigrama.
Vamos a hacer física la idea que a veces, ciertas palabras son
más propensos a seguir una dada palabra que otros.
Si acabo de decir "el pronóstico del tiempo" la siguiente palabra probablemente podría ser "hoy"
o podría ser "el clima la predicción para mañana ".
Pero es poco probable que sea "la previsión meteorológica de la alcachofa ".
>> Lo que un modelo de lenguaje hace es que captura los estadísticamente
contando, desde algunas muy grandes corpus, todas las instancias
en el que una palabra sigue a otro.
Así que si me tomo un gran corpus-- como cada Wall Street Journal
que se ha producido desde 1930, que es uno de los corpuses-- estándar
y miro a través de todo ese texto, y cuento
hasta cuántas veces después "pronóstico" qué veo "hoy"
y cuántas veces lo hago veo "previsión", seguido de "alcachofa"
el primero va a ser mucho más probable.
Va a aparecer con mucha más frecuencia.
Y por lo que tendrá un mayor probabilidad asociada a ella.
>> Si quiero averiguar la probabilidad de todo un enunciado,
entonces, yo sólo romperlo.
Por lo tanto la probabilidad de audiencia la frase "la rata se comió el queso"
es la probabilidad de la palabra "el" a partir de una frase,
y entonces la probabilidad de que el palabra "rata" sigue a la palabra "the"
y la probabilidad de que la palabra "comió" siguiente "rata"
y la probabilidad de que "queso" sigue "comió".
>> Esto suena como una gran cantidad de estadísticas, una gran cantidad de probabilidades.
Y eso es todo lo que es.
Pero lo sorprendente es que si usted hace esto con una muestra suficientemente grande de datos,
funciona.
Y funciona tremendamente bien.
Todos sabemos que estas tecnologías.
La mayoría de los sistemas operativos vienen con reconocimiento de voz en este punto.
Utilizamos Siri y Cortana y Echo.
Y estas cosas se basan en este tipo de de tres capas model--
un modelo fonética en la parte inferior, una modelo de pronunciación en el medio,
y un modelo de lenguaje en la parte superior de ellos.
>> Ahora, tienen que hacer un poco más que con el fin de responder a las preguntas.
Pero el reconocimiento de lo que eres dicho depende exactamente en eso.
Así que echemos un ejemplo aquí.
Así que tengo mi teléfono sentado aquí por debajo de la cámara de documentos.
Y vamos a pide Siri algunas preguntas.
¿Correcto?
>> Así que vamos a despertar a mi teléfono aquí.
Siri, ¿cuál es el clima como en New Haven hoy?
>> SIRI: Aquí está el clima para New Haven, Connecticut hoy.
>> BRIAN Scassellati: OK.
Así que primero que vio que Siri reconocido cada una de las palabras individuales
y luego producido una respuesta.
Hablaremos de cómo esa respuesta viene alrededor de un poco.
Pero ahora que sabemos que esto se basa simplemente
en las estadísticas de primas y este patrón de tipo coincidencia de enfoque,
podemos jugar algunos juegos con Siri.
>> Así que puedo intentarlo de nuevo.
Siri, ¿cuál es el clima hipopótamo New Haven, hoy?
>> SIRI: OK.
Aquí está el tiempo en New Haven, Connecticut para hoy.
BRIAN Scassellati: Siri No intimidado por que
porque se encontró la pattern-- "tiempo", "hoy", "New Haven".
Eso es lo que está respondiendo que, al igual que ELIZA.
Correcto.
Vamos a darle una más aun ejemplo más ridículo.
Siri, alcachofa tiempo armadillo hipopótamo New Haven?
>> SIRI: Déjame ver cómo está eso.
Esto es lo que encontré en la web para lo que son las alcachofas armadillo
hipopótamo New Haven.
>> BRIAN Scassellati: OK.
Así que si me voy lo suficientemente lejos de este modelo,
Soy capaz de confundir porque hay ya coincide con el patrón que tiene.
Y esa estadística motor que está diciendo,
¿cuál es la probabilidad de que tienes las palabras de hipopótamo y alcachofa
juntos, y armadillo?
Eso tiene que ser algo nuevo.
>> Así que estas tecnologías que usamos todos los días.
Si queremos llevarlos un paso Además, sin embargo, si en realidad
quiero ser capaz de hablar de lo que es que estos sistemas están respondiendo a,
tenemos que hablar, de nuevo, sobre un conjunto más fundamental de preguntas.
Y eso es un tema de la comunicación que denominamos pregunta de respuesta.
Es decir, queremos ser capaces a-- ¿sí?
AUDIENCIA: [inaudible].
BRIAN Scassellati: ¿Conseguimos en el procesamiento semántico latente?
Entonces sí.
Hay un montón de cosas que son pasando por debajo de la superficie con Siri
y en algunos de los ejemplos Voy a mostrarle al lado
donde hay un poco en términos de la estructura
de lo que estás diciendo que eso es importante.
Y, de hecho, eso es un gran precursor para la siguiente diapositiva para mí.
>> Así que de la misma manera que nuestro reconocimiento de voz se construyó
de múltiples capas, si queremos entender qué es lo que en realidad es
Dicho esto, vamos a volver basarse en un análisis multi-capa de
del texto que está siendo reconocido.
Así que cuando Siri es realmente capaz de por ejemplo, veo que encontré estas palabras.
Ahora, ¿qué hago con ellos?
El primer componente es a menudo pasar y tratar de analizar
la estructura de la frase.
Y en lo que hemos visto en la escuela primaria, a menudo,
como una especie de diagramación frases, vamos
reconocer que cierta las palabras tienen ciertos roles.
Estos son los nombres.
Estos son los pronombres.
Estos son los verbos.
Y vamos a reconocer que para una gramática particular
en este caso Inglés gramática, hay formas válidas en el que puedo combinarlos
y otras formas que no son válidos.
>> Ese reconocimiento, que la estructura, podría ser suficiente para ayudar a guiarnos
Un poco.
Pero no es suficiente para que seamos capaces de dar
cualquier sentido a lo que se dice aquí.
Para hacer eso, vamos a tener que depender de una cierta cantidad de procesamiento semántico.
Es decir, que vamos a tener que mirar en debajo de lo que cada una de estas palabras
en realidad lleva como significado.
Y en la forma más sencilla de hacer esto, vamos a asociar con cada palabra
que sabemos que una determinada función, una cierta transformación que
permite que suceda.
>> En este caso, podríamos etiquetar el palabra "Juan" como un nombre propio,
que lleva consigo una identidad.
Y podríamos etiquetar "María", como de la misma manera.
Mientras que un verbo como "amores", que constituye una relación particular
que somos capaces de representar.
Ahora, eso no quiere decir que entendemos
qué es el amor, sino sólo que entendemos en la forma de un sistema simbólico.
Es decir, podemos etiquetar y manipularlo.
>> Con cada uno de estos tipos de enfoques, cualquier tipo de procesamiento semántico
aquí va a requerir un poco poco de conocimiento y un montón de trabajo
De nuestra parte.
Ya no estamos en el reino donde las estadísticas apenas llano
van a ser suficiente para nosotros.
Ahora, con el fin de ir desde este punto de ser
capaz de hablar sobre el interior de lo que en realidad está pasando aquí,
para ser capaz de manipular este estructurar y entender una pregunta
y luego poder para salir a buscar,
que requiere un mayor modelo cognitivo complejo.
>> La forma en que se construyen estos sistemas es en su mayor parte muy, muy laboral
intensivo.
Implican humanos gastar una gran cantidad
de tiempo estructurar las formas en que este tipo de sentencias
se puede representar en cierta lógica.
Se hace aún un poco más complejo, sin embargo.
>> Incluso una vez que hemos tratado con la semántica, vamos a
todavía tiene que mirar el pragmática de lo que se dice.
Es decir, ¿cómo me relaciono las palabras que tengo que algo físicamente
hay en el mundo, o al menos algunos fuente de información
que puedo manipular?
>> A veces, estos conducen a maravillosos trozos de ambigüedad.
"Al rojo vivo estrella para casó astrónomo."
OK.
Ahora, leemos que como el Tipo divertida del título
que íbamos a ver en la noche de TV porque nosotros no interpretamos "estrella"
tener su significado cuerpo celeste.
Sabemos que esto significa más el actor o actriz habitual
con altas cantidades de visibilidad.
>> "Escuadrón de ayuda a las víctimas de mordedura de perro."
¿Es que el equipo es en realidad por ahí ayudando a un perro
en dar la vuelta y morder las víctimas?
¿O es que no había un individuo que era
mordido por un perro que necesita un poco de ayuda?
Sólo de mirar a la sintaxis y la semántica de las sentencias,
no podemos determinar eso.
>> "Helicóptero accionado por moscas humanos."
¿Hay, de hecho, real pequeñas cosas volando alrededor
son personas con alas alimentación helicópteros para el bien de la humanidad?
¿O hay un dispositivo mecánico que deriva su energía de una persona?
>> Cuando nos fijamos en cuestión sistemas contestadores,
éstas son las capas que tenemos que tratar.
Ahora, los mejores y los más suerte de prevalente de estos sistemas
hoy en día son capaces de hacer las cosas a un nivel que son
mucho más allá de lo que teníamos hace 10 años.
Aquí está uno de los mejores sistemas eso es por ahí hoy en día.
Y este es un sistema de IBM llamado Watson.
Esto es de nuestros amigos de IBM.
Se trata de los bancos Katherine, Jia Chen, y Priscila Moraes dándonos
una demostración de Watson ayer en IBM en Yorktown.
[REPRODUCCIÓN DE VÍDEO]
-¿Como estas?
>> -Yo soy así.
Siempre estoy feliz cuando estoy pensando, sobre todo cuando me
puede mantenerse fresco en estas salas de servidores.
-¿Quién Es tu actriz favorita?
>> -Mi Actriz favorita Angelina Jolie como Lara Croft
en Tomb Raider porque su original, forma era como un personaje virtual como yo.
>> -¿Cómo Puede Watson ayudar a los pacientes?
>> -Es El plan para los pacientes a tener acceso a Watson directamente?
El acceso a Watson de asesoramiento aplicaciones varían según el caso de uso.
Pero en la actualidad, Watson sólo proporcionará posible diagnóstico y tratamiento
opciones al profesional de la medicina.
En su caso, los pacientes puede proporcionar información
a Watson, tal vez a través de una interfaz de portal web, tableta,
o incluso un teléfono móvil.
Por ejemplo, un paciente puede estar les pidió que describieran sus síntomas
en lenguaje natural directamente en una solución Watson,
permitiendo que el médico se centre en recopilación de datos y no diagnóstico.
>> -¿Quién Asesinado Abraham Lincoln?
>> -John Wilkes Booth.
>> -¿En Qué año hizo el Arizona Diamondbacks ganan la Serie Mundial?
>> -2001.
>> [FIN DE REPRODUCCIÓN]
>> BRIAN Scassellati: Así este tipo de sistemas
tiene que confiar en primer lugar el reconocimiento de la voz; segundo,
convirtiéndola en una interna significativa representación; y luego, tercero,
ser capaz de salir y encontrar la fuente de información que
les permite responder a esa pregunta.
Este nivel de complejidad implica los mismos tipos de cosas programáticas
que ha sido haciendo en los boletines de problemas.
>> Somos capaces de analizar las peticiones HTTP en el mismo tipo de patrón de bajo nivel
coincidente que ELIZA puede hacer.
Somos capaces de convertir los en una representación interna,
y luego usarlos para consultar alguna base de datos externa, posiblemente utilizando SQL.
Todos los sistemas que se están construyendo hoy
para hacer este tipo de recursos naturales comunicación lingüística
se están construyendo en estos mismos principios.
>> Ahora, incluso un sistema como Watson no es lo suficientemente compleja
ser capaz de responder arbitrario preguntas acerca de cualquier tema.
Y de hecho, tienen que estar estructurado dentro de un dominio dado.
Así que usted puede ir en línea y usted puede encontrar versiones de Watson que operan bien
dentro de la informática médica.
O hay una línea que solo se ocupa de la forma
para hacer buenas recomendaciones sobre qué cerveza irá con el cual los alimentos.
Y dentro de esos dominios, que puede responder a las preguntas,
encontrar la información que necesita.
>> Pero no se puede mezclar y combinar.
El sistema que se ha entrenado con la base de datos de la comida y la cerveza
no funciona bien cuando de repente lo puso en la informática médica
base de datos.
Así que incluso nuestros mejores sistemas actuales confiar en un nivel de procesamiento
en el que estamos codificación manual y la construcción de la infraestructura con el fin
para que este sistema funcione.
>> Ahora, el último tema que quiero para poder llegar a la actualidad
es acerca de la comunicación no verbal.
Una gran masa de información que nos comunicamos con los demás
no se produce a través de la palabras individuales que estamos solicitando.
Tiene que ver con cosas como proximidad, la mirada, el tono de su voz,
su inflexión.
Y que la comunicación es también algo que muchas interfaces diferentes
cuidar mucho sobre.
No es lo que Siri le importa.
Puedo pedir a Siri algo en una sola voz o en un tono de voz diferente,
y Siri va a dame la misma respuesta.
Pero eso no es lo que construimos para muchos otros tipos de interfaces.
>> Quiero presentarles ahora a uno de los robots.
Este fue construido por mi desde hace mucho tiempo amigo y colega Cynthia
Breazeal y su compañía Jibo.
Y esto robot-- vamos tener un par de voluntarios
llegar a interactuar con este.
Así que puedo tener dos personas dispuestas jugar con el robot para mí?
¿Por qué no vienes en un máximo, y ¿por qué no vienes en adelante.
Si desea unirse a mí aquí, por favor.
>> Y si pudiera tenerte venir por aquí.
Gracias.
Hola.
>> ALFREDO: Encantado de conocerte.
Alfredo.
>> BRIAN Scassellati: Alfredo.
>> Raquel: Raquel.
BRIAN Scassellati: Rachel.
Encantado de conocerte ambos.
Alfredo, yo voy a tener que ir primero.
Ven hasta aquí.
Voy a introducir usted-- si puedo conseguir esto de
sin llamar la microphone-- a un pequeño robot llamado Jibo.
¿De acuerdo?
>> Ahora, Jibo está diseñado para ser interactivo.
Y a pesar de que le puede dar el discurso, gran parte de la interacción con el robot
es no verbal.
Alfredo, te voy a pedir que decir algo agradable y conexión
al robot, por favor.
ALFREDO: Creo que te ves linda.
>> [Zumbido]
BRIAN Scassellati: OK.
Su respuesta no es verbal.
Y sin embargo, te dio tanto un claro reconocimiento
que había oído lo que ha dicho y también se entiende que de alguna manera.
¿De acuerdo?
Paso de vuelta aquí durante un segundo.
Gracias.
>> Rachel, si lo haría.
Ahora, yo voy a dar que el trabajo mucho más difícil.
Si desea parado aquí, copia de seguridad de sólo un poco por lo que
podemos conseguir que en la cámara y buscar de esta manera.
Voy a pedirle que decir algo realmente significa y desagradable al robot.
>> RACHEL: Lo que parecía que hacer era completamente absurdo.
>> [Zumbido]
>> Eso fue aún más absurdo.
¿Qué está pasando con usted?
Ah, no te sientas mal.
Te voy a dar un abrazo.
BRIAN Scassellati: De acuerdo.
Gracias, Rachel.
Alfredo, Rachel, gracias chicos mucho.
>> [APLAUSOS]
>> Así que este tipo de interacción tiene en muchas maneras algunas de las mismas reglas
y algunos de los mismos estructura como lo que
podría tener en la interacción lingüística.
Es a la vez comunicativo y sirve un propósito importante.
Y esa interacción, en muchas maneras, está diseñado
para tener un efecto particular sobre la persona que interactúa con o escuchando
al robot.
>> Ahora, tengo la suerte tener Jibo aquí hoy.
Sam Spaulding está aquí para ayudar nos cabo con el robot.
Y yo voy a pedir Sam para dar nosotros una buena demostración de la danza Jibo
que podemos ver al final aquí.
Así que adelante, Jibo.
>> SAM: OK, Jibo.
Muéstranos tus movimientos de baile.
>> [REPRODUCCIÓN DE MÚSICA]
BRIAN Scassellati: Muy bien, todo el mundo.
Gracias a nuestros amigos de Jibo.
>> [APLAUSOS]
>> Y gracias a nuestros amigos de IBM para ayudar a cabo hoy.
La comunicación es algo que vas
para ver subiendo más y más a medida construimos las interfaces más complejas.
La próxima semana, vamos a estar hablando acerca de cómo interactuar
con oponentes de la computadora en los juegos.
Pero si usted tiene preguntas acerca de esto, Voy a estar en torno a las horas de oficina esta noche.
Estoy feliz de hablar con usted acerca de la IA temas o para entrar en más detalle.
Ten un excelente fin de semana.
>> [APLAUSOS]
[REPRODUCCIÓN DE MÚSICA]