Así es como los algoritmos evolucionarán a sí mismos

Así es como los algoritmos evolucionarán a sí mismos

  • AutoML-Zero de Google es capaz de crear nuevos algoritmos desde cero, a través de un proceso de evolución al estilo darwiniano.
  • Científicos que trabajan para el gigante tecnológico creen que este salto en la investigación automática de aprendizaje automático (AutoML) revolucionará el campo, abriendo capacidades de aprendizaje automático para los no expertos.
  • El mes pasado, publicaron su trabajo en el servidor de preimpresión Arxiv lo que significa que la investigación aún no ha sido revisada por pares.

    El aprendizaje automático es difícil. Los algoritmos en un caso de uso determinado a menudo no funcionan o no funcionan lo suficientemente bien, lo que conduce a una depuración seria. Y encontrar el algoritmo perfecto (el conjunto de reglas que una computadora debe seguir para realizar una operación) puede ser una tarea alta. No puedes simplemente elegir el algoritmo perfecto si no existe, y algunas soluciones simplemente no son intuitivas para la mente humana.

    Eso significa que el proceso de elegir y refinar algoritmos es iterativo y algo monótono. Es una tormenta perfecta para la automatización.

    Ingrese al aprendizaje automático, o AutoML, una rama de investigación dedicada exclusivamente a métodos y procesos que automatizan el aprendizaje automático para que los no expertos también puedan cosechar sus beneficios.

    Google cree que un equipo de sus científicos informáticos ha llegado con un nuevo método AutoML que podría generar automáticamente el mejor algoritmo para una tarea determinada. La nueva investigación se describe en un documento publicado en el servidor de preimpresión Arxiv. También se ha enviado a una revista científica para su revisión y podría publicarse ya en junio.

    La premisa es así: Un nuevo sistema, llamado AutoML-Zero, puede adaptar algoritmos a diferentes tipos de tareas y mejorarlos continuamente a través de un proceso de evolución darwiniano que reduce la cantidad de intervención humana requerida. Dado que los seres humanos pueden introducir sesgos en los sistemas,y por lo tanto programar sus propias limitaciones, que limita los resultados que obtienes en última instancia. Así que Google está tratando de crear un escenario donde un ordenador puede vagar libremente y ser creativo, o tomar la píldora roja Y la píldora azul, por así decirlo.

    Esteban Real, ingeniero de software de Google Brain, Research and Machine Intelligence, y autor principal de la investigación, ofrece esta metáfora:

    “Supongamos que su objetivo es armar una casa. Si tuvieras a tu disposición habitaciones, cocinas y baños preconstruidos, tu tarea sería manejable, pero también estás limitado a las habitaciones que tienes en tu inventario”, le dice Mecánica Popular. “Si en su lugar empezaras con ladrillos y mortero, entonces tu trabajo es más difícil, pero tienes más espacio para la creatividad”.

    Extracción de los humanos y el sesgo

    Este contenido se importa desde YouTube. Es posible que pueda encontrar el mismo contenido en otro formato, o que pueda encontrar más información, en su sitio web.

    En el pasado, la investigación de AutoML ha confiado en gran medida en la entrada humana. La búsqueda de arquitectura neuronal, por ejemplo, que automatiza el diseño de una red neuronal, como su nombre indica, se basa en capas sofisticadas y creadas por expertos como bloques de construcción para la nueva red neuronal. Estas son básicamente instrucciones codificadas a mano, o programas, que le dicen a una computadora qué hacer.

    Por el contrario, el nuevo AutoML-Zero de Google utiliza las matemáticas, en lugar de los componentes diseñados por el hombre, como los bloques de construcción para nuevos algoritmos. Los lenguajes de programación, desde COBOL, Python y Ruby on Rails, simplifican el acto de crear un programa. Las máquinas entienden los números, específicamente el código binario, y los idiomas actúan como un búfer entre el programador y la máquina. De esa manera, los humanos no tienen que pasar todo el día dividiendo los comandos en un montón de 1s y 0s.

    Pero esa elección del lenguaje y la representación en los lenguajes de programación permite que el sesgo se asuste, dice Armando Solar-Lezama, un profesor asociado del Instituto Tecnológico de Massachusetts (MIT), que no está afiliado a la obra. Dirige el Grupo de Programación Asistida por Computador del MIT, que se centra en automatizar el proceso de programación.

    Solar-Lezama dice Mecánica Popular el nuevo artículo de Google trata de ver hasta dónde puedes empujar un lenguaje simple basado en matemáticas “para que las cosas que descubras no estén sesgadas por tu elección de lenguaje”. En este caso, sesgo significa limitar sus opciones.

    Volviendo a la metáfora de la casa de Real, imagina que estás construyendo tu casa fuera de habitaciones enteras, y todo lo que sabes es estilo romano. “Entonces su casa estaría llena de columnas, atria e impluvia; no serías capaz de encontrar el Empire State Building o la Capilla Sixtina”, dice Real. “Si usas ladrillos y mortero, entonces no estás limitado a un estilo específico.”

    Real y sus coautores Chen Liang, David So y Quoc Le reconocen que aún queda sesgo en el programa, a pesar de sus mejores esfuerzos. Por ejemplo, incluso las operaciones matemáticas específicas que han elegido pueden contener sesgo implícito basado en el conocimiento preexistente de los investigadores sobre algoritmos de aprendizaje automático.

    Algoritmos Genéticos

    Para descubrir nuevos algoritmos, AutoML-Zero comienza con 100 algoritmos aleatorios, generados a través de una combinación de operaciones matemáticas. A continuación, el sistema se atraviesa a través de los algoritmos para encontrar los mejores, que continúan con el siguiente paso, similar al proceso de los seres humanos pasando genes favorables con el tiempo en un juego de “supervivencia del más apto.”

    un diagrama de flujo que muestra el proceso de google investigadores utilizados para mutar algoritmos

    Arxiv

    A partir de ahí, los algoritmos completan algún tipo de tarea de aprendizaje automático, como identificar motocicletas de camiones, como puede hacer en una de esas pruebas RECAPTCHA que comprueba si eres o no un robot. AutoML-Zero utiliza las tareas para puntuar la eficacia de cada algoritmo en la realización de un determinado objetivo y luego “muta” a los mejores para comenzar otra ronda.

    Estos nuevos algoritmos “secundarios” se comparan con los algoritmos originales “principales” para ver si han mejorado en la tarea en cuestión. El proceso se repite continuamente hasta que las mejores mutaciones ganan y terminan en el algoritmo final.

    Al final, el sistema podría buscar a través de 10.000 modelos posibles por segundo, con la capacidad de omitir algoritmos que ya ha visto. Los investigadores utilizaron un pequeño conjunto de datos como un proxy para cantidades más complicadas de información, haciendo del trabajo una prueba de concepto.

    “Cuanto más tiempo sea el fragmento de código que intentagenerar, más fácil será que un error se cuele”.

    Para ello, AutoML-Zero utiliza lo que se conoce como algoritmos genéticos, que han existido desde la década de 1980, pero han caído en desuso en su mayor parte, dice Solar-Lezama. Esto se debe a que suelen ser mejores en entornos no estructurados, “donde nada más funciona”, y a menudo conducen a código ilegible que es difícil de realizar ingeniería inversa. Además, producen fragmentos de código muy largos.

    “Cuanto más tiempo sea el fragmento de código que intentagenerar, más fácil será que un error se cuele”, dice Solar-Lezama. “Puede ser la diferencia entre un fragmento de código que hace exactamente lo que quieres, y uno que no funciona, y podría ser un carácter. Este es un problema general en la síntesis de programas.”

    Aún así, los algoritmos genéticos tienen sentido en este caso, porque no quieres obstaculizar las opciones de la computadora.

    El problema con el escalado

    Google ya ha desarrollado su propio lenguaje de programación, llamado Cloud AutoML, que facilita la formación de modelos de aprendizaje automático con una experiencia humana mínima. Pero AutoML-Zero parece un paso hacia una participación aún menos humana.

    Escalar este método, sin embargo, será un desafío, dice Solar-Lezama. Dado que AutoML-Zero utiliza lenguajes de programación aritméticos, en lugar de lenguajes de programación de orden superior, no hay instrucciones para ayudar al sistema a abordar rápidamente un problema del que se ha encontrado alguna versión de antes. En su lugar, tendrá que reinventar la rueda cada vez, lo que no es óptimo.

    Para superar el tema de la escala, Solar-Lezama dice que los investigadores podrían asumir una mentalidad de “dividir y conquistar” en futuros trabajos. Al desacoplar una parte del programa de otra parte, AutoML-Zero podría encontrar el éxito. Además, será vital encontrar el equilibrio adecuado entre la aritmética abstracta como bloques de construcción e instrucciones más sustanciales que pueden hacer más trabajo, pero que podrían introducir sesgo.

    Si Google escala el sistema y deja que las máquinas realmente construyan los algoritmos, podría significar un desarrollo de aplicaciones mucho más rápido, traducción de idiomas, procesamiento de vídeo … Todo Solar-Lezama dice. Incluso podría capacitar a los desarrolladores de pequeñas y pequeñas empresas para que aprovechen las capacidades de aprendizaje automático sin tener que contratar o externalizar a todo un equipo de ciencia de datos.

    “Ser capaz de encontrar un algoritmo que está bien ajustado y bien configurado para una aplicación en particular que usted está tratando con … puede ser algo muy poderoso”, dice.

      Este contenido es creado y mantenido por un tercero, e importado en esta página para ayudar a los usuarios a proporcionar sus direcciones de correo electrónico. Es posible que pueda encontrar más información sobre este contenido y contenido similar en piano.io

      Esta sección de comentarios es creada y mantenida por un tercero y importada a esta página. Es posible que pueda encontrar más información en su sitio web.


Source link