jueves, 16 de diciembre de 2010

El software de Idilia elige el sentido más apropiado de las palabras

El software está constantemente tratando de averiguar lo que queremos decir, y con frecuencia hace conjeturas equivocadas. Si tuviésemos curiosidad por buscar empleo en el fabricante de iPods y escribiésemos "turnover at apple" (“moviento de empleo en Apple”) en Google, los primeros resultados serían para una receta de postre con manzanas (“apple turnover”).

No sólo ocurre con los motores de búsqueda—el mismo problema sucede en el software usado para traducir, reconocer el habla, y analizar el estado de ánimo que rodea al lanzamiento de un producto, o con la publicidad dirigida.

Una startup llamada Idilia, con sede en Montreal, Canadá, ha creado un software para que todas estas aplicaciones tengan un mejor rendimiento. El software se centra en el problema de la desambiguación del sentido de las palabras—elegir el significado de una palabra en base a lo que tiene más sentido en su contexto. La desambiguación del sentido de las palabras es un viejo problema dentro de la inteligencia artificial que ha resultado ser bastante espinoso a lo largo de las décadas recientes. Para que un ordenador aplique correctamente una palabra en su contexto, tiene que tener una enorme cantidad de información en cuanto a los antecedentes—no sólo lo que está en un diccionario, sino también un mapa de cómo las palabras encajan tanto gramatical como conceptualmente.

Matthew Colledge, director general de Idilia, se obsesionó con el problema hace más de una década. "Para mí, era la razón por la que no podíamos conseguir que un ordenador pensara", afirma Colledge. Fundó Idilia en el año 2000 y desde entonces ha gastado más de 30 millones de dólares de inversiones públicas y privadas en la construcción del software de la compañía.

Lo que hace que valga la pena abordar hoy día la desambiguación del sentido de las palabras, afirma, es que el poder de procesamiento se ha incrementado lo suficiente como para marcar una diferencia. Hoy día es posible almacenar la información suficiente como para entrenar a los algoritmos, y ejecutar una gran cantidad de algoritmos para analizar oraciones y esperar que hagan su trabajo en un plazo razonable de tiempo.

Idilia ejecuta muchos algoritmos en paralelo. Por ejemplo, uno de sus algoritmos determina cuál es el significado estadístico más probable de una palabra, mientras que otro vigila la frecuencia con que a la palabra se le ha dado un significado en el contexto de las palabras a su alrededor. Hay otro que lleva a cabo un análisis gramatical para averiguar cuál es el papel que desempeña la palabra en una oración. Más tarde, un "super-algoritmo" sopesa estos distintos resultados y selecciona un significado sobre la base de todos ellos.

Colledge hace una demostración del software con el ejemplo "¿Le tendieron una trampa a Martha Stewart?" ("Was Martha Stewart framed?" en inglés). Aunque uno de los algoritmos de Idilia determina que a nivel estadístico es más probable que "frame" se refiera al marco de una imagen, otro algoritmo rechaza esta idea al identificar que "Martha Stewart" es una persona, y a la gente no se la enmarca como a las imágenes. El super-algoritmo elimina un significado tras otro, y finalmente interpreta "framed" como "atrapado".

La adición de esta inteligencia a un motor de búsqueda, asegura Colledge, podría mejorar la calidad de sus resultados. El autor muestra que la consulta sobre Martha Stewart provoca un montón de resultados sobre artesanía y marcos de fotos en Google. Un plug-in construido por Idilia para demostrar su capacidad da mejores resultados. Analiza la consulta y ofrece a Google la paráfrasis, deshaciéndose de cualquier resultado que no encaje en el contexto, y generando una lista de sitios que aborden los problemas de Stewart con la ley.

Colledge señala que parte de lo que dificulta la desambiguación del sentido de las palabras es que la gente se vuelve impaciente con los malos resultados en los ordenadores. "Estamos tratando de resolver un problema que un ser humano puede resolver muy, muy fácilmente", afirma. Por ese motivo, las inexactitudes se destacan más. Colledge explica que una persona que quiera sacarle pegas a un software como Idilia sin duda puede hacerlo. Sin embargo afirma que con un texto bien escrito, con mucho contexto y buena gramática, el software puede alcanzar hasta un 85 por ciento de exactitud.

La precisión del 85 al 90 por ciento se encuentra en el extremo superior de lo que es posible hoy en día, afirma Collin Baker, director de proyecto para FrameNet, un proyecto del International Computer Science Institute de la Universidad de California, en Berkeley. Baker señala, sin embargo, que es importante observar el gran detalle con el que el software distingue el sentido de las palabras. Por ejemplo, ¿se limita a distinciones generales, tales como la diferencia entre "banco", como en una institución financiera y como el sitio donde sentarse? ¿O puede hacer distinciones más detalladas?

En cualquier caso, el software puede ser muy útil, agrega Baker. "Existen buenas evidencias que nos dicen que no necesitamos el mejor tipo de distinción para todas las aplicaciones", afirma. En las búsquedas, por ejemplo, incluso las distinciones secundarias podrían dar lugar a grandes mejoras.

Yves Normandin, director general de tecnología de reconocimiento de voz en la compañía Nu Echo, y parte del consejo asesor de Idilia, afirma que la tecnología de Idilia podría conducir a mejoras significativas en todos los mercados a los que apunta la compañía. "Va al corazón de los problemas de esas aplicaciones", señaló Normandin.

No hay comentarios:

Publicar un comentario