domingo, 24 de abril de 2011

El cerebro como simulador (Brain as a simulator)

¿Es posible simular el cerebro? Se trata de una pregunta fundamental que, con el avance de la neurociencia y de la computación, nos formulamos en la actualidad. La consideración inversa, la del cerebro como un simulador puede orientar la respuesta.
Varias objeciones se argumentan para concluir que el cerebro no puede simularse. Una es un tema de tamaño y conocimiento. Necesitamos ordenadores mucho más grandes de los que tenemos para simular el cerebro. Es un asunto de tiempo. Necesitamos un conocimiento muy superior del cerebro y su funcionamiento. Es también un asunto de tiempo. De los dos problemas, el tamaño del ordenador y el conocimiento del  cerebro, estamos hoy mucho más lejos de resolver el segundo (el funcionamiento del cerebro) que el primero (el tamaño del ordenador).
Mientras esto ocurre, podemos plantearnos filosóficamente si es posible la simulación.
El Ajedrecista de Leonardo Torres Quevedo
El resultado de una simulación no es la cosa en sí, es solo una simulación. Si simulo en un ordenador la reacción física de la formación del agua a través de sus componentes, hidrógeno y oxígeno, no obtengo agua, de la misma forma que al principio no tenía hidrógeno ni oxígeno. Si simulo una piedra no obtengo una piedra. Si simulo un pájaro, no obtengo un pájaro. Si simulo un cerebro no obtengo un cerebro.
Pero ¿alguien quiere obtener un cerebro con sus neuronas y sus vasos sanguíneos, con su peso y su volumen? Evidentemente no. Lo que queremos es obtener el comportamiento del cerebro. Simular su comportamiento. Eso sí, con todas sus características, estados mentales y conciencia incluidas ya que de otra forma no estaríamos simulando un cerebro. Queremos también que interaccione con el mundo, algo que ya hemos conseguido en pequeña escala. En efecto, mediante los interfaces cerebro máquina BCI, podemos conectar una cámara tanto a un nervio óptico como a un ordenador y también podemos conectar un brazo robótico tanto a un nervio motor como a un ordenador. El interfaz es posible.
Quizá nos ayude pensar sobre qué hace un cerebro.
Por un lado realiza actos reflejos (en realidad son otras partes del sistema nervioso como la médula espinal). Tan solo 4 neuronas intervienen en el reflejo de extensión de la pierna. Interconectar dichas neuronas con elementos electromecánicos puede suponer un problema técnico pero no parece que tenga una trascendencia filosófica.
¿Qué otra cosa hace el cerebro? Simular. El cerebro es un simulador. De acuerdo con la filosofía clásica y con la evidencia científica, las ideas son representaciones del mundo exterior. Son simulaciones. Y las operaciones mentales como juzgar o planificar son simulaciones del comportamiento del mundo tanto exterior como de nuestro comportamiento. Simulamos la trayectoria del coche que nos puede atropellar y reaccionamos. El cerebro simula el mundo.
Sensorama: simulador de moto. 1962
No pensemos en un ordenador que simule el cerebro. Pensemos, al revés, un cerebro que simule un ordenador. ¿Es posible? Sin duda, sí. La persona que diseña ordenadores tiene un cerebro que simula su comportamiento. ¿Y si hablamos de un simulador de vuelo? Ambos, el cerebro y el programa son simuladores. El piloto es un simulador de vuelo. Su cerebro simula lo que ocurrirá si realiza una acción determinada y de forma análoga un programa de simulación lo hace.
En relación al nivel de detalle de la simulación, este debe de ser adecuado a nuestros propósitos. Un simulador de vuelo no simula los tornillos, sino los elementos relevantes como el perfil del ala. Del mismo modo, una simulación del cerebro no necesita simular los vasos sanguíneos, le basta con simular el comportamiento neuronal.
Ya en 1950 Turing estableció que el hecho de que tanto cerebro como ordenador usen electricidad no es relevante. En su época, coexistían ordenadores mecánicos y eléctricos equivalentes. "...puesto que todas las computadoras digitales son equivalentes en cierto sentido (a las mecánicas), observamos que el uso de la electricidad no puede tener importancia teórica.() Si realmente deseamos encontrar tales semejanzas, deberíamos buscar analogías matemáticas en el funcionamiento." Leornardo Torres Quevedo diseñó en 1912 El Ajedrecista, un autómata analógico que daba mate con rey torre, equivalente a los programas informáticos posteriores. En términos informáticos un simulador es también un equipo (en general más barato o más moderno) que puede simular el comportamiento de otro equipo, es decir, un ordenador que simula a otro.
De modo que tenemos dos simuladores: el cerebro y el ordenador. ¿Es posible trasladar la simulación del mundo que hace un cerebro de un sustrato al otro, de la biología al silicio? Conceptualmente sí. Técnicamente aún queda tiempo.

domingo, 10 de abril de 2011

Tareas en las que el ordenador pasa el Test de Turing

