Noticias Programación

IBM lanza el conjunto de datos CodeNet para codificación de IA

IBM ha lanzado Project CodeNet, un conjunto de datos destinado a enseñar a la IA a traducir código de un lenguaje de programación a otro. El conjunto de datos consta de 14 millones de ejemplos de código, que constan de aproximadamente 500 millones de líneas de código en 55 lenguajes de programación, que van desde C ++, Java, Python y Go hasta Cobol, Pascal y Fortran.

IBM Research dice que Project CodeNet se puede utilizar para entrenar modelos de aprendizaje automático para la traducción de código. Los ejemplos de código se tomaron de entradas en concursos de programación abierta, e IBM dice que más del 90 por ciento de los ejemplos de código vienen con una descripción de lo que hace el código, incluida una declaración concisa del problema, la especificación del formato de entrada y salida. formato.

Los desarrolladores dicen que para más de la mitad de los problemas de codificación también recibieron entradas y salidas de muestra de la descripción del problema, que creen que es la clave para determinar la equivalencia de dos muestras de código en diferentes lenguajes y que puede guiar las técnicas de refuerzo. aprender a traducir códigos. Los ejemplos también incluyen información como el tamaño del código, la huella de memoria, el tiempo de ejecución de la CPU y el estado, que indica la aceptación o los tipos de error.

El equipo de IBM estima que los sistemas automatizados basados ​​en reglas pueden traducir entre el 50 y el 60 por ciento de un programa a otro lenguaje de programación, dejando que el resto se traduzca manualmente, lo que implica reglas complejas.

La esperanza es que el Proyecto CodeNet sea capaz de «impulsar la innovación algorítmica» para extraer el código más complejo utilizando modelos secuencia a secuencia, de forma similar a como lo utilizan ahora los traductores de lenguajes humanos. El objetivo es afectar la comprensión del código por parte de la máquina de manera más significativa que el procesamiento del código por parte de la máquina.

El proyecto incluye herramientas para convertir muestras de código en una representación que puede ser utilizada por algoritmos de inteligencia artificial, incluido un tokenizador que genera flujos de tokens, un analizador que genera un árbol de análisis simplificado (SPT) para cada programa reconocido y una herramienta de código. análisis que crea diagramas de flujo de datos y control. Project CodeNet está disponible en GitHub.

Publicidad:

Publicidad:

También puede gustarte...

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *