Clicky

DeepMind logra un gigantesco salto en la velocidad de clasificación

DeepMind

Nuevos algoritmos transformarán los cimientos de la computación

La clasificación, o estructuración de datos, ha sido un principio fundamental de las operaciones informáticas desde que se desarrollaron las primeras computadoras.

Los babilonios demostraron el orden y el procesamiento de los números alrededor del año 2500 a.C. Los egipcios siguieron su ejemplo alrededor del 1550 a.C. y el matemático griego Euclides alrededor del 300 a.C. ideó una fórmula para encontrar rápidamente el máximo común divisor de dos números enteros.

A mediados del siglo XIX, ordenar era un objetivo principal de la matemática Augusta Ada King, hija del poeta Lord Byron. Creó el primer algoritmo, destinado a ser utilizado en lo que entonces era una máquina teórica imaginada por su mentor, el matemático Charles Babbage (conocido como el padre de las computadoras). Por ese logro, obtuvo el título de "primera programadora de computadoras".

En 1951, otra mujer, Frances Elizabeth Holberton, diseñó el primer sistema de programación generativa, un procedimiento rudimentario de clasificación/fusión para el ejército de los EE. UU. También ayudó a programar trayectorias balísticas durante la Segunda Guerra Mundial.

En realidad, según el experto en criptología y diseño de computadoras Frank Rubin, la clasificación se puede rastrear hasta formas de vida incluso antes de que los humanos evolucionaran, unos 65 millones de años antes. Los dinosaurios, dijo, realizaban una clasificación simple. Clasificaron todos los seres vivos en dos categorías: "comida" y "no comida".

El ritmo del desarrollo de algoritmos informáticos se aceleró desde mediados del siglo XX hasta el presente. Ahora tenemos computadoras capaces de realizar un quintillón de cálculos por segundo.

Los babilonios, tal vez incluso los dinosaurios, estarían muy impresionados.

También es impresionante un avance anunciado el 7 de junio en un blog en línea por el equipo de DeepMind de Google.

El equipo ideó un enfoque para procesar números que es hasta un 70% más rápido que los métodos actuales. Los algoritmos han estado en uso durante un año, ya que se agregaron a la biblioteca de C++. Los algoritmos de código abierto ahora están siendo utilizados por millones de desarrolladores y empresas en todo el mundo, según DeepMind.

El proyecto de IA, llamado AlphaDev, es "un sistema de inteligencia artificial que utiliza el aprendizaje por refuerzo para descubrir algoritmos informáticos mejorados, superando a los perfeccionados por científicos e ingenieros durante décadas", informó DeepMind en su blog.

AlphaDev se basa en el éxito de su predecesor, AlphaZero, que dominó las estrategias detrás de Go y Chess.

DeepMind ensamblador

Imagen: El cálculo de la corrección del algoritmo y el juego de ensamblaje.

La capacitación de AlphaDev en la clasificación se llevó a cabo utilizando lo que los investigadores denominaron un "juego [de lenguaje] ensamblador para un solo jugador".

Los algoritmos de clasificación se construyeron una instrucción a la vez, ya que AlphaDev exploró continuamente las opciones para encontrar una que funcionara mejor que la anterior. El proceso implica aprovechar las redes neuronales para comparar y mover valores, todo para lograr los resultados más precisos en el menor tiempo posible.

"La Ley de Moore está llegando a su fin, donde los chips se acercan a sus límites físicos fundamentales", dijo el científico de DeepMind Daniel Mankowitz. "Necesitamos encontrar formas nuevas e innovadoras de optimizar la informática".

DeepMind clasificación

Imagen: Ilustración de lo que hace un algoritmo de clasificación. Se ingresa una serie de números sin ordenar en el algoritmo y se generan números ordenados.

La investigación se centró en listas cortas de hasta cinco caracteres. Los investigadores dijeron que los algoritmos de tres a cinco caracteres son los más utilizados por los programadores. Dichos algoritmos se utilizan "trillones de veces al día", afirmó el blog DeepMind.

Para secuencias de clasificación más largas, hasta 250.000 elementos, hubo una mejora marginal en la velocidad con respecto a los métodos actuales.

El próximo paso para AlphaDev es estudiar la optimización en lenguajes de alto nivel como C++ que debería descubrir una mayor mejora de la velocidad y ser más útil para los desarrolladores.

El artículo también se publica en la revista Nature: Faster sorting algorithms discovered using deep reinforcement learning

Jesus_Caceres