En 1950 Alan Turing se preguntó ¿pueden pensar los ordenadores? Para no tener que resolver la ambigüedad de los conceptos máquina y pensar, diseñó una prueba que sustituyera a la citada pregunta creando con ello el célebre Test de Turing.
En el Test de Turing hay tres actores. Un concursante humano, un concursante ordenador y un juez. El juez debe averiguar en un entorno de lenguaje natural quién es el ordenador. Si no lo hace, se dice que el ordenador ha superado el Test de Turing. Para comunicarse con el juez, los concursantes utilizan un teletipo (hoy una pantalla y teclado de modo que el juez no pueda verlos ni oírlos).
A fecha de hoy el Test de Turing está lejos de ser superado por ningún ordenador en un entorno de lenguaje natural sin restricciones. Hay muchos ejemplos en la red como Eliza o Solutecia que puedes probar.
Sin embargo, si usamos el test en tareas concretas, un ordenador lo superará en muchos casos. Cada vez más y más sorprendentes. De modo que sugiero reformular el Test de Turing de la siguientes manera:
Un ordenador supera el Test de Turing para una tarea X cuando un juez humano no pueda distinguir entre un concursante humano y un concursante ordenador ejecutando la tarea X
¿En qué tareas un ordenador supera el test?
  • Cuanto más acotada sea la tarea, más posibilidades tiene un ordenador de superarla. En los entornos de ejecución abiertos, que por su naturaleza no han sido programados por completo, fracasará con mayor facilidad.
  • Los ordenadores están construidos por humanos para que les descarguen de trabajo, realizando tareas humanas. Por ello superan el test en multitud de tareas. Por ejemplo todas las tareas de informática empresarial: contabilidad, control de almacén, nóminas, cálculos diversos...
  • Matemáticas. El propio Turing advirtió que ya en su tiempo lo único adicional que debería requerir un programa matemático era ralentizar su respuesta e introducir algún error para confundir al juez humano.
  • Ajedrez. En 1997 Deep Blue ganó a Garry Kasparov estableciendo un nuevo escenario en la relación hombre máquina. Hoy los programas comerciales modernos no solo ganan a cualquier maestro, sino que ajustan su nivel (juegan deliberadamente peor) al de su contrincante para no desanimarle.
  • Música. Escucha la siguiente composición del programa Emmy al estilo Bach. Una audiencia especializada no distinguió si el compositor era Bach o Emmy.
  • Poesía. Aunque los ordenadores están lejos de crear largos textos en prosa, pueden confundir en un poema corto.
    Yunques ahumados
    Sus muslos se me escapaban como
    Peces sorprendidos
    La mitad llenos de alas.
    Con la sombra levanta
    La arquitectura del humo
    Un pie de mármol afirma
    Su casto fulgor enjuto
  • Reconocimiento de caras. Poco a poco se van adentrando en este terreno. Policías del mundo están usando estos programas que empiezan a estar disponibles en Facebook o Windows.
  • Síntesis de voz. Disponible desde hace tiempo,se va refinando. Aun distinguimos con claridad una voz humana de una sintética.
  • Reconocimiento de voz. Asignatura pendiente donde el camino por recorre es aún grande. Dada su importancia comercial, es de esperar que avance con rapidez.
  • Lenguaje natural. Watson, Es el enfoque más ambicioso de los últimos tiempos. Watson supera el test en la tarea "jugar en el concurso televisivo Jeopardy" No es un entorno abierto, pero el avance en "entendimiento" de lenguaje natural es asombroso.

domingo, 3 de abril de 2011

Reconocimiento de voz. La asignatura pendiente

El reconocimiento de voz o reconocimiento del habla es una asignatura pendiente en el mundo de la tecnología. Décadas de investigación en el área nos han llevado a una situación en la que está presente en todos los dispositivos y nadie la usa.
vocalizar (RAE).
1. intr. Articular con la debida distinción las vocales, consonantes y sílabas de las palabras para hacer plenamente inteligible lo que se habla o se canta.

