Twitter mejora el encuadre de imágenes mediante redes neuronales

Una de las funciones que mejoraron bastante el uso de Twitter fue la posibilidad de adjuntar imágenes a los mensajes publicados en esta red social, algo que podemos hacer desde 2011. Mucho mejor fue cuando, en vez de un enlace, tuvimos la posibilidad de ver la propia imagen en un recuadro junto al mensaje de texto. El problema es que ésta se recorta para acomodarla al formato estándar de mensajes, optando siempre por un recorte proporcional en todas direcciones, que coloca el centro en ese recuadro. El resultado es a menudo desconcertante, porque no siempre el foco de interés se sitúa en el centro, de forma que podemos quedarnos viendo una pared en blanco.

Para resolver este problema, Twitter ha estado trabajando en un sistema de reconocimiento inteligente de “zonas interesantes” mediante redes neuronales. La primera aproximación fue la detección de rostros, ya que casi siempre que hay un rostro en una foto éste suele ser el centro de atención. La idea es buena, pero tiene sus pequeños fallos, como los falsos positivos (detectar como rostro lo que no lo es) o el exceso de positivos (demasiados rostros en una foto de grupo como para poder decidir cuál es el más interesante). Además, este método deja sin solución las fotos en las que no hay caras, por lo que Twitter ha seguido trabajando en otros modelos de análisis.

La línea de trabajo actual, descrita en un mensaje publicado recientemente por la empresa, se basa en el análisis de “prominencia” de elementos, lo que se valora mediante un estudio de la respuesta de un grupo de individuos de control antes un juego de imágenes de entrenamiento. El seguimiento de su mirada permite identificar mapas de “densidad de atención”, como textos o elementos destacadas, que llaman la atención del observador sobre el resto de la imagen. Este análisis da unos resultados muy positivos pero tiene el problema de requerir una enorme potencia de cálculo, que hace inviable su implantación en tiempo real en las publicaciones de los usuarios.

Por este motivo la estrategia anterior se complementa con varias técnicas de aceleración, como el uso de redes neuronales en cascada. Una primera red fina se usa para el entrenamiento básico del algoritmo, mientras que una segunda, menos compleja, se aprovecha de los coeficientes desarrollados por la primera para su aplicación en la identificación de prominencia. En conjunto, un ejemplo muy interesante de lo que conocemos como “desarrollo del modelo” en los proyectos de Big Data.

Más información: Twitter.