Root NationUutisetIT-uutisiaIBM loi Project CodeNet -tietojoukon: 14 miljoonaa koodinäytettä opettaa tekoälyn ohjelmoimaan

IBM loi Project CodeNet -tietojoukon: 14 miljoonaa koodinäytettä opettaa tekoälyn ohjelmoimaan

-

Yksikkö IBM Artificial Intelligence (AI) -tutkimus esitti 14 miljoonan näytteen tietojoukon kehittääkseen koneoppimismalleja, jotka voivat auttaa ohjelmointitehtävissä. Tietojoukko nimeltä Project CodeNet, on saanut nimensä ImageNetistä, kuuluisasta kuvavarastosta, joka mullisti tietokonenäön ja syvän oppimisen.

Ohjelmoijat löytävät uusia ongelmia ja tutkivat erilaisia ​​ratkaisuja käyttämällä monia tietoisen ja alitajuisen ajattelun mekanismeja. Useimmat koneoppimisalgoritmit vaativat tarkasti määriteltyjä tehtäviä ja suuria määriä annotoitua dataa kehittääkseen malleja, jotka voivat ratkaista samat ongelmat.

IBM Project CodeNet
Project CodeNet on valtava tietojoukko, joka sisältää ~ 14 miljoonaa koodiesimerkkiä, jotka ovat hajallaan kymmenillä ohjelmointikielillä.

Asiantuntijayhteisössä on tehty paljon työtä tietojoukkojen ja vertailuarvojen luomiseksi AI-for-code -järjestelmien kehittämiseksi ja arvioimiseksi. Mutta koska ohjelmistokehitys on luova ja avoin, on erittäin vaikeaa luoda täydellistä tietojoukkoa ohjelmointia varten. Project CodeNetin avulla IBM:n tutkijat yrittivät luoda monikäyttöisen tietojoukon, jota voidaan käyttää koneoppimismallien kouluttamiseen erilaisissa tehtävissä. CodeNetin luojat kuvaavat sitä "erittäin laajamittaiseksi, monipuoliseksi ja laadukkaaksi tietojoukoksi koodin tekoälyn algoritmisen kehityksen nopeuttamiseksi".

Aineisto sisältää 14 miljoonaa esimerkkiä 500 miljoonasta koodirivistä, jotka on kirjoitettu 55 eri ohjelmointikielellä. Koodinäytteet saatiin lähes 4000 XNUMX lähetetystä tehtävästä, jotka oli julkaistu AIZU- ja AtCoder-verkkokoodausalustoille. Koodiesimerkit sisältävät sekä oikeita että vääriä vastauksia annettuihin tehtäviin.

Mielenkiintoista myös:

Yksi CodeNetin tärkeimmistä ominaisuuksista on esimerkkeihin lisättyjen huomautusten määrä. Jokaisella tietojoukon koodaustehtävällä on tekstillinen kuvaus sekä suorittimen aika- ja muistirajoitukset. Jokainen koodin lähetys sisältää tusinaa tietoa, mukaan lukien kieli, lähetyspäivämäärä, koko, suoritusaika, hyväksyntä ja virhetyypit. IBM:n tutkijat tekivät myös paljon vaivaa varmistaakseen, että tietojoukko oli tasapainossa useiden parametrien, kuten ohjelmointikielen, hyväksyttävyyden ja virhetyyppien välillä.

IBM Project CodeNet

CodeNet ei ole ainoa tietojoukko ohjelmointitehtävien koneoppimismallien koulutukseen. Mutta on useita ominaisuuksia, jotka erottavat sen toisistaan. Ensimmäinen on tietojoukon pelkkä koko, mukaan lukien näytteiden määrä ja kielten monimuotoisuus. Mutta ehkä tärkeämpää on koodinäytteiden mukana tulevat metatiedot. CodeNetiin lisätyt runsaat huomautukset tekevät siitä sopivan monenlaisiin tehtäviin, toisin kuin muut koodaustietojoukot, jotka ovat erikoistuneet tiettyihin ohjelmointitehtäviin.

CodeNetiä voi käyttää useilla tavoilla. Yksi niistä on kielen kääntäminen. Koska jokainen tietojoukon koodaustehtävä sisältää esityksiä eri ohjelmointikielistä, datatutkijat voivat käyttää sitä rakentaakseen koneoppimismalleja, jotka kääntävät koodia kielestä toiseen. Tämä voi olla kätevää organisaatioille, jotka haluavat siirtää vanhaa koodia uusille kielille ja tehdä niistä uusien ohjelmoijien sukupolvien saatavilla.

Lue myös:

Kirjaudu
Ilmoita asiasta
vieras

2 Kommentit
Uudemmat
Vanhemmat Suosituin
Upotetut arvostelut
Näytä kaikki kommentit
Victor
Victor
2 vuotta sitten

Perinteiden ja perinnöllisyyden tulee leikkiä yhdessä erilaisen ajattelun kanssa, nuorempien sukupolvien hermoalgoritmien ja ML-menetelmien kanssa ongelman asettamiseen, toisiaan parantaen

Aasd
Aasd
2 vuotta sitten

Ajan myötä ohjelmoijien taso laskee entisestään (nykyiseen verrattuna). Eli on mahdollista kirjoittaa vinoa, vinoa koodia "paskakielellä". Ja sitten kone optimoidaan, ja on mahdollista saada ammattimaisen kokoajan ohjelmoijan optimoitu koodi (tai jopa parempi).