I-IBM ivula i-CodeNet yeenkqubo zokufunda ngomatshini eziguqulela kwaye ziqinisekise ikhowudi

I-IBM iveze inyathelo layo leCodeNet, elijolise ekuboneleleni abaphandi ngedathasethi ebavumela ukuba bazame ukusetyenziswa kobuchule bokufunda komatshini ukwenza abaguquleli beelwimi zeprogram, abavelisi bekhowudi kunye nabahlalutyi. I-CodeNet ibandakanya ingqokelela yemizekelo yekhowudi yezigidi ezili-14 ezixazulula iingxaki zeprogram eziqhelekileyo ze-4053. Lilonke, ingqokelela iqulethe malunga nezigidi ezingama-500 zemigca yekhowudi kwaye igubungela iilwimi ezingama-55 zokucwangcisa, zombini iilwimi zanamhlanje ezinje ngeC ++, iJava, iPython kunye neGo, kunye neelwimi zelifa ezibandakanya iCOBOL, Pascal kunye neFORTRAN. Uphuhliso lweprojekthi lusasazwa phantsi kwelayisenisi ye-Apache 2.0, kwaye iiseti zedatha zicetywa ukuba zisasazwe ngendlela yoluntu.

Imizekelo ichazwe kwaye izalisekisa i-algorithms efanayo kwiilwimi ezahlukeneyo zokucwangcisa. Kulindeleke ukuba isethi ecetywayo iya kunceda ukuqeqesha umatshini wokufunda iinkqubo kunye nokuphuhlisa izinto ezintsha kwintsimi yokuguqulela kunye nokwahlulahlula ikhowudi yomatshini, ngokufana nendlela i-ImageNet echazwe kwidatha yedatha yedatha yanceda ukuphuhliswa kokuqatshelwa kwepateni kunye neenkqubo zombono wekhompyutha. Ukhuphiswano lwenkqubo olwahlukeneyo lukhankanywa njengowona mthombo uphambili wokuqulunqwa kwengqokelela.

Ngokungafani nabaguquleli bendabuko, abaphunyezwa ngokusekelwe kwimigaqo yokuguqulela, iinkqubo zokufunda koomatshini zingabamba kwaye zithathele ingqalelo umxholo wokusetyenziswa kwekhowudi. Xa uguqulela ukusuka kolunye ulwimi ukuya kolunye, umxholo ubaluleke ngokufanayo xa uguqulela ukusuka kolunye ulwimi ukuya kolunye. Oku kunqongophala kokuqwalaselwa komxholo yinto ethintela ikhowudi ukuba iguqulwe kwiilwimi zelifa njengeCOBOL.

Ukuba nedathabheyisi enkulu yokuphunyezwa kwe-algorithm kwiilwimi ezahlukeneyo kuya kunceda ukudala iinkqubo zokufunda zoomatshini ezithi, endaweni yokuguqulela ngokuthe ngqo phakathi kweelwimi ezithile, zilawule ukumelwa okungaphaya kwekhowudi, ezizimeleyo kwiilwimi ezithile zokucwangcisa. Inkqubo enjalo inokusetyenziswa njengomguquleli, ukuguqulela ikhowudi ethunyelwe kuyo nayiphi na yeelwimi ezixhaswayo kumboniso wayo wangaphakathi, apho ikhowudi inokuveliswa khona ngeelwimi ezininzi.

Le nkqubo iya kukwazi ukwenza iinguqu zeendlela ezimbini. Ngokomzekelo, iibhanki kunye nee-arhente zikarhulumente ziyaqhubeka nokusebenzisa iiprojekthi ngolwimi lwe-COBOL oluphelelwe lixesha. Umguquleli osekelwe kumatshini wokufunda umatshini uya kukwazi ukuguqula ikhowudi yeCOBOL ibe ngummeli weJava, kwaye, ukuba kuyimfuneko, ukuguqulela isiqhekeza seJava kwakhona kwikhowudi yeCOBOL.

Ukongeza kuguqulelo phakathi kweelwimi, iindawo ezinjalo zokusetyenziswa kweCodeNet njengokudalwa kweenkqubo zokukhangela ikhowudi kunye ne-automation yokufumanisa i-clone, kunye nophuhliso lwe-optimizers kunye neenkqubo zokulungiswa kwekhowudi ngokuzenzekelayo zikhankanyiwe. Ngokukodwa, imizekelo evezwe kwiCodeNet ixhotyiswe ngemetadata echaza iziphumo zovavanyo lwentsebenzo, ubungakanani benkqubo obubangelwayo, ukusetyenziswa kwememori kunye nombuso, okusivumela ukuba sikwazi ukwahlula ikhowudi echanekileyo kunye neempazamo (ukwahlula ikhowudi echanekileyo kwikhowudi engalunganga, ingqokelela ibandakanya ngokukodwa imizekelo ngeempazamo, isabelo apho 29.5%). Inkqubo yokufunda yomatshini inokuthatha le metadata kwi-akhawunti ukuvelisa ikhowudi eyona ilungileyo okanye ukuchonga ukuhlehla kwikhowudi ehlalutyiweyo (inkqubo inokuqonda ukuba i-algorithm kwikhowudi engenisiweyo ayiphunyezwanga ngokufanelekileyo okanye iqulethe iimpazamo).

umthombo: opennet.ru

Yongeza izimvo