GitHub код издөө жана талдоо үчүн машина үйрөнүүнү колдонуу боюнча өнүгүүлөрдү ачты

GitHub берилген долбоору CodeSearchNet, ар кандай программалоо тилдеринде кодду талдоо, классификациялоо жана талдоо үчүн зарыл болгон машина үйрөнүү моделдерин жана маалымат топтомдорун даярдаган. CodeSearchNet, окшош IMAGEnet, коддун эмне кылганын ырастаган аннотациялары бар код үзүндүлөрүнүн чоң жыйнагын камтыйт. Окутуучу моделдердин компоненттери жана CodeSearchNet колдонуу мисалдары Python тилинде Tensorflow алкактары менен жазылган жана жайылуу MIT лицензиясы боюнча.

CodeSearchNet түзүүдө табигый тилдеги текстти талдоо технологиялары колдонулган, бул машина үйрөнүү системаларына синтаксистик өзгөчөлүктөрдү гана эмес, код тарабынан аткарылган аракеттердин маанисин да эске алууга мүмкүндүк берген. GitHub системасы колдонулат боюнча сурамдарды колдонуу менен семантикалык кодду издөөнү уюштуруу боюнча эксперименттерде табигый тил (мисалы, “саптардын тизмесин сорттоо” талабы коюлганда, тиешелүү алгоритмдерди ишке ашыруу менен код көрсөтүлөт).

Сунушталган маалымат топтому учурдагы ачык китепканалардын баштапкы тексттеринин негизинде даярдалган 2 миллиондон ашык код-комментарий шилтемелерин камтыйт. Код жеке функциялардын же ыкмалардын толук баштапкы текстин камтыйт, ал эми комментарий функция аткарган иш-аракеттерди сүрөттөйт (деталдуу документтер берилген). Учурда маалымат топтомдору Python, JavaScript, Ruby, Go, Java жана PHP үчүн даярдалган. Нейрондук тармактардын ар кандай түрлөрүн, анын ичинде окутуу үчүн сунушталган маалымат топтомун колдонуунун мисалдары келтирилген Нейрондук-баштык-сөздөр, RNN, Өзүнө көңүл буруу (БЕРТ) жана 1D-CNN+Өзүнө көңүл буруу гибриди.

Табигый тилде издөө механизмдерин иштеп чыгуу үчүн CodeSearchNet Challenge комплекси кошумча даярдалды, анын ичинде
99 типтүү CodeSearchNet Corpus берилиштер топтомундагы 4 миллионго жакын методдорду жана функцияларды камтыган эң ыктымал коддук байланыштарды сүрөттөгөн 6 миңге жакын эксперттик аннотациялары бар сурамдар (өлчөмүн коюу болжол менен 20 ГБ). CodeSearchNet Challenge табигый тил кодун издөө үчүн белгилүү бир ыкмалардын натыйжалуулугун баалоо үчүн эталон катары кызмат кыла алат. куралдарды колдонуу Кубефлоу даярдалган
мисал код издөө системасы.

Source: opennet.ru

Комментарий кошуу