ЦодеНет, ИБМ пројекат за системе машинског учења 

ИБМ лого

ИБМ представио недавно назван његов нови пројекат "ЦодеНет" који има за циљ да истраживачима пружи скуп података за експериментисање употребом техника машинског учења за стварање преводилаца са једног програмског језика на други, као и генератора и анализатора кода.

ЦодеНет укључује колекцију од 14 милиона узорака кода који решавају 4053 уобичајена програмска проблема. Укупно колекција садржи око 500 милиона редова кода и покрива 55 програмских језика, оба модерна језика као што су Ц ++, Јава, Питхон и Го, као и наслеђе, укључујући ЦОБОЛ, Пасцал и ФОРТРАН.

„Софтвер једе свет“, написао је познати амерички бизнисмен Марц Андреессен 2011. Премотавање унапред до данас: софтвер се налази у финансијским услугама и здравству, паметним телефонима и паметним домовима. Чак и аутомобили сада имају више од 100 милиона линија кода.

Развој пројеката објављен је под лиценцом Апацхе 2.0, а очекује се да ће скупови података бити објављени у јавном домену.

Примери су означени и примењују идентичне алгоритме у различитим програмским језицима. Предложени скуп треба да помогне у обуци система за машинско учење и развоју иновација у области аутоматског превођења и анализе кода, аналогно начину на који је база података ИмагеНет са означеним сликама помогла развоју система за препознавање слика и вештачки вид. Разна такмичења у програмирању помињу се као један од главних извора стварања колекције.

Пројецт ЦодеНет може посебно подстаћи алгоритамске иновације да извуку овај контекст моделима секвенци по секвенци, слично ономе што смо применили у људским језицима, како би направили значајније удубљење у машинском разумевању кода, а не у обради кода. .

За разлику од традиционалних преводилаца заснованих на правилима превођења, Системи машинског учења могу да обухвате и узму у обзир контекст употребе кода. При претварању из једног програмског језика у други контекст је једнако важан као и при превођењу из једног људског језика у други. Недостатак контекстуалне свести спречава претварање кода из старих језика као што је ЦОБОЛ.

Присуство велике базе имплементација алгоритама на различитим језицима помоћи ће у стварању универзалних система за машинско учење који, уместо живог превођења између одређених језика, манипулишу апстрактнијим приказом кода, неовисно о одређеним програмским језицима.

Такав систем се може користити као преводилац који преведени код у било којем од подржаних језика преводи у свој интерни апстрактни приказ из којег се може генерисати код на многим језицима.

Укључујући систем, можете изводити двосмерне трансформације. На пример, банке и владине агенције настављају да користе наслеђене пројекте ЦОБОЛ. Преводилац за машинско учење може претворити ЦОБОЛ код у Јава представу и опционо превести Јава фрагмент назад у ЦОБОЛ код.

Поред превода између језика, помињу се и подручја примјене ЦодеНет-а као што су стварање интелигентних система за претрагу кода и аутоматизација детекције клона, као и развој оптимизатора и система за аутоматску корекцију кода.

Нарочито Примери представљени у ЦодеНету садрже метаподатке који описују резултате тестова перформанси, величина резултујућег програма, потрошња меморије и стање које омогућава разликовање тачног кода од кода са грешкама (за разликовање тачног кода од неисправног кода, примери са грешкама су посебно укључени у колекцију, чији је удео 29,5%).

Систем за машинско учење може узети у обзир ове метаподатке да би генерисао најоптималнији код или открио регресије у анализираном коду (систем може да схвати да алгоритам није оптимално примењен у пренетом коду или да садржи грешке).

Коначно Ако сте заинтересовани да сазнате више о ЦодеНет-у, можете проверити детаље У следећем линку.


Оставите свој коментар

Ваша емаил адреса неће бити објављена. Обавезна поља су означена са *

*

*

  1. Odgovorni za podatke: AB Internet Networks 2008 SL
  2. Сврха података: Контрола нежељене поште, управљање коментарима.
  3. Легитимација: Ваш пристанак
  4. Комуникација података: Подаци се неће преносити трећим лицима, осим по законској обавези.
  5. Похрана података: База података коју хостује Оццентус Нетворкс (ЕУ)
  6. Права: У било ком тренутку можете ограничити, опоравити и избрисати своје податке.