Mostrando entradas con la etiqueta GitHub. Mostrar todas las entradas
Mostrando entradas con la etiqueta GitHub. Mostrar todas las entradas

Twitter publica el código de su algoritmo de recomendación en GitHub

 

algoritmo de twitter

Twitter ha publicado el código fuente de su algoritmo de recomendación en GitHub, como respuesta a la propuesta de Elon Musk de hacerlo público hace casi un año. En una conversación en Twitter Space, Musk afirmó que esperaba que los usuarios pudieran encontrar posibles «problemas» en el código y ayudar a mejorarlo.

Una oportunidad para la transparencia y la colaboración

La decisión de Twitter de hacer público el código de su algoritmo de recomendación es una oportunidad para la transparencia y la colaboración en la mejora de la tecnología. La publicación del código es una muestra de que la compañía está abierta a la retroalimentación y dispuesta a mejorar su algoritmo.

El algoritmo de recomendación de Twitter se encarga de mostrar los tweets en la sección «Para ti» de la plataforma. El código publicado cubre únicamente esta sección, por lo que no se ha liberado el código subyacente del algoritmo de búsqueda o cómo se muestra el contenido en otras partes de Twitter.

Los detalles encontrados en el código

Los usuarios de Twitter han encontrado detalles interesantes en el código del algoritmo de recomendación. Por ejemplo, Jane Manchun Wong señaló que «el algoritmo de Twitter etiqueta específicamente si el autor del tweet es Elon Musk». Esto podría explicar por qué los tweets de Musk aparecen con tanta frecuencia. Wong también señaló que el algoritmo tiene etiquetas que indican si el autor del tweet es un «usuario poderoso» y si es republicano o demócrata.

La respuesta de Elon Musk y de Twitter

Cuando se le preguntó sobre este aspecto del algoritmo, Musk expresó su desacuerdo y afirmó que «definitivamente no debería estar dividiendo a las personas en republicanos y demócratas, eso no tiene sentido». Un ingeniero de Twitter aclaró que las categorías solo se utilizan «con fines de seguimiento estadístico y no tienen nada que ver con el algoritmo». Dijo que las etiquetas están destinadas «a asegurarnos de no tener sesgos hacia un grupo en particular». Sin embargo, no se explicó por qué Musk tenía su propia categoría.

La publicación del código de su algoritmo de recomendación por parte de Twitter es una buena noticia para la transparencia en la industria tecnológica. Permitir que los usuarios accedan al código fuente del algoritmo es una señal de que la compañía está abierta a recibir retroalimentación y colaboración en la mejora de la tecnología.

Los componentes del algoritmo de recomendación de Twitter

El algoritmo de recomendación de Twitter está compuesto por varios servicios y trabajos que se interconectan. Aunque hay muchas áreas de la aplicación en las que se recomiendan Tweets, en este artículo nos centraremos en el feed «Para ti» del timeline.

El algoritmo de recomendación de Twitter consta de tres etapas principales:

  • Obtener los mejores Tweets de diferentes fuentes de recomendación mediante un proceso llamado «sourcing de candidatos».
  • Clasificar cada Tweet utilizando un modelo de aprendizaje automático.
  • Aplicar heurísticas y filtros, como filtrar Tweets de usuarios que has bloqueado, contenido para adultos y Tweets que ya has visto.

El servicio que se encarga de construir y servir el feed «Para ti» es Home Mixer. Home Mixer está construido sobre Product Mixer, un marco de trabajo personalizado de Scala que facilita la creación de feeds de contenido. Este servicio actúa como columna vertebral de software que conecta diferentes fuentes de candidatos, funciones de puntuación, heurísticas y filtros.

Cómo se eligen los Tweets

La base de las recomendaciones de Twitter es un conjunto de modelos y características principales que extraen información latente de los datos de Tweets, usuarios y compromisos. Estos modelos buscan responder preguntas importantes sobre la red de Twitter, como «¿Cuál es la probabilidad de que interactúes con otro usuario en el futuro?» o «¿Cuáles son las comunidades en Twitter y cuáles son los Tweets más populares dentro de ellas?».

La tubería de recomendación de Twitter está compuesta por varios componentes que consumen estas características. El proceso comienza con la obtención de los candidatos de diferentes fuentes de recomendación.

Fuentes de candidatos

Twitter tiene varias fuentes de candidatos que utiliza para recuperar Tweets recientes y relevantes para el usuario. Para cada solicitud, se intentan extraer los mejores 1500 Tweets de una piscina de cientos de millones de Tweets a través de estas fuentes. Los candidatos se encuentran entre las personas a las que sigues (En red) y las que no (Fuera de red). En el feed «Para ti», los Tweets dentro de la red y fuera de la red tienen un 50% de probabilidad en promedio, aunque esto puede variar de un usuario a otro.

Fuentes dentro de la red

La fuente dentro de la red es la fuente de candidatos más grande y tiene como objetivo proporcionar los Tweets más relevantes y recientes de los usuarios que sigues. Los Tweets de los usuarios que sigues se clasifican eficientemente en función de su relevancia utilizando un modelo de regresión logística. Los mejores Tweets se envían a la siguiente etapa.

Una vez que se han obtenido los candidatos a aparecer en el timeline, se procede a ranquearlos para decidir su orden de aparición. El objetivo es ofrecer los tweets más relevantes y con mayor potencial de interacción para el usuario. Para ello, se utiliza una red neuronal con aproximadamente 48 millones de parámetros, que se entrena continuamente con las interacciones de los usuarios con los tweets.

La red neuronal utiliza miles de características para determinar la relevancia de cada tweet y otorgarle una puntuación. De estas puntuaciones, se seleccionan las 10 más altas para darle una clasificación final al tweet. Es importante destacar que en este punto del proceso, todos los tweets se tratan por igual, sin importar su origen.

Heurísticas, filtros y características del producto

Después del proceso de ranqueo, se aplican una serie de heurísticas, filtros y características del producto para crear un timeline equilibrado y diverso. Algunos ejemplos de estas características incluyen:

  • Filtros de visibilidad: se eliminan tweets basados en su contenido y las preferencias del usuario. Por ejemplo, se eliminan tweets de cuentas bloqueadas o silenciadas.
  • Diversidad de autores: se evita que aparezcan muchos tweets seguidos del mismo autor.
  • Balance de contenido: se asegura de que se entregue una cantidad equilibrada de tweets de In-Network y Out-of-Network.
  • Fatiga basada en feedback: se disminuye la puntuación de ciertos tweets si el usuario ha proporcionado comentarios negativos sobre ellos.
  • Prueba social: se excluyen tweets Out-of-Network que no tengan una conexión de segundo grado con el tweet, como una medida de calidad. En otras palabras, se asegura de que alguien que el usuario sigue ha interactuado con el tweet o sigue al autor del tweet.
  • Conversaciones: se proporciona más contexto para las respuestas al enlazarlas con el tweet original.
  • Tweets editados: se determina si los tweets en el dispositivo están desactualizados y se envían instrucciones para reemplazarlos con las versiones editadas.

Mezcla y entrega

Finalmente, el servicio Home Mixer tiene una selección de tweets listos para enviar al dispositivo del usuario. Como último paso, se mezclan los tweets con otro contenido no relacionado con tweets, como anuncios, recomendaciones de seguimiento y sugerencias para nuevos usuarios, y se devuelve al dispositivo para mostrarlos.

Serán muchos los detalles que aparecerán a partir de ahora, sin duda.

pueder bajar el código en este enlace.

Más información en blog.twitter.com.

Código fuente de Twitter fue filtrado a través de GitHub por un usuario anónimo

Twitter Código

Partes del código fuente de Twitter han sido filtradas en línea, según una exposición rara e importante de la propiedad intelectual. Twitter ha movido ficha para eliminar el código filtrado enviando un aviso de infracción de derechos de autor a GitHub, una plataforma de colaboración en línea para desarrolladores de software donde se publicó el código.

Twitter también ha solicitado al Tribunal de Distrito de EE. UU. para el Distrito Norte de California que ordene a GitHub que identifique a la persona que compartió el código y a cualquier otra persona que lo descargó. Twitter ha iniciado una investigación sobre la filtración y los ejecutivos que manejan el asunto han conjeturado que el responsable abandonó la empresa con sede en San Francisco el año pasado. El código fuente expuesto se suma a los desafíos que enfrenta el Twitter de Elon Musk.

La filtración de código fuente de Twitter

Las empresas de tecnología a menudo ven su código fuente como un secreto muy bien guardado y no lo comparten por temor a que pueda dar a los competidores una ventaja injusta o revelar vulnerabilidades de seguridad. Pero incluso cuando las empresas de tecnología se esfuerzan por proteger sus bases de código, se han convertido en blancos perfectos para oportunistas, piratas informáticos y otros.

Para Twitter, esta filtración también se suma a los crecientes desafíos estructurales y financieros. Elon Musk ha estado tratando de hacer cambios en la red social durante los últimos meses al reducir costos, probar nuevas funciones y dar la bienvenida a usuarios previamente prohibidos. Pero las interrupciones del servicio han aumentado, mientras que los anunciantes, que son la principal fuente de ingresos de la empresa, se han mostrado reacios a publicar anuncios en el sitio.

Esta agitación ha causado daños financieros en la empresa. El viernes, Musk le comentó a sus empleados en un correo electrónico que Twitter valía aproximadamente $20 mil millones  de dólares, más del 50 por ciento menos de lo que pagó por él. Dijo que los «cambios radicales» en la empresa, incluidos los despidos masivos y la reducción de costos, eran necesarios para evitar la bancarrota y optimizar las operaciones.

Investigación sobre la filtración

Según reporta el New York Times, Twitter ha iniciado una investigación sobre la filtración y los ejecutivos que manejan el asunto han conjeturado que el responsable, identificado en GitHub como “FreeSpeechEnthusiast”, abandonó la empresa con sede en San Francisco el año pasado. Una preocupación es que el código incluye vulnerabilidades de seguridad que podrían dar a los piratas informáticos u otras partes motivadas las herramientas para extraer datos de los usuarios o eliminar el sitio.

Twitter solicitó al Tribunal de Distrito de EE. UU. para el Distrito Norte de California que ordene a GitHub que identifique a la persona que compartió el código y a cualquier otra persona que lo descargó. Esta filtración se produce poco después de que Musk prometió hacer público parte del código de Twitter, un proceso podría ayudar a que el código de Twitter se vuelva más seguro, ya que así cualquiera pueda revisarlo y analizarlo en busca de posibles fallas.

Los riesgos de una filtración de código fuente

La filtración de código fuente es un riesgo importante para cualquier empresa de tecnología, ya que puede exponer brechas de seguridad y secretos comerciales. Ante este peligro, las compañías usualmente tienen procedimientos y medidas de seguridad previamente protocolizados. para evitar que el código fuente se filtre. Estos procedimientos incluyen la limitación del acceso al código fuente y la revisión y aprobación de los cambios realizados en el código por parte de los desarrolladores. Sin embargo, incluso con estas medidas de seguridad, los empleados pueden tener acceso al código fuente y filtrarlo a sabiendas o incluso sin saberlo. Además, los piratas informáticos pueden aprovechar ciertas vulnerabilidades previamente detectadas en el software de la empresa para acceder al código fuente.

Un evento de este tenor puede ser especialmente peligroso para empresas que dependen en gran medida de su propiedad intelectual, como Twitter. La propiedad intelectual puede incluir el código fuente de un software, así como patentes, marcas comerciales y secretos comerciales. Si un competidor obtiene acceso a la propiedad intelectual de una empresa, puede usar esa información para competir con la empresa en el mercado.

 

Descarga el Pixel Launcher con las optimizaciones de Android Go

Android Go


Junto a Android Go, la plataforma destinada a dispositivos de recursos limitados, Google introdujo una serie de aplicaciones optimizadas para su funcionamiento en terminales con especificaciones recortadas. La mayoría de ellas, no solo reducían su tamaño o el consumo de memoria, sino que, además, repercutían de forma positiva en la duración de la batería, gracias a que el consumo general de recursos era menor.
Ahora, el mismo creador del popular Pixel Launcher sin necesidad de root, AmirZ, ha creado una variante del launcher incorporado en los dispositivos Pixel, que se aprovecha de las ventajas y optimizaciones de Android Go, para ofrecer un mejor funcionamiento en terminales de gama baja y gama media.

El Rootless Pixel Launcher recibe las optimizaciones de Android Go

Desde XDA-Developers, nos cuentan que este launcher optimizado cuenta con una interfaz similar a la del Pixel Launcher, aunque existen ciertos cambios relevantes que reducen tanto el peso como el consumo de recursos del sistema. Por ejemplo, la cuadrícula de iconos de la pantalla se mantiene en 4×4, sin posibilidad de ser modificada, y tampoco es posible utilizar widgets sobre la pantalla de inicio, o notification dots —los avisos sobre las apps que se introdujeron en Android 8–.
En los ajustes del launcher, sin embargo, sí que se han añadido opciones como la posibilidad de añadir el widget de un vistazo, incluido en los Pixel 2, además de la modificación de la forma de los iconos o la rotación de la pantalla. También encontraremos soporte para paquetes de iconos de terceros.
Según las primeras pruebas, las diferencias en cuanto a consumo de recursos son más que notables si se compara con el Pixel Launcher tradicional –alrededor de 100 MB de RAM de diferencia–. Por tanto, puede ser una buena opción de cara a todos aquellos que utilicen un terminal no demasiado potente, o en el que el paso de los años y la falta de memoria RAM hayan hecho mella. Para poder descargar la aplicación, habrá que acceder al repositorio de GitHub, donde está alojado el archivo ejecutable del launcher.