IBM: l’Intelligenza artificiale può tradurre i linguaggi dei computer

Redazione
Intelligenza artificiale, Intel

IBM ha annunciato che i suoi ricercatori hanno creato una Stele di Rosetta per il codice di programmazione.


I sistemi di intelligenza artificiale e machine learning sono diventati sempre più competenti negli ultimi anni, capaci non solo di comprendere la parola scritta ma anche di scriverla. Ma mentre queste intelligenze artificiali hanno quasi padroneggiato la lingua inglese, devono ancora diventare fluenti nella lingua dei computer, almeno fino a ora. IBM ha annunciato durante la sua conferenza Think 2021 che i suoi ricercatori hanno creato una Stele di Rosetta per il codice di programmazione.

Negli ultimi dieci anni, i progressi nell’intelligenza artificiale sono stati principalmente “guidati da reti neurali profonde, e anche questo, è stato guidato da tre fattori principali: la disponibilità di grandi set di dati per l’addestramento, innovazioni in algoritmi e la massiccia accelerazione di hardware di elaborazione sempre più veloci guidati da GPU“, ha affermato Ruchir Puri, IBM Fellow e Chief Scientist presso IBM Research, durante la sua presentazione Think 2021.

Il software sta mangiando il mondo“, ha scritto Marc Andreessen nel 2011. “E se il software sta mangiando il mondo, l’intelligenza artificiale sta mangiando il software“, ha commentato Puri a Engadget. “È questa relazione tra le attività visive e quelle linguistiche, quando è stato possibile utilizzare algoritmi comuni tra di esse, che ha portato alla rivoluzione nelle scoperte nell’elaborazione del linguaggio naturale, a partire dall’avvento di Watson Jeopardy , nel lontano 2012“, continua.

In effetti, abbiamo insegnato ai computer come parlare umano, quindi perché non insegnare anche ai computer a parlare più computer? Questo è ciò che il Project CodeNet di IBM cerca di realizzare. “Abbiamo bisogno del nostro ImageNet, che può aumentare l’innovazione e può scatenare questa innovazione negli algoritmi“, ha detto Puri. CodeNet è essenzialmente l’ImageNet dei computer. È un ampio set di dati progettato per insegnare ai sistemi AI / ML come tradurre il codice e consiste in circa 14 milioni di frammenti e 500 milioni di righe distribuite in più di 55 linguaggi legacy e attivi, da COBOL e FORTRAN a Java, C ++ e Python.

Poiché il set di dati stesso contiene 50 lingue diverse, può effettivamente abilitare algoritmi per molte combinazioni a coppie“, ha spiegato Puri. “Detto questo, è stato svolto un lavoro nelle aree del linguaggio umano, come la traduzione automatica neurale che diventa più indipendente dalla lingua e può derivare un’astrazione intermedia attraverso la quale si traduce in molte lingue diverse“. In breve, il set di dati è costruito in modo da consentire la traduzione bidirezionale. Cioè, puoi prendere un codice COBOL legacy e tradurlo in Java con la stessa facilità con cui potresti prendere un frammento di Java e regredirlo in COBOL.

Riteniamo che l’elaborazione del linguaggio naturale e l’apprendimento automatico possano essere applicati alla comprensione dei linguaggi del software eseguendo ragionamenti e processi decisionali automatizzati, essendo in grado di spiegare tali decisioni, proprio come siamo in grado di fare con la visione artificiale e sul lato dell’elaborazione del linguaggio naturale“, ha ha detto.

CodeNet può essere utilizzato per funzioni come la ricerca del codice e il rilevamento dei cloni, oltre ai suoi compiti di traduzione previsti e funge da set di dati di riferimento. Inoltre, ogni campione è etichettato con il tempo di esecuzione della CPU e l’impronta di memoria, consentendo ai ricercatori di eseguire studi di regressione e potenzialmente sviluppare sistemi di correzione del codice automatizzati.

Project CodeNet è costituito da oltre 14 milioni di campioni di codice e oltre 4000 problemi di codifica raccolti e curati da decenni di sfide di programmazione e competizioni in tutto il mondo: “Ci sono molti tipi di competizioni di programmazione e tutti i tipi di problemi, alcuni dei quali più professionali, altri più accademici. Queste sono le lingue che sono state utilizzate nell’ultimo decennio e mezzo in molte di queste competizioni con migliaia di studenti o concorrenti che hanno presentato soluzioni” ha detto Puri.

Oltre 45 interventi di esperti dell’innovazione

Iscriviti alla newsletter

Non inviamo spam! Leggi la nostra Informativa sulla privacy per avere maggiori informazioni.