Conviví durante años con un vecino al que nunca entendía más allá del primer "hola". El barrio tenía una importante afluencia de turistas y en ocasiones me ponía en el lugar de un hipotético extranjero que tras años de estudio se enfrentara con el cerrado acento de mi vecino para concluir que había malgastado su tiempo: no entendía nada de castellano.
El reconocimiento de caras es una habilidad que compartimos con los monos desde hace más de 30 millones de años. Por contra, el reconocimiento de voz es una de las más tardías adquisiciones del ser humano. Está ligada al lenguaje y es inequívocamente humana. Y es también más complicada a juzgar por el fracaso de la tecnología en implementarla, al contrario que el reconocimiento facial.
Se trata de una habilidad con una gran variación individual. Del mismo modo que pocos entendían a mi vecino, hay personas maestras en hacerse entender. Por ejemplo las personas con responsabilidades públicas como locutores de radio o TV y la mayoría de los políticos. Es así mismo el caso de imitadores que pueden imitar otros acentos y voces. Tampoco el acento de depende del idioma: quien habla bien uno, tiene grandes posibilidades de hablar bien otros idiomas. Influye desde luego el ruido ambiente y el estado de ánimo del hablante: cambia el acento si está cansado o adormilado o excitado.
Algunas habilidades tienen ventanas de edad de adquisición. En el caso del acento, hasta los 7 años se aprende sin dificultad una segunda lengua. Es decir, un hablante nativo no reconocerá a otro que haya aprendido la lengua antes de los 7 años. Por el contrario, alguien que lleve toda la vida con nosotros y escriba a la perfección nuestro idioma pero no lo haya aprendido en los primeros años, será reconocido como extranjero a la primera frase. Pero el acento es mucho más que estilo o quedar bien. Aprender bien el acento significa que podemos entender bien a los hablantes de esa lengua. Otras parcelas de la lengua como el vocabulario no tienen tal ventana y pueden seguir mejorando durante años.
Todo lo cual ayuda a explicar por qué la tecnología fracasa en el reconocimiento del habla. Pero ¿es importante esta tecnología?
Desde luego. Nuestro medio natural de comunicación no es el teclado ni el ratón ni la pantalla por muy táctil que sea. Nos comunicamos naturalmente por el habla. Y recordemos que en el mundo hay millones de analfabetos, un gigantesco mercado potencial para las empresas. De modo que sería un gran avance que los dispositivos tecnológicos puedan reconocer la voz. Y lo intentan aunque con poco éxito. Windows XP con Office 2003 posee la tecnología. Durante el entrenamiento se pide al hablante recitar algunos textos:
Piense en las veces que ha oído un anuncio en un aeropuerto, estación de tren o estadio pero no ha sido capaz de comprender lo que decían. Ello es debido a varias razones: había mucho ruido, la persona no hablaba con cuidado o hablaba demasiado rápido, o el micrófono era de poca calidad o ajustado incorrectamente. Quizá dijeron algo inesperado.
El resultado no puede ser menos alentador. Quizá admitiríamos un porcentaje de aciertos del 95%. Desde luego el 80% no es válido ya que obliga a revisar todo el trabajo. ¡Pero es que el resultado, con la tecnología mencionada más arriba, no llegó al 10% de aciertos! (doy por supuesto que versiones más modernas mejoraran el resultado) Mi móvil lo hace mejor aunque es debido al hecho de que sólo tiene que reconocer entre menos de un centenar de nombres, no entre las más de 80.000 palabras del idioma español. Como curiosidad, la función contraria, leer un texto (text to speech con versiones gratuitas que se pueden descargar de la red) funciona muy bien y con muy pocos recursos computacionales desde hace años con la salvedad de que la voz sintetizada no suena natural (de nuevo porque lo complicado es la finura de la articulación del sonido). Quizá el ejemplo más significativo sea el de Watson, el ordenador de IBM más listo del mundo. Watson ha implementado unas habilidades lingüísticas sin par que le han permitido ganar en el quizshow americano Jeopardy  a los mejores concursantes de la historia del programa. Watson se expresa con una voz sintetizada, pero no implementa reconocimiento del habla, sino que debe recibir las preguntas como texto electrónico. IBM ya anunciado que cambiará esto para sacar partido comercial a Watson lo que si no sería un handicap.
Las aplicaciones más claras del reconocimiento de voz son el dictado y el control de comandos (dar órdenes verbales a las máquinas). Su utilidad está reforzada en el caso de analfabetos o discapacitados. En los últimos tiempos varias aplicaciones de teleasistencia funcionan sin requerir el entrenamiento, ya que "escuchan" a millones de hablantes, y reconocen comandos de voz : números del DNI, fecha de nacimiento y órdenes como "saldo" o "movimientos" aunque la más usada es la que ocurre si algo va mal: "operador/a".
No obstante, parece que las cosas están cambiando de la mano de los smartphones, los nuevos móviles. Android de Google, Windows Phone 7 de Microsoft y iPhone de Apple incorporan esta tecnología. Si bien Google no divulga cifras concretas, una de cada cuatro búsquedas en los dispositivos Android se hace ahora con la voz, y el volumen de búsquedas en los teléfonos Android subió un 50 por ciento en los primeros seis meses de 2010. Google espera que la mayoría de sus negocios de Internet sean a través de los teléfonos inteligentes en el futuro, así es que los servicios de voz de alta calidad son de importancia crítica. Para ello, Google usa no solo los mecanismos habituales de descifrado de voz sino el gigantesco potencial estadístico de los más de 230 mil millones de búsquedas y los millones de acentos de las personas que ya están usando búsquedas de voz, una estrategia estadística que ha sido empleada en su traductor Google Translator. Una aplicación de iPhone también permite el dictado. Pero como en el caso de Google, no es el teléfono el que reconoce la voz: el mensaje de voz es enviado a los servidores que realizan la tarea y devuelven un mensaje de texto. Se trata de nuevo de comparar con las voces de millones de usuarios y aprender de ellos.
De modo que quién sabe si en el futuro mi vecino irá equipado con un teléfono que haga más comprensible su acento.