Nieuw neuraal netwerk laat computers zichzelf coderen

ANP | 31 juli 2020 | 12:20 | Foto: ©ANP Nieuw neuraal netwerk laat computers zichzelf coderen

Onderzoekers van Intel, MIT en The Georgia Institute of Technology werken aan een nieuw systeem dat Machine Inferred Code Similarity (MISIM) heet. Dat schrijft MIT Technology Review. Dit netwerk kan de betekenis van een stukje code uitlezen, en vervolgens andere manieren suggereren waarop de code kan worden geschreven om hem sneller of efficiënter te maken.

Omdat MISIM in staat is om te begrijpen wat een programma probeert te doen, kan het andere programma’s uitzoeken die vergelijkbare dingen doen. Het vergelijkt kleine stukjes code met miljoenen andere programma’s die het al gezien heeft. Daarbij kijkt MISIM naar wat zo’n programma doet, maar negeert hoe het is geschreven - programma’s zijn vaak op verschillende manieren geschreven terwijl ze hetzelfde doen.

MISIM is overigens niet het eerste systeem dat dit doet. Zo heeft Facebook Aroma, dat automatisch kleine programmaatjes afschrijft. Microsoft werkt ook aan een automatische codegenerator en het taalalgoritme van OpenAI kan ook stukjes code genereren. MISIM doet het alleen een stuk accurater - tot wel 40 keer zo accuraat als Aroma.

Lange weg te gaan

Toch heeft de technologie nog een lange weg te gaan. Een van de meest tijdrovende processen binnen coderen, bugfixing, hebben deze systemen nog niet goed in de vingers. Veel AI-tools die bugs moeten opsporen vinden te vaak valse positieven. MISIM maakt hier wel een verbeterslag door programma’s te vergelijken met bestaande, werkende software, en de programmeur te wijzen op belangrijke verschillen die kunnen duiden op een bug.

Intel is nu van plan om de tool te gebruiken als aanbevelingssysteem voor ontwikkelaars, omdat MISIM alternatieven voor bestaande code kan suggereren. Maar in potentie kan MISIM nog veel meer, zoals oude programmeertalen als COBOL vertalen in het meer gangbare Python. Veel organisaties hebben problemen met het updaten van hun software omdat deze geschreven is in een taal die nog maar weinig programmeurs kennen.

Iedereen programmeur

Maar de grootste potentie zit hem misschien wel in de toepassingen buiten de software-ontwikkelaars en programmeurs: bij de mensen die zelf niet kunnen programmeren, maar dankzij zo’n systeem opdrachten kunnen geven die dan vertaald worden in code. Dat zou betekenen dat iedereen zelf software kan gaan ontwikkelen.

Meer weten over Huawei en Kunstmatige Intelligentie? Klik hier.