GitHub hapi punimet mbi përdorimin e mësimit të makinerive për kërkimin dhe analizimin e kodit

GitHub prezentoi projektin CodeSearchNet, ku do të përgatiten modele të mësimit të makinerisë dhe grupe të dhënash, të nevojshme për interpretime, klasifikim dhe analizë të kodit në gjuhë të ndryshme programimi. CodeSearchNet, ashtu si ImageNet, përfshin një koleksion të madh fragmentesh kodi, të pajisur me shënime që formalisht përshkruajnë veprimet që kryhen nga kodi. Komponentët për trajnim të modeleve dhe shembujt e përdorimit të CodeSearchNet janë shkruar në gjuhën Python duke përdorur strukturën Tensorflow dhe distribuohet në përputhje me licencën MIT.

Gjatë krijimit të CodeSearchNet u përdorën teknologji për analizën e tekstit në gjuhë natyrore, duke i mundësuar sistemeve të mësimit të makinerisë të marrin parasysh jo vetëm karakteristikat sintaksore, por edhe domethënien e veprimeve që kryhen nga kodi. Në GitHub sistemi përdoret në eksperimentet për organizimin e kërkimit semantik të kodit duke përdorur kërkesa në gjuhën natyrore (për shembull, kur kërkohet "renditja e një liste me vargje", shfaqet kodi me realizimet përkatëse të algoritmeve).

Grupi i të dhënave të propozuara përfshin më shumë se 2 milion lidhje "kod-komentar", të përgatitura mbi bazën e teksteve të burimeve të bibliotekave të hapura ekzistuese. Kodi mbulon tekstin e plotë të veçorive ose metodave individuale, ndërsa komenti përshkruan veprimet e kryera nga funksioni (pra, ofrohet dokumentacioni i detajuar). Aktualisht, grupet e të dhënave janë përgatitur për gjuhët Python, JavaScript, Ruby, Go, Java dhe PHP. Janë ofruar shembuj të përdorimit të grupeve të propozuara të të dhënave për trajnimin e llojeve të ndryshme të rrjeteve neuronale, duke përfshirë Neural-Bag-Of-Words, RNN, Self-Attention (BERT) dhe 1D-CNN+Self-Attention Hybrid.

Për zhvillimin e mekanizmave të kërkimit në gjuhën natyrore, është përgatitur gjithashtu grupi CodeSearchNet Challenge, i cili përfshin
99 lloje standarde kërkesash me rreth 4,000 annotime ekspertësh, që përshkruajnë lidhjet më të mundshme me kodin në grupin e të dhënave CodeSearchNet Corpus, që mbulon rreth 6 milion metoda dhe funksione (përmasat e grupit rreth 20 GB). CodeSearchNet Challenge mund të shërbejë si standard për vlerësimin e efektivitetit të metodave të ndryshme për kërkimin e kodit në gjuhën natyrore. Me përdorimin e veglave Kubeflow është përgatitur
shembull për motorin e kërkimit të kodit.

Burimi: opennet.ru

Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster