Ir al contenido principal

Entradas

Mostrando las entradas etiquetadas como algoritmo

Random memory adaptation model inspired by the paper: "Memory-based parameter adaptation (MbPA)"

Os dejo a continuación el contenido de un trabajo de investigation sobre machine learning que he realizado en mi escaso tiempo libre: https://github.com/Zeta36/random-memory-adaptation ------------------------------------------------------------------------------------------------------------------------------------------------------------------ Introduction. I present in this repository a (very simple) random memory adaptation model (RMA) inspired by the Google DeepMind paper: "Memory-based parameter adaptation (MbPA)" ( https://arxiv.org/pdf/1802.10542.pdf ) In the paper, point 4.1. CONTINUAL LEARNING: SEQUENTIAL DISTRIBUTIONAL SHIFT (inside experiments and results), they study the improvements their model suppose in relation to the catastrophic forgetting problem. They explored the effects of their model (MbPA) on continual learning, i.e. when dealing with the problem of sequentially learning multiple tasks without the ability to revisit a task. For this purposed they use...

¡Más potencia!

«¡Es la guerra! ¡Traed madera! ¡Más madera!»  (Los hermanos Marx) Introducción. El mundo de las ciencias de la computación están estos días de enhorabuena, un nievo hito histórico acaba de acontecer: hablamos por supuesto del casi milagroso desarrollo de Google DeepMind denominado AlphaZero , un modelo neuronal capaz de aprender de manera autónoma no supervisada (sin apoyo de datos etiquetados ofrecidos por el hombre) a jugar con capacidades sobrehumanas a varios juegos milenarios como el Go y el ajedrez ( aquí podéis descargar el paper de este proyecto). DeepMind acaba de demostrar así que la metodología que utilizaron para que un modelo neuronal aprendiera (con capacidades sobrehumanas) por sí misma sin apoyo de datos humanos el juego de Go, es generalizable a cualquier otro tipo de juego o situación. En el arriba comentado paper nos explican por ejemplo como en 4 horas (sí, sólo 4 horas), la red neuronal fue capaz de aprender a jugar al ajedrez (entre otros juegos) con una ca...

Usando el modelo de red neuronal de traducción de Google (GNMT)...¡para jugar al ajedrez!

Hace unos días, y para mi gran sorpresa, Google nos hizo el enorme regalo de hacer público el código fuente de su motor de traducción de lenguaje natural más moderno ( GNMT ): https://github.com/tensorflow/nmt Así que decidí rápidamente hacer uso de esta maravilla, junto con las mejoras con la que la versión 1.2 de TensorFlow viene cargada, para programar las modificaciones necesarias para poder enfocar el modelo de Google a la traducción...¡de jugadas en el juego del ajedrez! Es decir; que el modelo (con modificaciones mínimas), en lugar de aprender a traducir por ejemplo de español a inglés, será capaz de inferir movimientos de ajedrez válidos (usando la notación algebraica ) dado un estado de tablero cualquiera. El resultado final lo podéis ver (y usar) en el siguiente repositorio de mi cuenta personal en GitHub:  https://github.com/Zeta36/Using-Google-Neural-Machine-Translation-for-chess-movements-inference-TensorFlow- . Pero lo realmente importante sin embargo, es sin d...

La magnífica mejora en el sistema de traducción de Google (que ha pasado casi desapercibida)

"Alrededor de dos mil quinientos años atrás, un comerciante mesopotámico reunió arcilla, madera y juncos y cambió la humanidad para siempre. Con el tiempo, su ábaco permitiría a los comerciantes hacer un seguimiento de los bienes y reconciliar sus finanzas, permitiendo que la economía florezca. Pero ese momento de inspiración también ilumina otra asombrosa habilidad humana: nuestra capacidad de recombinar conceptos existentes e imaginar algo completamente nuevo. El inventor desconocido habría tenido que pensar en el problema que querían resolver, el artefacto que podían construir y las materias primas que podían reunir para crearlo. La arcilla se podría moldear en una tableta, un palillo se podría utilizar para rasguñar las columnas y los juncos pueden actuar como contadores. Cada componente era familiar y distinto, pero juntos en esta nueva forma, formaron algo revolucionario. Esta idea de "composicionalidad" está en el centro de las capacidades humanas como la creativi...

Red neuronal enfocada en el aprendizaje supervisado del ajedrez

Enfocado en el reciente trabajo teórico de Google DeepMind ( AlphaGo ), he desarrollado e implementado una versión en TensorFlow de dicha arquitectura, pero realizando modificaciones para enfocar el diseño en el juego del ajedrez en lugar del Go (el  paper  original es:  https://storage.googleapis.com/deepmind-media/alphago/AlphaGoNaturePaper.pdf ). El modelo ideado originalmente por  DeepMind  fue divulgado con detalle en este artículo:  https://deepmind.com/research/alphago/ , y mi implementation del mismo (con las modificaciones necesarias para enfocarlo todo en el juego del ajedrez), se encuentra en el siguiente repositorio de mi cuenta personal en GitHub:  https://github.com/Zeta36/Policy-chess . Se trata como podéis ver, de un desarrollo Python usando el framework de Google,  TensorFlow . Os dejo a continuación toda la información técnica sobre mi trabajo, aunque siento no tener tiempo para traducirlo y simplemente copiaré a continuación la ...

Implementación en TensorFlow de la red neuronal generativa (WaveNet) enfocada en la generación de texto

Enfocado en el reciente trabajo teórico de Google DeepMind ( WaveNet ), he desarrollado e implementado una versión en TensorFlow de dicha arquitectura, pero realizando modificaciones para enfocar el diseño en la generación automática de textos (el paper original es: https://arxiv.org/pdf/1609.03499.pdf ). El modelo ideado originalmente por DeepMind fue divulgado con detalle en este artículo: https://deepmind.com/blog/wavenet-generative-model-raw-audio/ , y mi implementación del mismo (con las modificaciones necesarias para enfocarlo todo en la generación de texto), se encuentra en el siguiente repositorio de mi cuenta personal en GitHub: https://github.com/Zeta36/tensorflow-tex-wavenet . Se trata como podéis ver, de un desarrollo Python usando el framework de Google, TensorFlow . Os dejo a continuación toda la información técnica sobre mi trabajo, aunque siento no tener tiempo para traducirlo y simplemente copiaré a continuación la introducción que hice del mismo en inglés: A TensorFlo...

Trasteando con el "Juego de la vida" de John Horton Conway

El Juego de la vida es un diseño de programación ideado por el matemático británico John Horton Conway en 1970, y basa su funcionamiento en un "mundo" en dos dimensiones (2D) el cual contiene cierto número finito de celdas que pueden estar o no ocupadas por una estructura. Posteriormente estas celdas varían su estado gracias a una "física" (conjunto de reglas) que dictan la dinámica y el estado del tablero. Aunque lo más importante y destacable de este proyecto, es el hecho de ver como un diseño tan simple es capaz de conseguir con su dinámica temporal que a veces emerjan interesantes y complejos patrones de movimiento. Las reglas del juego original son las siguientes: Una celda puede estar activa ( on ) o no activa ( off ). Si está activa se dice que es una célula viva. Una célula muerta (celda off ) con exactamente 3 células vecinas vivas "nace" (al turno siguiente esta celda muerta estará viva). Una célula viva con 2 ó 3 células vecinas vivas sig...