0:00 Hola, me llamo Gabriel Merlo y Tipsic ha publicado nuevo research, pero ha ocurrido algo muy extraño y es que ya no está ni en su cuenta de Hagin Face ni el repositorio que tenían publicado originalmente en GitHub. Así que le he escrito al autor del paper, en concreto al Project Lead de Deepsic, eh, relacionado con el paper que publicaron, y me dijo que efectivamente respondiendo a mis preguntas, el paper sí que ha sido removido, pero ha clarificado que no tiene nada que ver con la validez técnica del trabajo, que bueno, es información interesante, ya que ha habido bastante especulación, ya que, como digo, no es algo que ocurra muy frecuentemente. Y por ejemplo, tenemos aquí un blog en el que hablan de que lo que se cree en la industria es que revelaron demasiada información con ese paper y no querían darle una ventaja competitiva a sus competidores. Yo no
0:46 tengo muy claro que esa es la razón, pero bueno, aquí tenemos otro blog que lo traduje al chino y si os fijáis en esta línea que pone aquí dicen que también sospechaban que puede que el paper revelase demasiado y bueno, revelar demasiado del qué. Y aquí es cuando entra el paper y creo que no hay mejor manera de introducir este paper que con un caso de uso que al que todos ya estamos ya acostumbrados y es el de contar. Por ejemplo, si os mostrase esta imagen y os preguntase que cuántas personas veis en la imagen, pues bueno, probablemente o bien señalando con el dedo o mentalmente o siguiendo alguna referencia mental, pues contéis el número de personas que hay, que en este caso tenemos a 25 personas. Pero si por ejemplo le hacemos esta misma pregunta a un modelo multimodal de hoy en día, pues veríamos que primero tendríamos un
1:33 proceso de tokenización. La pregunta, tanto la pregunta como la imagen serían tokenizados para que el modelo pueda trabajar con esta información. Y bueno, pues el modelo iría atendiendo a todos los tokens previos e iría generándonos una respuesta. Pero esta respuesta tiene un problema. Yo, por ejemplo, si ahora mismo le pregunto a chat que cuántas personas hay en esta imagen, nos fijamos en que nos responde que hay 27 personas en la imagen. Es decir, ha hecho el conteo erróneamente. Y es que, si os fijáis, a la hora de seleccionar el modelo, he seleccionado el modelo instant, el cual no ha tenido una cadena de razonamiento detrás de esta respuesta. Es decir, el modelo a la hora de poner el token equivalente a 27, en esta respuesta que nos ha dado, no ha tenido mucho tiempo de razonar o de seguir un proceso de intentar
2:18 referenciar cuántas personas hay exactamente en la imagen, como lo haríamos nosotros mentalmente, empezando a contar y siguiendo esa cadena numérica. O si, por ejemplo, yo cambio el modelo a uno de razonamiento y le hago la misma pregunta exactamente igual, pues vamos a fijarnos en que ahora sí que me ha podido responder correctamente. Y esto desdeck lo llaman como el gap de referencia. Por ejemplo, en este caso eran personas en la imagen, pues en una chino normal, pues se referenciaría en texto, en una cadena de razonamiento, pero han encontrado una manera que han llamado las bounding boxes, que básicamente consiste en poder referenciar con coordenadas como una especie de caja en la imagen. Entonces, nos muestran aquí en este ejemplo en el que nos ponen esta imagen, la que ya
3:03 hemos visto hasta ahora. Y el modelo es capaz de en su cadena de razonamiento seleccionar los diferentes puntos de la imagen donde detecta que puede haber una persona, aunque no se limita solo a bounding boxes, sino que también puede mencionar puntos. Pues en este paper no solo nos traen eso, sino que también traen una especie de intersección entre alta precisión y una alta compresión. Por ejemplo, para una imagen con una resolución de 800 por 800, nos mencionan que consiguen una compresión con 361 tokens, 90 entradas en el Kevicast gracias a Compressed Spars Attention y luego también una performance media en siete benchmarks que han seleccionado, como vemos aquí, del 77,2% superando a modelos como ponen aquí a
3:51 Gemini 3 Flash, la cual no me impresiona bastante la verdad, pero también lográn superar a GPT 5.4, Clotsonet 4.6. Recordemos que ellos están trabajando con un modelo de 284 billones de parámetros y tr billones de parámetros activados. Pero bueno, sigue teniendo su Miga. Y ahora vamos a entrar en el cómo consiguen tener esta compresión bastante brutal, 90 entradas en el Gavic Car. Y es que los modelos multimodales actualmente tienen dos problemas principales, un problema de percepción y luego tienen un problema de referencia, así al menos lo describen ellos. Este primer problema, el de la percepción, pues por ejemplo nosotros los humanos, si no tuviésemos ojos primero para poder empezar a captar esa información de nuestro exterior, pues no podríamos
4:36 referenciar nada en nuestra mente, ¿no? Entonces lo primero que se ha solucionado es cómo transformamos todos estos píxeles que tenemos aquí en una suficiente resolución y también sin crashear nuestra memoria. Pero a lo que ellos se refieren ahora, por ejemplo, es al gap de la referencia. Y esta imagen nos hace muy sencillo ver el gap de referencia. Y es que, por ejemplo, si aquí te preguntasen, "¿Qué ves a la izquierda del cubo azul?" Pues aquí tendrías como que tener muy claro de qué cubo azul estamos hablando. Probablemente en la prom deberías de incluir algo más para que puedas saber qué tipo de cubo azul es de los que tenemos por aquí. Necesitas alguna manera de aislar este objeto, ¿no? Y de luego poder comprobar que tiene a su izquierda. Y esto, por ejemplo, en este caso se puede lograr mediante bounding
5:21 boxes, pero claro, esto de las bounding boxes no es nuevo, ¿no? Tenemos, por ejemplo, aquí un paper llamado Criting Boxes, ¿sí? Como os podéis fijar aquí para seleccionar una serie de huevos. Y luego tenemos aquí otro paper diferente de visual chain of thought, donde si nos fijamos aquí también ya mencionan las bounding boxes y tenemos aquí por ejemplo una banding box con un pájaro. Tenemos aquí otra seleccionando un número de un bus. Es decir, ¿qué han hecho ellos de nuevo? Pues estos approaches previos que os he mostrado, pues generalmente suelen tratar estas bounding boxes como un método a posteriori para verificar sus las tareas de percepción, pero es a posteriori. Si os fijáis, por ejemplo, aquí en los huevos ha tenido aquí un chinoot, selecciona aquí los huevos y luego dice
6:07 después de la examinación, es decir, se razona primero y luego se usa las bounding boxes para verificar lo que se ha razonado. Y es que lo que aportan en Diepsic de nuevo es que si os fijáis, aquí están dentro de la propia Chenoz todas las bounding boxes. No es un método a posteriori, es algo que ocurre dentro del propio razonamiento, que según ellos es lo que les permite realizar tareas de razonamiento espacial más complejas gracias a esta metodología. Es decir, por ejemplo, si te pongo este laberinto y te pido que conectes el punto rojo con el punto verde, este con este, pues probablemente vas a ir como siguiéndolo con la imagen mientras lo con los ojos, ¿no? O con el dedo o con algún punto de referencia, ¿no? Pues esto es igual. El modelo mientras va razonando va incluyendo estos puntos de referencia, no pone una
6:53 referencia y luego lo comprueba a posterior y luego vuelve a razonar, no. lo hace todo durante el propio razonamiento. Y ahora bien, ¿cómo han logrado ellos que su modelo razone con estas cajas o con esos puntos? Pues lo primero de todo, antes de entender cómo han logrado esto, es entender cómo procesan estos modelos multimodales las imágenes, ya que ellos también han incluido un componente muy fuerte de compresión en su arquitectura, como vimos antes en estos resultados, comparándolo con modelos como Q3VL, Cloudsonet. Entonces, volviendo al ejemplo inicial, rápidamente si vosotros le hacéis cualquier pregunta a un modelo, pues el modelo no entiende vuestra pregunta y la imagen directamente. Lo que tiene que hacer primero es toquenizar tanto la imagen como el texto. Con el texto, ya sabéis cómo funciona el texto. Se rompen
7:38 diferentes trocitos, los cuales equivalen a un número en el vocabulario de nuestro modelo. Pero si nos fijamos aquí en este gráfico, para una imagen es más interesante. No estamos usando un tokenizador de texto, estamos usando un visual transformer, el cual como nos mencionaran aquí para el encoding visual, Dieps v coge la imagen de input y pasa patches de 14 por 14 píxeles. Y este resultado, este, esta agrupación de 14 por 14 píxeles se llama un patch token. Todavía no es un token de los que usará el modelo, pero se llama patch token, que se trataría básicamente de un vector que codifica el contenido visual que hay en esa región que ha seleccionado en concreto. Pero incluso aplicando estos patches iniciales con una imagen, por ejemplo, de 800 por 800 píxeles, todavía te seguirían quedando
8:26 muchísimos patches de Duken. Miles. Vaya. Y es por eso que todavía los modelos modernos pues aplican una compresión espacial de cogiendo 3x3 patches y eso lo transforman ahora sí que sí en un token espacial o lo que acabamos llamando, vaya como un token visual. Aquí tenemos una serie de números. ejemplo, con una imagen de una resolución de 756 por 756, tendríamos 571,000 píxeles, lo cual después del proceso del VIT tendríamos 2916 patch tokens y luego después de la compresión de 3x3 tendríamos 324 tokens visuales. Entonces, una vez tenemos estos tokens visuales, lo que entra en el modelo serían estos tokens visuales más la pregunta que nosotros tengamos ya
9:13 tokenizada más información de system prompt y muchas más cosas que no vemos necesariamente en el frontend, por ejemplo, de dipsic o de cualquier otro tipo de web UI. Pero ahora bien, ¿qué hace nuestro modelo ahora con esta secuencia a la hora de generar la respuesta a nuestra pregunta? Pues lo primero que haría sería algo llamado el prefill, que sería procesar básicamente todo el input para preparar las representaciones internas que necesita para comenzar a generar los próximos tokens. Y lo que va a hacer el modelo en esta fase de perfil, en cada capa de transformer, va a ser calcular para cada token una key, una query y luego un value. No voy a entrar en todos los detalles en este vídeo, pero para que os hagáis una idea de la intuición, la key básicamente nos dice qué tiene este token en concreto que ofrecer. El value
9:59 nos dice qué es este token en concreto y la query nos dice básicamente qué es lo que busca este token en este momento. Así de una manera muy intuitiva y eso sería el perfil. Lo que es interesante es que después de este perfil para todos esos tokens iniciales, todas las keys y todos los values que ya ha calculado para todos los tokens que haya dentro del perfil no van a cambiar. Y claro, si todas esas Kissy values que no van a cambiar más, que además van a formar parte de próximos cálculos en esa generación de la secuencia de la respuesta del modelo, si no van a cambiar, ¿por qué tener que volver a calcularlo todo desde cero cuando simplemente lo puedes guardar en lo que llamamos el KB Cash, no? Y así de esta manera, cuando se esté generando un
10:45 nuevo token, pues nos estaríamos ahorrando bastantes operaciones. Es por eso también que es tan importante el KBC con imágenes, ya que una imagen puede ser muy grande, podemos también tener muchas imágenes en una secuencia, por lo que el trabajo que tenemos actualmente que realizar es averiguar cómo cogemos todos esos píxeles iniciales de la imagen y lo traducimos en la menor cantidad de entradas en el Kevic Cast posibles y a la vez manteniendo la mayor cantidad de precisión posible, que es un poco lo que se están intentando aquí dentro de este paper. Volviendo a donde lo habíamos dejado antes con nuestro modelo, que por cierto por motivos educativos los píxeles puede que no coincidan con los las cíferas que se están dando, pero es solo para que se puedan ver bien las cosas. Es solo un ejemplo visual, ¿vale? Pues ahora dentro del LLM lo que quedaría sería que a la
11:31 hora de generar el próximo token, lo que hace la compra spars attention es que coge cada cuatro tokens visuales y los comprime en una sola entrada en el KB Cash, lo cual, si, por ejemplo, volviendo al ejemplo de antes, tuviésemos 361 tokens visuales, pues tendríamos aproximadamente 90 entradas en nuestro KBC, lo cual si lo juntamos todo, nos dicen en el paper que logran un ratio de compresión de 7050 56. Pero claro, aquí es donde los autores han tenido que ser muy cuidadosos, ya que tú tienes toda esta comprensión que es brutal. Pero ahora si, por ejemplo, yo le subo al modelo un laberinto con toda esa compresión brutal, ¿cómo logras ahora que el modelo no se equivoque y que pueda referenciar correctamente
12:17 puntos dentro de esta imagen? Pues esto lo logran obviamente mediante la introducción de las bounding boxes y también de los puntos. Ellos usan una estructura en la que tienen una serie como de etiquetas en las que, por ejemplo, tenemos una de llamada ref donde ellos como introducen la categoría semántica a la que pertenece el punto del que están hablando. En este caso, por ejemplo, se trata de lo que ellos llaman un target. Pero, por ejemplo, si nos fijamos en esta otra imagen, nos fijamos en que la categoría semántica se trata de persona. Entonces, tienen un punto como de referencia para igual esto le ayuda al modelo a referenciar luego en la Chain of Thot. Y luego también tienen otro tipo de caja, evidentemente, que es el de box, que es donde vienen todas las bounding boxes. Tenemos aquí,
13:02 por ejemplo, la etiqueta de box. Luego tenemos otra que es la de tenemos por ejemplo aquí de de punto que ya la hemos visto. Tenemos aquí por ejemplo la caja de point. Y bueno, bien, ahora la parte que mola, ¿cómo han logrado que el modelo nos genere esas bounding boxes? Pues se comienza con el pretraining y es que ellos han comenzado ya a enseñarle al modelo a generar estas bounding boxes y puntos desde la fase del pretraining. No es, estamos hablando aquí de deps de un laboratorio grande, ¿no? De cualquier grupo de investigación. Y bueno, lo que han hecho ha sido básicamente conseguir un volumen que describen como masivo de datos en internet relacionados con bounding boxes y han usado scraping en muchas páginas web. Ellos también han usado luego agentes para filtrar y luego
13:47 aparte de todo ese webscraping también han usado una serie de datasets de alta calidad públicos, los cuales referencian en el propio paper. Por cierto, tenéis el, os voy a dejar el paper en la descripción. Y bueno, han usado Hugin Face bastante y han acabado con 97984 data sources. Entonces, después de incluir todos esos esos datos en el pretraining, ellos ahora se van a centrar en el post training. Pero antes de entrar en el post training, ellos han preparado una serie de datos que han curado específicamente para el post training, donde ya sí que sí le están mostrando al modelo cómo contar. Aquí tenemos algunos ejemplos de contar. Tenemos, por ejemplo, ¿cuántos osos hay ahora mismo en el suelo? como muestran en esta imagen o la tarea de contar de los del equipo de rugby. Luego la call
14:35 start data también incluyen aparentemente datos para razonamiento espacial. Tenemos aquí un ejemplo en el que muestran todas estas figuras geométricas y le preguntan si hay algún objeto de goma morado que tiene que tenga el mismo tamaño que el metálico gris. Tendríamos también tareas de navegación de laberintos. Tenemos, por ejemplo, aquí una navegación en un laberinto y luego tenemos path tracing. ¿Qué es path tracing? Pues por ejemplo, en esta imagen le piden al modelo que siga como con puras referencias una de estas curvas. Entonces le preguntan que con qué icono conecta la corona y tiene que seguir la corona y ver que, bueno, aquí aparentemente conecta con el pulpo. Entonces ahora que ya hemos hecho el
15:21 pretraining y tenemos el cold start data para nuestro post training tenemos una serie de fases como lo vienen a ser el supervised fine tuning, el reinforcement learning y el rejection find tuning y luego finalmente on policy distillation. Comenzando por el Supervise Fine Tuning, tenemos aparentemente un 70% de datos generales multimodales y han incluido un 30% de datos que ellos definen como los de pensando con las primitivas visuales que vienen a ser o las bounding boxes o los puntos. Y aparentemente después de esta fase tienen dos modelos especializados. tienen el pointing with grounding y luego tienen el de pointing with points que representa los dos tipos de formas de thinking with visual primitivis que hemos visto de los puntos
16:06 y las bounding boxes. Entonces, ahora para la siguiente fase, que es la del reinforcement learning, una fase que también mola mucho, pues bueno, ellos como no, siendo Deeps, han usado el GRPO, que bueno, sigue siendo increíblemente bueno y ellos han usado una serie de reward móviles diferentes y tienen, por ejemplo, uno de formato, tienen uno de calidad y luego tienen otro de precisión para contar o más bien debería decir varios de precisión. Entonces, ahora en la fase de rejection find tuning lo que van a hacer va a ser estos dos modelos que ya han entrenado y los van a unificar en un solo modelo como nos dicen aquí. Entonces ahora eh algo que hay que clarificar es que ahora tienen un modelo unificado llamado F. Este modelo que se
16:54 produce F del Rejection Fine Tuning está bien, pero sigue estando por detrás de los modelos individuales expertos de grounding y de pointing que ya habían entrenado anteriormente. Entonces, ellos van a usar Onpolicy distillation para que el modelo estudiante, en este caso el modelo F, emite las distribuciones de salida de los modelos profesores, que van a ser en este caso los modelos expertos, que los describen ellos como expertos, ya que ellos dicen que existe una gap, hay un hueco todavía comparado entre este modelo unificado y y los modelos expertos. On policy significa que el modelo va a estar aprendiendo sobre sus propias generaciones. Es decir, ahora no va a estar aprendiendo sobre una serie de datos, va a estar aprendiendo sobre lo que genera. Entonces, ahora con la divergencia de KL, ellos lo que van a hacer va a ser
17:41 medir la diferencia entre las dos distribuciones de probabilidad de los modelos profesores y de los modelos estudiantes. Y de esa manera van a conseguir lograr aproximar más al estudiante, a lo que serían los profesores en términos de capacidad, al menos de pointing y de grounding. Pero bueno, un paper no está completo sin sus limitaciones. Entonces, para este paper en concreto tenemos una limitación y una de ellas es que después de toda esa compresión para elementos que sean muy pequeños, pues pueden haber fallos en las bounding boxes o en la lo que se llaman las visual primitives. Luego hay otra limitación bastante importante también y es que actualmente esta capacidad de pensar con primitivos visuales se está exclusivamente limitada a una serie de trigger words para que sea activada. A ellos les gustaría que
18:27 el modelo pueda de una manera autónoma determinar cuándo abrir estas etiquetas de razonamiento con primitivos visuales o visual primitives o visuales primitivas o bueno. Y bueno, por último, usar puntos como visuales primitivas para resolver problemas topológicos complejos es un desafío que ellos dicen bastante complicado, ya que ahora mismo dicen que no tiene mucha generalización entre escenarios su modelo. Ahora ya sé que sí, mirando atrás y mirando a todos los artículos que decían que la explicación era que han revelado demasiada información. No sé, yo creo que si habéis mirado el paper de Dipsy Cup4, comparado con la información que revelan en ese paper, yo no veo muy exagerado lo que hayan podido revelar aquí, ni creo que sea algo que les vaya
19:14 a dar una una ventaja competitiva seria a otros competidores. Y bueno, ya habéis visto que el Project League del proyecto me ha dicho que su el hecho de que lo hayan retirado no tiene nada que ver con la validez técnica del trabajo. Es un trabajo técnicamente válido. Hemos llegado a criticar en algún momento algún paper peor, por lo que no lo tengo muy claro. Igual simplemente lo sacaron, hubo algún tipo de problema interno. Una persona que tendría que haber visto el paper antes de publicarlo no lo vio. Pueden haber pasado muchas cosas. Lo que está claro es que, como nos confirma el propio autor, lo han tirado abajo, lo han removido, no está en sus cuentas oficiales. Pero bueno, yo ya había comenzado a hacer todas las animaciones, a trabajar en este paper, etcétera, y luego me entero de que lo han quitado, etcétera. No voy a dejar el trabajo atrás, ¿no? Sigue siendo buen trabajo. Y
20:00 bueno, si queréis seguir estando al tanto de Papers, inteligencia artificial, suscribiros al canal. Y bueno, ya os mencioné en anteriores vídeos que la relación con el canal la tuvisteis como a largo plazo. Yo en este próximo mes voy a tener muchísimo trabajo igual puedo publicar un vídeo extra. Pero bueno, de todas formas e un saludo a todos y nos vemos. Yeah.