Root NationNaujienosIT naujienosIBM sukūrė Project CodeNet duomenų rinkinį: 14 milijonų kodų pavyzdžių išmokys dirbtinį intelektą programuoti

IBM sukūrė Project CodeNet duomenų rinkinį: 14 milijonų kodų pavyzdžių išmokys dirbtinį intelektą programuoti

-

Vienetas IBM Dirbtinio intelekto (AI) tyrimo metu buvo pateiktas 14 milijonų pavyzdžių duomenų rinkinys, skirtas sukurti mašininio mokymosi modelius, kurie gali padėti programavimo užduotims atlikti. Duomenų rinkinys pavadintas Projektas CodeNet, pavadintas iš „ImageNet“ – garsiosios vaizdų saugyklos, sukėlusios revoliuciją kompiuterinėje vizijoje ir giluminiame mokyme.

Programuotojai atranda naujų problemų ir tiria skirtingus sprendimus, naudodamiesi daugybe sąmoningo ir pasąmoningo mąstymo mechanizmų. Daugumai mašininio mokymosi algoritmų reikia tiksliai apibrėžtų užduočių ir didelio anotuotų duomenų kiekio, kad būtų sukurti modeliai, galintys išspręsti tas pačias problemas.

IBM projektas CodeNet
Project CodeNet yra didžiulis duomenų rinkinys, sudarytas iš ~ 14 milijonų kodų pavyzdžių, išsklaidytų dešimtyse programavimo kalbų.

Įdėjo daug pastangų kuriant duomenų rinkinius ir etalonus, skirtus ekspertų bendruomenei kurti ir įvertinti AI-for-code sistemas. Tačiau, atsižvelgiant į kūrybišką ir neribotą programinės įrangos kūrimo pobūdį, labai sunku sukurti tobulą duomenų rinkinį programavimui. Naudodami Project CodeNet, IBM mokslininkai bandė sukurti daugiafunkcį duomenų rinkinį, kuris gali būti naudojamas mašininio mokymosi modeliams mokyti atliekant įvairias užduotis. „CodeNet“ kūrėjai jį apibūdina kaip „labai didelio masto, įvairų ir aukštos kokybės duomenų rinkinį, skirtą pagreitinti kodo AI algoritmų pažangą“.

Duomenų rinkinyje yra 14 milijonų 500 milijonų kodo eilučių pavyzdžių, parašytų 55 skirtingomis programavimo kalbomis. Kodo pavyzdžiai buvo gauti iš beveik 4000 pateiktų užduočių, paskelbtų AIZU ir AtCoder internetinėse kodavimo platformose. Kodo pavyzdžiuose pateikiami ir teisingi, ir neteisingi atsakymai į pateiktas užduotis.

Taip pat įdomu:

Viena iš pagrindinių CodeNet ypatybių yra prie pavyzdžių pridėtų komentarų kiekis. Kiekviena kodavimo užduotis, įtraukta į duomenų rinkinį, turi tekstinį aprašymą, taip pat procesoriaus laiko ir atminties apribojimus. Kiekviename kodo pateikime yra keliolika informacijos dalių, įskaitant kalbą, pateikimo datą, dydį, vykdymo laiką, priėmimą ir klaidų tipus. IBM mokslininkai taip pat labai stengėsi užtikrinti, kad duomenų rinkinys būtų subalansuotas pagal įvairius parametrus, įskaitant programavimo kalbą, priimtinumą ir klaidų tipus.

IBM projektas CodeNet

„CodeNet“ nėra vienintelis duomenų rinkinys, skirtas mokyti mašininio mokymosi modelius atliekant programavimo užduotis. Tačiau yra keletas savybių, kurios jį išskiria. Pirmasis yra didžiulis duomenų rinkinio dydis, įskaitant pavyzdžių skaičių ir kalbų įvairovę. Tačiau galbūt svarbesni yra metaduomenys, pateikiami su kodo pavyzdžiais. Dėl „CodeNet“ pridėtų gausių komentarų jis tinka įvairioms užduotims, skirtingai nuo kitų kodavimo duomenų rinkinių, kurie specializuojasi konkrečiose programavimo užduotyse.

Yra keli CodeNet naudojimo būdai. Vienas iš jų – kalbos vertimas. Kadangi kiekvienoje duomenų rinkinio kodavimo užduotyje yra skirtingų programavimo kalbų atvaizdų, duomenų mokslininkai gali ją naudoti kurdami mašininio mokymosi modelius, kurie verčia kodą iš vienos kalbos į kitą. Tai gali būti patogu organizacijoms, norinčioms perkelti seną kodą į naujas kalbas ir padaryti juos prieinamus naujos kartos programuotojams.

Taip pat skaitykite:

Registruotis
Pranešti apie
svečias

2 komentarai
Naujesni
Vyresniųjų Populiariausias
Įterptieji atsiliepimai
Žiūrėti visus komentarus
Viktoras
Viktoras
prieš 2 metus

Tradicijos ir paveldimumas turėtų žaisti kartu su skirtingu mąstymu, su jauniausios kartos neuroniniais algoritmais ir ML metodais, keliančiais problemas, vienas kitą tobulindami.

Aasd
Aasd
prieš 2 metus

Laikui bėgant programuotojų lygis dar labiau sumažės (palyginti su dabar). Tai yra, bus galima rašyti įstrižą, kreivą kodą „šūdų kalba“. Ir tada mašina optimizuos, ir bus galima gauti optimizuotą profesionalaus surinkėjo programuotojo kodą (ar dar geresnį).