miércoles, 2 de noviembre de 2022

Modelos de lenguaje para robots

En este post continuamos hablando de robots y lenguaje, pero en este caso para revisar los llamados  modelos de lenguaje que se utilizan. Y me sigo apoyando para ello, como en muchos de los últimos artículos sobre diferentes aspectos de los robots, en  el libro 'Cognitive robotics' editado por  Angelo Cangelosi y Minoru Asada

En esta ocasión, la fuente es el capítulo que, sobre lenguaje y comunicación firman el propio Cangelosi y Tetsuya Ogata.


Modelos de lenguaje y anclaje


El concepto de un modelo de lenguaje se apoya a su vez en la idea del anclaje ('grounding')  que revisábamos en el artículo 'Lenguaje, 'grounding' y la corporeidad de los robots' según la cual el lenguaje, para que exista una verdadera comprensión, necesita estar ligado a objetos físicos externos percibidos mediante capacidades sensoriales. 

Pues bien, en esa línea, los autores nos dicen que, precisamente,


Cognitive robotic models implement the grounded learning of associations between words and the external and internal entities  they refer to (objects, actions and internl states).


Los modelos, pues, sirven de 'pegamento' entre las palabras y la realidad que denotan, tanto interna como externa.


Tipos de modelos de lenguaje en robots cognitivos


Con esa idea, los autores nos identifican tres tipos de modelos de lenguaje usados actualmente en robots cognitivos, a saber:


  • Modelos de desarrollo ('Developmental robot language models'): Modelos que se apoyan en las teorías psicológicas de desarrollo cognitivo en niños, algo que ya hemos mencionado con anterioridad en otros artículos. En estos enfoques, por ejemplo, los robots van a aprendiendo a nombrar objetos que ven o acciones que realizan. Según nos relatan los autores, algunos modelos de esta categoría se han concentrado, no ya en el nombrado de objetos, sino más allá de eso, en el desarrollo gramatical e incluso en la adquisición de conceptos abstractos como pueden ser los números.

  • Basados en procesamiento de lenguaje natural ('NLP-based robot language models'): Estos modelos se enfocan en la conversación con humanos con objetivos como prestar compañía,  entretenimiento o recogida de información. Con mucha frecuencia se orientan a seguir instrucciones de humanos en función de las cuales ejecutan las acciones correspondiente eligiendo entre un conjunto limitado de posibilidades y donde el enlace entre una cosa y otra, instrucción y acción, es establecido por el desarrollador, no existiendo un 'grounding' autónomo por parte del robot.

  • Basados en machine learning ('Machine-learning robot language models'): Se refieren a modelos que hacen lo que se denomina una integración multimodal de percepciones y acciones. Es decir, en lugar de tratar cada tipo de entrada sensorial (visión, sonido, etc) de manera independiente, realizar una integración de al menos visión, voz y acción. Este integración se aborda mediante técnicas de machine learning que dan nombre al tipo de modelos de lenguaje. Diversos tipos de algoritmos se han utilizado y utilizan como mapas autoorganizativos (SOM, 'Self Organizing Maps') o Modelos ocultos de Markov (HMM, 'Hidden Markov Models') pero parecen concentrarse en el uso de diferentes tipos de redes neuronales profundas como autocodificadores profundos (DA, 'Deep autoencoders') o redes neuronales recurrentes del tipo LSTM ('Long Short-Term Memory') tan habituales en procesamiento de lenguaje natural.


A nivel personal, y de manera algo atrevida, me gustaría apuntar una cierta disconformidad con la forma de denominar estos tipos de modelos. ¿Por qué? Pues porque las palabras que los caracterizan, desarrollo, procesamiento de lenguaje natural y machine learning, no son excluyentes entre sí, sino todo lo contrario. Los modelos de desarrollo en su implementación se pueden basar en machine learning que, a su vez, es la base del procesamiento de lenguaje natural. Es decir, las palabras con que están caracterizando los tres tipos de modelos, realmente no marcan fronteras, no sirven para distinguir unos de otros, sin el auxilio de la posterior explicación.

Incluso diría que la palabra modelo sugiere más bien unas relaciones entre entidades y una forma de representar esas entidades y esas relaciones, algo que podría caer en la denominada representación del conocimiento. Sin embargo, los tres modelos que se comentan parecen describir más la forma de adquirir el conocimiento, el aprendizaje, que el modelo en sí. Por supuesto, el aprendizaje luego se traslada al modelo y, evidente, esa forma de adquisición, al menos en estos casos, condiciona claramente al modelo propiamente dicho.


Conclusión


Más allá de esa pequeña crítica terminológica, evidentemente, tanto la idea de los modelos de lenguaje como la clasificación aportada, me parecen muy interesantes y relevantes (por eso lo traigo aquí, claro).

Es bien sabida la importancia que el lenguaje tiene en los procesos cognitivos humanos y, por tanto, todo avance en su traslado a robots cognitivos supondrá un gran paso hacia conseguir máquinas mucho más sofisticadas a nivel cognitivo y relacional.


No hay comentarios:

Publicar un comentario